💾 Archived View for soviet.circumlunar.space › zwatotem › diff › scale.gmi captured on 2023-05-24 at 18:27:23. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2021-12-03)

➡️ Next capture (2023-12-28)

-=-=-=-=-=-=-

Good design at every scale

Introduction

My "old" laptop died recently. This is kinda sad. I had a great experience with it, but it only lasted me about 5 years. The bigges shortcoming compared to a new one turned out to be it's biggest advantage - significatly darker screen. It was hard to use it during the day, but at least at night the light level was comfortable. Now the screen in the new laptop hurts my eyes a lot despite being turned all the way down, and themed dark wherever possible. But that's not the subject of this post.

Is the future distributed?

Over the last couple weeks I've been hearing a lot about this new thing called NFT. At first I didn't know, what it's reffering to, but after a period of hearing excited voices on how it's a game changer for artists, how people get rich on it etc. I decided, that I can't left the question of what NFT's are without an answer. It turned out NFT's are a closely related cousins of cryptocurrencies, that operate alongside them in a distributed manner. They are a digital representation for ownership of some non-fungible good.

Article on NFTs on Wikipedia mirror on vault.transjovian.org

However all the resources that with their title claimed to answer the question of what are NFTs felt very vague, and unprecise. Having a need to understand the topic deeply I headed back to a good old YouTube video I knew explained crypto well.

That exact video, by 3Blue1Brown

Later I also read the main article the video referenced

Michael Nielsen post on the design choices of Bitcoin protocol

A word about IPFS

While learning all this I also recalled myself about IPFS. IPFS is a great idea. The acronym's for InterPlanetary File System, funny name for me. Although it suggest IPFS to be a file system, it is not a file system in a traditional understanding, that it tells storage devices, how to interprete memory segments as files and organize them. Instead IPFS is one abstraction layer higher. It creates a network of computers, that share files between them. Every file is addressed by it's hash, so the user doesn't have to care, where the file is, instead they just care what the file is. The extra benefit of using hashes is ability to verify authenticity of incoming content. The key benefit, that creators of IPFS like to advertise is caching, which should in theory decrease the downtime of availibility of certain files. In practise I can't see this happening, especially if IPFS is ment to run on peoples computers. Noone is willing to leave his computer on (or even is able, if we are talking about portable, battery powered devices) just to support the network with their caches of files. Apparently people thought about it before, and implemented something called Filecoin, a cryptocurrency which rewards you for staying up in IPFS. I didn't dive into details of Filecoin or even technical details of IPFS itself, but the whole concept seems intriguing for me.

What does this change?

I saw an interesting thing. Two revolutionary inventions; RSA and SHA (by no means simple, but it doesn't matter for an average developer using them in own projects) open amazing possibilities in the world of distributed systems.

Read more on RSA

Read more on SHA

What was possible to do on a single device, is now doible in the entire internet. Until now interacting with a local machine itself, and interacting with outside resources through network always felt as separate experiences. Want to do somethig on the terminal? Just open the terminal. On another computer? Run ssh first. And you have to remember the hostname, and a separate password, because it's not the same computer anymore. Whant to watch a video? Just lauch it from your filesystem. On the internet? You have to open your browser, and you won't use the video player as usual. You will watch it in the browser. To some extent you could improvise, to make these experiences more flawless, but it required effort from your side, and by no means worked everywhere. Now that cryptocurrencies were popularized, all the other crazy projects can start to use the goods, that assymetric cryptography brings along, because they can be self sustained from the rewarding system of mining crypto.

How does this apply to my ideas?

Initially my ideas were circling around personal space computing. New ways of processor work, dynamic acceleration, system-wide type system (that all will hopefully be covered in the future posts, and get organized in snapshot section). But now, that I got hyped with all that distributed technology, especially this one little thing; device independent hash adressing of resources, I feel like I should learn it even better and reiterate on my ideas, to expand them into the internet space to make everything coherent as much as possible.

Why future might not be distributed?

For now the main limiting factor for me is, how the internet space is unequal now. We, living in highly developed countries may not realize, that some people live in areas, where internet access is not a standard at all, and even if someone has one, it takes a long time to connect and the computing power and uptime required to cooperate on these fancy systems may not be achieveble. The next thing I very much hate about these cryptocurrencies is how expensive they become. Proof of work does this by design, so any cryptocurrency using it will draw more power per unit of currency, compared to traditional, centralized payment system. So all this is a tradeoff. On one side we have easy on users computers, and relatively easy to implement system, where services are centralized, unification is limited, and we have less freedom to what we can do. On the other side we have a system, that I'd say promotes more active style of being, encouriging user to be a creator, besides being a consumer of content, and encouriging (or rather requiring) his computer to participate actively. It's hard to predict the network load (would it be higher, or lower?) but that's another thing to consider.

That's all for now

I'll let you know, when I come up with something cool, utilizing internet-wide integration.

For the matter of time have a great Easter. Wish you to have your life changed by Resurrected Christ ;)