• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 03:12
CET 08:12
KST 16:12
  • 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
[ASL20] Finals Preview: Arrival13TL.net Map Contest #21: Voting10[ASL20] Ro4 Preview: Descent11Team TLMC #5: Winners Announced!3[ASL20] Ro8 Preview Pt2: Holding On9
Community News
2025 RSL Offline Finals Dates + Ticket Sales!9BSL21 Open Qualifiers Week & CONFIRM PARTICIPATION1Crank Gathers Season 2: SC II Pro Teams7Merivale 8 Open - LAN - Stellar Fest3Chinese SC2 server to reopen; live all-star event in Hangzhou22
StarCraft 2
General
RotterdaM "Serral is the GOAT, and it's not close" The New Patch Killed Mech! Could we add "Avoid Matchup" Feature for rankgame Smart servos says it affects liberators as well Chinese SC2 server to reopen; live all-star event in Hangzhou
Tourneys
2025 RSL Offline Finals Dates + Ticket Sales! Crank Gathers Season 2: SC II Pro Teams Merivale 8 Open - LAN - Stellar Fest $5,000+ WardiTV 2025 Championship $3,500 WardiTV Korean Royale S4
Strategy
Custom Maps
Map Editor closed ?
External Content
Mutation # 497 Battle Haredened Mutation # 496 Endless Infection Mutation # 495 Rest In Peace Mutation # 494 Unstable Environment
Brood War
General
[ASL20] Finals Preview: Arrival BW General Discussion BSL Season 21 BSL Team A vs Koreans - Sat-Sun 16:00 CET ASL20 Pre-season Tier List ranking!
Tourneys
[ASL20] Grand Finals BSL21 Open Qualifiers Week & CONFIRM PARTICIPATION ASL final tickets help [ASL20] Semifinal A
Strategy
PvZ map balance Soma's 9 hatch build from ASL Game 2 Current Meta Simple Questions, Simple Answers
Other Games
General Games
Stormgate/Frost Giant Megathread Path of Exile General RTS Discussion Thread Nintendo Switch Thread Dawn of War IV
Dota 2
Official 'what is Dota anymore' discussion LiquidDota to reintegrate into TL.net
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread SPIRED by.ASL Mafia {211640}
Community
General
Things Aren’t Peaceful in Palestine US Politics Mega-thread Russo-Ukrainian War Thread YouTube Thread The Chess Thread
Fan Clubs
White-Ra Fan Club The herO Fan Club!
Media & Entertainment
Movie Discussion! Anime Discussion Thread [Manga] One Piece Korean Music Discussion Series you have seen recently...
Sports
Formula 1 Discussion 2024 - 2026 Football Thread MLB/Baseball 2023 TeamLiquid Health and Fitness Initiative For 2023 NBA General Discussion
World Cup 2022
Tech Support
SC2 Client Relocalization [Change SC2 Language] Linksys AE2500 USB WIFI keeps disconnecting Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List Recent Gifted Posts
Blogs
The Benefits Of Limited Comm…
TrAiDoS
Sabrina was soooo lame on S…
Peanutsc
Our Last Hope in th…
KrillinFromwales
Certified Crazy
Hildegard
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1543 users

Programming, where to start?

Blogs > Kfish
Post a Reply
Kfish
Profile Blog Joined May 2010
Chile282 Posts
July 04 2011 16:22 GMT
#1
So I finally ended my first semester with Java and I could use some tips from the pros out here to guide my way. I have a second semester with java and starting with .NET coming up but I would like to learn more on my own. I have searched and searched for information (theres plenty) but all I know is every language has its pros and cons so choosing a path isn't easy.

I would like to get into software development or the gaming industry someday in the near future and be a profesional that really knows his stuff! I think the toughest part is "I WANT TO KNOW IT ALL," I just have to take it one step at a time.



Thanks in advance





Soleron
Profile Blog Joined September 2010
United Kingdom1324 Posts
July 04 2011 16:29 GMT
#2
Pick a project you want to do (maybe a small game) and then plan out what you need to accomplish this (graphics, sound, input handling, collisions). As you meet each small task, look up the library or code you need to accomplish this (probably start with Java as you know some). You'll soon have found and learnt the most-used libraries for any project.
Essbee
Profile Blog Joined August 2008
Canada2371 Posts
July 04 2011 16:34 GMT
#3
I create games using C# with the OpenGL library.

The pros with C# is that it is very similar to Java but with a more complete library (the lists and dictionnaries are great, it's like arrays but way more complete). Java was my first programming language and C# was just a logical followup to create games since it's better than Java for this option. C++ is probably the most used language to create games but it's old and complicated. Maybe you could earn it later but it's not necessary imo (I may be wrong on this part about C++).

To learn how to create games, I've bought this fabulous book: http://www.amazon.com/Game-Programming-Serious-Creation/dp/1435455568

You should check it out, I'm sure you'll love it.
surprise
Profile Joined January 2010
Germany38 Posts
July 04 2011 17:19 GMT
#4
Is there something you are especially interested in?
UI programming? Finding and developing algorithms? Web development (Not necessarily HTML/JS)?

Think about what would be fun for you and try to go with that. With modern languages such as Java/C# you have a lot of tools at your disposal to easily write a webservice / cool desktop application.
Kfish
Profile Blog Joined May 2010
Chile282 Posts
July 04 2011 17:40 GMT
#5
So far all I have done is learn basic basic java. Think of it like an introduction to programming course.

Im interested in game development and I would like to make software for business's.

I found fun to figure out and develop algorits even though they were probably simple.

Im going to take a look at the book linked above, thanks for that. The idea of picking up a project seems great. Any recomendations on which IDE to use?

Thanks
Essbee
Profile Blog Joined August 2008
Canada2371 Posts
Last Edited: 2011-07-04 17:58:41
July 04 2011 17:58 GMT
#6
Java: Eclipse
C#: Visual Studio 2010 (in the book there is an introduction on how to install and configure it)

As I can see, you're quite new to programming, you can start with simple text-based games in Java and maybe next year you could start checking out the book I linked you. I say this because the book take in consideration you are decent in programming so it may be hard if you only have 1 year of experience but who knows, maybe you're better than what I was .

Cheers!
MrShankly
Profile Blog Joined October 2009
United Kingdom371 Posts
Last Edited: 2011-07-04 18:02:48
July 04 2011 17:59 GMT
#7
Hey im studying games programming at uni and i would recommend starting with C# and the XNA framework (by microsoft). How is your maths with vectors and such? If you already understand that it will help you a bit.

If you don't have visual studio, you can use "Microsoft Visual C# 2010 Express Edition" which should be fine. C++ is most commonly used in games programming but i recommend you learn that a bit later on. I also recommend looking up VIDEO tutorials on the net. This is so great as they explain the code while typing it

There was a good tutorial for creating a first xna game. I will try to find it if i can......

edit: forgot to mention that c# is rly similar to java which is also the language that i started with
DONATE SC2 BETA KEY TO ME PLEASE
Shifft
Profile Blog Joined April 2010
Canada1085 Posts
July 04 2011 17:59 GMT
#8
Use Eclipse for java development. And yeah, just pick a project and start working on it. 90% of programming is strong google-fu anyways so you should be able to figure things out with enough patience. The most important thing to remember is that if something seems ugly or inefficient find a way to make it cleaner right away, because if you continue to build on an ugly base your code can get unmanageable very quickly. This is less of a problem for solo coding but it's good practice regardless to refactor early and often.
=O
Essbee
Profile Blog Joined August 2008
Canada2371 Posts
July 04 2011 18:03 GMT
#9
Oh I have a question too: What do you know in programming for now?

I suppose you have seen the basics like variables, functions, classes, arrays, etc... but have you worked with files, different data mappings, class implementation, interfaces, and so on?

Essbee
Profile Blog Joined August 2008
Canada2371 Posts
Last Edited: 2011-07-04 18:11:06
July 04 2011 18:08 GMT
#10
On July 05 2011 02:59 MrShankly wrote:
Hey im studying games programming at uni and i would recommend starting with C# and the XNA framework (by microsoft). How is your maths with vectors and such? If you already understand that it will help you a bit.

If you don't have visual studio, you can use "Microsoft Visual C# 2010 Express Edition" which should be fine. C++ is most commonly used in games programming but i recommend you learn that a bit later on. I also recommend looking up VIDEO tutorials on the net. This is so great as they explain the code while typing it

There was a good tutorial for creating a first xna game. I will try to find it if i can......

edit: forgot to mention that c# is rly similar to java which is also the language that i started with


I would like to add something to that.

XNA is an already made engine that you can use for free. The thing with the book I linked is that you make your own engine before making an example of a 2d shooter (in the book). The engine you make is very similar to the XNA (as far as I know) because I've used both and they have very similar classes.

If you decide to start with XNA, like MrShankly, be sure to have some video tutorials or books on it or you may have a hard time understanding whatyou are doing. With the book you see step by step how every part of the engine is made which is great and you program a lot of fun examples with it to test your engine with OpenGL to test rendering on your screen.

Edit: I also greatly recommend this website for new game programmers: gamedev.net
MrShankly
Profile Blog Joined October 2009
United Kingdom371 Posts
July 04 2011 18:14 GMT
#11
Isn't openGL more complex to get started with though? Having to create the context and openGL being a state machine and stuff?

http://create.msdn.com/en-US/education/tutorial/2dgame/getting_started

Anyway i can no longer find the tutorial i was originaly going to llink you to, but this one seems similar, an updated version of the old one or something.
DONATE SC2 BETA KEY TO ME PLEASE
Essbee
Profile Blog Joined August 2008
Canada2371 Posts
Last Edited: 2011-07-04 18:20:17
July 04 2011 18:18 GMT
#12
On July 05 2011 03:14 MrShankly wrote:
Isn't openGL more complex to get started with though? Having to create the context and openGL being a state machine and stuff?

http://create.msdn.com/en-US/education/tutorial/2dgame/getting_started

Anyway i can no longer find the tutorial i was originaly going to llink you to, but this one seems similar, an updated version of the old one or something.


Yeah maybe but with the book I assure you it's very easy to understand. It's like, it takes in consideration you know C# (which is like Java) but start at the basics with OpenGL which is great imo.

Edit: But it's alright if you think he'll be cool with XNA, my point is just that I really like what I learned with the book (how engines works). It also give some very good startup for many game types.
Kfish
Profile Blog Joined May 2010
Chile282 Posts
July 04 2011 18:21 GMT
#13
Thanks for the replies so far. What I have learned so far is classes, methods, arrays, variables, stuff like that. I think I might try to make a tic tac toe game with text first and then see how I could have a Graphical interface for it.

I still have long ways to go with Java bit I just like setting up my plan for the future.

My math isn't terrible. If there is something I dont know I'll find out how to do it.

So far I believe my best choice is to keep going with java and start looking at C#.
Essbee
Profile Blog Joined August 2008
Canada2371 Posts
July 04 2011 18:32 GMT
#14
On July 05 2011 03:21 Kfish wrote:
Thanks for the replies so far. What I have learned so far is classes, methods, arrays, variables, stuff like that. I think I might try to make a tic tac toe game with text first and then see how I could have a Graphical interface for it.

I still have long ways to go with Java bit I just like setting up my plan for the future.

My math isn't terrible. If there is something I dont know I'll find out how to do it.

So far I believe my best choice is to keep going with java and start looking at C#.


Yeah game programming is a lot of maths (depending on what you do).

I think it's a great idea that you want to start with a tic tac toe game, you'll learn a lot if you finish it.
And to make it graphical, this is where you could try to implement your game in C# (very easy to implement since the two languages are kinda the same) because if you have ever used Visual Studio, there is an in-built interface creator which is again really easy to use.

In Java, it's very possible, it's just harder since it's just coding and placing your things at the right places but it's still easy if you google some tutorials, you should have no difficulty when you'll be there (you may even start doing some interfaces in your second semester).

Keep it simple with small games and this is how you'll get better. Also, don't give up if you have an error you don't find, eventually you'll get it as you get better at using the debugger (a very useful tool in any IDE).
crappen
Profile Joined April 2010
Norway1546 Posts
July 04 2011 18:37 GMT
#15
On July 05 2011 03:21 Kfish wrote:
Thanks for the replies so far. What I have learned so far is classes, methods, arrays, variables, stuff like that. I think I might try to make a tic tac toe game with text first and then see how I could have a Graphical interface for it.

I still have long ways to go with Java bit I just like setting up my plan for the future.

My math isn't terrible. If there is something I dont know I'll find out how to do it.

So far I believe my best choice is to keep going with java and start looking at C#.


Programming is pretty nice. I did not like developing games(c++, objective c [for iphone] etc), but I really fell in love with java enterprise, making web applications.
I myself do not like eclipse, I would rather use Netbeans, but I fell totally in love with IntelliJ (which costs money, but maybe you can get it for free on the course your going on, ask your teacher).

There is nothing wrong with eclipse, you can do all the good stuff, but I like my environment very sexy, that is all. Also, having a mac to program on, is a blast (or linux). Windows is like still cheering for fruitdealer, you always get disappointed. Still, this is just sexyness, you can do perfectly fine whit whatever you use really.

Much will happen in the comming year for you, and I myself also want to do everything, even graphics/drawing. Its a nice profession, and as times goes by, you realize you use much more then just java. Scala is really showing itself as well, and there are many nice frameworks that is a blessing to use for certain projects (playframework comes to mind).
Kfish
Profile Blog Joined May 2010
Chile282 Posts
July 04 2011 18:38 GMT
#16
Every one of you helped me a great deal, thanks for every reply. I'm gonna hop right into eclipse and make tic tac toe! I have taken all of these suggestions into consideration. I will update this thread with my progress! <3
Essbee
Profile Blog Joined August 2008
Canada2371 Posts
July 04 2011 18:51 GMT
#17
On July 05 2011 03:38 Kfish wrote:
Every one of you helped me a great deal, thanks for every reply. I'm gonna hop right into eclipse and make tic tac toe! I have taken all of these suggestions into consideration. I will update this thread with my progress! <3


Great news! Don't hesitate to ask for help.

As crappen said, there is a lot of things related to computer sciences (and programming for that matter) that maybe you can check about programming in web, games, data storage, etc... a lot of interesting fields. But myself I prefer game programming but I try to implement many fields like I make a game where I can save my character to a database so I can load it anywhere. I can also have a website which write the information of my character on a web page, etc... all very interesting possibilities.

It's just a matter of exploring the possibilities and the technologies to see what you prefer and what you want to do

I say, start with your tic tac toe and see if you like doing that.
Please log in or register to reply.
Live Events Refresh
BSL 21
01:00
Open Quali #1
LiquipediaDiscussion
The PiG Daily
22:10
Best Games of SC
Rogue vs herO
MaxPax vs Clem
MaxPax vs Lambo
Clem vs herO
Reynor vs Classic
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
SortOf 37
Nina 20
StarCraft: Brood War
ZZZero.O 62
Bale 47
ToSsGirL 36
Dota 2
monkeys_forever892
XaKoH 746
ODPixel92
NeuroSwarm79
League of Legends
JimRising 745
Other Games
summit1g8157
Tasteless486
Hui .147
Mew2King63
NotJumperer3
Organizations
Other Games
gamesdonequick663
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
Counter-Strike
PGL0
StarCraft: Brood War
sctven
[ Show 14 non-featured ]
StarCraft 2
• Berry_CruncH118
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Lourlo962
• Jankos860
• Stunt642
Upcoming Events
Replay Cast
2h 48m
Streamerzone vs Shopify Rebellion
Streamerzone vs Team Vitality
Shopify Rebellion vs Team Vitality
WardiTV Invitational
4h 48m
CrankTV Team League
5h 48m
BASILISK vs Shopify Rebellion
Team Liquid vs Team Falcon
BSL 21
17h 48m
Replay Cast
1d 2h
BASILISK vs TBD
Team Liquid vs Team Falcon
OSC
1d 4h
CrankTV Team League
1d 5h
Replay Cast
1d 15h
The PondCast
2 days
CrankTV Team League
2 days
[ Show More ]
Replay Cast
3 days
WardiTV Invitational
3 days
CrankTV Team League
3 days
Replay Cast
4 days
BSL Team A[vengers]
4 days
Dewalt vs Shine
UltrA vs ZeLoT
BSL 21
4 days
Sparkling Tuna Cup
5 days
BSL Team A[vengers]
5 days
Cross vs Motive
Sziky vs HiyA
BSL 21
5 days
Wardi Open
6 days
Monday Night Weeklies
6 days
Liquipedia Results

Completed

ASL Season 20
WardiTV TLMC #15
Eternal Conflict S1

Ongoing

BSL 21 Points
CSL 2025 AUTUMN (S18)
BSL 21 Team A
C-Race Season 1
IPSL Winter 2025-26
KCM Race Survival 2025 Season 4
SOOP Univ League 2025
CranK Gathers Season 2: SC II Pro Teams
PGL Masters Bucharest 2025
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025

Upcoming

SC4ALL: Brood War
YSL S2
BSL Season 21
SLON Tour Season 2
BSL 21 Non-Korean Championship
RSL Offline Finals
WardiTV 2025
RSL Revival: Season 3
Stellar Fest
SC4ALL: StarCraft II
META Madness #9
eXTREMESLAND 2025
ESL Impact League Season 8
SL Budapest Major 2025
BLAST Rivals Fall 2025
IEM Chengdu 2025
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...

Disclosure: This page contains affiliate marketing links that support TLnet.

Advertising | Privacy Policy | Terms Of Use | Contact Us

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