• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 07:48
CEST 13:48
KST 20:48
  • 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] Ro8 Preview: Within Reach5[ASL22] Ro8 Preview: In A Tizzy11[ASL22] Ro16 Preview: Holy Diver5[ASL22] Ro16 Preview: Rough Waters10[ASL22] Ro24 Preview: Siren's Call8
Community News
Weekly Cups (Sept 21-27): herO and ByuN double2Weekly Cups (Sep 13-20): herO scores triple3BSL Season 2313Weekly Cups (Sep 7-12): SHIN, ByuN, MaxPax double down1StarCraft open world shooter announced at BlizzCon111
StarCraft 2
General
StarCraft open world shooter announced at BlizzCon Weekly Cups (Sept 21-27): herO and ByuN double Recent Patches and the Future Stellar Fest 1 Replay Pack Balance hotfix patch 5.0.16b (July 16)
Tourneys
Stellar Fest TWO the Moon (Dec 16-20) 2026 GSTL Grand Finals SC2 INu's Battles#21 [ 3-Days tournament ] ScienceCraft (October 24-25) - Live Event Sparkling Tuna Cup - Weekly Open Tournament
Strategy
[H] ZvP Mid-Late Game: Stalkers Collossi HT
Custom Maps
[M] (2) Sweltering Sands [M] (2) Frigid Storage
External Content
The PondCast: SC2 News & Results Mutation # 545 And Drops and Rifts Mutation # 544 Double Trouble Mutation # 543 Enhanced Defenses
Brood War
General
Bot on ladder Where can I find Flash replays that work? a Announcement on the JEDI Ringing Official StarCraft website teases new content ahead of BlizzCon? BW General Discussion
Tourneys
[ASL22] Ro8 Day 3 [ASL22] Ro8 Day 4 [Megathread] Daily Proleagues [ASL22] Ro8 Day 2
Strategy
Cliff Jump Revisited (1 in a 1000 strategy) Replay Review Process - What do you do? Simple Questions, Simple Answers Odyssey Mineral Stack Saturation
Other Games
General Games
General RTS Discussion Thread Warcraft III: The Frozen Throne Stormgate/Frost Giant Megathread Total Annihilation Zero Nintendo Switch Thread
Dota 2
Dota 2 Champions League Season 3 Begins April 25! 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 All you football fans (soccer)! Russo-Ukrainian War Thread Artificial Intelligence Thread
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 MLB/Baseball 2023
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
Recent Gifted Posts
Blogs
Violent-Cooperative Play and…
TrAiDoS
38 yo Retired SWE loo…
PurE)Rabbit-SF
Can Bots Beat Pros?? Starcr…
namkraft
[meme] I finally understa…
LUCKY_NOOB
Regacy Esports:Our Goa…
regacyesports
Customize Sidebar...

Website Feedback

Closed Threads



Active: 10125 users

The Big Programming Thread - Page 4

Forum Index > General Forum
Post a Reply
Prev 1 2 3 4 5 6 1030 1031 1032 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
tofucake
Profile Blog Joined October 2009
Hyrule19258 Posts
July 09 2010 11:59 GMT
#61
LOLCODE, Brainfuck, Whitespace, etc... are novelty languages, and as such serve no purpose. I'd like to keep them out of this discussion.
Liquipediaasante sana squash banana
Ahseyo
Profile Blog Joined July 2010
Sweden80 Posts
July 09 2010 12:02 GMT
#62
On July 09 2010 20:59 tofucake wrote:
LOLCODE, Brainfuck, Whitespace, etc... are novelty languages, and as such serve no purpose. I'd like to keep them out of this discussion.


And since when were you allowed to mini mod? Also, it's the internet and people uses this kind of language all the time, even if you like it or not.
"Luck isn't some kind of mystical energy that floats around in the universe, randomly discards people with satisfaction and joy. You create your own luck" Jay-Z
haduken
Profile Blog Joined April 2003
Australia8267 Posts
Last Edited: 2010-07-09 12:22:43
July 09 2010 12:22 GMT
#63
It's just an emulator to run legacy Mac OS programs.
Rillanon.au
spinesheath
Profile Blog Joined June 2009
Germany8679 Posts
July 09 2010 12:23 GMT
#64
You probably should include OCaml and some other functional languages in that list. I personally don't like functional programming that much, but those languages deserve some love as well.

Also, I think you really should add this link to the C++ section:
http://www.parashift.com/c -faq-lite/index.html

I started C++ with online tutorials (cprogramming.com was among these and I wouldn't recommend it), and I thought I was okay-ish with c++. Then I found C++ FAQ Lite and my C++ improved drastically. I also got some books from the recommendations on the site (Design Patterns and The C++ Programming Language) which I would recommend as well.

For the fans of esoteric programming languages, check out Piet.
This is supposed to calculate an approximization of pi:
+ Show Spoiler +
[image loading]

(note: I have no idea how to program in Piet.)
If you have a good reason to disagree with the above, please tell me. Thank you.
Ahseyo
Profile Blog Joined July 2010
Sweden80 Posts
July 09 2010 12:25 GMT
#65
On July 09 2010 21:22 haduken wrote:
It's just an emulator to run legacy Mac OS programs.


You can run reversed programs too it seems. The only problem is the memory capacity of the emulator but I think you could fix that too.
"Luck isn't some kind of mystical energy that floats around in the universe, randomly discards people with satisfaction and joy. You create your own luck" Jay-Z
ibutoss
Profile Blog Joined June 2005
Australia341 Posts
July 09 2010 12:46 GMT
#66
I'm a very bad programmer but I should really have become better.. I'm currently working on my final year project for uni thats a custom content management system & online shop for a client. Writing it in php with all the usual html/css/js for the interface.

I've worked on web projects before but I usually grab from opensource communities and mix-n-match until it works however writing it all from scratch is a big learning experience.
Nada got Yooned
FaCE_1
Profile Blog Joined December 2006
Canada6185 Posts
July 09 2010 13:06 GMT
#67
You could also add the ppl listed there that know about programming (I'm there )

http://www.teamliquid.net/forum/viewmessage.php?topic_id=84245
n_n
Freezard
Profile Blog Joined April 2007
Sweden1030 Posts
July 09 2010 13:25 GMT
#68
I started with functional programming in Haskell (I'm studying Computer Science). Really, I wouldn't recommend it though I do see the point in it. I think Java or C is a good starting language, I've read tons of Java but it's cus my school is focusing on it. Had to go to other universities to study C/C#/C++. I really like C# nowadays.
Louder
Profile Blog Joined September 2002
United States2276 Posts
July 09 2010 13:56 GMT
#69
Perhaps you all should skip the "what will this thread be about?" posts... that would knock 4 pages of bullshit posts right off the top. Really, why not just get some discussion on actual programming topics going and see where the threat goes, rather than trying to theorycraft what it may or may not be?
sluggaslamoo
Profile Blog Joined November 2009
Australia4494 Posts
Last Edited: 2010-07-09 14:10:25
July 09 2010 14:05 GMT
#70
On July 09 2010 19:09 Qzy wrote:
Show nested quote +
On July 09 2010 17:36 sluggaslamoo wrote:
What level have you got up to?

http://projecteuler.net/


I'm at level 2 (solved 60) started a few months ago.. you?

I can recommend project euler for EVERYONE who loves programming and math.


Actually I kinda did it so it would force me to get better at algorithmic problem solving, I think I got to 30 before I decided I couldn't take it anymore (long time ago tho) I'm really into programming theory, but not the kind that involves hardcore algorithms. I might try it again some time.


On July 09 2010 20:12 zatic wrote:
For anyone completely new to programming who is just curious try doing some stuff in Python. It is imo the easiest to learn and yet complete programming language out there.

... etc etc

Python is next to Javascript the language I use the most day to day (and I am a professional Java/ABAP programmer) just because they are both so helpful in everyday computer usage.


Python really should only be used once you have a fair grip on functional programming, it is actually one of the hardest languages to learn. Python uses a reference counting garbage collecting algorithm, and is even more confusing than manual memory management. Javascript uses mark-and-sweep so it is more beginner friendly. Beginner programmers will only end up creating memory leaks and a ton of side-effects. Dynamic and weak typing makes this worse too and only enforces bad habits.

With Javascript, most web developers don't really have a choice when it comes to programming a web front-end so most people turn a blind eye to it. You pretty much have to program procedurally because object-orientation and lambda's are too cumbersome to work with simple graphics on a website front-end.

On July 09 2010 22:25 Freezard wrote:
I started with functional programming in Haskell (I'm studying Computer Science). Really, I wouldn't recommend it though I do see the point in it. I think Java or C is a good starting language, I've read tons of Java but it's cus my school is focusing on it. Had to go to other universities to study C/C#/C++. I really like C# nowadays.


Functional programming has its uses, if you know lambda calculus, you can create extremely compact code that does a whole heap of crazy shit.

Also OOP (and therefore Java/C#) is probably not the best starting point for programming. IMO you should only start Java once you know a lot about structured programming, for example: knowing what reference pointers are, functional decomposition and basic rules of abstraction, expressions, (you know the real basic stuff). Until you can properly decompose functions and break it down to its most useful and basic form, only then can you then start making useful objects.

OOP only starts becoming productive once you have recognized and learned the 4 core principles of OOP, and then responsibility driven design. Only then will you actually like Java and not hate it like most people who don't understand OOP well enough, do.

C or Pascal (or any strict unmanaged structured programming language) are probably the best as they teach you all the basics (Pascal is a little less clumsy than C and is a lot stricter), as well as structured programming being the easiest to understand.

IMO the stricter the language is on syntax and usage, in other words, the more the compiler tries to piss you off, the better it is for beginners. Once you learn how everything works you can move on to more fancy stuff, but at least in your head you will know exactly what is going on.

And yeah I know I'm being an absolute a-hole, but it had to be said.
Come play Android Netrunner - http://www.teamliquid.net/forum/viewmessage.php?topic_id=409008
zatic
Profile Blog Joined September 2007
Zurich15366 Posts
Last Edited: 2010-07-09 15:00:20
July 09 2010 14:44 GMT
#71
On July 09 2010 23:05 sluggaslamoo wrote:
Show nested quote +
On July 09 2010 19:09 Qzy wrote:
On July 09 2010 17:36 sluggaslamoo wrote:
What level have you got up to?

http://projecteuler.net/


I'm at level 2 (solved 60) started a few months ago.. you?

I can recommend project euler for EVERYONE who loves programming and math.


Actually I kinda did it so it would force me to get better at algorithmic problem solving, I think I got to 30 before I decided I couldn't take it anymore (long time ago tho) I'm really into programming theory, but not the kind that involves hardcore algorithms. I might try it again some time.

Show nested quote +
On July 09 2010 20:12 zatic wrote:
For anyone completely new to programming who is just curious try doing some stuff in Python. It is imo the easiest to learn and yet complete programming language out there.

... etc etc

Python is next to Javascript the language I use the most day to day (and I am a professional Java/ABAP programmer) just because they are both so helpful in everyday computer usage.

Python really should only be used once you have a fair grip on functional programming, it is actually one of the hardest languages to learn. Python uses a reference counting garbage collecting algorithm, and is even more confusing than manual memory management. Javascript uses mark-and-sweep so it is more beginner friendly. Beginner programmers will only end up creating memory leaks and a ton of side-effects. Dynamic and weak typing makes this worse too and only enforces bad habits.

And you are entirely missing the point. If you just want to learn or even just try programming - which my paragraph opened up with - you would be insane to wrap you head around memory management at all. People should just try out stuff, and Python is the most accessible and easy to learn languages that let you do stuff immediately.

You shouldn't start with Javascript though it is a comparably hard language to learn I just mentioned it because once you know a bit JS it makes your life much much easier.
ModeratorI know Teamliquid is known as a massive building
uNiGNoRe
Profile Blog Joined June 2007
Germany1115 Posts
July 09 2010 14:56 GMT
#72
On July 09 2010 23:44 zatic wrote:
Show nested quote +
On July 09 2010 23:05 sluggaslamoo wrote:
On July 09 2010 19:09 Qzy wrote:
On July 09 2010 17:36 sluggaslamoo wrote:
What level have you got up to?

http://projecteuler.net/


I'm at level 2 (solved 60) started a few months ago.. you?

I can recommend project euler for EVERYONE who loves programming and math.


Actually I kinda did it so it would force me to get better at algorithmic problem solving, I think I got to 30 before I decided I couldn't take it anymore (long time ago tho) I'm really into programming theory, but not the kind that involves hardcore algorithms. I might try it again some time.

On July 09 2010 20:12 zatic wrote:
For anyone completely new to programming who is just curious try doing some stuff in Python. It is imo the easiest to learn and yet complete programming language out there.

... etc etc

Python is next to Javascript the language I use the most day to day (and I am a professional Java/ABAP programmer) just because they are both so helpful in everyday computer usage.

Python really should only be used once you have a fair grip on functional programming, it is actually one of the hardest languages to learn. Python uses a reference counting garbage collecting algorithm, and is even more confusing than manual memory management. Javascript uses mark-and-sweep so it is more beginner friendly. Beginner programmers will only end up creating memory leaks and a ton of side-effects. Dynamic and weak typing makes this worse too and only enforces bad habits.

And you are entirely missing the point. If you just want to learn or even just try programming - which my paragraph opened up with - you would be insane to wrap you head around memory management at all. People should just try out stuff, and Python is the most accessible and easy to learn languages that let you do stuff immediately.

You should try to start with Javascript though it is a comparably hard language to learn I just mentioned it because once you know a bit JS it makes your life much much easier.

I think it really depends on your goal when deciding to learn programming. If you just want to try it out and maybe write a little program that helps you organize your files or whatever, then it might be better to start off with Python. Constantly getting compiler errors and warnings will most likely discourage anyone who isn't very serious about learning how to program. On the other hand, if you have long term goals with programming and really want to get into it and maybe learn several other languages later on, then I would agree with sluggaslamoo and suggest you to start with C or Pascal. Having to deal with pointers, strict typing and similar things takes a lot of the magic out of programming and will teach you things that you will definitely need sooner or later.
SiNiquity
Profile Joined April 2010
United States734 Posts
Last Edited: 2010-07-09 14:58:53
July 09 2010 14:58 GMT
#73
On July 09 2010 23:44 zatic wrote:
Show nested quote +
On July 09 2010 23:05 sluggaslamoo wrote:
On July 09 2010 19:09 Qzy wrote:
On July 09 2010 17:36 sluggaslamoo wrote:
What level have you got up to?

http://projecteuler.net/


I'm at level 2 (solved 60) started a few months ago.. you?

I can recommend project euler for EVERYONE who loves programming and math.


Actually I kinda did it so it would force me to get better at algorithmic problem solving, I think I got to 30 before I decided I couldn't take it anymore (long time ago tho) I'm really into programming theory, but not the kind that involves hardcore algorithms. I might try it again some time.

On July 09 2010 20:12 zatic wrote:
For anyone completely new to programming who is just curious try doing some stuff in Python. It is imo the easiest to learn and yet complete programming language out there.

... etc etc

Python is next to Javascript the language I use the most day to day (and I am a professional Java/ABAP programmer) just because they are both so helpful in everyday computer usage.

Python really should only be used once you have a fair grip on functional programming, it is actually one of the hardest languages to learn. Python uses a reference counting garbage collecting algorithm, and is even more confusing than manual memory management. Javascript uses mark-and-sweep so it is more beginner friendly. Beginner programmers will only end up creating memory leaks and a ton of side-effects. Dynamic and weak typing makes this worse too and only enforces bad habits.

And you are entirely missing the point. If you just want to learn or even just try programming - which my paragraph opened up with - you would be insane to wrap you head around memory management at all. People should just try out stuff, and Python is the most accessible and easy to learn languages that let you do stuff immediately.

You should try to start with Javascript though it is a comparably hard language to learn I just mentioned it because once you know a bit JS it makes your life much much easier.


Javascript was the first language I learned (self-taught), and I didn't really understand it (could really only take a piece of code and modify it) until I took a class C++. But once you get a handle on it and some basic HTML you can do a lot of neat stuff quickly.
'i' before 'e' except after 'c' ~ it's scientifically proven.
uNiGNoRe
Profile Blog Joined June 2007
Germany1115 Posts
July 09 2010 15:08 GMT
#74
On another note: I feel like the site spoj.pl deserves some mentioning in this thread. It's a site where you can submit algorithmic problems and everyone can submit his own solution for it. The solution code you submit is compiled and run on their server and tested on predefined test cases that where submitted with the problem. It supports a ton of different languages and has rankings for all the problems and global rankings and stuff like that. If you like writing algorithms, this is the site for you.
sluggaslamoo
Profile Blog Joined November 2009
Australia4494 Posts
Last Edited: 2010-07-09 15:23:05
July 09 2010 15:18 GMT
#75
On July 09 2010 23:44 zatic wrote:
Show nested quote +
On July 09 2010 23:05 sluggaslamoo wrote:
On July 09 2010 19:09 Qzy wrote:
On July 09 2010 17:36 sluggaslamoo wrote:
What level have you got up to?

http://projecteuler.net/


I'm at level 2 (solved 60) started a few months ago.. you?

I can recommend project euler for EVERYONE who loves programming and math.


Actually I kinda did it so it would force me to get better at algorithmic problem solving, I think I got to 30 before I decided I couldn't take it anymore (long time ago tho) I'm really into programming theory, but not the kind that involves hardcore algorithms. I might try it again some time.

On July 09 2010 20:12 zatic wrote:
For anyone completely new to programming who is just curious try doing some stuff in Python. It is imo the easiest to learn and yet complete programming language out there.

... etc etc

Python is next to Javascript the language I use the most day to day (and I am a professional Java/ABAP programmer) just because they are both so helpful in everyday computer usage.

Python really should only be used once you have a fair grip on functional programming, it is actually one of the hardest languages to learn. Python uses a reference counting garbage collecting algorithm, and is even more confusing than manual memory management. Javascript uses mark-and-sweep so it is more beginner friendly. Beginner programmers will only end up creating memory leaks and a ton of side-effects. Dynamic and weak typing makes this worse too and only enforces bad habits.

And you are entirely missing the point. If you just want to learn or even just try programming - which my paragraph opened up with - you would be insane to wrap you head around memory management at all. People should just try out stuff, and Python is the most accessible and easy to learn languages that let you do stuff immediately.

You shouldn't start with Javascript though it is a comparably hard language to learn I just mentioned it because once you know a bit JS it makes your life much much easier.


Exactly "you would be insane to wrap your head around memory management", so why are you saying Python should be used by beginners? Memory management in Python is extremely complicated.

For example in Python. If var A references var B which references var A (and you lose the reference to those variables), you get a memory leak. Very easy to do if you don't know anything about reference pointers and stack and heap memory. Let alone, reference counting.

Just look at the OP. Massive [possible] memory leak there, if it was in Python.
Come play Android Netrunner - http://www.teamliquid.net/forum/viewmessage.php?topic_id=409008
AbyssV3
Profile Joined April 2010
United States172 Posts
Last Edited: 2010-07-09 15:38:06
July 09 2010 15:36 GMT
#76
On July 10 2010 00:18 sluggaslamoo wrote:
Show nested quote +
On July 09 2010 23:44 zatic wrote:
On July 09 2010 23:05 sluggaslamoo wrote:
On July 09 2010 19:09 Qzy wrote:
On July 09 2010 17:36 sluggaslamoo wrote:
What level have you got up to?

http://projecteuler.net/


I'm at level 2 (solved 60) started a few months ago.. you?

I can recommend project euler for EVERYONE who loves programming and math.


Actually I kinda did it so it would force me to get better at algorithmic problem solving, I think I got to 30 before I decided I couldn't take it anymore (long time ago tho) I'm really into programming theory, but not the kind that involves hardcore algorithms. I might try it again some time.

On July 09 2010 20:12 zatic wrote:
For anyone completely new to programming who is just curious try doing some stuff in Python. It is imo the easiest to learn and yet complete programming language out there.

... etc etc

Python is next to Javascript the language I use the most day to day (and I am a professional Java/ABAP programmer) just because they are both so helpful in everyday computer usage.

Python really should only be used once you have a fair grip on functional programming, it is actually one of the hardest languages to learn. Python uses a reference counting garbage collecting algorithm, and is even more confusing than manual memory management. Javascript uses mark-and-sweep so it is more beginner friendly. Beginner programmers will only end up creating memory leaks and a ton of side-effects. Dynamic and weak typing makes this worse too and only enforces bad habits.

And you are entirely missing the point. If you just want to learn or even just try programming - which my paragraph opened up with - you would be insane to wrap you head around memory management at all. People should just try out stuff, and Python is the most accessible and easy to learn languages that let you do stuff immediately.

You shouldn't start with Javascript though it is a comparably hard language to learn I just mentioned it because once you know a bit JS it makes your life much much easier.


Exactly "you would be insane to wrap your head around memory management", so why are you saying Python should be used by beginners? Memory management in Python is extremely complicated.

For example in Python. If var A references var B which references var A (and you lose the reference to those variables), you get a memory leak. Very easy to do if you don't know anything about reference pointers and stack and heap memory. Let alone, reference counting.

Just look at the OP. Massive [possible] memory leak there, if it was in Python.


That's not true anymore. Python's memory management is a lot better than it used to be. Even this site: http://www.nightmare.com/medusa/memory-leaks.html - which was last updated in 2006 says it was obselete then.

As a Python programmer, I'd say memory management in Python is easy. Super easy. In fact, the programmer does nothing - let the interpreter handle it all. It's great for a beginner to learn that doesn't want to dive into the low level aspect of things. Later, after the beginner has a grasp on the basics of programming, then they can delve into the understanding of -why- things work the way they are.

On the topic of which starting language:

It's my opinion that all the claims of starting language having importance on whether you'll be good at programming later or not is a bunch of bologna. Simply the fact that C is harder than most languages to understand/learn means that anyone starting on it and actually continuing is bound to be naturally good at programming / have great dedication (I believe natural talent plays a large role).

However, if the same amount of people start out on Python (or any other simpler language to learn), more are bound to have the talent and dedication to learn that - so 2x (insert real ratio here) number of people will finish that and go on to harder languages, and then some of them will drop out.

Essentially, in numbers what I'm saying is (in generic numbers to conceptualize), 10 people start on C, 5 finish and learn how it all really works.
10 people start on Python, 8 finish and continue with programing, move on to C, 5 finish and learn how it all really works.

5/5 C Programmers understand the inner workings, 5/8 Python Programmers understand the inner workings. Same number of people, different ratio.

IMO, look into a bunch of different common/popular languages, and decide which you like the most (or would find the most use for). Learn a bit about it, if you dislike it move on, if not continue, repeat process.
QuakeNet #ragequit.tv - http://www.RAGEQUIT.tv - Home of Ipp, World Famous Elmer Fudd accent
mpupu
Profile Joined June 2010
Argentina183 Posts
July 09 2010 15:38 GMT
#77
On July 10 2010 00:18 sluggaslamoo wrote:
Exactly "you would be insane to wrap your head around memory management", so why are you saying Python should be used by beginners? Memory management in Python is extremely complicated.


Because beginners don't care if there is a memory leak in their code, as long as it doesn't crash their program. On the other hand, Python has many advantages in areas that do matter to a beginner.

sluggaslamoo
Profile Blog Joined November 2009
Australia4494 Posts
July 09 2010 15:45 GMT
#78
On July 10 2010 00:36 AbyssV3 wrote:
Show nested quote +
On July 10 2010 00:18 sluggaslamoo wrote:
On July 09 2010 23:44 zatic wrote:
On July 09 2010 23:05 sluggaslamoo wrote:
On July 09 2010 19:09 Qzy wrote:
On July 09 2010 17:36 sluggaslamoo wrote:
What level have you got up to?

http://projecteuler.net/


I'm at level 2 (solved 60) started a few months ago.. you?

I can recommend project euler for EVERYONE who loves programming and math.


Actually I kinda did it so it would force me to get better at algorithmic problem solving, I think I got to 30 before I decided I couldn't take it anymore (long time ago tho) I'm really into programming theory, but not the kind that involves hardcore algorithms. I might try it again some time.

On July 09 2010 20:12 zatic wrote:
For anyone completely new to programming who is just curious try doing some stuff in Python. It is imo the easiest to learn and yet complete programming language out there.

... etc etc

Python is next to Javascript the language I use the most day to day (and I am a professional Java/ABAP programmer) just because they are both so helpful in everyday computer usage.

Python really should only be used once you have a fair grip on functional programming, it is actually one of the hardest languages to learn. Python uses a reference counting garbage collecting algorithm, and is even more confusing than manual memory management. Javascript uses mark-and-sweep so it is more beginner friendly. Beginner programmers will only end up creating memory leaks and a ton of side-effects. Dynamic and weak typing makes this worse too and only enforces bad habits.

And you are entirely missing the point. If you just want to learn or even just try programming - which my paragraph opened up with - you would be insane to wrap you head around memory management at all. People should just try out stuff, and Python is the most accessible and easy to learn languages that let you do stuff immediately.

You shouldn't start with Javascript though it is a comparably hard language to learn I just mentioned it because once you know a bit JS it makes your life much much easier.


Exactly "you would be insane to wrap your head around memory management", so why are you saying Python should be used by beginners? Memory management in Python is extremely complicated.

For example in Python. If var A references var B which references var A (and you lose the reference to those variables), you get a memory leak. Very easy to do if you don't know anything about reference pointers and stack and heap memory. Let alone, reference counting.

Just look at the OP. Massive [possible] memory leak there, if it was in Python.


That's not true anymore. Python's memory management is a lot better than it used to be. Even this site: http://www.nightmare.com/medusa/memory-leaks.html - which was last updated in 2006 says it was obselete then.

As a Python programmer, I'd say memory management in Python is easy. Super easy. In fact, the programmer does nothing - let the interpreter handle it all. It's great for a beginner to learn that doesn't want to dive into the low level aspect of things. Later, after the beginner has a grasp on the basics of programming, then they can delve into the understanding of -why- things work the way they are.

On the topic of which starting language:

It's my opinion that all the claims of starting language having importance on whether you'll be good at programming later or not is a bunch of bologna. Simply the fact that C is harder than most languages to understand/learn means that anyone starting on it and actually continuing is bound to be naturally good at programming / have great dedication (I believe natural talent plays a large role).

However, if the same amount of people start out on Python (or any other simpler language to learn), more are bound to have the talent and dedication to learn that - so 2x (insert real ratio here) number of people will finish that and go on to harder languages, and then some of them will drop out.

Essentially, in numbers what I'm saying is (in generic numbers to conceptualize), 10 people start on C, 5 finish and learn how it all really works.
10 people start on Python, 8 finish and continue with programing, move on to C, 5 finish and learn how it all really works.

5/5 C Programmers understand the inner workings, 5/8 Python Programmers understand the inner workings. Same number of people, different ratio.

IMO, look into a bunch of different common/popular languages, and decide which you like the most (or would find the most use for). Learn a bit about it, if you dislike it move on, if not continue, repeat process.


Interesting, cyclic-reference detection is probably not as good as your every day GC but its a big improvement. That said I still wouldn't trust it, and would adhere to proper GC principles. Because cyclic-referencing memory leaks are still possible in Python (apparently).

Also good point, I never saw it that way previously, but I think you are right on the money.
Come play Android Netrunner - http://www.teamliquid.net/forum/viewmessage.php?topic_id=409008
Adeny
Profile Blog Joined January 2009
Norway1233 Posts
July 09 2010 18:40 GMT
#79
I'm having a bit of trouble finding collections of tasks/challenges, like projecteuler, but maybe not as difficult? I've only done about 25 of the PE tasks, and so far they have been pretty challenging.
shmay
Profile Blog Joined July 2004
United States1091 Posts
July 09 2010 18:57 GMT
#80
How has anyone not mentioned Hacker News?
Prev 1 2 3 4 5 6 1030 1031 1032 Next
Please log in or register to reply.
Live Events Refresh
Kung Fu Cup
11:00
2026 Week 25
WardiTV370
Rex77
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Lowko341
ProTech129
Rex 77
StarCraft: Brood War
Britney 31298
Hyuk 1063
Soma 1057
Jaedong 693
actioN 617
Larva 418
Horang2 400
Soulkey 350
BeSt 295
Mini 246
[ Show more ]
910 213
EffOrt 213
Stork 211
Light 188
Snow 183
Last 162
ggaemo 97
Pusan 91
ZerO 86
Rush 75
Killer 53
Mind 48
Mong 40
hero 38
Creator 34
Shinee 32
Bale 28
Sharp 22
sorry 17
HiyA 16
yabsab 15
Sacsri 12
Noble 11
Free 9
Dota 2
Gorgc7331
Dendi373
Counter-Strike
olofmeister1557
markeloff89
kRYSTAL_43
Heroes of the Storm
crisheroes2745
Khaldor956
Other Games
gofns29566
singsing1599
B2W.Neo322
XBOCT313
Pyrionflax253
DeMusliM227
Mew2King95
ArmadaUGS58
ZerO(Twitch)11
Organizations
Dota 2
PGL Dota 2 - Main Stream166
[ Show 13 non-featured ]
StarCraft 2
• Berry_CruncH322
• StrangeGG 34
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• iopq 9
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Jankos1284
Other Games
• WagamamaTV171
Upcoming Events
Stellar Fest
1h 12m
The PondCast
22h 12m
OSC
1d 1h
Stellar Fest
1d 1h
OSC
1d 12h
Stellar Fest
2 days
CranKy Ducklings
2 days
Online Event
2 days
FEL
3 days
AI Arena Tournament
3 days
[ Show More ]
BSL: Ladder Tournament
3 days
Sparkling Tuna Cup
3 days
INu's Battles
4 days
herO vs Classic
Percival vs Rogue
BSL Open Qualifier
4 days
BSL Open Qualifier
4 days
Replay Cast
4 days
WardiTV Weekly
4 days
Replay Cast
5 days
INu's Battles
5 days
SHIN vs Cure
ByuN vs Zoun
PiGosaur Cup
6 days
Liquipedia Results

Completed

Proleague 2026-09-27
Blizzard Classic Cup 2026
Calamity Invitational

Ongoing

ASL Season 22
Super Anchor Qualifying S3
CSL 2026 AUTUMN (S22)
Acropolis #5
1win Private Club #1
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

Upcoming

Acropolis #5 - GSB
Acropolis #5 - GSC
BSL Season 23
SC4ALL II: Brood War
BSL 23: Non-Korean Championship
HSC XXX
Stellar Fest 2: Lunar Cup
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
Custodian Cup
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
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.