http://www.perlmonks.org?node_id=191891


in reply to Do your homework!

Along the same lines, I suggest creating a set of small projects that you typically implement after you go through the basic samples associated with a given language's tutorials.

For example, here are a few that I try my hand at before I claim I'm proficient in a new language:

A lot depends, of course, on the target language and why I'm learning it. However, I've found that by implementing these (and several other) projects that I already understand and have implemented multiple times, I find I learn the skills I really need far more quickly than I would by tackling solely through assigned tasks, e.g. employer tasks or client projects.

I wonder if anyone else does something similar. If so, care to share the pet projects you use to help make sure you're learning what you need from a new programming language or development tool?

--f

Replies are listed 'Best First'.
Re: Re: Do your homework!
by jepri (Parson) on Aug 22, 2002 at 04:21 UTC
    You do keep yourself busy :) I have just a few things like that.

    I usually go for the graphics first. I have a need for instant gratification so I write a pretty fractal generator. Mandlebrot, bifurcation or IFS. That tends to show me how much the compiler will get in my way for doing simple tasks (since fractals are essentially simple things).

    In text mode, I used to enjoy writing banner and billboard style text tricks, which are handy to see how much the language's IO libraries suck (Perl sucks quite hard on that one).

    Then onto the networking. Depending on the languages level I'll try something like a local network scanner or a client for something (exactly what depends on the mood). I tend to find this is the best indicator of whether a language is powerful or just a toy. Networking should be easy but so often isn't.

    I'm also a pretty destructive, so I'll poke around the API and see how much I can mess with the system (at a low level), or toy with the user (high level graphics). Favourites are trying to get the server to thrash or lock up, or writing those annoying programs that hide the users mouse, or pop up a message telling the user that the computer has crashed.

    ____________________
    Jeremy
    I didn't believe in evil until I dated it.