Skip to main content

Ralsina.Me — Roberto Alsina's website

Hoy: Mosaicos

Tiling Win­dow Man­ager­s: cosa de nerds o cosa de su­per ul­tra re­con­tra ren­erd­s? De­bería sen­tirme mal porque me pare­cen in­có­mo­d­os y pre­fiero mi win­dow man­ag­er tradi­cional?

No te pre­ocu­pes, acá te mue­stro la ter­cera posi­ción, casi un per­o­nis­mo del mane­jo de ven­tanas: KWin + Kröhnkite, o "co­mo un tiling wm, pero lin­do"

No sé que miér­coles le pasa al sonido a los 2:58, pero no lo pien­so volver a grabar por es­o.

Server Architecture

Just for the record, I saw this hi­lar­i­ous tweet about what you need to "prop­er­ly" de­ploy Word­press in AWS:

So I quick­ly got my Leno­vo Pen out of its hold­er and pro­ceed­ed to do the equiv­a­lent for Niko­la:

/images/arch.png

Yes, that is my hand­writ­ing.

New Nikola Thing: scripts

Niko­la is a stat­ic site gen­er­a­tor, and it knows its au­di­ence: Nerd­s, pro­gram­mer­s, sci­ence peo­ple, and the like. Oh, and me. I most­ly de­vel­op it for me.

One im­por­tant thing for this cat­e­go­ry of tools is that they should cater to what the users want to do, and al­so to how they want to do it.

So, faced with the need to do things like "set this spe­cif­ic meta­da­ta field in these 490 posts out of the 1450 you have" ... edit­ing them man­u­al­ly is not go­ing to hap­pen.

Sure, I could sed/python/what­ev­er my way to do it "au­to­mat­i­cal­ly". But that is go­ing to be aw­ful­ly er­ror prone.

So, I have start­ed a cam­paign to fix it. I want to make Niko­la be the API to its da­ta. This has two sides.

I need to be able to run one-off things

This needs to be easier than creating a Nikola command plugin but less annoying than typing them in nikola console

[ralsina@salma static]$ nikola console
Scanning posts..........done!
Python 3.8.2 (default, Feb 26 2020, 22:21:03) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.11.1 -- An enhanced Interactive Python. Type '?' for help.


Nikola v8.0.4 -- IPython Console (conf = configuration file, site, nikola_site = site engine, commands = nikola commands)

In [1]:  

The good news is: this is done in git mas­ter!

Now you can create a python script and run it as nikola console -s cool_script.py and the script runs in the same context as the console, so you magically have the site itself and the timeline and the configuration and all the good stuff ready to use.

I need the API to be useful

And this is where Niko­la has ... not been a good boy. Since it was meant to gen­er­ate stat­ic sites, it's pret­ty good about of­fer­ing you ways to know things about your da­ta.

Want to know what is the de­scrip­tion of the tags ap­plied to the post in slovene? it to­tal­ly can do that in two lines.

Want to add a tag to a post? Sor­ry dude, that's im­pos­si­ble.

So, I am adding these things, slow­ly.

And that's the cur­rent sta­tus.

Greenwich 0 Tribe

A week ago or so I changed jobs sud­den­ly. I was fired1 at noon, and it took me all the way un­til late af­ter­noon to find an­oth­er job2.

So, I lost a promised vis­it to Ljubl­jana of­fices, I gained a promised vis­it to Lon­don of­fices, mon­ey would come from a dif­fer­ent place, Async-flask-­clone was out, Djan­go was in, and so on.

Lit­tle did I know that a much more fun­da­men­tal change was in store, I would have to change tribes3. I left the tribe where I had lived my whole life, the usu­al­ly GMT-3 tribe of my birth, and joined Green­wich 0.

So, I now wake up at what these for­eign­ers around me claim is 4:45 AM, so I can get to my dai­ly standup at my 9:15. This is hav­ing in­ter­est­ing ef­fects in my ... ev­ery­thing.

My son did not wash the dish­es as he's sup­posed to, and promised to do it "later"? Well, I wake up, if dish­es are not done, I wake him up, and dish­es get done be­fore dawn.

I get ~4 hours of qui­et work, which in these quar­an­tined age is a lot.

I am done by my 5:30, which is my fam­i­ly's 13:30, so that means I can have lunch with ev­ery­one and then take a nap, like a farmer.

I can have two, maybe three brak­fasts a day if I try hard.

I go to bed at 3AM/11P­M, so I feel like I am a night owl, sleep 7 to 8 hours a day, but not all at once. I am slight­ly jet­lagged right now, or maybe all the time, but I did not move in space, on­ly in time.

I see dawn ev­ery day.

Days are long, like the long­est day of sum­mer is long, on­ly in fal­l. In the sum­mer they will be even longer, for­ev­er days, nor­we­gian days, 16 hours of light.

How do I feel about this? Well, I don't know. It's like a mod­est ad­ven­ture with­out leav­ing the house. It's like try­ing to live a week with­out us­ing the let­ter "M", like try­ing to eat rus­sian sal­ad and leave the car­rots un­touched, like go­ing to work in a strange neigh­bor­hood where ev­ery­one is asleep and cars don't run, and birds sing loud and it's day­time on ev­ery­one else's screen and...

Ok, not quite as Love­craftian as that sound­s, peo­ple.


  1. Well, not re­al­­ly, I was a con­­trac­­tor, but, you know. 

  2. Well, not re­al­­ly, I am a con­­trac­­tor here too, but, you know. 

  3. See http­s://en.wikipedi­a.org/wik­i/East­­ern_­S­­tan­­dard­­_Tribe  

Experimental Nikola Plugin: tagged_pages

There has been an is­sue open in Niko­la for a lit­tle over four years.

The is­sue ti­tle is "Sup­port tags in pages" ... and I had been in­ten­tion­al­ly not do­ing any­thing about it for a (bad) rea­son.

I did not un­der­stand what the is­sue was.

Sure, support tags in pages ... how? What's that supposed to mean? What happens when you tag a page? Should pages be listed along posts in each tag? How? How does that interact with TAG_PAGES_ARE_INDEXES which turns each tag into a mini-blog?

Well, it was a bad rea­son be­cause it could have been fixed by just talk­ing to user­s. So, I did. And I wrote a min­i­mal vi­able plug­in: tagged_­pages

It's far from per­fec­t, it's ba­si­cal­ly a copy of the tags plug­in with some stuff re­named, some delet­ed and some re­placed. But it's a start. And now it can be it­er­at­ed on.

So, talk to user­s, I guess.