Not Someobody Else's Problem - Mine.

Writing, thoughts, experiences and perspectives of Abhas Abhinav.

Launching the Libre Tech Shop!

Libre Tech Shop

Why?

Lets assume that you’ve been a GNU+Linux and Free Software user for a very long time. Maybe 15 years. Maybe even more.

What is the first thing that occurs to you when you encounter a problem? Or something breaks down? You search, you discuss on mailing lists, you read source code. Basically, you use all the resources you have the liberty to use. What you don’t do is accept the problem or dynfunction or break-down as a norm and build your life around it.

The Original Libre Tech Shop (placeholder) Website

However, there are also those things that we use on a daily basis and which don’t provide us this respectful liberty to learn or fix or extend things. These “things” could be hardware or software or services or systems. Often, given our constraints of time or patience and so on, we just cover up these things with a “SEP Field” and go on with our lives.

“SEP Fields”

Now the “SEP Field” is a fantastic device to use. It enables us to create blindspots where we would otherwise see problems. By eliminating the awareness of the problems, we also do away with the itch to solve them.

What’s an SEP Field? It was invented by Douglas Adams in the book Life, the Universe and Everything as a sort of “cloaking device”:

An SEP is something we can’t see, or don’t see, or our brain doesn’t let us see, because we think that it’s somebody else’s problem. That’s what SEP means. Somebody Else’s Problem. The brain just edits it out, it’s like a blind spot.

More details on the H2GT2G Fandom Page.

What if?

But what if we did not have to compromise in this manner? What if we could access products that respected our liberty to hack by default? What if “someone else” could take away the risk and expense (time + money + patience) involved with experimenting and arriving at the required answers?

LTS Delivers Ethical and Hackable Convenience

Its not that we don’t wish we didn’t have to compromise. Its just that all the resources (time + opportunity + patience + funds) do not line up together at the same time.

That is reasoning I’ve had behind building the “Libre Tech Shop”. A shop for technology products that are free in the sense of their license and also free in terms of the opportunity the provide to learn, hack and do things on our own terms.

Such products would ship with free software, would not track you and would not force non-self-hostable and non-free/libre software backend ecosystems on you. Most importantly, in the spirit of the community, they would ship with documentation that aims at equiping users to repair, extend and fix things on their own.

So - what does it take?

1. The Mostly Harmless website

The Mostly Harmless Website

How do I launch a shop without a product website describing the products and the work and company behind them?

I spent about 9 months building the mostlyharmless.io website. This time I chose to write HTML using jekyll instead of using wordpress. And was very happy with the control and exactness I was able to deliver!

2. The Libre Tech Shop

The center piece - https://libretech.shop.

The Libre Tech Shop Website

There are many things I’ve tried to achieve with this website:

100% LibreJS Compliance

LibreJS

Additionally - the functionality works fine with Javascript disabled (and in IceCat!) Doesn’t work with lynx yet… but it just might, one day.

While I do have a payment gateway that I can trivially connect to Woocommerce and put into action, I have deliberately not enabled it since it requires proprietary Javascript to work. Instead, for now, I’ll manually send out payment links to customers who want to use a payment for payments. Otherwise, direct bank transfers are a good and respectful option by default.

Prominent product properties:

Product Properties

And finally - the “Freedom Quotient”

The Freedom Quotient

3. Documentation for Libre Products

What’s the point of offering Libre Products without sufficient documentation? Documentation is the significant half of the ecosystem of Libre products since it helps create true ownership by way of access to tools, knowledge and details. It is also a good mark of how repairable a product is.

https://docs.libretech.shop/ is where you will find instructions and documentation for products sold on the Libre Tech Shop.

Libre Tech Shop Documentation

4. Source code hosting

Source code is hosted using Gitea customised to look prettier. https://sovran.dev/ is now the new source code host for all Mostly Harmless and personal projects.

Source Code

5. Discussions and Support

How does a community of libre product owners connect? Where do they go to ask questions before making purchasing discussions? How do I address problems and make the solutions self-documenting?

I settled on using Discourse for this. I was able to customise Discourse extensively.

Check out the result at: https://ask.libre.support/

Ask for Libre Support

ask.libre.support is a pun. People often used to ask “if the software is free (ie. gratis), why do you charge for support?!” Well, lets not say “free support” anymore. Let say “Libre Support” - ie. Support for Libre Products offered in the spirit of the free software movement - to enable you to acquire greater competency and deeper ownership over the products you “own”.

6. The Matrix Channel

Finally, I setup Synapse for mostlyharmless.io to build a secure and self-hosted group chat room.

You can join in to ask quick questions (and more) via text chat:

https://matrix.to/#/#guide:mostlyharmless.io

Matrix Chatroom

7. The Request Tracker

After more than 10 years, I learnt to use RT (Request Tracker) once again. It is very nice to come back to Perl once again!

RT tracks emails sent to guide@mostlyharmless.io, emails generated by form submissions on the websites and orders generated via Woocommerce.

Request Tracker

Now I won’t misplace incoming emails and I will answer them promptly. ;)

Challenges… and mishaps.

I feel that if what I’m seeking to achieve here is awareness, it would be grossly incomplete without a listing of the failures. It took me close to 3 years to actually launch the Libre Tech Shop. These were some of my challenges:

1. Lack of precedent

The lazy me will always search for a precedent so that I don’t have to do all the thinking and all the “doing”. There is a certain comfort in being a consumer rather a creator.

When I was searching for a LibreJS compliant shopping website, I found a few implementations but no guide on how to achieve it. Of course shop.fsf.org is a great example of Drupal-based e-commerce that is both elegant and ethical. But - alas! - they’ve not released that piece of code… (I wonder why?!)

I did realise (repeatedly) that I will finally have to put in the hard work. But many times, the scale of the work involved is such a daunting task in itself. When is there an easy way out?

2. Elegance

There are so many e-commerce tools that are free/libre software. Some are complex, some are ugly, some are simple, some are too tied to hosted and proprietary backends, some have licensing issues, some are aimed at large teams and some just require too much work!

How does one choose? Why does one experiment so much? When I knew that Wordpress + Woocommerce is “good enough” why was I searching for an answer with other platforms? Yes - its fun to explore and understand. But its also frustrating and a non-starter.

When I look back now, Wordpress + Woocommerce was “just right”. I could’ve saved so much anguish if I’d understood and appreciated its strengths early on - instead of taking such a expensive trip to realise it finally.

3. Working alone & staying motivated

Mostly Harmless is an OPC (one-person company) - legally and literally. One of my biggest flaws is that I don’t know how to delegate or work too well with others. Often working with others is more frustrating and so I work alone.

But when you’ve got no one to hold you accountable and there is no (apparent) cost for delays or for doing / not-doing something, its tough to remain motivated.

Will anyone care that the shopping website can work with LibreJS enable and even with Javascript disabled? What’s the point of putting in so much effort anyway? What if no one visits or buys a product?

As I keep telling myself – even if its not worth it, lets just do it and get it out of the way.

Otherwise what would be there to show for so much wasted time?

4. Building an ecosystem - not just a shopping site

By the time the libretech.shop website was ready, I realised that I needed a forum, a email tracker and a group chat… not to mention self-hosted source code and of course, documentation. Each of these (as evident above) was a mini project in itself.

I realise now that that a shopping site without such an ecosystem would be worthless - since it wouldn’t live up to its purpose of offering “ethical and hackable products with convenience”.

The more one wants to offer, the more that one has to do. Trying to deliver elegance and delight is tough!

5. Mishaps and server failures…

Finally - what do you do, when a careless server issue wipes your all your work and “production” source code? And you didn’t have backups? (Backups are for novices, anyway. And “real” developers code in production!)

Well - you start again from scratch. One more time. With “worn-out tools”.

I’m glad I didn’t give up. I’m still worried I will.

Credits

I’m thankful to a lot of people who have contributed in multiple ways to help launch all of these websites:

Dedication

I am sure Rajeev Karwal sir would’ve been been proud to see all of this launched finally. I miss his honest counsel, encouragement and wisdom at this juncture. This effort is dedicated to his memory.





© 2018, Abhas Abhinav.

Source Code

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.