I have a framework laptop and really like it.
The main benefit is that it is fairly future proof, so you could get one the of the cheaper ones now and then upgrade if you need better ram/CPU/apu
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Follow the wormhole through a path of communities !webdev@programming.dev
I have a framework laptop and really like it.
The main benefit is that it is fairly future proof, so you could get one the of the cheaper ones now and then upgrade if you need better ram/CPU/apu
I am a big fan of my Framework laptop. It is super easily upgradable and repairable so should last a good while. They are a little sold out of all of their old models so they only have pre-orders right now. They have options for a 13th gen i5 and a Ryzen 5 that both start at $850. The intel ones ship sooner and are have cheaper DDR4 RAM (vs DDR5 for Ryzen). The $850 is "base", an i5 configured with 16g of RAM, a 500gb SSD, and no OS (assuming you'll use linux or already own windows) is just under $1100. You can go as low as just over $1k for 8g of ram and 250g SSD.
If you're concerned with cost they do have refurbished 12th-gen i5s in stock now for $720, but you'll need to buy RAM and an SSD (which if buying from them would bring your total to $820 for 8g of RAM and 250g of SSD).
I can't comment on the tablet/pen stuff. I have never owned a laptop that does that. It might be worth it if you do drawing or whiteboarding and stuff, but those are the only people I know of that actually use that sort of stuff.
How does it do on battery? And heat?
Under load it can get pretty hot, might be better with a less power hungry processor (I've got an i7). Battery is reasonable 4-5ish hours (55wh and they recently announced a drop-in replacement with better chemistry that is 61wh) with what I would consider to be "normal" usage in Windows 10 including WSL, browsing, running the software I am working on (usually node or golang), etc. It's also better if I lower my screen brightness, but I usually keep it pretty high/max.
Buy the cheapest MacBook model you can find with an M-series chip and as much RAM as you can stomach the cost for.
I'd say 8gb is barrrrre minimum for doing app development. You'll want 16gb.
Listen, I'm the last person you'd expect to recommend a Mac. I am an Android guy. No other Apple products in my place.
...but I've owned every top end model from pretty much every relevant PC manufacturer just trying to find something as reliable, hassle free, and well built as my work Mac and it just doesn't exist.
The MacBooks are just in a whole other class. The battery life, the standby time, the speed of those M1/2 chips, runs cool and quiet.
I'm neutral on MacOS. It tends to stay out of my way. I don't use any of the Apple apps. It is usually stable as hell. My work MBP currently has an up time of 68 days without a reboot, and the only reason it rebooted last time was for security patches.
Build quality is unmatched, screen is great, trackpad is still a generation ahead of anything else, keyboard is great.
I accept my fate, Fediverse. Roast away
Iβm not here to βroastβ but M chips arenβt fully supported for everything a software engineer could be compiling/running. At the current moment, theyβre not quite as well-supported in every single way possible like an x86 chip would be for dev environments (even though we all really want them to be).
Nothing wrong with recommending a Mac. I'm not a Mac guy myself but I am pretty productive with one.
The stack overflow survey showed 33% of devs are using MacOS. You won't (or shouldn't) be roasted for recommending a mac.
Same. I haven't used a Mac seriously since my 2004ish G5 power mac.. I've been on Linux pretty much exclusively for 20 years. My current job gave me a new apple silicon Macbook though and it's almost unbelievable how good of a machine that is. I think 90% of that comes down to the chip but still... The software is still mostly just fine but the chip is in a class of its own.
For programming, you need as much RAM and as much processor as you can manage, and all other considerations are secondary. If you're intending to keep this machine for more than a year or two, that becomes even more important, because software always seems to expand to fill the space availableβkind of like clutter. If you're buying a laptop, you're sacrificing upgrades in return for portability, so assume that you're going to have a hard time adding more RAM after you buy (the memory might even be soldered in place if it's a cheap thin-and-light machine). Framework is an exception to that.
I find the Ryzen processors offer better value for money than Intel, but the last time I checked they were more difficult to find in laptops. You shouldn't compromise on other things just to get the AMD chip.
2-in-1 with pen: likely not worth it unless you, y'know, want or need a tablet anyway.
Have you checked out Framework? They have a great selection.
Personally, I bought a 14" Alienware just for remote programming in vscode on a server. I don't play games on it, but it's quite the powerhouse for everyday use.
System76 laptops I've seen recommended, I'm currently deciding between one of these and a Framework laptop
I've been very happy with my System 76 laptop. I suspect I'll try Framework next time, just because I like the concept.
I hadnβt heard of them. Thatβs a pretty cool concept though. Thanks for bringing it to my attention!
Others have said it already, but I love my Framework laptop. I have one of the first gen ones, running Ubunut, and I'm looking forward to upgrading it to the new AMD motherboard they're releasing later this year. The fact that they have upgrade paths for their laptops is amazing.
They really do deserve success with their business model, it's great to see cases being made available that turn the used mobos into 'new' computers as well.
If your doing android work, you'll be running Android studio and likely an emulator. Both love ram. Get 16gb if you can afford it. I believe many newer laptops are going with unupgradable ram, you'll need to check the specific laptop carefully.
Cores will also be loved by Android studio and the emulator.
Check the video out put options as well, you'll likely want an external monitor at some point, the benefits of dual (and triple) monitors can't be overstated.
If your concerned about cost, maybe look for second hand stuff? But lots of cores and lots of RAM will be worth it in the long run.
You could do your programming theoretically on any laptop, although I'd say faster the better/easier it'll be for you in the long run. In regard to your comment on upgradability I'd recommend taking a look at a Framework laptop where their whole goal is repairability which comes with the added benefit of being upgradable.
Those Framework laptops look amazing. I hope they take off so the big guys take notice.
@out_of buy what you can afford . The more power the better when programming. Remember you are running 2 maybe more applications at once. The IDE and the application you are debugging (maybe not so much with Android dev). Unlike a normal user who is just using their browser or word or excel . HTH
IDEs for this purpose (android dev) are not small little text editors that work well with limited resources. Keep that in mind. You will also need to consider things like compilation and phone emulation, which can also be resource intensive.
I highly recommend looking for something that is built with a Linux distro by default. This will make your life easier in the long run, although it may not be a simple task up front if you are not familiar with Linux.
I don't actually have a Linux laptop, it is a desktop, but I use my Steam deck as a Linux laptop, and can almost do everything I want to, although steamos will require some weirdness similar to Windows. I use IntelliJ Ultimate on my steam deck and can successfully work on smaller scale Go and Kotlin projects while running IntelliJ low power mode.
Most larger dev shops (in the JVM world) will just hand out whatever is the current top ~$3000 MacBook pro (for reasons). This leads to a lot of devs using OSx at work and Linux (at home) for personal projects. An apple computer of any type can help prepare for this inevitability, if Linux is out of the options. I personally dislike this, as I am not an Apple fan, but this is what I have experienced.
Although I use Windows for some personal development, there are so many hoops that one has to jump through to get Windows working properly for advanced things, it almost isn't worth it and requires heavy windows development knowledge, and is probably best to just get a MacBook (of whatever type).
Could you elaborate on your workflow with the SteamDeck? I'm quite curious on how you work with it
I am still fairly new to Steam deck (~6 months).
Outside of having the dock to allow for normal USB ports for both keyboard and mouse (without converters and such), this awesome steam-deck-tricks readme/repo is majorly where I have been learning from.
The major catch is rootfs read only and strategizing how to avoid reinstalls after steam updates. I haven't quite gotten all the way there yet since I am using it more for tinkering (linux host on local network) for the time being.
Look for used ThinkPads with Ryzen, I bought an L14g2 (5850U+16GB) for about 600 USD and it's just amazing value
IntelliJ and BlueStacks both love RAM
They also love CPU.
For a dev machine, I wouldn't go below 16GB RAM and at least a current-generation i5 (or Ryzen equivalent).
As many people are saying, a DIY frame.work laptop should be considered if you can get one on your country. Screen is good for work, battery life is decent, Linux compatible, trackpad and keyboard are good, you get to choose your ports, etc. I use one daily for work, mainly docked to my monitor but if the weather is decent I'm out in a park working.
Always get more RAM.
hard to regret more ram. maybe your current programming context doesn't need it but a future one might welcome 32gb. I'd completely ignore 8gb. also pay attention to which laptops can extend ram in the future. some come with only capacity for the soldered ram and that's it. try a framework laptop. no clue on what the prices are.
edit: oh, android. yeah, ram. remember it's not just actually application active ram. also, compilers.
I would get a higher end Chromebook. They run Linux, have a built in android container, nice keyboards, touch screen, often have 360 hinges if that matters to you.
I've got the middle one in that pic and it's almost as fast as my 24 core desktop. Like others said, get 16 gig of ram. Edit: i use VS code which is less beastly than Android studio, but there's no need to run an emulator because it's already built in, accelerated.
These things have been the source of so much frustration for me over the years. I think you are the only person I've ever seen IRL or online who didn't immediately regret the purchase after about 3-6 months.
I returned my $4000 MacBook, I don't like the keyboard layout and thought it had poor performance for the hardware. I would go for a Linux laptop but other than that I prefer Chromebooks and have been using them for 10ish years.