Posts

macOS - first experiences from a Linux user perspective

Image
(Link to this article on twitter:  https://twitter.com/sxaTech/status/1628064140576059392 ) A while back I took delivery of a Mac Mini M1 system ("2020" model with 16Gb RAM running MacOS 11.6 "Big Sur" (It's now on 12.3). It came with no keyboard, mouse or screen (but I had plenty of them around, including a Unicomp Model M buckling spring keyboard with mac keycaps which I'd acquired a few months previously!) First problem was that the HDMI output didn't seem to want to talk to the 1600x1200 screen I had on my desk, so I switched it over to my 27" 1080p display ... So what's it like to use? I've used macOS systems as servers before but other than a small amount of GUI remote access I hadn't seriously used a desktop system before so I wanted to share "first timer" experience for some common use cases as a developer. Oh, and it's quick. Really quick. Whatever Apple have done in designing the M1 ("Apple Silicon") CP

GitHub rebasing for the terrified

Image
This is a follow up to my GitHub primer post where I introduced how most of the git concepts. One of the things that catches a lot of people out when the first use git is the idea of rebasing. While you're working on the code base, other people can be working in their own forks, and things can get out of date and this can cause problems when you go to merge your changes back in. So how do you avoid getting into "rebase hell"? This is the stuff I wish I'd properly appreciated before I started, and includes the commands I use to get out of problems. I'm going to repeat the diagram from the previous post because I'm going to refer to some steps in it by number: I'm going to refer to the "main" branch here as it;s now the default that GitHub creates, but many repositories will still be using the old default of "master" used upstream development branch. If your project uses "master", or you're working from an alternate upstrea

Github primer for the uninitiated

Image
This is a post on how to get to grips with github concepts and repositories which can seem very daunting when you start out. It's a redraft of a blog post which  I initially had on my employer's intranet but haven't posted it publicly until now. It was very popular and people have asked me for copies of it so here it is in the open for everyone to enjoy :-) And if you were wondering why people needed a new source control system in git,  it's down to Linus Torvalds . (NOTE: If you're visiting my post looking for my shell aliases, they're in the ALIASES section near the end of this document) 1. REPOSITORIES, PROJECTS AND PULL REQUESTS The examples in this article will use the public nodejs repository. When working with any codebase there are likely two repositories you will be interested in. One is the main official repository that everyone uses on github (For example  http://github.com/nodejs ) and the second is your own copy of that repository on the github serv

Virtualising X11 GUI, printers and sound on Linux

I recently had a requirement to do some testing involving a GUI, a printer and sound devices on Linux. Would be simple with a laptop and a real printer, but in this case the work was being done on a remote data center in the cloud. So how do you do these sorts of tests when you haven't got the hardware in front of you? 1. A virtual GUI The X Window System, version 11 ("X11" for short) is the graphical subsystem used on most UNIX systems that handles the display 1.1 SSH tunnelling If you're running a GUI on your local Linux system (Or a comparable X11 server on something else!) then you can forward GUI traffic over an ssh connection. It's not particularly quick but it gives you an option. You can set up the forwarding from your local system with: ssh -X user@remotehost This will automatically define a DISPLAY environment variable on your ssh session with a value such as "localhost:10.0" which will tunnel the X11 traffic back to your local server. in If it

Facebook and post sharing - Are they helping push #fakeNews over fact sharing?

(If you want to share this post on twitter, feel free to retweet me ) I recently attempted to re-share an end-of-year facebook post from a few years back and add some extra comments in light of 2020. The post I was trying to share had a link in it. When attempting to share that post, the share ONLY included the link from the original post and not the text I'd added to it. I'm not the only one to have seen this - I found this article talking about the same topic - facebook used to have an option to share the original text before the redesign, but it is no longer there. Also their help pages explicitly state : "When a friend shares a link that you posted, they can share the link with a wider audience than you originally shared it with. Keep in mind that any text you added in your post will not be shared"   Why is this a problem? The issue ONLY exists with posts that have links in them. A normal post with just text CAN be shared. If I'm trying to provide reference