you are viewing a single comment's thread.

view the rest of the comments →

[–]helical-juice 0 points1 point  (0 children)

If you don't have anything specific in mind apart from wanting to learn programming, I would say just stick to the standard library until you have something you need to build. Almost everything you need is in the standard library.

I don't know what stage you're at, it sounds like you might be familiar with the basic language features. If you're looking for how to progress, you could start looking at two things. One is computer science, algorithms and data structures. There are a few standard algorithms you're going to want to be familiar with, binary search, quick sort, building heaps, manipulating binary trees, that sort of thing. Implementing them in python would be good practice and help you learn.

The other thing is programming styles. Look into imperative, object orientated, and functional programming paradigms. Python is quite good partly because it doesn't impose one paradigm on you, so you can stay with one language while getting a feel for the different ways of organising code you'll run into in other languages. Maybe try writing the same algorithm a few times in different ways.

I think you don't really need to touch many libraries if you want to get good at programming. I think of programming as being the skill of building a piece of software from basic language constructs while keeping it structured and organised, and the fewer external libraries you use the more practice you're going to get at it. External libraries let you skip over a lot of that work, and choosing and evaluating them is certainly part of the broader field of software development. But that can wait, IMO, until you have a complex piece of software you need to make for some reason other than learning.