The fashion industry has the concept of "prêt-à-porter" - ready to wear. You pick a thing off the rack and off you go. No tailoring needed. Similarly, the food industry has "prêt-à-manger" - ready to eat. No telling l'artiste du pain how much mayo you want, just grab a boxed sandwich and start munching. What's the equivalent for Open Source Software? (I know it is facile to say "There are two …
Continue reading →
Last year, I blogged about why I make my work calendar public. It is useful to have a public website where people can see if I'm free or busy. But the version I created relied on Google Calendar which, sadly, isn't that great. It doesn't look wonderful, especially on small screens, and is limited to only one calendar feed. So I used the mighty power of Open Source to build my own! …
Continue reading →
Cunningham's Law states "the best way to get the right answer on the internet is not to ask a question; it's to post the wrong answer." Edent's 7th Law (My blog; my rules!) states "the best way to get an open source project to fix an issue is to send a slightly wrong Pull Request." Let me explain... Two years ago, I noticed an annoying bug in the markdown parser of WordPress's JetPack plugin. …
Continue reading →
One of the things I loved about Facebook was its "On This Day" feature. There's something delightful about seeing what nonsense you were talking about on this day a decade ago. Twitter doesn't have anything like that. So I built it. Introducing - Twistory.ml Note: Twitter's recent changes means this no longer works. Stick your @ name in, hit the big button, and you'll get a list of everything…
Continue reading →
A few weeks ago, I received an unsolicited email inviting me to try out an exciting new "quantum resistant" cryptography app called Cyph. Because I hate myself, I signed up. Of particular interest to me was the fact that the homepage loudly proclaimed that it was "Open Source" - and had a public GitHub repo. That was handy, because there were some glaring usability flaws on the sign-up screen.…
Continue reading →
A question to the void. Are you entitled to get the source history of open source projects? Lots of Open Source licences give the consumer of software the right to a copy of the source code. For example, GPLv3 says that distributors of software have to: give anyone who possesses the object code ... a copy of the Corresponding Source What is "Corresponding Source"? The "Corresponding Source"…
Continue reading →
If you have the Akismet spam plugin for WordPress, you'll be familiar with this problem. When your mouse pointer goes over any URL, you get a large website preview taking over parts of your screen. I asked for a way to turn this off and I'm happy to say the developers listened! Sadly, there's no tickbox option, only a WordPress filter so you'll have to add the following scrap of code to your…
Continue reading →
This a rant, written at midnight, after battling software errors. Set your profanity filters accordingly. I despair over the state of software engineering - specifically, stability. We seem to have lost the understanding that computers are there to do the hard work for us. And I don't think we ever believed in a user-centred approach to developer tools. The last time I developed an Android app…
Continue reading →
I'm going to revisit an argument I had in… Ooooh… 2001ish? I wanted to make some edits to my university's fledging student union website. In order to do this, I needed to learn the arcane art of SSH. This was one of my first introductions to text based config files. I was horrified! A single typo, or a stray comma could break everything. The instructions our WebMaster provided were laughably unc…
Continue reading →
I love reading Changelogs - but I hate writing them. Here's what's changed with SuperTinyIcons since I launched it in 2017. It's a project to create SVG logos of popular services in under 1KB. Maximum filesize is 1,023 bytes. New Contributors! What started off as just me noodling around, has now attracted over 60 contributors! Some just drive-by and make a single change, others stay for a…
Continue reading →
Imagine that you're a spotty 16 year-old. You've just discovered philosophy. You will almost certainly have a conversation like this... Dude... DUDE! What if... What if, like, we're all just brains in a jar and, like, a machine is projecting reality around us...? Whoa...! I bet you've had that conversation with someone. Probably after you first watched The Matrix. As a philosophy, it is a lot…
Continue reading →
In order to provide a video playback UI, WordPress uses the excellent MediaElement library. Recently, I discovered a slightly annoying flaw - I couldn't see the play button! Here's a screenshot of the video UI. In the middle of this screenshot is a white play button. I have trouble seeing it, because the video's background colour is predominantly white. The issue is with the…
Continue reading →