
Ask HN: Can programming be less about tuning and more about playing? - julienreszka
When I compare with a musical instrument, I feel like computer programming is too much about tuning and not enough about playing.<p>I wish it was more reactive, less dull.<p>For now brain computer interfaces are still science fiction so...<p>Do you know of any piece of technology that exists today, that would help create more playfully with the computer ?
======
Liber-Abaci
Yes that technology is called Common Lisp. You hack together whatever you want
at the highest possible abstraction level, pluck out just what you changed,
and play with it by hand to test it. No writing tests, no types, no complex
syntax to learn, no limits on macros hackery, no guarantees anything will work
either but you're likely just doing it for a hobby and not in a highly complex
professional setting. I would imagine professional musicians also feel like
they're doing too much tuning and not enough playing because it's work, and
most of the material out there for programming is for/by people in the
professional industry which is probably why you don't like it just like you
wouldn't want to read professional music theory journals or studio engineering
documentation.

------
quickthrower2
You might find this talk by Brett Victor interesting:
[https://m.youtube.com/watch?v=PUv66718DII#](https://m.youtube.com/watch?v=PUv66718DII#)

~~~
julienreszka
Thank you that was very interesting !

------
julienreszka
Maybe programming with my voice could be fun. Is anybody using this kind of
stuff on a daily basis ?
[http://ergoemacs.org/emacs/using_voice_to_code.html](http://ergoemacs.org/emacs/using_voice_to_code.html)

------
thedevindevops
I always see the unit test lights turning green as 'points earned', is that
the sort of thing you mean?

~~~
matfil
Unit testing seems a lot like tuning to me. There's usually a pretty
straightforward definition of "correct" (A=440Hz...), but it's -- at best --
distantly related to the audience's experience of the performance.

~~~
thedevindevops
Okay can you clarify your analogy - what is 'playing' in programming terms?

~~~
matfil
That's a great question, and I'll admit I find it easier to define in the
negative than in the positive. And obviously, I'm not the original asker, so
it would be interesting to hear their version as well.

For me, I think that a key difference might be one of "directness". That is,
building things that directly relate to what the user experiences, rather than
following processes which you have to trust will lead to the eventual creation
of something enjoyable or valuable.

Paul Graham wrote something which, for me, does a pretty good job of capturing
how things feel when you're working in this kind of way[1], and also
explaining why there's an impedance mismatch between this and what larger
organisations tend to be looking for.

[1] [http://paulgraham.com/head.html](http://paulgraham.com/head.html)

------
nikonyrh
Which programming languages and IDEs have you used? Are they efficient at
solving your problems or do you need pay tons on attention to every tiny
detail?

I'm hinting towards functional programming ;)

------
hotdox
If you want to play programs you need to became SRE or DevOps. Guys which run
code in production. In resource-constrained environements programmers also run
their code in production.

