Even I'm guilty of doing this stupid consumerist behaviour. Buying an expensive laptop because 'I need it'. And it's doubly worse as a programmer, because in the general sense: if you - as a programmer - need something with a stupid amount of horsepower, you might need to start working on optimising your code a little more.
There are definitely exceptions to my statement, like if you're a game developer using UE4 or something ridiculously hi-fi like it and machine learning is another one. But - quite frankly - if you're developing ML stuff, just use Google's Colab for everything it's worth as they've got some beastly GPU cards that most of us can't afford even if we had something overpriced like the RTX2080.
Let's Be Cheap
I like talking about this topic because this is where the segregation between backend and frontend developers usually occur. From what I've seen, these definitions for developers have really played a part in what device a person would purchase to continue developing and I really do think it's becoming an annoying culture.
Basically backend developers end up with something like an XPS 15 or a PC and frontend developers generally have, well, the latest MacBook Pro with maxxed specs. It's funny and sad to see only because there's this culture to be different, and yet they buy the same shit at a cost that's way too much for my liking.
What'd You Get Then?
During my time at uni, I bought and used a 2012 MacBook Pro. Thing was an absolute beast. I loved it. But I was also studying game dev, so I didn't to look the part. And I got all the shit about my MacBook all because it was a Mac, that was it. Nobody looked at the specs, what it could run(even had an NVIDIA card!) and yet these little turds couldn't get it passed their heads that it was a Mac.
I got my MacBook because our university subsidised it to 40% of the original price. Now what kind of idiot doesn't take up that offer? It was an amazing deal and I'm so glad I did, because it got me into a different side of tech.
How the Boys Felt About My New Lover
During my time in game dev, we had to learn some mid-to-low level languages, patterns and logic. So at most we'd use approximately 10% of any and all power from your device. We'd obviously do something stupid and ramp it up to crazy amounts by accident, but then you optimise. So it always amazed me when someone is playing the Big Dick contest and comparing their GPU, CPU and RAM to my device, when our goal is to not get it to the point of cooking mushrooms on your keyboard. I love my high-end devices, but there's a time and place and so I just kept plugging away at my code and didn't bite into their bullshit. It really did get under my nerves though.
I'm Not in the Mood for your Opinion - This is my Device
Although it's still early days in my development career - I can say with complete confidence that I don't give a shit about your device, so long as you can help the team. And that should be the main goal. Not device shaming people because they don't have some $5000 device that no one actually needs.
This whole obsession with needing the absolute beast of beasts in the consumer world needs to be toned down. I want a computer that can absolutely slay, but the underlying problem is that there are no computers that do that anymore. Intel's chipsets are disappointing and there haven't been many strides in terms of graphical performance since the 1080. This makes getting a cheaper device that much more enticing if only for the reduction in the disparity between high performance and price. AMD is doing a great job though.
Deciding on My Device
This is definitely a matter of opinion, but when I looked for a device to use for development, I abandoned any and all loyalty to all companies. At the time Apple was turning into a shittier PC vendor than it was as of 2018(16 inch is pretty good though) and so I went on a hunt for a decent laptop. I went through 2 before I found something that I really really liked, but I made the switch to a more expensive line when I was finally comfortable with what my requirements were in terms of performance and price.
My first laptop was awesome up until the keyboard broke 4 times(no it wasn't a MacBook), so I eventually had to refund it which was a shame. This time I went for something that had graphical performance in mind because I wanted to game on the go as well as do some light ML stuff while I had a lack of internet. And that's where I am now.
What was the Point of this Conversation?
I wanted to tell the story of when I finally decided I should sink some solid cash on an asset and that was when I felt ready. I could easily sense the hypnosis and allure around these fresh and downright fucking gorgeous products, but I'm a programmer. So give me that ugly piece of shit with the low cost so that I can get my work done and still make money.