logoalt Hacker News

KellyCriterionyesterday at 7:04 PM20 repliesview on HN

Today, I would not recommend anybody to go into graphics programming:

I started in 2001, when NVidias first Geforce 1 ("the Gigatexl shadercard") was first announced: The field developed since then with so much speed and innovations, it blows my mind of. Compared to what we could do 25years ago, the tech today is just fu*ing impressive.

Though, with this impressiveness comes a big "but": The space is developing at a speed which is really really scary. Nvidia came up with AI-based effects to influence scene & assets on their own - back then, we wouldnt have even thought about that this will be possible some day in realtime.

I do not know if its possible at all to be a "decent pro" in this field now - let me use other words: "Where is todays Jon Carmack?" - he was famous for squeezing everything out of the hardware, using ideas very hidden in the community etc. - today, there is not any competitive moat for people like him (he actually lives on his legacy), and that is because the field is so vast and evolving so fast that there is no chance to become the next one


Replies

sphyesterday at 7:39 PM

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!

show 6 replies
fasterikyesterday at 11:44 PM

Computer graphics is intrinsically interesting and rewarding. It sits at the intersection of several important fields, from computer science to mathematics to theoretical physics to low-level programming.

Maybe steering away from it is good advice for someone who's looking for a career transition but doesn't care about what they're actually doing. But that's not a good way to go through life; my advice to such a person would be to follow what they find interesting and valuable, and constantly challenge themselves to learn new things. Then deciding whether or not to learn computer graphics is relatively straightforward and it will be a net positive for the right kind of person. Even if they don't make it a career, the skills transfer well to many other areas.

bsenftneryesterday at 7:11 PM

Graphics programming has this one very, very useful aspect, exponentially more valuable today: the matrix algebra pipelines, and then the requirement to 'think in matrix transforms' is a wonderful and visually engaging way to get your foundation for machine learning math.

show 2 replies
Profanyesterday at 8:12 PM

How about people like Inigo Quilez? I'd say they're still quite high profile in today's landscape. And the main thing is I think there's just way more people in the field overall today too, not everyone can be famous! It's totally fine to not be as high profile as literally one of the most well known people in a field, it's fine to just do it because you enjoy it! The math and art of graphics (and games in general) programming is beautiful in and of itself.

qingcharlesyesterday at 11:56 PM

Right. Most of the clever stuff that Carmack is famous for moved from software into hardware.

By argument about not getting into graphics programming is different -- are 3D engines, with their vertices and textures, going to even exist a few years from now? Or will everything be rendered directly by an AI world model? How much code will a game contain, or will it simply exist in a series of cleverly-worded prompts?

ossgamesnoexisttoday at 2:57 AM

> "Where is todays Jon Carmack?"

Where are today's games with sufficient insight on their technical aspects, to the level we got with Commander Keen, Wolfenstein and Doom?

Dwarf Fortress solved some outstanding lag issues involving tracking owned objects. But if you ask a random person HOW, we don't actually have a serious clue.

Think of well known instances of big developers having their code exposed and we have... I dunno, Valve's TF2 leak and their incredibly rare Dota 2 between the lanes posts?

There is no John Carmack now. You're saying its because there's no large space to improve on like how early people had to. I say it's not because the struggles and unique problems disappeared, but because there isn't a benefit to that type of transparency anymore.

hoistthesalesyesterday at 7:26 PM

JC was a bit of an anomaly but also his image is mostly coming from players and journalists. Developers struggled to use the later id software engines (partly why UE won that war).

You don’t need to be JC to earn a decent living as a graphics/game programmer.

cjkyesterday at 9:52 PM

Couldn't disagree more. I've only recently started digging into graphics programming and I've found it incredibly rewarding. It's the _one_ area of expertise that I don't yet have that has been preventing me from solo-developing a 3D game engine.

It takes five minutes of trawling through the videos on the GDC Vault to see all of the clever and interesting ways modern graphics engineers are eking every bit of performance out of modern hardware. Is it as clever or innovative as Carmack's fast inverse square root? I don't know. I'm not sure how to compare those things. But there is still plenty of room for that flavor of work for those that are interested.

show 1 reply
dylan604today at 12:00 AM

> "Where is todays Jon Carmack?" - he was famous for squeezing everything out of the hardware,

Spinning that another way, there's Bill Gates (not sure of the authenticity though) saying something along the lines of why would he pay to spend that kind of time when CPUs/RAM/HDDs are getting faster/cheaper; users can just upgrade. If we determine which method is more successful based on their worth...

show 1 reply
groundzeros2015yesterday at 7:57 PM

There is more to graphics than AAA games or blockbuster movies.

jayd16yesterday at 8:24 PM

You can still read a bunch of papers and be first to market using exotic tech. The main issue right now is that games are so incredibly high budget and the bar is so high that you really need to stand out in many ways.

We see folks posting photo real, Gaussian splat FPS maps here every now and then but without also innovating on gameplay its just a tech demo. Those don't cut it these days.

psygn89yesterday at 8:34 PM

I think the people that go into this field today (and for a while now) probably do it for the love of it, not the pay or widespread fame of doing something extraordinary in the field. Not that you can't have it all, but not being some legend I, well, I think that's a strange reason for someone already interested in game dev not to step into the field?

markus_zhangyesterday at 7:37 PM

What if I just want to program some rendering engine for a game that looks like DOOM 3 and its predecessors? I think that’s still quite doable?

show 1 reply
jzer0cooltoday at 2:58 AM

Any insights? If not traditional Computer Graphics due to change, where might be the good to spend your attention within the field. Or is OP saying to stay away?

lp4v4nyesterday at 11:34 PM

Very interesting insights, thanks for this.

Indeed "be a graphics programmer" nowadays sounds like "be an assembly programmer".

A kind of time waster for a nerd with too much time in their hands.

halestockyesterday at 7:26 PM

Huh? Just because you're not going to become the next graphics programming legend you think it's not worth getting into graphics programming at all?

show 2 replies
nicebyteyesterday at 10:04 PM

Ridiculous justification.

"Where is todays Jon Carmack?"

Where is the "John Carmack" of ML? Where is the John Carmack of physics? This hero worship crap needs to be left in the past. There isn't a singular active researcher you can point to and say "this person has made the field what it is today". There are very influential papers, but they all have multiple contributors. Is that really a valid reason to not engage in a particular area of research or engineering?

And who cares anyway? No matter what you choose to do with your time, chances are that you will not have that much of an impact on your chosen discipline. You should choose how to spend your time based on whether an activity genuinely interests you, not on whether you think it would be easy to get recognition.

show 2 replies
redlewelyesterday at 10:59 PM

Boooooooo

Keep learning yung ones

anthkyesterday at 10:12 PM

Fabrice Bellard.