HACKER Q&A
📣 gabesullice

Could we build a digital monument? If so, what would it be?


I believe artisans and craftsmen sometimes contributed their time and talent during the construction of grand cathedrals. The results of which are beautiful monuments that inspire awe.

Given a rotating set of ~100 digital professionals (programmers, designers, etc.) working for a month at a time, for at least 3 years, as full-time volunteers. Could we construct an awe inspiring digital monument?

If so, what would the project be? What should it achieve? Should it be entirely utilitarian? Entirely whimsical? Somewhere in-between? What would it need to do/be to be preserved and kept up for centuries, even if only as a novelty?

I think it would have to be something that was outside the capability of just a few people to accomplish in any amount of time. I.e. the task should intrinsically require a large number of of people to make progress. However, that constraint shouldn't be achieved by artificial restrictions like "without being allowed to automate tasks".

I think it's also important to exclude answers like "the linux kernel" because the monument should have a fixed design goal and a definition of done—a point at which the project is declared complete. Maybe it could be forked and extended after that, but the monument shouldn't be a never-ending endeavor, even if it takes years to finish.


  👤 not_your_vase Accepted Answer ✓
IT and programming are still very new disciplines. We are still trying to jump around the landmines we have buried 50 years ago, because no one thought that for example computers would be used for secure things. Those cathedrals were built after centuries of research and practice, continuously trying out what works and what not.

In software development we are still trying to figure out how to write a CRUD app that doesn't implode in the most entertaining ways. This question could be answerable after a big paradigm shift in the industry, which would eliminate most of today's software and infrastructure, and would bring something that's actually reliable (and stays reliable for more than 2 weeks).


👤 fsflover
Wikipedia and archive.org.

👤 gabesullice
Without directly answering my own question, I'll share my thinking about its potential design requirements.

I think it should be "inhabitable" as in, people should be able to have experiences (plural) while using the software, not merely have an experience of the software. The Mona Lisa is not inhabitable, the Pantheon is. Digitally, this could mean something vastly different, such as a MMORPG vs. a site like an Facebook, Twitter, or Reddit. Both are "inhabitable". Google Search is not very inhabitable.

I think it should be practically "unbounded" as in, it shouldn't have a fixed limit on the number of users. It should only be limited by the computational resources that are allocated to it. IPv4 is bounded, IPv6 is not. For example, a chatroom shouldn't be arbitrarily limited to 1000 participants. However, it'd be acceptable if the operator can only afford enough machines to handle X number of connections, so long as if those resources were increased, the software's capacity would increase linearly (or better).

This one is counterintuitive to most software designers, but I think its implementation should be spectacularly visible to its users. By analogy, its columns and arches should be on display, as opposed to having its wooden frame covered in sheetrock and paint. I think there's plenty of room for artistic interpretation on this requirement though. For example, a webpage might use gradients to highlight its margins and paddings, or the portals in something like a MUD server could directly correspond to server port numbers.

To ensure that the monument couldn't be cheaply imitated, I think the "problem" it solves would need to be of a scope and scale that it's evident that no single person could learn/master the techniques used to craft the software in one lifetime, under normal circumstances. For example, it would be extraordinary for someone to master the techniques needed to build a massively distributed, networked system and also master the art of building high-performance game engines over the course of a single career. Maybe possible, but definitely extraordinary. So if the "problem" solved by the software required masters from many disciplines, the project would be very difficult to immitate.

Finally, another potentially counterculture requirement: the monument would need a spec sheet. It must have a point where it can be declared complete, where new features are rejected because doing so would change its nature. Maintenance would be acceptable. For example, upgrading it to run on newer architectures would be fine. It shouldn't necessarily need to be run in an emulator to be preserved. But it shouldn't be an ongoing, open-source project that gets features added and removed. It should be able to be experienced "as it was" to the furthest practical extent. By analogy, cathedrals have electric lighting nowadays, but we don't say "we could make this cathedral's towers twice as tall if we were to rebuild it with steel."


👤 voidDescriptor
Like Reddit’s Pixel?

👤 theGeatZhopa
Paywall remover for HN