Comment by sph
18 hours ago
I really dislike people that got into a thing and then try to discourage others. “Don’t be like me! I wasted my entire life” which is bullshit from a jaded person that lost passion. Telling people to stay away from graphics programming is not how to entice tomorrow’s John Carmack.
So here’s another perspective. If all you have done is web apps and Kubernetes, for example, do get into graphics programming. The feedback cycle is exhilarating, and you get to appreciate how mind boggingly fast your average computer is. You’ll get to optimize things that are ultimately unimportant because you have never learned how quick things are at the low level. There are a ton of resources and the maths is not too bad. You might find that 3D modeling is a creative outlet you didn’t know you needed. Even if completely inapplicable to your day job, you’ll find new ways to appreciate the art of programming computers, and might just decide to never touch Kubernetes again and spend the next 5 years writing your own game engine in your spare time. There are a lot of crazy people like that, and the community of hobbyists that are not ground down by life and game dev as a career is larger than you’d think. The Graphics Programming discord is a welcoming place if you want to check it out.
Go for it!
> Don’t be like me! I wasted my entire life
That's not the argument being made here. The field is changing. I had a good career in graphics, my life wasn't wasted at all. That doesn't mean a college student would have the same experience starting today.
Well, of course not, unless you are claiming that a future career in graphics is a bad idea, and there is no way you could say that with any reasonable certainty, I do not get the argument at all.
The field is always changing. You could find people in the 80s saying ‘I had a good career in graphics, a college student would not have the same experience starting today’
100% this. My dad told me not to get into it because of the web (he was a C guy) and instead I went head first into it AND did graphics programming (using C#, ewwww) just for the fun of it. Never discourage from someone wanting to learn, discourage the ego that thinks we need another John Carmack.
Getting into a field that is changing is the best time to get into that field. The playing field gets equalized and you have more opportunity to be established as a strong expert.
That is not a universal because the incumbents may hold the institutional reigns. See Academy for a counter example.
I mean, there's other problems with OPs argument.
For example, "there's no chance to become the next one" implies it's only worth it to do something if you can become the absolute best person in the field.
It's a big world. Most of us will not be the very best at what we do. There are millions of fun games that were not written by John Carmack.
Who is John Carmack? That old dude from the 90s?
I kid, but there are many other modern Carmacks and id argue even more impressive contributions. The guy has done little since he left gaming.
I wish more people praised Alex Evans. Dreams rendering tech is still unmatched to this day and was my inspiration for graphics, not Carmack.
1 reply →
Seems like a great field to get into if you can make it to the top 5-10% skillset.
The rapid advances, in a trend replicating throughout society, push out the middle in favor of the top.
Out of curiosity, which fields would you say are the best to just be mediocre in?
7 replies →
Is it so wrong to be doubtful of whether the field is still lucrative? We live in times of great change, it's only natural to be less assured when recommending a career path to others.
Who clicked on this thread looking for career advice??? This discussion is not what I was expecting when I clicked on this thread. What's with the sudden obsession about the field having to be lucrative first? Where's the "hacker spirit" of just wanting to know how stuff works?
Academia was never a lucrative field. For the sacrifices it requires, it will never be financially viable for me to work there. Am I wasting my time going through the Feynman Lectures nonetheless? Keeping my calculus decent? I clicked on this for the same reasons; not looking for career/financial advice, I just have a morbid curiosity about how the sausage is made.
Not to mention, of course, that skills are transferable. Philosophy students don't study Plato because his ideas are relevant to everyday life. His way of thinking/reasoning about problems given his limited means is a timeless skill. I will probably never have to use any direct fact in the Feynman Lectures in my dayjob but learning to think like Feynman is useful when reasoning about large obscure systems which I do encounter daily. FL is not so much an exercise in physics but in the application of the scientific method in general. For software engineering, it nicely compliments Skiena's "The Algorithm Design Manual" IMO.
What I expect to learn from graphics programming:
- it's a good practice for applied maths/vectors/linalg - it's a good practice to learn lowlevel APIs/programming tricks - maybe I'll make a cool game
All of which can also find application elsewhere in computing.
Yeah, like I imagine they mean that as a career it is competitive and demanding while having few openings so you shouldn’t stake your education and future on it, but I’m with you. This is something I really want to learn well enough to contribute the world.
Another staple of HN I abhor is “don’t bother learning this cool thing unless an official IQ test says you are over 150.”
I live after the motto of "always disregard the naysayers." If someone tells you a thing is a bad idea, you can safely ignore their advice.
“The reasonable man adapts himself to the world; the unreasonable man persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man.”
— George Bernard Shaw
Chill down. It's just someone who has a lot of experience in the field making an analysis of the current landscape of the career, using their own as an example.
> Telling people to stay away from graphics programming is not how to entice tomorrow’s John Carmack.
John Carmack was one of the _first_ graphics programmer to ever exist. The next John Carmack can't be in the same field. The same way we can't expect the next Beatles to be playing rock music. :)
Isn't it mostly shaders programming nowadays?
Modern APIs make synchronization and resource management a lot more complex. Used correctly they result in better performance; used incorrectly...
That being said, "nowadays" most studios just throw shit at UE5 and get it over with. It's obvious from how terrible many games run that they don't have a rendering engineer on the payroll.
That sounds nice, but we need to make money and there aren't alot of opportunities. I'd love to get away from web and infra nonsense but,in The right domain id even do it for a pay cut. Hobby work won't get you a job
"These annoying, jaded horse-drawn cart builders, cautioning youngsters from getting into the field in 1908."
If that jaded horse-cart builder worked at Studebaker (or Peugot or Durant-Dort which became General Motors) it would be bad advice, bc they turned into a car company. Many cart companies did, bc the people with the knowledge of suspensions, etc developed those skills in cart making
Except the point of the jaded person is that building transportation vehicles is a bad industry to get into, because there is a massive switch from cart building to automobile and truck building on the basis that it has become impossible to build a full automobile as a single person.
> I really dislike people that got into a thing and then try to discourage others. “Don’t be like me! I wasted my entire life” which is bullshit from a jaded person that lost passion. Telling people to stay away from graphics programming is not how to entice tomorrow’s John Carmack.
Given that almost everyone who wants to be a "graphics programmer" is also somehow gaming industry adjacent, it is extremely fair to ward them off from the folly. I do the same for anyone wishing to do "VLSI hardware engineering." If you have the skill to do either of those, you almost CERTAINLY have the skill to do something else that is almost as interesting and not saddled by garbage employers.
The primary problem with being a "graphics programmer" beyond a tyro is that the biggest consumer of graphics programmers is the game industry which is a notoriously shitty and wretched industry. Every ... single ... employer. So, from the point of view of future potential, "graphics programmer" has very little upside over pretty much ANY other type of programmers.
Second, "learning graphics programming" is like "learning phone programming", you spend more time fighting godawful software infrastructure more than you do actual programming. AI actually kind of helps this, but it doesn't completely remove the fact that 80% of your knowledge has a half-life of 18-24 months.
Finally, saying "I want to learn graphics programming" is like saying "I want to learn engineering." What "graphics programmer" means is vastly underspecified. 3D game rendering and 3D/2D CAD rendering and 2D vector rendering are completely different skillsets. GPUs are great at the first and kinda okay at the second and kinda lousy at the third. Which kind of "graphics programmer" are you even going to be?
> 3D game rendering and 3D/2D CAD rendering and 2D vector rendering are completely different skillsets.
Actually, no. Autodesk acquired Alias, and got the Maya animation system, in 2005. Soon after, the CAD tools had cinematic quality output. The architectural people loved this - good looking, accurate architectural renders came out. They especially liked that lighting worked, and you could use the CAD system to place real-world light fixtures.
> Second, "learning graphics programming" is like "learning phone programming", you spend more time fighting godawful software infrastructure more than you do actual programming. AI actually kind of helps this, but it doesn't completely remove the fact that 80% of your knowledge has a half-life of 18-24 months.
What kind of knowledge are you talking about here? learnopengl.com is still relevant today for its technical knowledge of fundamental graphics techniques, in spite of OpenGL itself slowly dying. The knowledge itself is overwhelmingly transferable to whatever modern graphics API you’re using.
With mobile development, I can see that you’re mostly learning surface level tools and APIs, which get changed frequently as a new iOS version comes out. But with graphics it’s actually the opposite — most large features come with new hardware, and because most of your customers are generally using older hardware, you can’t even use those new features until the majority of users have upgraded and support it (usually with a new console generation).
Regardless of what you think of the games industry, graphics programmers are highly in demand and paid relatively very well. It’s hard and there’s a lot of surface area to cover to really be excellent, but the knowledge is relevant, longstanding, and rewarding IMO.
> Which kind of "graphics programmer" are you even going to be?
If one follows OP's advice, none at all.
> it is extremely fair to ward them off from the folly
I completely disagree with this. It is a damaging and unproductive attitude to teach beginners and young people. Who are you to say their future career prospect is a folly? The only thing that defines the talents of tomorrow is that they have ignored such advice and then pushed forward the state of the art in ways you couldn't even imagine. This is how progress works.
> Who are you to say their future career prospect is a folly?
Someone who watched an industry chew up and spit out far too many young people. That's who and that's why I'm qualified.
> The only thing that defines the talents of tomorrow is that they have ignored such advice and then pushed forward the state of the art in ways you couldn't even imagine. This is how progress works.
You would encourage an individual to walk a path that is 90%(95%/99%) likely to damage their life horribly in the name of "progress"? Really? That's ... more than a little inhumane.
Would you encourage someone who likes writing to be a "journalist" right now? I should hope not. I wouldn't tell them to not write, but I sure would try to find a better way to channel that skill.
Or perhaps, if we substituted "pro basketball player" for "graphics programming" perhaps you could see the folly? Although, at least the individual playing basketball would gain the immediate benefits of being quite fit while the graphics programmer would enjoy no such side benefit.
4 replies →