What is programming in the real world?
Re: What is programming in the real world?
Exaggeration can be fun.
- gravaera
- Member
- Posts: 737
- Joined: Tue Jun 02, 2009 4:35 pm
- Location: Supporting the cause: Use \tabs to indent code. NOT \x20 spaces.
Re: What is programming in the real world?
Thanks. To be honest, I look out for every bit of insight into the 'world of work' that I can get. I like articles like these where people talk about the different work environments they experience. Gives me an idea of what I may or may not encounter.
17:56 < sortie> Paging is called paging because you need to draw it on pages in your notebook to succeed at it.
Re: What is programming in the real world?
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.
Every good solution is obvious once you've found it.
Re: What is programming in the real world?
I'm glad I'm in the embedded industry. If I can't access registers directly I will never be satisfied.
Re: What is programming in the real world?
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.
- AndrewAPrice
- Member
- Posts: 2299
- Joined: Mon Jun 05, 2006 11:00 pm
- Location: USA (and Australia)
Re: What is programming in the real world?
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 video game programming, 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.
There are other fields within video game programming, 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.
Last edited by AndrewAPrice on Wed Aug 05, 2009 10:49 pm, edited 1 time in total.
My OS is Perception.
Re: What is programming in the real world?
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.
Glad you like what you do. Game programmers don't get enough credit.
- AndrewAPrice
- Member
- Posts: 2299
- Joined: Mon Jun 05, 2006 11:00 pm
- Location: USA (and Australia)
Re: What is programming in the real world?
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.
My OS is Perception.