Hacker News new | ask | show | jobs
by medinism 5361 days ago
Thank you TMK. Is there a particular reason? Is there an argument to be made that the structure of Python programs makes you a better programmer?
2 comments

Although languages like Python are arguably 'easier' to learn than others, I think there is actually a strong argument for beginners to learn more classic languages first:

1: More established languages tend to have far more documentation, tutorials and example code.

2: More people use more established languages, so asking for help tends to be a lot easier.

3: Programmers can be a prickly bunch, and it is quite likely that beginners will realise this as soon as they try to explain why they're writing an RPG in Python rather than <insert somebody's favourite language here>.

4: A lot of the attraction of 'easier' languages like Python is that they take the boiler-plate code that other languages require and hide it behind a nice friendly syntax. This is very useful for programmers who already understand the concepts that are being glossed over by the shiny syntax, but beginners may struggle to comprehend their own bugs / problems, or even explain them to others if they do not understand exactly how their language of choice is helping them by cutting out the boiler-plate.

All that being said - there are much worse places to start than Python. I would just recommend that learning a 'harder' language in tandem may be very useful to beginners.

If we're talking web-app specific stuff here - Ruby on Rails is quick and easy to get something nice up and running quickly. Ruby is somewhat similar to Python, too.

I don't really think there's any particular language out there that makes you 'better', although I would suggest learning a variety of different types of languages (i.e. functional vs. imperative, static vs. dynamic, etc.)
Well, maybe not the basic syntax elements of a language, but there are idioms and techniques, some of which are quite language specific (or, are native or naturally expressed in some languages) and learning them will actually make you better.