I have a huge inferiority complex wrapped around D...
# thinking-together
i
I have a huge inferiority complex wrapped around Devine Lu Linvega. Everything he makes oozes style. Of course you wouldn't build a web server using it. He makes programming tools for art, as art. That as art part tends to rub people programmers the wrong way — it makes them obsess about "novelty" and "aesthetics" and "practical uses". Those people are missing the point. Just like we have our FoC community, there's a great community of people blurring the line between programming tools, games, music, and visual art, which Linvega is a part of. I highly recommend people take a look at the developer XRA (https://twitter.com/xra), who is making a video game called Memories of a Broken Dimension. Do a "MoBD is to regular games as X is to regular programming languages", and you'll find a very interesting/fruitful idea space to explore.
👍 2
☝️ 3
🤔 2
s
Yes, we may have more to learn from the art and design world than the engineering world. I used to think of software as engineering, but now wonder if its closer to industrial design.
👍 2
d
I circle around this a lot. My current wishy-washy resolution is that there are many different kinds of software. Engineering may be a useful metaphor for techniques to build infrastructure software, while software with users might be closer to industrial design or art or writing
🍰 1
j
In my day-to-day work and usage of software, I see lots of spaces and places, both in code and in the software that code generates, so I think the architecture and building metaphors apply.
☝️ 4
s
Re comparing code to engineering, @Tudor Girba has a good counter argument. Software is constantly changing unlike a bridge which is built once. Coding is about constantly making decisions, adapting
👍 1
🤔 3
c
I agree with @Dylan Lederle-Ensign, there is no one analogy. Some software is like a machine, some like a tool, some like a book, some like a bridge, some like a policy or procedure.
👍 1
There's a lot of friction in business/industry when people buy software that is sold like a machine, but it's actually just an encoding of their business processes and policies
Obviously this kind of software can never be "finished" in the same way a business is never "finished"
👍 2
j
@stevekrouse what’s that quote? Something like: software dies when the holders of its theory move on. Nice thoughts here!
d
I can’t remember if I’ve said this in this slack or not but: While I think engineering metaphors are not great for most user facing software, or for the practices of building that software, I do think its valuable politically to claim the mantle of being an engineer. There’s a lot of cultural capital in engineering that
design
doesn’t have. I think its worth being aware as you theorize what the implications of that theory would be 🙂 With @Chris Knott’s example, businesses are (often) reluctant to give up control over their practices. While the software you’re building is encoding business practices, that might be a tougher sell than buying a machine.
🍰 1
i
I like thinking of writing software as a subset of writing in general. Both are means of communication. Both can be used for something quick and dirty — "Get Milk" on a post-it or
User.where(expired:true).count
in a REPL. Both are used to make great, vast works that are intended to touch huge swathes of humanity and last for a very long time. There are differences in how they function as tools, and the kinds of mindset and coordination needed. Writing is often personal, software is often not. Writing is often done in a medium meant for continual evolution or advancement — I love my whiteboard with layers of caked-on text atop layers of caked-on text. You could argue that Chat is the CI of writing. You could argue that an annual OS update is akin to an annual textbook or encyclopedia revision. Rich Hickey, in his 2 year hammock time, might just as well have written a novel. To an outside observer, the process might have looked identical.
👏 2
k
@jarm Is that a reference to Peter Naur's "Programming as Theory Building"? http://akkartik.name/naur.pdf
✔️ 1
j
@Kartik Agaram that’s the one!
s
Some would say comparisons to engineering don’t work because that’s not what we do anyway: https://twitter.com/stefanlesser/status/952919588555182080