Jump to content

Blog with Graham Wihlidal (Senior BioWare Programmer)


alanschu

Recommended Posts

I made references to this chap for doing super creative stuff with the Cell processor (I believe Sony made that shirt for him)

 

Wanted to share this here, although it's less "How to become a game programmer" and more "how to go miles above and beyond and become a child prodigy."

 

One of my favourite people and wanted to gloat that I am therefore cool by association <.<

 

Easily one of the smartest people I know too.

 

 

http://blog.bioware.com/2013/07/25/staff-blog-graham-wihlidal-senior-software-engineer/

Edited by alanschu
  • Like 2
Link to comment
Share on other sites

Turbo Pascal is for whimps. Real men use CC, LN and makefiles :p

 

Interesting chap. Not sure I would advertise starting programming with LOGO :lol:

 

(just kidding)

 

I'll second his advice that great code is not complex, it's elegant and robust. I often spend more time simplifying code after testing initially that it works, then starting to remove code, then remove more code etc. until the very bare bones system that does the job is left. It sometimes drives developers nuts when I keep point out that something they were proud of is not necessary and please remove it, bridge those gaps, take that out, this is redundant etc.

  • Like 1

“He who joyfully marches to music in rank and file has already earned my contempt. He has been given a large brain by mistake, since for him the spinal cord would surely suffice.” - Albert Einstein

Link to comment
Share on other sites

Turbo Pascal is for whimps. Real men use CC, LN and makefiles :p

 

Interesting chap. Not sure I would advertise starting programming with LOGO :lol:

 

(just kidding)

 

I'll second his advice that great code is not complex, it's elegant and robust. I often spend more time simplifying code after testing initially that it works, then starting to remove code, then remove more code etc. until the very bare bones system that does the job is left. It sometimes drives developers nuts when I keep point out that something they were proud of is not necessary and please remove it, bridge those gaps, take that out, this is redundant etc.

And maintenance programmers won't want your head on a stake if you keep it simple, as well. And hey, he could have started out with Turing like me

Edited by Malcador

Why has elegance found so little following? Elegance has the disadvantage that hard work is needed to achieve it and a good education to appreciate it. - Edsger Wybe Dijkstra

Link to comment
Share on other sites

I think a lot of us (developers & IT people) started out in similar fashion. I picked up a Compute! magazine at my uncle's house in 1985ish. As I paged through it I ran across these games you could type in from the back of it, written in BASIC for various 8 bit microcomputers. Later my dad picked me up a Commodore 64 and I learned BASIC and typed in a few of those games. But, some of the type-in programs from the magazine I did not understand. It took me a while to figure it out, but what I was looking at was a BASIC wrapper for a machine language program that was being "poked" into RAM. Of course, once I figured out what was going on, I had to understand it! Which led me to this book:

 

post-46225-0-14012600-1374856445_thumb.jpg

 

Later on I ran into this thing called "copy protection" and picked up another book called "Inside Commodore DOS" which was a programming guide and ROM dump of the 6502 controller board inside the 1541 disk drive.

 

Around 1989 a friend had picked up a Commodore Colt, which was a PC clone. He couldn't figure out how to use it, so I grabbed the gargantuan manuals that it came with. These were basically a verbose guide to MS-DOS and batch file programming. Now that I look back, this one action is where I started my IT career. Because, when I got out of high school in 1992, companies were absolutely begging to hire anyone who knew anything about DOS. I landed a job, learned Windows, Novell, Banyan Vines, etc.

 

I didn't get back to programming proper until around 2006 when the company I worked for was having issues with an old Visual Basic 6 application. I learned a bit and sorted out the problem. But, in doing so I realized I missed an entire avenue of creativity by not pursuing programming further. Not wanting to go sit in a college classroom, I started learning Computer Science on my own. Of course the internet has enough resources on programming and Computer Science for anyone to go well beyond the undergraduate level. When I found MIT's Open Courseware and was able to watch their lectures, my understanding of CS really started to accelerate.

 

Now, I have a foot in both worlds as a Sr. Admin & tool maker. Not as glorious as having worked on something as pivotal as Baldur's Gate, but I'm sure they'd tell us that it's not all peaches and cream on the game development side.

 

 

My advice to anyone wanting to learn programming today? There is a very good place to start, one that, even after you learn more technically difficult languages like C++, will still be of great use to you for years to come...

 

post-46225-0-49104000-1374858955_thumb.jpg

Fere libenter homines id quod volunt credunt. - Julius Caesar

 

:facepalm: #define TRUE (!FALSE)

I ran across an article where the above statement was found in a release tarball. LOL! Who does something like this? Predictably, this oddity was found when the article's author tried to build said tarball and the compiler promptly went into cardiac arrest. If you're not a developer, imagine telling someone the literal meaning of up is "not down". Such nonsense makes computers, and developers... angry.

Link to comment
Share on other sites

Real men learn ANSI C first (you want to mix declarations and statements ? AST says GTFO!) :p

Why has elegance found so little following? Elegance has the disadvantage that hard work is needed to achieve it and a good education to appreciate it. - Edsger Wybe Dijkstra

Link to comment
Share on other sites

  • 2 weeks later...

C/C++ are good stuff. But not the greatest for rapid prototyping when you're trying to learn how game engines work, etc. Just about any library you would want to use in C/C++ has an available Python wrapper.

Fere libenter homines id quod volunt credunt. - Julius Caesar

 

:facepalm: #define TRUE (!FALSE)

I ran across an article where the above statement was found in a release tarball. LOL! Who does something like this? Predictably, this oddity was found when the article's author tried to build said tarball and the compiler promptly went into cardiac arrest. If you're not a developer, imagine telling someone the literal meaning of up is "not down". Such nonsense makes computers, and developers... angry.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...