Now Reading
LOLWUT: a bit of artwork inside a database command

LOLWUT: a bit of artwork inside a database command

2024-01-02 07:14:28

antirez 1938 days in the past. 229022 views.

The previous couple of days have been fairly intense. One of many arguments, in regards to the dispute associated to changing or not the phrases utilized in Redis replication with completely different ones, was the next: is it worthwhile to do work that doesn't produce any technological end result?

As I used to be altering the Redis supply code to eliminate a selected phrase the place potential, I began to assume that no matter my concept was in regards to the work I used to be doing, I’m the type of individual that enjoys writing code that has no measurable technological results. Changing phrases is simply annoying, even when, even there, there have been just a few worthwhile technological challenges. However there's another type of code that I consider has a high quality referred to as “hack worth”. It might not remedy any technological downside, but it’s value to jot down. Generally as a result of the method of writing the code is, itself, rewarding. Different instances as a result of very technically superior concepts are used to resolve a not helpful downside. Generally code is simply written for creative causes.

Not directly the Twitter dialogue of the final days, largely uninformed, chaotic, heated, made me assume that, at this level, we're very removed from the primary hackers within the 60s. As I become older I discover that it's tougher and tougher to speak about expertise with an hacking perspective, the place there aren't any partitions or pre-cooked concepts, and the restrict is the exploration. For every little thing you say there's a greatest apply. For each concept there's a taboo. To this new setup I say LOLWUT, since I don’t really feel represented by it, nor it represents hacking, not less than in my imaginative and prescient. So the thought was to spend some technologically ineffective time to be able to discover one thing of the 60s.

My consideration went instantly to one of many pc artwork items I really like probably the most: Schotter, by Georg Nees (https://en.wikipedia.org/wiki/Georg_Nees). With the assistance of a plotter and ALGOL packages, Nees explored writing packages to generate artwork utilizing caos (randomness) and repeating patterns. Schotter is outstanding due to the simplicity of the piece and the deep which means that the observer can discover taking a look at it. Beneath a floor of complete calm and order, deep contained in the dysfunction hides. Or, when you put it the other way up it turns into like the ocean throughout a tempest. Nevertheless the floor might look impetuous, the deep sea stays calm.

Is it potential to show a bit of artwork right into a database command? This was difficult as a result of Redis is generally utilized by a command line interface. These days terminals are for positive fancier than those of the previous, however but to show respectable graphics is tough. On the opposite facet there's the massive benefit of the true time computation: a bit of artwork will be dynamic, altering each time it's generated.

Earlier than persevering with, I need to present you the ultimate end result:



Whereas very low decision the thought of the unique piece continues to be there. To make this potential I used a trick that lately was utilized by a number of packages attempting to show attention-grabbing issues in a textual content console. It includes utilizing the Braille unicode charset to be able to create a pixel matrix which is extra dense than the person characters of the console. Particularly, for every character, it's potential to suit a 2x8 grid of pixels.

The second a part of the experiment was to make the artwork piece parametric:



It's potential to generate completely different variations of the unique piece, altering the variety of squares and the output decision. Lastly the supply code needed to be an instance of literate programming, being written in a type that resembles extra a tutorial describing what every little thing does and why, as an alternative of some opaque generator. You'll find the code right here:

https://github.com/antirez/redis/blob/unstable/src/lolwut.c

LOLWUT can be going to be a practice ranging from Redis 5. At every new main model of Redis what the command does will change fully, solely a algorithm will likely be mounted:

1. It might’t do something technologically helpful.
2. It must be quick at doing what it does, in order that it's protected to name LOLWUT on manufacturing cases.
3. The output must be entertaining in a roundabout way.

I wrote the primary one for Redis 5, for the following variations, if I discover curiosity, I’ll ask anyone else that contributed to Redis to jot down the opposite LOLWUT variations, in any other case I’ll write it once more myself (however I hope that’s not the case). LOLWUT ought to bear in mind ourselves that the work we do, programming, didn't begin simply to be able to produce one thing helpful. Initially it was primarily a matter of exploring prospects. I hope that LOLWUT additionally will remind the Redis neighborhood that computer systems are about people, and that it's not potential to motive in an aseptic method simply considering on the technological implications. There are individuals utilizing programs, individuals constructing programs, and so forth.

Source Link

What's Your Reaction?
Excited
0
Happy
0
In Love
0
Not Sure
0
Silly
0
View Comments (0)

Leave a Reply

Your email address will not be published.

2022 Blinking Robots.
WordPress by Doejo

Scroll To Top