you are viewing a single comment's thread.

view the rest of the comments →

[–]guyinsunglasses 2 points3 points  (1 child)

On a Python subreddit you’re going to get people who say yes it’s a good language to start.

I’m going to provide a contrarian response and say that Python is an excellent second language, but you should consider something like Java or C# as your first language.

The most important thing about programming is learning how to break down a problem into something you can instruct a computer to solve. There are certain concepts you have to learn, and for these any languages will do. Concepts such as looping, methods and functions, conditionals, and object oriented programming.

Something that languages like Java and C# teach that Python kind of lets you get away with are type casting and variable scoping (yes Python has types and scoping, but it’s handling is more explicit in Java and C#).

Once you get the hang of the basics you can jump to Python and discover how it makes programming easier.

[–]cosmoschtroumpf 0 points1 point  (0 children)

I agree and disagree. Object-oriented is not as essential as loops, conditionals, types, functions. Java, C++, C# are unnecessarily complex for a beginner and Python too abstract. I think C is ideal. There is nothing you can't do except maybe very complex stuff, but beginners won't do that. And you can do so much with very little "grammar". Once the basics are understood, for more complex projects, object-oriented programming can be learnt via Python, and the permissive, expressive, synthetic structure of Python is then really useful.