• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 03:14
CEST 09:14
KST 16:14
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
[ASL22] Ro16 Preview: Holy Diver5[ASL22] Ro16 Preview: Rough Waters10[ASL22] Ro24 Preview: Siren's Call8[ASL22] Ro24 Preview: Summer's End9Serral wins HomeStory Cup 2915
Community News
Weekly Cups (Sep 7-12): SHIN, ByuN, MaxPax double down1StarCraft open world shooter announced at BlizzCon98Weekly Cups (Aug 30-Sep 7): herO thrives amid growing schism10Official StarCraft website teases new content ahead of BlizzCon?179Stellar Fest TWO the Moon (Dec 16-20)9
StarCraft 2
General
Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool Has online-only competition during the pandemic changed your enjoyment of pro SC2? How do you feel about the StarCraft shooter announcement at BlizzCon 2026? Weekly Cups (Sep 7-12): SHIN, ByuN, MaxPax double down StarCraft open world shooter announced at BlizzCon
Tourneys
RSL Revival: Season 6 - Qualifiers and Main Event RSL goes to London! 2026 Offline Finals Nov 21-22 SC2 AI Tournament 2026 Fall Sparkling Tuna Cup - Weekly Open Tournament KSL Week #92
Strategy
[H] ZvP Mid-Late Game: Stalkers Collossi HT
Custom Maps
Nexus Wars 2021 GUIDE [M] (2) Industrial Park
External Content
Mutation # 543 Enhanced Defenses The PondCast: SC2 News & Results Mutation # 542 The Ascended Mutation # 541 Binary Choice
Brood War
General
New 3v3 BGH Ladder (and more) on ShieldBattery! BGH Auto Balance -> http://bghmmr.eu/ Remastered crash fix suggestions Syncronization issues and can't find games a Announcement on the JEDI Ringing
Tourneys
[ASL22] Ro16 Group D The Casual Games of the Week Thread Small VOD Thread 2.0 BWCL Season 65 Announcement
Strategy
Replay Review Process - What do you do? Simple Questions, Simple Answers Odyssey Mineral Stack Saturation Game Theory for Starcraft
Other Games
General Games
Warcraft III: The Frozen Throne Nintendo Switch Thread Stormgate/Frost Giant Megathread EVE Corporation Diablo IV
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
[TL LoL EUW IHs] Teemo shall perish
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Community Thread
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine Russo-Ukrainian War Thread Canadian Politics Mega-thread Post Your Watch!
Fan Clubs
MarineLorD Fan Club The Creator Fan Club The ShoWTimE Fan Club
Media & Entertainment
Movie Discussion! [Manga] One Piece Diablo Animated Series on Netflix
Sports
Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 MLB/Baseball 2023
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List Northern Ireland Global Starcraft
Blogs
[meme] I finally understa…
LUCKY_NOOB
Virtual Romance, Real-Life C…
TrAiDoS
Regacy Esports:Our Goa…
regacyesports
Dreaming of BW patches (mod…
c3rberUs
Customize Sidebar...

Website Feedback

Closed Threads



Active: 12385 users

2 prog. q's

Blogs > Senff
Post a Reply
Senff
Profile Blog Joined September 2002
United States360 Posts
August 06 2008 01:49 GMT
#1
Well I got two more great questions about programming, so I thought I'd answer them again.

RtS)Night[Mare asked,
"I'd like to get into game programming anywhere in the future. Do you have any advice on what should i focus my attention in? Im still in college btw.

Do you have any good book to recommend to me? Do you think reading books of programming help? (because im more of a "teach me" person rather than to read a book by myself). Also, what languages do you think are worthier for this kind of programming?

About general programming, you said it helps tons to be good at graphics. I've always struggled with this. Do you have any advice here as well?"

I'll answer the last one first: I'm not talking about general programming there. It can help you get a job in the graphics industry. When looking for programming jobs, they're not going to ask if you're good at graphics, unless that's explicitly part of the job that you're applying to.

As for game programming, lately I've been delving into XNA. Namely, it's a free framework for creating games, has a very minimal learning curve (although to do the best stuff it can be a pain), and in general is fun to program with. It is C# code. There are a few books out for it, but more important are the websites that go over the information related to it - you'll learn far more from those. If you wanted to learn a separate system that isn't so babyish (they really do give you a lot of help with stuff in XNA), then I'd suggest DirectX and C++. There's a ton of books out on those, and I don't know any in particular, because I was too lazy to learn DX, and wasn't going to make a game in C++, so no reason to look for them.

Next, fonger asked,
"As a professional, how do you deal with the inevitable (in my case anyway) "but OMG if I abstract this just one more level, think of the possibilities!" and the subsequent torrent of design issues that crop up? This is usually a fast track down the burnout trail for me when I start off on a new project.

Essentially I spend all my time working on a perfect, "elegant" framework that will do all I want and just about inifinity more, and end up burning out before I even start on the application itself.

There are of course exceptions, but I've noticed that any software that actually functions and I end up releasing invariably has awful and unmaintainable code.

So in a nutshell:

1) Do you have - or have you at any point had - trouble with this sort of thing?
2) How did/do you deal with it, and do you still approach a new project with a view to putting it all together in the most elegant way possible?
3) In a professional environment, how often do you have to compromise code integrity to meet a deadline?"

I've never really had much of a problem with this, but I can understand why you might. I do view the project in terms of the most elegance, but I keep one thing in mind: Simple is always the most elegant (assuming it works). When I go to design a system, I ONLY make an abstraction when there is a clear need for it. In terms of refactoring, I constantly refactor in order to keep the code clean - there is only very rarely any time when my functions are not lean and clean. I have never sacrificed quality to meet a deadline. There is a strange reason for this, though. In terms of sheer speed, I can go quite fast sometimes. I recently had to take over a project with less than a week and a half to go on it, and I was able to fully rewrite the garbage that my boss at the time wrote (he no longer works there), and finish my stuff with 3 days to spare for our QA team to test it moderately well.

I've decided to develop a game on this blog. I'll only post snippets of code, but when I make an update, I'll post about it here and you can email me if you want the full code-listing. I'm going to "test-driven design" it to show its powers. It will be written in VC# in Visual Studio 2008, which requires .NET 3.5. If you want more information (such as how to download that and such), you can email me at wolfgangsenff@hotmail.com.

It is text-based for now, but will probably be moved to graphical in the future; I just don't want to bother going that route now. This will be mostly for people who know little about program design, but also complete beginners. However, I do think some more advanced coders can gain insight into different ways to think about modeling systems - I pride myself on my ability to think about things in a way that works really well for designing systems.

Does that sound okay?

*****
Jesus: The Other White Moses
BottleAbuser
Profile Blog Joined December 2007
Korea (South)1888 Posts
August 06 2008 01:52 GMT
#2
This sounds awesome. I know I'm going to be reading this.
Compilers are like boyfriends, you miss a period and they go crazy on you.
Drakill Tannan
Profile Joined July 2008
Mexico13 Posts
Last Edited: 2008-08-06 02:14:48
August 06 2008 02:13 GMT
#3
thank you very much!
edit: this is nightmare, on my brothers account, i forgot he made once :p
Aerox
Profile Blog Joined September 2004
Malaysia1213 Posts
Last Edited: 2008-08-06 02:54:54
August 06 2008 02:38 GMT
#4
Request to bold the questions at least or something for a little better readability. Just highlight the lines and press the big B button.

The game development postings is OK with me. I've already bookmarked this blog.
------------------------
Question:
I am doing my final semester of CS. Well, sort of. I am currently mulling over the decision to go for a programming project or industrial training as my elective. I would finish earlier if I went with the programming project but the catch is that I only have 14 weeks while taking industrial training would require me to stay back for another semester. And yeah, I still have 3 other subjects alongside the elective.

What are your thoughts on this? Do you think the stay back is worth the industrial training or should I just choose PP, finish, graduate, and get out in the real world, earn bigger moolah than being an intern?

Do you think I'd have enough time if I chose to make a 2D game as my programming project? would it be too much work to make the game multiplayer? I wonder if making a MUD would be just fine for a project?

I am obviously trying to get into the game industry.

My skill level would be having gone through a couple of 2D game programming books (WinAPI) but no fully self implemented games of my own yet (which is why I'm considering my first to be my programming project). Main languages are the popular 3 Cs and Java. Do I have enough time?

I haven't picked up DX yet. Trying to start in the next week or so(no matter which elective i choose).
"Eyes in the sky."
AcrossFiveJulys
Profile Blog Joined September 2005
United States3612 Posts
August 06 2008 03:29 GMT
#5
On August 06 2008 11:38 Aerox wrote:
Request to bold the questions at least or something for a little better readability. Just highlight the lines and press the big B button.

The game development postings is OK with me. I've already bookmarked this blog.
------------------------
Question:
I am doing my final semester of CS. Well, sort of. I am currently mulling over the decision to go for a programming project or industrial training as my elective. I would finish earlier if I went with the programming project but the catch is that I only have 14 weeks while taking industrial training would require me to stay back for another semester. And yeah, I still have 3 other subjects alongside the elective.

What are your thoughts on this? Do you think the stay back is worth the industrial training or should I just choose PP, finish, graduate, and get out in the real world, earn bigger moolah than being an intern?

Do you think I'd have enough time if I chose to make a 2D game as my programming project? would it be too much work to make the game multiplayer? I wonder if making a MUD would be just fine for a project?

I am obviously trying to get into the game industry.

My skill level would be having gone through a couple of 2D game programming books (WinAPI) but no fully self implemented games of my own yet (which is why I'm considering my first to be my programming project). Main languages are the popular 3 Cs and Java. Do I have enough time?

I haven't picked up DX yet. Trying to start in the next week or so(no matter which elective i choose).


It's very possible to make a game on your own in a semester. I did it for a programming projects class my 2nd year and it was a lot of fun... there's nothing like coding your own game
goldrush
Profile Blog Joined June 2004
Canada709 Posts
August 06 2008 04:44 GMT
#6
On August 06 2008 10:49 Senff wrote:

I've decided to develop a game on this blog. I'll only post snippets of code, but when I make an update, I'll post about it here and you can email me if you want the full code-listing. I'm going to "test-driven design" it to show its powers. It will be written in VC# in Visual Studio 2008, which requires .NET 3.5. If you want more information (such as how to download that and such), you can email me at wolfgangsenff@hotmail.com.

It is text-based for now, but will probably be moved to graphical in the future; I just don't want to bother going that route now. This will be mostly for people who know little about program design, but also complete beginners. However, I do think some more advanced coders can gain insight into different ways to think about modeling systems - I pride myself on my ability to think about things in a way that works really well for designing systems.

Does that sound okay?


If you go through with this (nothing against you, it's very common for projects to go unfinished), it would be awesome to learn a bit about how to properly design and code a game. In other words, go for it!
ulszz
Profile Blog Joined June 2007
Jamaica1787 Posts
Last Edited: 2008-08-06 04:57:26
August 06 2008 04:56 GMT
#7
this is really helpful. i'll probably have a question in the near future =). i'll be starting my cs degree in a few weeks! i was wondering do you know of a website where you can post code and people review it? i have been making a black jack card counting game and when i finish i was hoping to get my code looked over so i could become aware of bad habits. thanks

oh ya forgot the game is programmed in c++ with allegro, which is a game programming library.
everliving, everfaithful, eversure
Aerox
Profile Blog Joined September 2004
Malaysia1213 Posts
August 06 2008 09:37 GMT
#8
On August 06 2008 12:29 AcrossFiveJulys wrote:
Show nested quote +
On August 06 2008 11:38 Aerox wrote:
Request to bold the questions at least or something for a little better readability. Just highlight the lines and press the big B button.

The game development postings is OK with me. I've already bookmarked this blog.
------------------------
Question:
I am doing my final semester of CS. Well, sort of. I am currently mulling over the decision to go for a programming project or industrial training as my elective. I would finish earlier if I went with the programming project but the catch is that I only have 14 weeks while taking industrial training would require me to stay back for another semester. And yeah, I still have 3 other subjects alongside the elective.

What are your thoughts on this? Do you think the stay back is worth the industrial training or should I just choose PP, finish, graduate, and get out in the real world, earn bigger moolah than being an intern?

Do you think I'd have enough time if I chose to make a 2D game as my programming project? would it be too much work to make the game multiplayer? I wonder if making a MUD would be just fine for a project?

I am obviously trying to get into the game industry.

My skill level would be having gone through a couple of 2D game programming books (WinAPI) but no fully self implemented games of my own yet (which is why I'm considering my first to be my programming project). Main languages are the popular 3 Cs and Java. Do I have enough time?

I haven't picked up DX yet. Trying to start in the next week or so(no matter which elective i choose).


It's very possible to make a game on your own in a semester. I did it for a programming projects class my 2nd year and it was a lot of fun... there's nothing like coding your own game

What kind of game did you code? 2D? 3D? Which framework/library? How many levels? Multiplayer or not?

I guess I may go with the programming project. I just need to estimate what types of games are feasible in a semester.
"Eyes in the sky."
Please log in or register to reply.
Live Events Refresh
Next event in 3h 46m
[ Submit Event ]
Live Streams
Refresh
StarCraft: Brood War
Rain 1964
GuemChi 601
actioN 371
Hm[arnc] 84
sSak 83
Dewaltoss 65
Aegong 27
yabsab 24
Noble 18
Icarus 5
Dota 2
febbydoto179
Other Games
summit1g13338
WinterStarcraft468
ceh9413
XaKoH 208
Happy10
Organizations
Other Games
gamesdonequick1007
BasetradeTV41
[ Show 14 non-featured ]
StarCraft 2
• Berry_CruncH339
• LUISG 13
• Letter145
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• iopq 1
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• lizZardDota2283
League of Legends
• Rush1753
Upcoming Events
IntoTheTV X SOOP
3h 46m
herO vs SHIN
Percival vs ByuN
RotterdaM Event
9h 1m
Replay Cast
16h 46m
GSL
1d 3h
Replay Cast
1d 16h
GSL
2 days
Shopify Rebellion Sundays
2 days
Spirit vs Mixu
Replay Cast
2 days
Afreeca Starleague
3 days
Shine vs Rush
WardiTV Weekly
3 days
[ Show More ]
Monday Night Weeklies
3 days
Sparkling Tuna Cup
4 days
Afreeca Starleague
4 days
Light vs EffOrt
PiGosaur Cup
4 days
Kung Fu Cup
5 days
The PondCast
6 days
Replay Cast
6 days
Liquipedia Results

Completed

KCM Race Survival 2026 Season 3
Blizzard Classic Cup 2026
Big Dog Cup 2026 Div 1

Ongoing

K-JUNGMAN
ASL Season 22
Super Anchor Qualifying S3
CSL 2026 AUTUMN (S22)
Acropolis #5
Calamity Invitational
Logitech G Play Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #3
BLAST Open Fall 2026
Esports World Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026

Upcoming

Acropolis #5 - GSA
Acropolis #5 - GSB
Acropolis #5 - GSC
SC4ALL II: Brood War
HSC XXX
Stellar Fest 2: Lunar Cup
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
Copium Cup
PGL Major Singapore 2026
Stake Ranked Episode 6
BLAST Rivals Fall 2026
IEM Beijing 2026
Stake Ranked Episode 5
PGL Masters Bucharest 2026
1win Private Club #2
Thunderpick World Champ. '26
ESL Pro League Season 24
Stake Ranked Episode 4
1win Private Club #1
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.