• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 11:40
CET 16:40
KST 00:40
  • 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
[ASL21] Ro24 Preview Pt1: New Chaos0Team Liquid Map Contest #22 - Presented by Monster Energy7ByuL: The Forgotten Master of ZvT30Behind the Blue - Team Liquid History Book20Clem wins HomeStory Cup 289
Community News
Weekly Cups (March 16-22): herO doubles, Cure surprises3Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool48Weekly Cups (March 9-15): herO, Clem, ByuN win42026 KungFu Cup Announcement6BGE Stara Zagora 2026 cancelled12
StarCraft 2
General
Potential Updates Coming to the SC2 CN Server Behind the Blue - Team Liquid History Book herO wins SC2 All-Star Invitational What mix of new & old maps do you want in the next ladder pool? (SC2) Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool
Tourneys
StarCraft Evolution League (SC Evo Biweekly) WardiTV Mondays Sparkling Tuna Cup - Weekly Open Tournament World University TeamLeague (500$+) | Signups Open RSL Season 4 announced for March-April
Strategy
Custom Maps
[M] (2) Frigid Storage Publishing has been re-enabled! [Feb 24th 2026]
External Content
The PondCast: SC2 News & Results Mutation # 518 Radiation Zone Mutation # 517 Distant Threat Mutation # 516 Specter of Death
Brood War
General
ASL21 General Discussion KK Platform will provide 1 million CNY RepMastered™: replay sharing and analyzer site Gypsy to Korea mca64Launcher - New Version with StarCraft: Remast
Tourneys
2026 Changsha Offline Cup [ASL21] Ro24 Group B [Megathread] Daily Proleagues [ASL21] Ro24 Group A
Strategy
What's the deal with APM & what's its true value Fighting Spirit mining rates Simple Questions, Simple Answers Soma's 9 hatch build from ASL Game 2
Other Games
General Games
Nintendo Switch Thread Stormgate/Frost Giant Megathread Darkest Dungeon General RTS Discussion Thread Path of Exile
Dota 2
The Story of Wings Gaming Official 'what is Dota anymore' discussion
League of Legends
G2 just beat GenG in First stand
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 Five o'clock TL Mafia Mafia Game Mode Feedback/Ideas Vanilla Mini Mafia
Community
General
US Politics Mega-thread The Games Industry And ATVI European Politico-economics QA Mega-thread Canadian Politics Mega-thread Russo-Ukrainian War Thread
Fan Clubs
The IdrA Fan Club
Media & Entertainment
[Req][Books] Good Fantasy/SciFi books Movie Discussion! [Manga] One Piece
Sports
2024 - 2026 Football Thread Cricket [SPORT] Formula 1 Discussion Tokyo Olympics 2021 Thread General nutrition recommendations
World Cup 2022
Tech Support
[G] How to Block Livestream Ads
TL Community
The Automated Ban List
Blogs
Funny Nicknames
LUCKY_NOOB
Money Laundering In Video Ga…
TrAiDoS
Iranian anarchists: organize…
XenOsky
FS++
Kraekkling
Shocked by a laser…
Spydermine0240
Unintentional protectionism…
Uldridge
ASL S21 English Commentary…
namkraft
Customize Sidebar...

Website Feedback

Closed Threads



Active: 6381 users

Learning to Program - Page 2

Blogs > micronesia
Post a Reply
Prev 1 2 All
Vilonis
Profile Joined October 2010
United States130 Posts
Last Edited: 2012-02-04 06:17:50
February 04 2012 06:10 GMT
#21
Learn Python.

Writhing python is fun

It is simple, high level (powerful), does tons of stuff, google loves it (and has an awesome class on it that you should watch the videos of, it is only 2-3 hours + exercises), has an awesome community, and is fun

Because you don't need to do anything for a profession, why would you write c++?

Further more, do what Google does with python. Each time you find yourself doing something redundant/boring, write a python script to do it instead. Ex. I wrote a script that pulled data (album, artist, song name, etc) from a music files title moved it into tags, then renamed the file to just be the song name. Then I ran it on 1000 songs. Felt pretty cool.

Oh, and it is lightweight. By that I mean, the time between starting a new script and running it is tiny. You don't need an IDE, you don't compile it, there is no boiler plate code to execute a main function to get the program off the ground.. It is pretty liberating.

Oh, and it's cross platform, including the huge standard library.

Lastly, Majromax recommends it earlier in this thread, so everything he says is more reason to choose python.

Lastly, really this time. Python has an awesome, super helpful and friendly (like TL Friendly) community and lots of resources. Including python's great official documentation and documentation built into the language itself.

As you might be able to guess, I Highly recommend python.


Edit: There are actually even more good things.

Python's most popular web frame work, Django, described as a web frame work for perfectionists with deadlines, is extremely powerful. You can have a simple website up and running, including all database interactions, HTTP crap, etc, in half and hour. Really, there is a tutorial to teach you how, and I have personally done it.

So if you are interested in web programming, Django and Python might be the perfect pair for you.

Want to do some GUI programming? Want it to be cross platform and use the OS's default widgets (so that windows on Windows look like Window's windows, and Linux windows look like Linux windows, etc)? wxPython. Bindings to wxWidgets from c++.

Want to do some low level 3D graphics? pyOpenGL.

Want to do some higher level 2D games? pySFML. Though I admit, the current bindings are, lacking, the bindings for the upcoming SFML 2.0 look much more promising.

Wish python was run-able everywhere java was? Jython, a python interpreter written in java, runs python code anywhere java runs.

Basically, you can do pretty much anything with python.
"Such is the vastness of his genius that he can outwit even himself!" - Iskaral Pust, High Priest of High House Shadow
DrGingertron
Profile Joined December 2010
United States11 Posts
February 04 2012 06:23 GMT
#22
I am doing exactly what the op decided to do. I was in college for 2 years studying to become a programmer. I have a very specific way of learning and I felt like college was holding me back. So i decided this past semester to drop out and sort of figure things out. For fun I go to thenewboston.com and learn different kinds of programming languages to see which I perfer more.
Ive been meeting with local programmers and network admins to see what goes on in their worlds. Its been a lot of fun so far, but am quickly going broke(had no job in college and cant find one now). So as of now, I am getting certified in a few IT areas to become... you guessed it an IT pro. Good luck to you and finding what language u want to learn!
Live today die tomorrow
churbro
Profile Blog Joined January 2012
New Zealand55 Posts
Last Edited: 2012-02-04 06:58:34
February 04 2012 06:57 GMT
#23
Start with Java or C#

Both are the standard OO programming languages these days. Once you know either you pretty much know JavaScript (and other languages, vb.net, python, and even c++) and programming in general will become far more simple.

P.S Don't start with JavaScript, that would be a terrible idea.
TossFloss *
Profile Blog Joined February 2010
Canada606 Posts
February 04 2012 07:25 GMT
#24
First figure out what you want to create then figure out which languages are best suited for the job.
TL Android App Open Source http://www.teamliquid.net/forum/viewmessage.php?topic_id=265090
teamamerica
Profile Blog Joined July 2010
United States958 Posts
February 04 2012 08:07 GMT
#25
Had some long post but never mind - comes down to what TossFloss says. Why are you trying to learn programming? Pick a language that let's you do some project you're interested in, it's way more fun then just picking up a textbook and learning something.

Java has a really really REALLY easy to use API and lots of tutorials and let's you get into Android.
C# also has ease of use like Java, I've never used, but let's you do asp.net (web), games (XNA), and windows programming.
Python - good for web? Idk what standalone apps you make in python and just doing random textbook assignments is pretty boring imo.
Objective C- let's you do iPhone stuff? Always cool to make apps. Need a mac though, as was previously mentioned.
C++ - honestly idk what you'd do in that (not as in there's nothing, I just don't know)
Web stuff - let's you get deliverables out pretty fast, maybe try learning ruby on rails? Seems pretty fun.
RIP GOMTV. RIP PROLEAGUE.
heishe
Profile Blog Joined June 2009
Germany2284 Posts
February 04 2012 08:19 GMT
#26
If you want to start with C++, you're going to need one of the two mainstream compilers (the MSVC compiler or GCC) and an IDE to use it with.

The MSVC compiler is the one that ships with the Visual Studio software, and GCC is actually a compiler collection for all kinds of languages, and it usually ships with all major and even minor distributions of linux.

Then you need an IDE to use it with. There are tons of IDEs out there, so for ease of use I suggest you simply take Visual Studio (the express version is free and, for C++, can be found here.

You just install it, start it, create a new empty C++ project and you're good to go.

In terms of resources to learn from: I suggest you simply google "C++ tutorial" and get to know the basics.

Most online-tutorials teach total and utter crap when it comes to style and details for C++, but that doesn't matter for you now. What matters is that you get to know and use the languages in its most basic form. You can learn about actual good programming later on.

You could also look for some beginners books, but I can't give any advice on that.
If you value your soul, never look into the eye of a horse. Your soul will forever be lost in the void of the horse.
Vilonis
Profile Joined October 2010
United States130 Posts
February 04 2012 16:20 GMT
#27
On February 04 2012 17:07 teamamerica wrote:
Had some long post but never mind - comes down to what TossFloss says. Why are you trying to learn programming? Pick a language that let's you do some project you're interested in, it's way more fun then just picking up a textbook and learning something.

Java has a really really REALLY easy to use API and lots of tutorials and let's you get into Android.
C# also has ease of use like Java, I've never used, but let's you do asp.net (web), games (XNA), and windows programming.
Python - good for web? Idk what standalone apps you make in python and just doing random textbook assignments is pretty boring imo.
Objective C- let's you do iPhone stuff? Always cool to make apps. Need a mac though, as was previously mentioned.
C++ - honestly idk what you'd do in that (not as in there's nothing, I just don't know)
Web stuff - let's you get deliverables out pretty fast, maybe try learning ruby on rails? Seems pretty fun.


For an actual website...
https://www.djangoproject.com/

As far as apps, I don't know if you saw the thread but someone made a web app that ranked pro gamers by attractiveness, the same way girls were ranked in The Social Network (and the same way players are ranked in SCII ladder).

Python is the third most popular language on github, and there are 238 projects that use django hosted. It is a pretty popular way to do web programming.
"Such is the vastness of his genius that he can outwit even himself!" - Iskaral Pust, High Priest of High House Shadow
billy5000
Profile Blog Joined December 2010
United States865 Posts
February 04 2012 21:32 GMT
#28
First year of cs major here. We're learning java and it seems like a good foundation. I've tried to learn python before, but to me it was so simple that it just felt strange, especially the structure of the program. The best part of it is that we're using probably one of the better books than most colleges use: http://introcs.cs.princeton.edu/java/home/. I was in your boat a year back, and I pretty much got similar results: learn either python, java, or c#. Personally, I wouldn't go with python since java and (I'm guessing) c# are fairly easy to begin with.
Tiger got to hunt, bird got to fly; Man got to sit and wonder, 'Why, why, why?' Tiger got to sleep, bird got to land; Man got to tell himself he understand. Vonnegut
emperorchampion
Profile Blog Joined December 2008
Canada9496 Posts
February 04 2012 22:13 GMT
#29
Fortran all the things!
TRUEESPORTS || your days as a respected member of team liquid are over
luxx
Profile Blog Joined July 2010
United States140 Posts
February 04 2012 23:58 GMT
#30
My recommendation is to just get on a project and start building. As long as it is object oriented and you give yourself enough time to learn, you will be able to build some cool stuff, get an awesome job, or at least find out where you want to go next. I personally prefer ruby for its elegant syntax, active community, and a little thing called rails. Don’t get too hung up on the language choices - if you are comfortable using C++ as a starting point, go for it. The fundamentals you learn will be applicable to other languages.

Every application is made up of simple primitives that can be reasoned about, so it is very important to start with something simple enough to be successful at and to build confidence on. For some people that means creating a server of some sort, or a library to read data out of a file, or writing a method to print 1,000 numbers from the Fibonacci sequence, or simply assigning a variable and printing the result. It does not really matter how trivial it may seem, or how worthless you may feel compared to others, just drop down to the smallest unit of code that you can fully understand and control. Start there and inch forward, understanding what is occurring at each step of the way.

It is easy to get stuck early on, so building a network of people who can support you is very important. You can find people on forums, irc, and other places like github, just do as much as you can to get in contact with smart people. Joining an existing project or volunteering is a great way to meet people. My project’s and many others put a big focus on learning and connecting people with mentors. Code reviews are also very helpful.

I would start online once you know what language you are working with. There are a lot of getting started guides, tutorials, screen casts, and the overall quality of online documentation is constantly improving. It is an awesome time to be a developer so have fun with it
Lead Developer Z33K.com
CecilSunkure
Profile Blog Joined May 2010
United States2829 Posts
Last Edited: 2012-02-05 00:14:20
February 05 2012 00:13 GMT
#31
On February 04 2012 15:10 Vilonis wrote:
Learn Python.

Oh man I cannot stress this enough! I program in C and C++ because I'm in school to become a professional programmer for a company like MS, but as hobby programming Python is by far the most fun. The syntax is extremely clean and readable, and there's a lot of documentation and support out there. There's even PyGame, I've spent many hours writing games in PyGame back in highschool!

If you want to be a professional software developer for real-time applications, ground yourself in C, then switch to C++. That's the most solid way according to professionals I talk to. If you want to program more as a hobby and perhaps someday as a profession, Python is perfect.

So you need to let us know what you want to actually program!
ShadowWolf
Profile Joined March 2010
United States197 Posts
February 05 2012 02:48 GMT
#32
At the end of the day, if you're going to be a professional it's almost irrelevant on which language you learn. Being a professional is about having the skills and capability to write maintainable, relevant, and effective code in a reasonable amount of time and adapt to your environment. Starting off learning language X vs. Y will make certain things easier to pick up on, but, in my experience and the people I've seen, there's almost no correlation between the top developers and the bad ones. Not to mention that languages and platforms move, so you'll probably need to have the skills necessary to learn at least 1 more language in your lifetime (probably more!).

Good programmers understand the environment and problem they're solving and solve it in a way that's both effective and maintainable. I've seen "whiz-kids" at work produce some garbage code that does awesome things. Subsequently I've spent all weekend refactoring and rewriting it because it was, again, garbage.

In the end, focus less on the language you learn and more on learning how to be a good programmer.
micronesia
Profile Blog Joined July 2006
United States24761 Posts
February 05 2012 05:03 GMT
#33
Well to give an update a lot of you (as well as people I spoke to online) were pushing python, and given my reputation from broodwar as the king of python, I went with it.

I've gone through a little over half of this for a warmup: http://learnpythonthehardway.org/book/

I'll attach a little program I wrote before dinner for fun:

def factorial(base):
if base > 1:
return base*factorial(base-1)
else:
return 1

xmin = 1
xmax = 10
xvar = []
f_of_x = []

xvar=range(xmin,xmax+1)

print "\nf(x)=x!\n\n",\
"The Domain is:", xvar, "\n"

f_of_x = [factorial(x) for x in xvar]

print "The Range is:", f_of_x, "\n"
raw_input("Press Enter to Exit")

There were a couple of parts that I spent 2-3 lines on. A couple of people on IRC gave me some suggestions and I condensed it to take advantage of some of the advantages of python over C++, apparently.
ModeratorThere are animal crackers for people and there are people crackers for animals.
Prev 1 2 All
Please log in or register to reply.
Live Events Refresh
WardiTV Team League
12:00
Group A + B
WardiTV796
IndyStarCraft 164
musti20045 37
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
IndyStarCraft 164
ProTech122
LamboSC2 88
Codebar 8
StarCraft: Brood War
Britney 40745
Sea 3908
Bisu 2955
Jaedong 1815
Mini 1485
EffOrt 1023
Soma 890
ZerO 562
Soulkey 375
Light 301
[ Show more ]
ggaemo 286
Snow 285
firebathero 258
hero 115
Dewaltoss 102
Rush 96
Mind 76
Backho 42
sorry 38
Aegong 34
Shine 29
[sc1f]eonzerg 24
GoRush 20
Rock 20
910 19
zelot 19
yabsab 19
IntoTheRainbow 15
Terrorterran 9
eros_byul 2
Dota 2
Gorgc6578
BananaSlamJamma288
Counter-Strike
fl0m3312
byalli1047
Heroes of the Storm
Khaldor112
MindelVK8
Other Games
FrodaN4316
singsing2028
B2W.Neo1048
Lowko411
shoxiejesuss395
crisheroes280
Hui .181
KnowMe139
QueenE73
ArmadaUGS69
Trikslyr42
ZerO(Twitch)16
Organizations
Other Games
gamesdonequick977
StarCraft 2
ComeBackTV 255
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 14 non-featured ]
StarCraft 2
• poizon28 26
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• Noizen46
League of Legends
• Nemesis2690
• Jankos1622
Upcoming Events
Big Brain Bouts
1h 20m
Fjant vs SortOf
YoungYakov vs Krystianer
Reynor vs HeRoMaRinE
RSL Revival
18h 20m
Cure vs Zoun
herO vs Rogue
Platinum Heroes Events
23h 20m
BSL
1d 4h
RSL Revival
1d 18h
ByuN vs Maru
MaxPax vs TriGGeR
WardiTV Team League
1d 20h
BSL
2 days
Replay Cast
2 days
Replay Cast
2 days
Afreeca Starleague
2 days
Light vs Calm
Royal vs Mind
[ Show More ]
Wardi Open
2 days
Monday Night Weeklies
3 days
OSC
3 days
Sparkling Tuna Cup
3 days
Afreeca Starleague
3 days
Rush vs PianO
Flash vs Speed
Replay Cast
4 days
Afreeca Starleague
4 days
BeSt vs Leta
Queen vs Jaedong
Replay Cast
5 days
The PondCast
5 days
Replay Cast
6 days
RSL Revival
6 days
Liquipedia Results

Completed

KCM Race Survival 2026 Season 1
WardiTV Winter 2026
Underdog Cup #3

Ongoing

BSL Season 22
CSL Elite League 2026
CSL Season 20: Qualifier 1
ASL Season 21
Acropolis #4 - TS6
RSL Revival: Season 4
Nations Cup 2026
NationLESS Cup
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual

Upcoming

2026 Changsha Offline CUP
CSL Season 20: Qualifier 2
CSL 2026 SPRING (S20)
Acropolis #4
IPSL Spring 2026
BSL 22 Non-Korean Championship
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
IEM Atlanta 2026
Asian Champions League 2026
PGL Astana 2026
BLAST Rivals Spring 2026
CCT Season 3 Global Finals
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 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.