Jump to content

Laptop Recommendations for programmers

d1str0y3r

I am really sad regarding this one problem in the YouTube tech community thing that almost nobody ever talks about compile times or ML model train time when reviewing any product CPU or the GPU's. 

Even when talking about the creator focused devices in any such events, only thing usually showed is the video render times in or Photoshop performance and stuff like that.

 

I sort of understand that most of content creators are not programmers and usually only go for editing these videos and gaming whenever they do stuff( That's what I feel regarding most of the Content creators, after how much they talk about it). But (looking at you Luke) after Luke started working on the FloorPlane platform, I did expected more regarding the programming related topics in at least the WAN show and a few videos for this community.

Lets make this post be heard by the LTT team.

 

lets make this happen

Link to comment
Share on other sites

Link to post
Share on other sites

17 minutes ago, d1str0y3r said:

But (looking at you Luke) after Luke started working on the FloorPlane platform, I did expected more regarding the programming related topics in at least the WAN show and a few videos for this community.

You do understand that Luke is the COO of Floatplane, and not necessarily involved in it's development on the ground level? By this I mean, he is certainly involved in its development as a platform, but he isn't necessarily the developer of the platform.

 

Other than that, I think you should probably post that in here:

 

Remember to either quote or @mention others, so they are notified of your reply

Link to comment
Share on other sites

Link to post
Share on other sites

@Eigenvektor Yeah I do realize that Luke is just a part of the development of the platform and not a developer full time, but he does deal with developers, he does need to get there machines sanctioned from company, hence he does understand somewhat what might be needed. 

This suggestion might be a stretch but this is something I would love to see from the channel as a whole.

Like the Asus Zenbook Dualbook pro or the non pro can be a really amazing for the extra screen but is on the heavier side(Pro version) and bad for price (non pro version).

@Mira Yurizaki Yeah i do get that point but when buying a new computer or laptop, You do need to get comfortable using whatever machine you just got for yourself and thus can be a factor for it.

Also (talking about people around me and me) we do love to have a lot of different docs opened at same time to look for whatever thing we are looking at to be done, be it documentation or other forums or the holy grail Stack Overflow, also a lot of times we cannot just run the changed files and need to compile the whole program as a whole( or some things i am doing is ineffective way of doing it), but it still a problem and can be looked into for newbie programmers.

As an experienced programmer one can easily look up the perfect system for his/her needs. Be it for Dual boot or virtual machines to run one OS to test or develop for the particular machine or server compiles or model training.

LTT group does get a lot of laptops for review and can fit in a few compile time tests and model training times for the specs so that we don't have to judge them by the gaming performance.

Its just a recommendation for the channel and can helpful for a lot of new programmers, who don't necessarily use virtual machines or servers for doing the more intensive tasks

 

PS no offence to anyone and I do understand your points just.

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, d1str0y3r said:

Yeah I do realize that Luke is just a part of the development of the platform and not a developer full time, but he does deal with developers, he does need to get there machines sanctioned from company, hence he does understand somewhat what might be needed. 

This suggestion might be a stretch but this is something I would love to see from the channel as a whole.

Like the Asus Zenbook Dualbook pro or the non pro can be a really amazing for the extra screen but is on the heavier side(Pro version) and bad for price (non pro version).

Don't worry, I'm not offended :) I just thought you might have a better chance to be heard in the "official" topic for such suggestions.

 

I'm just thinking that benchmarks for developers are somewhat problematic. For one thing, they're not very interesting to most people and if it doesn't have a (large) audience, it's not going to stay on the channel for very long. The other thing is, requirements can vary wildly. For example you mentioned ML. This would most likely need a beefy GPU. For me as a Java developer such a benchmark would be next to useless. I only care about compile times for my apps.

 

So personally, I would be interested to know if it would be worth it to shell out for a 16 core CPU. Will I get significant improvements when compiling over e.g. an 8 core with higher clocks? This is where it gets problematic again: You might see improvements when compiling something like the Linux kernel that can be parallelized easily, but what about my project in particular? So you'd need a wide range of different benchmarks and a way to communicate what exactly is being tested in an easy to understand format.

 

As for dual-screen laptops, sure, I love my second (desktop) screen at work and could occasionally use a third, but I don't really have control over my setup at work. I get the same laptop as everyone else and the same screen as everyone else. At home I can do whatever I want, of course. But I think a full-sized screen and keyboard is more worth it. I suspect such a test is highly subjective.

Remember to either quote or @mention others, so they are notified of your reply

Link to comment
Share on other sites

Link to post
Share on other sites

To me 17" is a must for more code on the screen. 1080p 60hz is more than enough. @Eigenvektor talk about beefy GPU for ML but this depend. I work with 3 different ML solutions and none of them use GPU they all use CPU. Compiling for C++ and C# both scale more with IPC and Clock Cycle than core count. Not all part of compiling use multiple core. Right now Ryzen 3XXX are winning this category. Anyhow paying double the price to shave off 3-4 seconds of compiling for small projects is not worth it.If you are dealing with large codebase (would say 5 gb +) this become apparent at the end of the day. You shave more like 30-40 seconds of compile time that quickly add up to 1 or 2 hours a week.

Link to comment
Share on other sites

Link to post
Share on other sites

@Franck I was just trying to point out that requirements can vary a lot, depending on what you're doing. So you'd have to have lots of different benchmarks to cover as many uses cases as possible. I know, for example, that gradle (which we're using) can parallelize builds, but I'd definitely be interested in how well that scales. Which probably depends a lot on our code base (how independent stuff is).

 

I can tell you that a full rebuild of our code takes about 3 minutes on my machine. A full build with all tests etc. takes about 1-2 hours on the build server. So sure, I'd be interested to know where the sweet spot is in terms of core count and/or clock speed and if more RAM would make a difference. But I'm not sure how well you can generalize that knowledge and/or how project specific that is.

Remember to either quote or @mention others, so they are notified of your reply

Link to comment
Share on other sites

Link to post
Share on other sites

22 hours ago, d1str0y3r said:

I am really sad regarding this one problem in the YouTube tech community thing that almost nobody ever talks about compile times or ML model train time when reviewing any product CPU or the GPU's. 

Model training specifically is such a niche market, I would be surprised if anyone outside of the data science community would even understand how to make a relatively useful benchmark for that. 

 

But anyway, who trains models locally? 

15" MBP TB

AMD 5800X | Gigabyte Aorus Master | EVGA 2060 KO Ultra | Define 7 || Blade Server: Intel 3570k | GD65 | Corsair C70 | 13TB

Link to comment
Share on other sites

Link to post
Share on other sites

Being a professional developer for a few years now I can recommend any i5 to i7 with 4c/8t with 16gb ram and an NVME ssd.

 

Aim for high clocks instead of core count, most compiling is single threaded, but if you know your environment well enough you can tweak that to take advantage of more cores. Keep in mind, needlessly parallelazing a task will probably yield worse results than single core performance because of the overhead required to break a task to sub tasks and then aggregate them back. Personally I wouldn't go for more than a couple of cores for compiling, but that depends on what you're compiling. Also, if your test cases are not well thought and are not atomic (i.e. each test should be able to complete on its own, without depending on any other test; @before/@after methods are ok) you'll end up with failed builds on multicore copiling. If you don't need to compile, i.e. working on a website running in your browser, go for 4c/4t to minimize cost if you are on a tight budget.

 

I'm no ML/AI expert but see what you'll be utilizing and spend some more cash on that (gpu/cpu), here IPC and clocks are of importance on the cpu (when there are at least 8 threads available to keep your pc functional) and compute cores in the gpu (i.e. Cuda cores for NV).

 

Screen-wise I find that 15"@1080p is a good minimum, but I wouldn't go for more thatn 15"/2k, given that battery is also a concern. Keep in mind that if you're gonna be moving the laptop a lot and also using it as one (i.e. not tethered 24/7 to the charger) you need to think about weight, heat output and battery life. I've found that non-gaming ergonomics are better here, generally more business oriented laptops are both better ergonomically as well as considerably cheaper.

 

Brand-wise I've used Dell's Latitudes and Inspirons (4c/8t) as well as a MacBook Pro 13" (mid 2017 i5 16gb 2c/2t or 2c/4t, I can't remember). The Dell's are considerably faster and better to carry around: similar weight with better performance and thermals + expandability and ease of repair, while the Mac is considerably slower and laggy when compiling, heats up fast and is loud, but has (way) better screen and audio. There is also the new MBP 16" which I quite like spec-wise, even at the basic config and even consider it to be a fair priced Apple product, but you can get the same level of raw performance for cheaper.

 

Also, keep support in mind as well. If it's your job's tool you want to minimize downtime as much. In that regard, Apple has a good reputation for consumers (afaik) and Dell is the go to brand for both my workplaces, so I suspect they have decent business support as well.

In the end you decide what kind of use you want it for, but keep in mind any laptop will have compromises on everything when compared with a similarly priced desktop, apart from mobility.

 

Edit: based on @Blade of Grass reply, you can always set up a remote desktop building machine somewhere and just use ANYTHING with a screen, keyboard and internet connection, even tablets, to work.

Link to comment
Share on other sites

Link to post
Share on other sites

I've used: Macbooks, Dell, and Lenovo laptops.

 

For me, Lenovo always had the best hardware. My mac had weird issues and in 1 year I visited in-company support 10 times with the thing (touchpad stops touching, keys stop registering, sleep doesn't sleep, etc). Dell laptops are missing keys I use constantly (pgup/down, home, end) or if they have them at all, I have to hold a function key to use them. No! Also, with Dell, you have to use this breakout-box thingie to connect a monitor to it, and when you dock/undock the computer from that breakout box it can't remember what screens were where. It's super annoying to have your windows get all fuckulated because Dell's shitty software can't remember window positions.

 

But Lenovo? That just worked. Close the lid, it goes to sleep. Open the lid, it wakes up. Pg up/down keys, home and end, exactly where you want them. A touchpad with physical right and left click buttons, so there's no doubt as to what you're trying to do.

 

Dell tries to copy Apple, but without any QA, so their product sucks. Lenovo just made a good laptop. Note: all my review content is circa 2016, so more recent lenovos may suck. But compare them to the ones from 4 years ago and if they look similar, then you're probably golden.

Link to comment
Share on other sites

Link to post
Share on other sites

I actually use a ROG gaming laptop for development. Compilers love it... :)

Write in C.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×