# orderedItems[].object.content
Test, test...

It worked!!!

I have just moved my personal server from some boring big-tech company to the IOcoop. Yep, I am now a proud member of a #COOP that maintains #VPS for its members, which is part of my broad attempt to use less big-tech stuff.

😻

# orderedItems[].object.content
IT'S ALIVE!!! The Cabin Brain is alive!!! (Well, at least for a prolonged test session.)

I have posted some initial frustrations while trying to host some services on a #RaspberryPi at home: https://blog.nigini.me/o/47024bc5f5a3422290dc4fd6e9762a05

Then, I discovered that my internet provider would not relay any external connections and that I could create a tunnel using #ProtonVPN (which I already pay for).

Today, as you can see on the attached screenshot, I got to SEE it really happening! I "only" needed to:

Setup a Wireguard VPN connection

Forwarding a port of the VPN server to my local HTTP server

And dynamically update my NO-IP DNS

NOW, I need to work on doing all that automatically at computer start, and keep it all up-to-date while it runs. Today I cheated and did things manually, but I am very close now! ;)

# orderedItems[].object.attachment[].name
A photograph of a tiny computer tower with a Raspberry Pi 4 inside, in front of a screen showing some terminal logs.

# orderedItems[].object.attachment[].name
A screenshot of the top of my personal webpage running on my raspberry pi, accessed through a VPN tunnel.

# orderedItems[].object.content
Can't express how much I missed having the mental space to study and create with #electronix 🎚️💡

# orderedItems[].object.attachment[].name
An Arduino controlling an 8x8 pixelated display showing the letters M H C I D !!!

# orderedItems[].object.content
So excited about our new add-on to the MicroBlog.pub code base: now you, I, we can edit your post. By the way, this is part of the work towards a v2.1!!!

Thanks to @778a0a for contributing their code to help it happen.

# orderedItems[].object.content
This looks pretty great @me@chrichri.ween.de!

I also recently looked around for a #Fediverse server and thought that #GoToSocial is pretty great. (I was actually thinking if we really need to reimplement a server for #MicroBlogPub. But I guess having a micro federated server in #Python is something nice to have out there.)

I actually just added a discussion about this in our project.

# orderedItems[].object.content
Hey @aonrud@mastodon.ie @isaac@lakora.us @room_nb@log.nyaight.me! I noticed you also use #MicroBlogPub. I recently started playing around with it and then realized the original author stopped responding/maintaining it...

I am starting to talk to other users about creating a new home for central coordination here: https://github.com/orgs/microblog-pub/discussions

It would be great to exchange ideas and maybe work together to keep this project up...

# orderedItems[].object.content
Road to really self-hosting this same blog you're reading now:

Get a #RaspberryPi and install an #Ubuntu server on it

Find the IP of your Raspberry Pi server on your local network and make sure you can access it from another local computer

Go to your Access Point and Forward requests from:to the desired ports

FAIL! Because your damn internet provider does not redirect income requests to you. (THAT, my friend, would cost you some sort of a business account!)

Attempt number 2:

Talk to your tech friends about your frustration

Learn about the fact that some VPN services DO let you NAT the hell out of this problem

Confirm that the AMAZING #ProtonVPN will let you hack that up

Read a looooooong tutorial about the whole deal

Find out that you were only a natpmpc away from making it happen

Run a simple test server on your laptop

Celebrate!

Write about the PARTIAL victory and go find out how to make this happen dynamically on your RasPi server, which then needs to publish its IP:PORT to your NO-IP DNS thingy.

# orderedItems[].object.content
I have just spent some hours taking the spiderwebs from my #HCI researcher persona. That is because I am going to teach again one of my favorite courses ever: The Prototyping Studio at the #MHCID Masters at UW.

You know, most of the time, academic knowledge is so far away from the general public. But in the case of the now-called #UX #Design space, the industry has always partnered with academia to create better interactive products.

But, as a #geek and #builder, one of my favorite facets of this design process is the bias towards action: contact people, explore ideas, build and test stuff, and go again. It is actually very humbling to recognize that those "genius" ideas we have are likely far from the best way to approach real-world problems.

Try it yourself: Next time you are excited about an idea, instead of just building right away, sketch on paper -- yes, ugly and cheap drawings -- how your thing works. Now, most importantly, go show them to a bunch of people, get the talking, and take notes. NOPE, don't try to defend your precious design: The challenge is to get back home and explore the ways you could pick on all those human brains and make the thing even better.

Now repeat! 🤓

# orderedItems[].object.attachment[].name
A diagram of the Nielsen-Norman Group's UX Design Cycle. It shows four fases in interconnected and colorful circles: Discover, Explore, Test, and Listen. The circles are drawn in a way to express iterativeness and interconnecteness across the phases.

# orderedItems[].object.content
Hey @me@chrichri.ween.de! I noticed you also use MicroBlog.pub. Actually, I found you through this request on the original repo: https://todo.sr.ht/~tsileo/microblog.pub/125

Have you implemented that? That is one of the things I miss the most in the current Article writing experience.

By the way, considering the silence from Tomas, I am starting to talk to other users about moving the development here: https://github.com/microblog-pub

It would be great to exchange ideas and maybe work together on keeping this project up...

# orderedItems[].object.content
@0x3b0b@bw3.dev I saw that you use #microblog to host your federated presence. I am contacting people who do so to try to reanimate the project. Would love to hear your ideas: https://github.com/orgs/microblog-pub/discussions

# orderedItems[].object.content
@BeAware@social.beaware.live Holy Sh*t! Your response made me very excited about this! I thought the blog post was going to just sit there, like most stuff on (un)social media!

If you have any ideas about how things should go, I'd love to talk to you: https://github.com/microblog-pub/microblog.pub/discussions ☺️

# orderedItems[].object.content
Although I haven't used this poor abandoned blog much, it is not because I dislike the MicroBlog.pub software that I am using to self-host it. It actually helped me to learn about the IndieWeb.org and MicroPub.net communities, as well as practice work with the ActivityPub.rocks protocol (which is the engine of the #Fediverse).

Sadly, as I got excited about MicroBlog.pub, I realized that the creator had abandoned the project for more than a year. Issues, requests, and pull requests have piled up. The excitement of users faded away as I found forks close doors. But it is #opensource, right?

Yep!

Hence, I decided to contact some other users and start a collective effort to keep this cool project alive. Here is where it will live: https://github.com/microblog-pub

Let us hope I will be able to put together a good crew. 🤞

# orderedItems[].object.attachment[].name
The MicroBlog logo where the MicroPub is written in black and the .pub in green. Also, it uses the "micro" greek letter in place of the 5 letter at the beginning of the name.

# orderedItems[].object.content
What an impressive set of #tech #design principles Nathan Schneider presents as the framework for his "Governable Spaces" book (https://nathanschneider.info/books/governable-spaces/):

Aníbal Quijano: "...search for holistic cross-cultural knowledge that welcomes difference and refuses domination;

Arturo Escobar: #pluriversality "...no single design can serve all people... design as an exercise in historical consciousness and multiplicity" and #decoloniality "a form of resistance to being designed from elsewhere."

#DesignJustice: "design must occur through rigorous accountability to the people whose lives it will shape."

... and more!

# orderedItems[].object.content
#quotes #philosophy #hacking

History is the virtual made actual, one hack after another. History is the cumulative qualitative differentiation of nature as it is hacked.

-- McKenzie Wark, A Hacker Manifesto

# orderedItems[].object.content
#Fediverse #TheCommons #DWeb #Readings

Two of my favorite readings this January speak to the pains and gains of sharing public resources, or "the commons," from very different perspectives. The first is Ethan Zuckerman's essay, "How social media could teach us to be better citizens." The second is an excerpt from Michelle Nijhuis's book, "The tragedy of the commons is a false and dangerous myth." While Zuckerman speaks about the recent human experience of mingling in the digital world, Nijhuis brings up the perspective from our ancient relationships with natural resources and wildlife. An overarching message? There is no unique "solution" for collective living: WE must engage with local communities to learn how to create sustainable and civic environments.

There is no silver bullet, but there are helpful guidelines to create thriving collectives sharing common resources. Nijhuis's essay echoes Nobel recipient Elinor Ostrom's work in Economics: "There are many, many ways of doing things that work in different environments." This is an essential message to people like me who were educated to search for, and only accept, clear and final solutions to problems. Her Nobel was awarded for observing how collectives worldwide successfully managed their shared resources. Nijhuis offers an excellent summary of these findings:

"The features of successful systems, Ostrom and her colleagues found, include clear boundaries (the 'community' doing the managing must be well-deﬁned); reliable monitoring of the shared resource; a reasonable balance of costs and beneﬁts for participants; a predictable process for the fast and fair resolution of conﬂicts; an escalating series of punishments for cheaters; and good relationships between the community and other layers of authority, from household heads to international institutions."

I remember repeatedly reading this list of features throughout my academic life dedicated to dreaming about the social web and how it should have been. Not surprisingly, reading this text triggered once again a dormant thread of hopes: Will The Commons turn a new page in its life? Is it now the time we will pay attention to Prof. Ostrom's work when practicing creating our information commons?

And as we got to the topic of Information Commons, Zuckerman's piece offers some arguments on why we should be more active members and managers of our online communities. He states that taking control over the governance of our social spaces and operating the platforms we use, would mean regaining power over our collective resources in a world where our lives are increasingly dependent on such digital resources. But Zuckerman also thinks that governing the online spaces we are members of is a unique opportunity to go to "democracy school." He further explains his argument in a Mastodon conversation, where I originally found his text:

*"To be effective civic actors, we need practice. We need spaces to learn how to run meetings, to have productive disagreements, to work with people we don't always like. Historically, this happened in social clubs, bowling leagues, etc. Now it happens online." * Zuckerman@Mastodon

I love that I found his academic text through his Mastodon profile mainly because this is the social network that, for the first time, I feel I have been practicing his suggestion: get involved and practice being a civic actor! Although Zukerman does not cite Mastodon or any recent movements toward the decentralization of social media -- sometimes also referred to as the Fediverse; I think this is only a matter of its novelty and lack of studies around it. He exemplifies his arguments with the communities on Reddit, which changed the landscape of Online Forums by giving more control and independence to its "sub-Reddit" moderators. This power-sharing is such that moderators have rebelled against some platforms' decisions and organized strikes, temporarily closing their communities and content. In the Mastodon case, community members have a chance to own both the governance and the platform, making them responsible for decisions on data privacy, moderation procedures, and all the involved liability.

For many, this can be too much, which is fair; that is the reality of the offline world, too, isn't it? For instance, how many parents in a school or workers in a union actively get involved in the governance of their collectives? The point here is to allow groups to create their ways and have the means to operate their digital social spaces, a rare attitude in the past as privately-owned and for-profit platforms proliferated. In my experience volunteering in the admin team for the HCI.social Mastodon server, I quickly learned how much trust is invested in creating an online civic space. For example, take what Ostrom defines as "clearly defining the boundaries of a community": it takes many eyes and hours of discussion to respond to moderation requests and decide the ins and outs of our commons. And that is in our case, where we are playing the role of "benevolent gods," making decisions in the name of hundreds of members. Others decided to experience a more involved approach to collective governance (e.g., social.coop), which is incredible to observe. I am fully on board with Ostrom's idea that there are many, many ways for communities to work and break. I hope that more of us will pay attention to Ostrom's observations and the centuries of experiences as brilliantly reported by Nijhuis. I hope that with many more of us trying it out, some will succeed. And, by trying, many individuals like me, as suggested by Zuckerman, will have their fair share of civic training.

# orderedItems[].object.name
Feeding my Fediverse Obsession: Two Readings and many Hopes