Skip to content

Author: lafnlab

Michael Hawkes is a professional computer technician who writes open source PHP code as a side hustle, and spends the rest of his spare time playing with his cats, working in the garden, and attempting to learn the violin. He is the sole-proprietor of 10th Street Media, LLC.

Installing Linux Mint 19.2 on a Dell Inspiron 13 7375 2-in-1

Over the past few years I’ve noticed that my personal laptop has been showing its age. It is a Dell XPS 13 L321X, one of the original Project Sputnik laptops from Dell. It came with pre-loaded Ubuntu 12.4 and has a Core i7 CPU, 8 GB of RAM and a 256 GB SSD. One of the first things I did was switch Ubuntu for Linux Mint, which I find more user-friendly. I’ve had the laptop since 2012 and it’s been pretty reliable. The XPS is in no danger of dying anytime soon, but the hinges on the display are getting a bit floppy, so I’m constantly reminded of the laptop’s age. Aside from that, it’s durable, takes a fair amount of abuse, and keeps on working, so it’s not much of a surprise that I considered Dell laptops for possible replacements.


I’m a bit behind in doing filing at home, but I made a good start of it last night. There’s still more to do tonight.


Gazing in my crystal ball and reading some tea leaves, it looks like the Fediverse is going to grow substantially over the next few years as people realize Facebook, Instagram, and Twitter act are acting against their interests. There are a growing number of websites that are federated and interconnected, on top of the thousands that already do so, so leaving the Big Tech companies behind becomes less of an issue.

At the moment, the Fediverse is a bit like the World Wide Web was during the early 1990s. It’s a place of people-in-the-know, the early-adopters, the technically-savvy, and social-media-weary-looking-for-safe-havens. It’s the Wild West frontier of social media, where there are lots of apps, lots of websites, and lots of opportunities to gain users.

Project goals

Work on Amore has always been a bit of fun, playing with code. It’s been a personal side project, nothing more. That was until people started to get interested in it. This encouraged me to do more work on it, and make more of an effort at making a finished product. While working on Amore 0.3, I became aware of other projects that were supposed to make it easy for PHP projects to connect to the Fediverse. As I looked through their code and read their (sparse) documentation, it was apparent those projects wouldn’t work for me. What I needed to do was create my own Fediverse friendly PHP framework, then use that to build Amore. Thus Federama was born.

Federama is meant to provide a bare minimum of ActivityPub functionality. It will be able to stand on it’s own as a Fediverse platform, but can also be hacked to create something new. In my mind, if Federama is properly built, it can be used to create dating software, forum software, help desk software, microblogging software, media library software, translation software, wiki software, knowledgebase software, dictionary software, password lockers, and so much more. If there is a type of software that requires a user to sign in, it’s would be a good candidate for using Federama. That’s the goal anyway.

Put another way, the short-term goal (for the rest of 2019) is to make Federama a viable project that connects to the Fediverse. User should be able to sign in and send and receive messages with users on platforms like Mastodon, Pleroma, and Misskey. The slightly longer term goal is to build Amore as a dating application for the Fediverse. If Federama works by the end of 2019, Amore should work in early 2020.

Fundraising goals

Along with the project goals for Amore and Federama, I have some vague fundraising goals. In the sidebar are links to my profiles on some fundraising websites. Other than earning my gratitude and a thank you, there are no tiers or perks for donating at the moment. I’ll create goals and perks and levels after I can get Federama to connect to my accounts on Mastodon and Pleroma. That’s my incentive to work on coding.

For now, the main goal of fundraising is to earn money to help pay for hosting, domain registration, and occasional computer issues, like the monitor I had to replace last week.

Starting the 2019 garden

Today I just started a bunch of seeds for the 2019 garden. I put them in a plastic Jiffypot tray that has 72 small pots. I filled them with potting soil, added some water, then planted the seeds. These are:

  • 6 regular marigolds
  • 6 Eskimo marigolds
  • 6 petite yellow marigolds
  • 6 asters
  • 6 Chinese forget-me-nots
  • 6 Canterbury bells
  • 6 sweet peppers, Carnival mix
  • 6 Italian pepperoncini
  • 6 jalapeño
  • 6 red tomato
  • 6 yellow tomato
  • 6 green tomatillo

I’m planning on using this blog as a gardening diary, for this year at least.

Just Kids

Just KidsJust Kids by Patti Smith
My rating: 5 of 5 stars

A few months ago I heard an interview with Patti Smith talking about this book and her time with Robert Mapplethorpe. I was aware of both of them, but didn’t know they had a history together, which intrigued me enough to buy the book.

The book covers a period of time from the mid 60s, when Smith is still living in New Jersey with her parents, to the late 80s when she is raising a family of her own in Detroit. The bulk of the story however, takes place in New York City in the late 60s and early 70s, as both Smith and Mapplethorpe are new to the city. Throughout the book, Smith writes of the tragedies of the era, such as the deaths of Janis Joplin, Jimi Hendrix, and Jim Morrison. This leads to a darkly comic account where a friend of Smith’s with a J in his name is convinced he’s the next to die because the letter J is like a curse, bringing an early death to those affected.

Having read some poorly written autobiographies of other musicians, I found Patti Smith’s writing to be both wonderful and evocative. She makes the reader feel as if they are with her, as she describes places as varied as the Père Lachaise Cemetery, Max’s Kansas City, the Hotel Chelsea, and countless apartments and studios that she and Robert shared in New York City. As well as the places, she offers such rich details of moments, that the reader feels they are there with her. For example, she shares an anecdote about Alan Ginsburg paying for her lunch at an Automat, but mainly because he mistook her for a cute boy. Writing about these moments, she describes the scenes and recalls the conversations, immersing the reader in a version of New York that no longer exists.

Most of the book is about Smith’s relationship with Mapplethorpe. Shortly after moving to New York, Smith is basically homeless, when Robert sees her and takes pity on her, offering her some food and a place to stay. They bond over an appreciation of art, as both of them aspire to become famous artists. However, being “just kids”, they had a lot to learn as they tried expressing themselves through different artistic mediums. For Robert, collages led their way to photography. For Smith, her drawings led her to poetry, which further led her to music. Each served as muse for the other, but they both found other sources of inspiration along the way.

While the obvious audience for this book is people who like to read autobiographies of musicians, people who are interested in Robert Mapplethorpe and his art will also enjoy it. The arts scene in New York City plays an important part in the book, most notably Andy Warhol and The Factory. The book will also appeal to those who are interested in love, poetry, and NYC history.

View all my reviews

Working on Amore v0.2

Version 0.2 of Amore is shaping up but still needs a bit of work. It’s still alpha quality software, so it’s very unpolished, but it’s much better than version 0.1.

To start, the software borrows heavily from uses w3.css to make it responsive to a variety of devices. It looks good on computer screens, tablets, and smartphones.

Users are required to login to post. There is some admin functionality for adding, editing, and deleting places, times zones, etc.

Still to do for v0.2:

  • Finish edit-profile.php.
  • logout function.
  • Admins can suspend or ban users.
  • Users can delete their own posts.
  • Users can edit their own posts (up to ten minutes after posting).
  • Remove OpenGraph stuff.

Amore 0.1

If you’re so inclined, you can get version 0.1 of Amore here.

The only thing that’s missing from what I hoped to include in this version is the ability of users to delete or edit their own posts. It requires some restructuring of the code dealing with headers and cookies, so I opted to kick it down the road to version 0.2.

Amore 0.1 is very rudimentary and doesn’t federate yet, but it’s a start and it works at a very basic level. For v0.1, I’ll call that a success.

The road to Amore v0.1

Despite some fits and starts with coding Amore, I’m making progress towards version 0.1. I already see a bunch of things I want to change in future versions, but alpha software is a bit like a rough draft. It isn’t meant to be pretty or bug free, but should have the primary functions and mostly work.

Right now, site admins can set it up for open or closed registrations, users can create posts, and their posts will be listed on their profile page. Amore can create files for Nodeinfo, though I think it may need some work, since I’m not sure it’s being sent out as application/json which is required by the Nodeinfo protocol. Each post has it’s own page viewable by anyone, but I still have to create user pages that also can be viewed by anyone. I’m toying with the idea of having a list of users, similar to Explore on Mastodon, but I’m not sure that will make version 0.1.

Still to be done is showing the most recent posts on the front page, users being able to create and edit their profiles, having the profiles viewable by anyone, and giving users the ability to delete or edit their own posts. When those features are done, I think I’ll call it version 0.1 and start refactoring and working on version 0.2 features and improvements.


There are a lot of different protocols on the web (XKCD sums it up nicely). Basically, every big company has their own way of doing things making stuff easier to find, or putting stuff in context. The three protocols below are encouraged by different major tech companies, though they all kind of do the same thing.

  • Open Graph protocol:
  • Microformats:
  • Schema:

The protocols below are used by different projects on the Fediverse.
OStatus protocol:

OStatus is an older protocol and is mainly used by older projects on the Fediverse, such as GnuSocial.

ActivityPub is a newer protocol which has been adopted as a standard by the W3C, giving it some authority over the others. It’s mainly used by newer projects, such as Misskey, and it’s the one I’ll be focusing on in Amore.

Zot was developed by the Hubzilla project, but is also used by Osada.

The diaspora* protocol was developed by the diaspora* project, but is also implemented in Friendica.

Some Fediverse projects, such as Mastodon and Pleroma, implement multiple protocols, usually to include OStatus, ActivityPub, or both.

Rabbit holes

Several years go I used to get sucked into the rabbit hole that is Wikipedia. I used to visit its Main Page, then click on some random link, go to an article, and get caught in this loop of clicking random links and reading random articles. It was exciting and it felt like I was absorbing all this valuable information when most of it was, in fact, useless.

Lately, my latest rabbit hole has been to go to or, and find random Fediverse instances to visit. I imagine this is what it felt like when Facebook and Twitter were still new and shiny and trusted by their users.

For what it’s worth, Mastodon runs more than 70% of all Fediverse instances.

Cool feature of the day: Some Mastodon instances have public membership lists, like this one at