Comment by bsder
15 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.
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.
> 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"
Are we still talking about graphics programming? Damage one’s life horribly, really? Those poor kids you saw ‘spat out’, are they irretrievably broken? You speak as if people are single-purpose machines, and that there is nothing to learn from adversity and challenge. That skills are not transferable and there is nothing new is there to be discovered.
Turning this around, would I discourage a kid from seriously pursuit a career as an astronaut or racing driver? That has a higher likelihood than most to ‘damage one’s life horribly’.
I honestly cannot understand nor subscribe to this pessimistic worldview, the one that would tell a kid to abandon their dream and go do what they believe society needs. Bollocks to that.
3 replies →