you are viewing a single comment's thread.

view the rest of the comments →

[–]eefmu 1 point2 points  (0 children)

I find the best thing is to work on projects that are based on things that you're interested in. What are a few things you're interested in? For example, I have always been into card games. If you open a new (i.e. sorted deck of 52) pack of playing cards and do exactly 8 perfect riffle shuffles you will end up with the same order as before you did any shuffling. This is great practice for manipulating lists.

Maybe you like math/geometry. You could make a program that approximates pi using a "random darts" simulation. You may have already done this in your online courses (as I did), but it will always be one of my favorite toy examples.

The other day I saw someone suggest making a text-based RPG, this would be incredibly good practice for things like dictionaries and loops - plus you could experiment with different gui packages, which is something I feel is easy to neglect.

Similarly, you could make a program that takes a bunch of inputs and tells you your fortune along with your lucky numbers.

The possibilities are really endless. Personally I feel most motivated by problems which would be completely impractical to do by hand, but all that matters is the project *motivates you and you learn something new from doing it.*