Journeys of intellectual wandering, that involve learning, problem solving and discovery, where the destination isn’t that important.

By the end of this article I hope you can see why investing your time in such projects is interesting and useful, and how such projects could be beneficial for you.

Photo by Filip Mroz on Unsplash

odyssey (n): an intellectual or spiritual wandering or quest

Merriam-Webster online dictionary


Ever since I got into computing and technology, I’ve embarked on large, ambitious solo projects to create things. Most of the time, but not always, by writing code. …

Chat that is always compatible, updated, and integrates with browser extensions.

Too many chat apps — can’t change that.

The amount of chat applications and protocols out there now-a-days is getting absolutely crazy. It’s like in the 1990s, when we had ICQ, AIM, IRC, and others. For a little while, I felt like things were getting better — I got down to just 2 chat apps!…

Fast-forward to today — the chat apps I need are unfortunately even more than in the 90s. However, something that has changed for the good: thankfully all of them have web-based versions.

Tips and tricks to get faster with the Kubernetes Command Line.

I’ve been using Kubernetes now since the early betas, and over the years I’ve used kubectl a lot. But, developers and sysadmins who do things more than once learn to automate, or at least learn how to get much faster. Here is what I’ve picked up;

Alias kubectl

This is a time-saver that first looks dumb… but I think it adds up to a real time savings. Instead of,kubectl get pods I type, k get pods. …

This helps you use Go to power the next generation of APIs+PWAs.

Photo by Negative Space from Pexels

Prerequisites; This article assumes you know what protobuf and gRPC are, and have set up the grpc-gateway for REST already for your app.

The context

gRPC has become the default standard for modern Cloud Native RPC in Go. And gRPC is fine for backend service-to-service communication that can speak gRPC. To support older services, and the web, REST still reigns supreme.

Thanks to grpc-gateway, it’s possible to quickly add a REST support on top of gRPC fairly quickly… although it requires a bit of messing around with annotations and similar…

Reading the source code is a pathway to many abilities that some consider… unnatural.

Luke’s original strategy was to attack the death star via SQL injection, but in the end he went for an X-Wing based buffer overflow.

I want to encourage you to actually read through the open source code for the software that you’re using. Doing so has many potential benefits, and skills like this can give you a real edge and advantage in your team. In the article I’m going to outline my top three benefits for doing so.

Many people will not be able to understand the complexities of large programs, or unfamiliar programming languages. However, you don’t need to be a skilled programmer and understand every detail to get…

OliveTin screenshot

It’s been a while since I’ve had the time to stay up late and write code for fun, but I’d just like to write a post to quickly introduce a little project I’ve been working on called OliveTin.

Use cases

  1. Give controlled access to run shell commands to less technical folks who cannot be trushed with SSH. I use this so my family can podman restart plex without asking me, and without giving them shell access!
  2. Great for home automation tablets stuck on walls around your house — I use this to turn Hue lights on and off for example.
  3. Sometimes SSH…

Photo by Pixabay from Pexels

There are a lot of cool Linux commands and tools you COULD learn, but what’s the point in investing a bunch of time if you just use them once a week, or once a month? A good example I like to give is Vim — it takes a long time to learn and master, but I use it over 10 times a day so it’s worth it.

vim — the universal text editor

I remember thinking vim was stupid — so many keypresses and shortcuts to remember. Before that I was a nano user. What got me to switch? I started getting really annoyed that all…

I want to explain how I use this setup, and how I got here. Perhaps I will encourage you, to experiment with your desk and workflow.

6 monitors.

Pictured above, is my desk. It does indeed have 6 monitors. It also has 4 computers with 3 operating systems (2x Linux, 1x Windows — for gaming, 1x Mac — for iOS development).

I don’t intend to brag, or show off, or try and say that this set-up is absolutely essential for me and that nothing else would work. However, it certainly works for me. This is what I naturally got to after lots…

My desktop after the story; i3, st, and some other stuff.

It was worth it, but I need to explain how I got here.

It’s about 2pm on a Friday afternoon, my week of meetings is finally drying up. I have a few hours in my calendar the rest of the day — and I’m not going to spend it catching up on more emails. I want to fill these last couple of hours with something a bit more fun, so I pick up the Ansible collection I was hacking code on and get to work.

About 20 minutes in, I found a small issue that ideally needed me to upgrade…

If you’re like me, you spend your whole day in SSH sessions. Simply knowing how to save a few seconds here and there will add up to minutes and hours over time.

Photo by Soumil Kumar from Pexels

Use Mosh for bad and laggy connections — use SSH while roaming, with bad or laggy connections, most importantly, support for local echo (ie, you don’t want for the server to send keystrokes back to you).

James Read

Public Cloud and Open Source advocate. Red Hat Solution Architect during the day. Enthusiastic developer at night :)

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store