Re: What is programming in the real world?
Posted: Mon Aug 03, 2009 2:35 am
Exaggeration can be fun.
The Place to Start for Operating System Developers
http://forum.osdev.org./
But it doesn't give a "greenhorn" a good idea of what he might actually encounter. Worst Case / WTF "war stories", while certainly entertaining and quite possible in the business world, don't paint a proper picture of your average programming job.Hobbes wrote:Exaggeration can be fun.
lol thats why I really want to work on embedded devices someday after college.. the one place where OS deving is usefuldude101 wrote:I'm glad I'm in the embedded industry. If I can't access registers directly I will never be satisfied.
MessiahAndrw wrote:I got into the video game industry because it is more challenging than most general programming. I myself specialize in graphics and low level optimization (this covers material systems, spacial divisioning, LOD'ing, shading algorithms (deferred rendering, lighting, post-processing effects), writing cross-platform (consoles + Windows) renderers, scalable multi-threaded rendering for multi-cored/SMP systems).
There are other fields within [url="http://en.wikipedia.org/wiki/Game_programmer"]video game programming[/url], some challenging than others. For example, physics (deform/destruct the terrain in real time, handle hundreds of on-screen objects), networking (predicting/extrapolating data that doesn't exist, synchronizing time across connections that constantly change), AI (from path finding and fuzzy logic, to neural networks), tools (writing a level editor, material editor, AI/event editor, model exporter), and the list goes on.
Of course, not every video game company develops their own tech from scratch (they use libraries and engines) so they just focus on game play mechanics (depending on the game at hand this can also be a quite complex topic), but most companies do still have a small team of specialists since even commercial engines they license don't do everything out of the box for every project.
Very few small companies, most mid sized companies, and virtually all large companies, do develop their own in-house engines and invest in game engine R&D. Which, for a few companies, technology and being state-of-the-art in an industry that is always evolving is their mission. You can usually spot these companies when give talks at trade shows like GDC.
For those who enjoy playing with registers and bit twiddling, there is the handheld market (for example, Nintendo DS) where your code is directly ran on the bare hardware and you have full control over processor(s) and graphics accellerators (perhaps you'd enjoy writing a real-time messaging system/kernel for communicating between tasks on two CPUs with slighting different architecture). This once use to be the area of console programming, but the latest generations of consoles abstract these behind APIs (like DirectX and the Windows headers on the Xbox 360).
To sum it up, I became a game programmer for the challenge to push my skills and the excitement of keeping up with state of the art techniques. Every project is different, and I have high job satisfaction at end of the day when I see my code and/or research being used in an end-product that I'm proud of.
That is true, but like any industries or fields of programmers, usually the only the top in their field are know by others in the same field.dude101 wrote:Glad you like what you do. Game programmers don't get enough credit.