4 ms·
More like "The Harsh Truth About Me" I'm a 30+ year veteran of both the indie and mainstream game industries. I've completed and released 4 titles solo. I once
by psyc 5y ago
More like "The Harsh Truth About Me"
I'm a 30+ year veteran of both the indie and mainstream game industries. I've completed and released 4 titles solo. I once transferred my "non-transferable" games/3D/Unity knowledge to a dream job in Oculus Research. More than that, I've transferred my somewhat-game-specific ways of thinking about computation, simulation, and UI/UX to boring business jobs to great effect. Use your head and don't be so literal about what a transferable skill is. It needn't be memorized function signatures from the Unity API.
If you're looking to commiserate and feel better about how hard game programming is (and yes, it's hard) then this article is for you, maybe. Probably not. I don't know what good it will do you, but you can commiserate and feel better about quitting and finding something you like better. And if you don't really like game programming, obviously don't do it. But realize that not finding it rewarding is a statement about you. I've found it immensely rewarding in all the usual way$.
But if you're looking for anything constructive about becoming a better game programmer, this article may hinder you. It depressed me to read and to think that other people are going to read it and agree with it.
- k__ 5y agoGood points. I knew a Flash dev who failed miserably after Flash went down the drain. I also knew a bunch who switched to other tech no problem. I know a bunch of smart people who never finish anything, but I also know many that do.
- cableshaft 5y agoAs a former semi-prolific Flash game dev I will say that nothing has really compared to working in that and I can no longer crank out games like I could when Flash was the big thing. Although that being said, part of that may be my standards for what constitutes a finished game have gone up a lot since then, probably.
- gopher_space 5y agoI think the author just needs a break and a little perspective. As you say they're wildly off the mark regarding transferrable knowledge. They even say > Especially for an indie dev– you are more than just a code monkey. You will have to know a bit of everything. And even in traditional gaming, most developers seem to know more than their narrow field of coding (just my impression from interviews etc). at the end. They're clearly aware of the skills they've picked up.
- travisgriggs 5y agoIs the disconnect on skills around the semantics of "transferrable"? Your reply and parent point out that you see lots of skill transfer. But that's "you." What about from a prospective employer's point of view? Here's a totally different example of the same. I spent 18 years getting really familiar with Smalltalk (specifically VisualWorks). Really familiar. I wasn't afraid to implement goto by mucking with context objects. If I could imagine it, I could do it. Learning and being proficient in Smalltalk has given me huge transferrable skills in modeling, messaging, factoring, abstraction, and so many other things. But telling a prospective employer that one of my skills is to rock things with Smalltalk, isn't very transferable at all. Getting them to accept that I've transferred those skills to be a better Python, Kotlin, C, Linux, Elixir, Swift guy is a long shot. So it's not directly transferrable.
- lupire 5y agoHalf the languages you named didn't exist when you started doing Smalltalk. So how can you be handicapped?
- travisgriggs 5y agoI'm not claiming I'm handicapped. What I'm saying is that a "transferrable skill" is a vague term. We can, if we put our mind to it, transfer skills from just about any domain to another. But just because we can put it (the skill) to continued use, in an altered domain, doesn't meant that others will value it as a transferrable skill. It's kind of like trying to transfer credits between colleges. If they don't recognize the skills you've acquired at your former school as transferrable, you don't get to transfer them, and have to retake classes that may seem pretty redundant.
- jpetso 5y agoSo, transferable yes, but marketable no. I would classify those as different things.
- dudeman13 5y ago
- meheleventyone 5y agoSeconded. I also found my skills transferred easily outside of games themselves.
- sodapopcan 5y agoI'm just getting into game dev as a hobby and stopped reading it for the reasons you stated :)
- dudeinhawaii 5y agoI completely agree. My game dev past in Massively Multiplayer Online Games directly led to work at FANG in cloud engineering. Work on optimizations, storage, comms speed, and stateless flows led to large improvements in product performance. All of that emerged from running into roadblocks on games engines. Even rendering was useful in understanding how to get better performance and frame-rate on client applications -- engineers don't typically think in terms of frames-per-second when writing UI code. My experience in cache optimization for game objects directly applied when used to speed up trading platform transaction speeds. Experience with threading was also given and not common in normal engineering (at least at the time). I actually think it's the opposite. Nearly every aspect of game development is challenging and transferrable. I can't speak entirely for people who did more of their work in Unity (I was in the 'build it from scratch' generation) but I suspect any high-performance game requires an equivalent level of getting deep down into the code and having a critical understanding of your structures, algorithms, and how your computer primitives fundamentally work and interact. That alone will usually put you into the upper tier of applicants to any tech company. Your resume, if written correctly, should easily highlight all of this.
- lfowles 5y ago> but I suspect any high-performance game requires an equivalent level of getting deep down into the code and having a critical understanding of your structures, algorithms, and how your computer primitives fundamentally work and interact. I don't think most indie devs developing games are making "high-performance games". Rather they're spending most of their time in the "business logic" of the game, since most optimizations will have been handled by the engine (I don't think this is necessarily a bad thing either!). I definitely feel that I learned more about data structures, algorithms, and performance optimization outside of the game dev world than in it.
- oumua_don17 5y agoAnd I too completely agree. I agree that I had a head start with learning graphics programming in C in 1996 and have since contributed to developing game engines, games using those engines and most recently (3-4 years back) prototyping the integration of ML models into gameplay. Try doing that with acceptable frame rates and it's a tiring but fun challenge if you like such stuff. I have swapped between writing games/tools/libraries and working at FAANG the past 7 years and I can say that I get to work as Research Engineer at FAANG's only because of the prior game programming experience. Like anything else, it's not for everybody but game development is very interesting and IMHO cheap way that is at the intersection of some math/physics/performance/complex logic all in 1. This graphics deep dive also gave me opportunities to work in 3D scientific visualisation, augmented reality etc. The only problem with game development is learning it from scratch/ground up while worthwhile is a long, arduous route; early starters have an advantage and now with game engines like Unity you may not have to poke under the hood but without that poking you cannot master the graphics tech stack. But then we can say that about mastering any subject!!!
- felipellrocha 5y agoTo be fair to the author, > More like "The Harsh Truth About Me" This is true of *all* advice
- myfavoritedog 5y agoA very difficult aspect of indie game development is that the quality of the end product is easy to discern. We all can tell if someone creates a game that's got good graphics, sound, gameplay, is fun, etc. The indie developer who does all that has a great deal of skill in multiple areas. The harsh truth is that not everyone can be that good. My daughter when she was around 6 years old loved to put on princess dresses and dance around singing. In her mind she looked and sounded like the cartoon characters in the movies. One day, I pulled out an old VHS camera and set it up on a tripod for her. She danced in front of it for half an hour, recording a bunch of songs. Then she sat down to watch it. After the first few minutes, she turned to me with tears running from her eyes and yelled, "I stink!" She was inexperienced at dancing and singing, but she knew immediately from watching herself that she wasn't very skilled.
- staticman2 5y agoThere's also a subjective aspect to art. A game that I find tedious could be someone else's favorite game. Your daughter realized she didn't meet her own standards of good, but that doesn't mean she would agree with everyone else on what singers are good or bad.
- xsmasher 5y agoThere's a great audio clip from Ira Glass about the gap between your taste and your ability. https://vimeo.com/85040589 https://vimeo.com/85040589
- mbrodersen 5y agoAgree. I was in the games biz for 15 years and found that the skills I learned were highly sought after by non-biz companies. Especially knowing how to make software run fast and being able to invent and implement unique solutions to hard problems that you can’t just download a framework or library to fix. I will also say that the smartest and best developers I have ever worked with was in the games industry. However the pay and life balance is better outside of the games industry so I switched.
- boppo1 5y ago>being able to invent and implement unique solutions to hard problems that you can’t just download a framework or library to fix. The first step on this is really learning my algorithms and data structures, no? I'm a 'needs frameworks' programmer at the moment and I often hate what I do because programming by scouring reddit for something that isn't well documented is beyond demoralizing. If I could just build what I need on the fly that would be luxurious.
- mbrodersen 5y agoAnother fun way to learn this is to make your own rogue like game. There is a great online community of people who help each other building rogue like games. You learn a lot of interesting ways to think about algorithms/data structures by doing that. And it is fun!
- mbrodersen 5y agoYes you are right. That’s what you learn at good universities: all the core data structures and algorithms you can use to build whatever you want. However you don’t need to go to University to learn this. There are great books on algorithms and data structures you can read to learn it as well. Playing around with different algorithms/data structures in your own non-work code is a fun way to learn.
- boppo1 5y agoHey thanks! I've been excited lately by building up a skillset for (hopefully) an entry-level graphics programming job because I figure it'll have a high intellectual ceiling. I almost read this article.
- scsilver 5y agoThere are problems that exist though. As a general creative stepping into designing vr environments in unity(which is just a Game) I want a platform to attract users from, I want a demo gallery where a user can step into my world and try it out for a few seconds, like walking around a mall. I think we are still a bit away from that sort of exposure/tooling/marketing/platforming for indie devs.Its just sooooooo much work to create a project like this and get people to experience it. I guess I could be making a Roblox game... But that just doesn't have the freedom or portability.