Recreational programming!

De qué se hablaPurely Programmers

Únase a LibraryThing para publicar.

Recreational programming!

Este tema está marcado actualmente como "inactivo"—el último mensaje es de hace más de 90 días. Puedes reactivarlo escribiendo una respuesta.

1wyrdchao
Sep 14, 2007, 9:59am

I know you can get paid for this stuff nowadays (ahahah) but... Does anyone here program strictly for the fun of it?

And, if so, why, what and in which language?

2rowens
Sep 14, 2007, 11:40am

Yes.

Why: to scratch an itch, to play with some interesting problem, to play with an interesting language, to follow someone else's footsteps to get a better understanding of what they did or why, to build a tool that makes some other project easier, to make something that looks neat, to do something that's not easy to do on a given platform.

What: All sorts of things. Report generators (e.g. a program to query Enemy Territory game servers and generate a fancy web page from the raw data), tweaking game addons (e.g. in World of Warcraft), object generators for 3D worlds (e.g. POV-Ray, BZFlag), drawing tools (e.g. a BASIC program to draw arcs on a PT250 terminal so that I could make a happy face picture or a bulls-eye), web scrapers to consolidate info from mutliple sites, javascript bookmarklets to tweak web pages, etc.

Languages: Depends on the domain or context. Perl for general purpose stuff, esp. if I need to deal with complex data structures, or to glue 2 other programs together, or because CPAN has a module that I can use to help things along. For environments like WoW, Lua or Forth or Javascript or whatever language is supported. If I'm playing with a new language, I'll generally pick some interesting task, and try to write a program (or several) to do that task.

3wyrdchao
Sep 14, 2007, 11:51pm

My 'why' is pretty similar to your 'why', it appears.

I have a distinct tendency to ignore packaged solutions (such as CPAN modules) until I'm sure I'm re-inventing the wheel; I usually end up understanding the problem better. A bizarre way to entertain myself, but... A good example (not mine) of a project that fascinates me is the '0wiki' on SourceForge, a tiny (22K) Perl-based wiki that uses NO modules whatsoever (not even CGI ones).

Perl is fun for knocking out an idea in a hurry, but I also find myself using Excel (horrors!) to rough out an algorithm (I'm an astronomy buff) before I convert it into a 'real' language.

And of course I cheat a lot by using Apache->browser as my UI (hahahaah).

4dbell154
Editado: Sep 16, 2007, 12:56am

Not strictly, but most of what I do I don't get paid for. I've just recently done some VBA database coding at work.

Why and how I got started was I wanted to use some software for certain purposes, and it was either too expensive or didn't exist. (I started in the 80's)

Started with mailing lists, did some game support, wrote a BBS program (actually a set of programs), BBS networking (echobase), and a lot of databases, and lately web pages with html, css, php, ad nauseam, Access, SQL Server type stuff.

Language: Basic, C, 8086 assembly, php, perl, html, , asp(.)

G'night.

5bvs
Sep 16, 2007, 4:22pm

I do lots of programming for fun. I do it to learn, to make other tasks easier, to try out an algorithm, to see if I can do something in a better way, to understand an existing complicated program I write a simple program that models its essential behavior, etc. You can save time by writing a simple script to handle repetitive work. Actually that is not always true but you can have more fun figuring out a neat solution:-) I use mostly C, Scheme, /bin/sh and assorted shell utilities. Once in a while C++, perl and an obscure APL like language called K.

Curiously, after getting really disgusted with all the dependencies most open source wikis seem to have, I too ended up writing my own simple wiki in C.

6wyrdchao
Sep 17, 2007, 12:17am

>5 bvs: K? Is there a disto of that for Linux? APL is another thing I would gladly try.

'wikis' - yeah, that was my own motivation for checking out '0wiki'; it was small enough that I could a actually tear it apart and extend it using modules that are more commonly supported. And wiki's are an easy way to move toward home-grown social networking solutions.

How far along are you with your C based one? Is it demo'd anywhere?

7andyl
Sep 17, 2007, 4:37am

#6

K if available for Linux - but it isn't open source. I think you used to be able to download a version for evaluation/non-commercial purposes but now you have to apply for an evaluation copy.

If you want to try something APLish then J is probably a good place to start - it doesn't use the idiosyncratic symbols of APL.

8wyrdchao
Sep 17, 2007, 8:19am

7> Thanks, I'll look for J in aptitude and see if it's available (I'm a debain/ubuntu guy).

Perl's weird stuff doesn't bother me, so APL will probably be okay.

9andyl
Sep 17, 2007, 9:26am

I don't think there is a .deb for it but you can download an install package from www.jsoftware.com

As for weird stuff a lot of the symbols that APL uses are not even on a standard keyboard. See This graphic of an APL keyboard. Most APL fragments and examples are terse to the extreme - mostly a single line.

10bvs
Sep 17, 2007, 1:06pm

I think you can still find K at an obscure site -- see the discussion on its wikipedia entry. Not open source but an excellent language once you wrap your mind around it! I am emulating it in my scheme interpreter but it is slow going. Never liked J (in my entirely biased and perhaps unfair opinion, J is to K what common lisp is to scheme). There are a number of open source APL interpreters you can play with. I think you can find a xterm or rxvt with an APL char set.

My own site used my wiki for a year or so but I took down my site for unrelated reasons. If anyone wants the code, contact me privately but I warn you, it was just a few hours worth of hack and I am not sure how secure it is. On the other hand it is under 1000 lines of C code (+ a bunch of library routines), called from a tiny cgi script.

11enigmamoirai
May 8, 2008, 10:55am

I started doing simple things for fun. Read a few books, and it in turn has encouraged me to go back to school and complete a second degree in programming to learn more and be able to get a job.

12Sollos
Jun 18, 2008, 12:50am

I'll program random things in Java or C++, such as basic algorithms and games. In some ways I do them for fun, I do choose what to do. However the ultimate reason for programming these applications are to upload them to my portfolio site that I can show off to colleges.

13spx2
Ago 23, 2008, 4:26pm

I'm doing some recreational programming about social networks.
I write in Perl.
Soon I will need to write some C to make it faster and also javascript.
If you want to see the results until now take a look here http://code.google.com/p/perlhobby/
I also need collaborators,I have a reading list so if you want to work on a nice
project just for fun :) I would very much be interested in talking with you :)
Have fun coding on your recreational projects as well.
They are a nice and fruitful way of spending time.

14drwho
Ene 2, 2009, 2:56pm

I do. Mostly, I do it to solve specific problems that crop up outside of work, such as digesting my web server's logs, manipulating batches of files, or things like that. Sometimes, as part of teaching myself things, I'll write software relevant to the task (usually statistical or data analysis utilities). At one time, I wrote a lot of code for this in C, but in the past five or six years I've gotten sick of debugging memory allocation segfaults and started using Perl for those projects. One of these days I'll probably teach myself Python but right now Perl works for what I need it to do.

15Noisy
Ene 4, 2009, 9:51am

I'm finding it hard to parse the question: what is 'non-fun' programming? ;-)

I used to get paid for programming, and then my company started wanting me to do other stuff - don't know why I didn't say "Go away - just let me get on with the programming!"

In the last year I've returned to programming after a five year lay-off. It was great fun learning a new system (DataFlux - more a graphical tool than a programming language) and then writing 75% of the system on my own (including re-writing most of the work of a GD programmer(?)).

16naastik
Editado: Feb 19, 2009, 10:32pm

Strictly for the fun of it? sure, yes and for that I choose a (strictly) functional programming language Haskell. I wrote a sudoku solver and an engine that plays the "cows & bulls" game.

17utoxin
Feb 18, 2009, 6:17pm

I get paid to code... but I'm doing it because it's fun, not because I get paid. Does that count? ;)

My personal projects are either itch-scratching, or far-fetched attempts to come up with something that could make me fabulously wealthy. ;)

18naastik
Feb 19, 2009, 10:35pm

Envy you utoxin (#17)! I thought only scientists and practitioners of world's oldest profession got enjoyment at work. ;)

19utoxin
Feb 20, 2009, 12:30am

#18

*grins* I love my job. Been programming professionally for 9 years, as of this year. Taught myself Pascal in the 5th or 6th grade, back around... *thinks* 1990? 1991? Something like that. Been programming ever since.

Languages I've known at some point well enough to write programs in:

Pascal
C
C++
HyperTalk
Perl
PHP
Javascript
Lisp
Basic (I guess... But any moron can do that.)

And a few I'm sure I've forgotten.

My work these days is web development. I just got done with a 2 year contract gig with Yahoo, building internal tools for their search engine marketing team. Now I'm working for a local SEO / Marketing firm, building some internal tools for them.

My favorite languages are Perl and PHP, though I'm fond of Lisp as well. Just have absolutely no reason to use it professionally. I've recently gotten hooked on the CakePHP framework. Every PHP developer should check it out. It's an awesome framework, and has made my life SO much easier.

I'll stop now, before I ramble on all night. :)

20dick_pountain
Feb 20, 2009, 2:12am

I'm programming for fun in Ruby nowadays, simply because Ruby *is* fun whereas all my other languages had ceased to be... I've recently written a linear equation solver, a matrix calculator (which takes complex numbers and fractions as well as integers and floats) and a number factoriser all in Ruby, using the Shoes framework as the Windows front-end. Can't recommend Ruby highly enough for anyone who liked/likes Lisp-like or Smalltalk like languages.

21andyl
Feb 20, 2009, 4:32am

#19

I've been programming 21 years professionally (and about 28 years in total). If the enjoyment is there from the start it will probably never go away.

It is such that work is a bit slow at the moment and I am hunting around for a small pet project for me to work on - maybe something I can do in ruby which is something I know but haven't used in anger.

22tgreen
Abr 25, 2009, 12:02am

After discovering a book on the subject by accident, I have been writing code for an almost-extinct API called "Quicktime For Java".

23timspalding
Abr 25, 2009, 12:34am

I've only been programming professionally for maybe seven years... More like four really, since before that I was a Perl jockey and not a good one.