views:

368

answers:

13

As an artist and musician, I often want to sit down and just let the code roll like a piece of free-form poetry, but I've found that doesn't work as well as when I have a set goal in mind. I've been experimenting lately with setting up tiny, fun goals for myself, not unlike how an artist would sketch a quick still-life, but I wonder...

What do others do when they want to code for fun, without the bondage of an already-committed project?

A: 

Python is great for just getting things going on an idea and having the language (usually) behave like you would expect.

While it may have its drawbacks, it sounds like a great fit for what you are describing.

So to answer your question, the Python Challenge is entertaining and often gets me thinking about little things that would be fun to code, probably because it exposes you to different types of problems.

ghills
+4  A: 

Design work, I find, flows much easier than just coding. I find that coding is often more of just implementation of a good design; I really like to just sit down with a pad of paper and a pen (and likely a bottle of wine) and work out an interesting design.

McWafflestix
+1 so true. I almost wrote something like this, but hoped that design would be done before it came time to code. Maybe the problem, which you address, is that coding is a chore _because_ the design isn't done.
Argalatyr
+3  A: 

Project Euler is where I'm having fun at now. I can go at my own pace and work on the problems that interest me. Also, work in any language I choose.

DoxaLogos
A: 
Cameron MacFarland
+4  A: 

Write documentation when coding doesn't come easy - coding will quickly seem much more appealing!

Argalatyr
+1  A: 

I like to pick up a new language and learn how to express ideas in it. This usually has the benefit of showing me what I like and don't like about the languages I currently use. I usually pick some little tool project I've been wanting to do. Using the new language angle get's me motivated

My most recent 'new language' is Scala, in this case it will likely become a langue I use.

jottos
+1  A: 

I like writing on whiteboards. Great for db diagrams, task lists, feature lists, (other lists,) random ideas, notes, etc. (db diagrams being the biggie for me)

nilamo
A: 

I like to code.

I like to find something interesting, code it and then see it works.

It does not have to be a project per see, it's good enough if it does something, like use Google api to get picasa albums, change song in iTunes or get details of current iTunes song, automate downloading of document from web site that is behind login and requires cookies and all that stuff, data parser in python, simple app on Mac, core data application, google codejam problems, topcoder.com problems ...

stefanB
A: 

I like to learn new features of some language or some new language/technology/patterns/tool :-)

Ratnesh Maurya
A: 

Usually I will work in Photoshop for a while. Get creative and try to come up with a new design that's not constrained by any code. Maybe even find something inspiring on the web for some new design ideas... then try to implement the design in code. That's the fun and challenging bit.

Gerard
+3  A: 

Going for a walk outside.

+2  A: 

I tend to map my idea or build a structure in a MindMapping tool like MindMeister. And it's great for a team because it can be edited in real time by multiple persons!

Rothlis
also take a look at freemind.com - opensource mindmapping
meade
A: 

Use the REPL.

You figure out broadly the sort of thing you need to do - what APIs you need to use, what data structures you need to handle - and then prod them interactively until they start making sense. A ton of languages I use now have REPLs: Ruby, Python, Scala, Java (BeanShell, or JRuby/Jython etc.), C# ('csharp'), PHP (Facebook have made a REPL for it), Smalltalk (GNU gst) and, obviously, LISP/Scheme.

Tom Morris