ASCII and Unicode quotation marks
Do not use the ASCII character 0x60 (grave accent) as a left quotation mark together with 0x27 (apostrophe), because it will look silly with modern correct fonts.
Disqus Demonstrates How to Do Breach Disclosure Right
We all jumped on "the Equifax dumpster fire bandwagon" recently and pointed to all the things that went fundamentally wrong with their disclosure process. But it's equally important that we acknowledge exemplary handling of data breaches when they occur because that's behaviour that should be encouraged. Last week,
How LZ4 works (2016)
LZ4 is an exciting algorithm, but unfortunately there is no good explanation on how it works. This blog post tries to explain it in terms that everybody can understand.
CSS in JavaScript is like replacing a broken screwdriver with your favorite hammer
There's a ton of interest these days in 'CSS in JS'. The premise is simple: CSS operates in a global namespace, which can result in undesirable side effects, spaghetti code, and extremely difficult to maintain codebases. JavaScript used to do this, and we fixed it by encapsulating everything in modules and using tools…
What's The End Goal for Wealthfront and Betterment? (2016)
There are three ways to make money in the asset management space: Have a large amount of assets under management ( AUM ) and charge fairly modest fees (mutual funds) Have a relatively low amount of AUM and charge high fees (hedge funds, venture capital funds) Have a relatively low amount of AUM,
Bypassing Browser Security Warnings with Pseudo Password Fields
It seems that there is no limit to human ingenuity when it comes to working around limitations within one's environment. For example, imagine you genuinely wanted to run a device requiring mains power in the centre of your inflatable pool - you're flat out of luck, right? Wrong! Or
To Serve Man, with Software
I didn’t choose to be a programmer. Somehow, it seemed, the computers chose me. For a long time, that was fine, that was enough; that was all I needed. But along the way I never felt that being a programmer was this unambiguously great-for-everyone career field with
Mac OS High Sierra automatically checks EFI firmware each week
Every week, Macs running High Sierra will check the integrity of their EFI firmware, in a bid to detect tampering by malware.
A Stroke of Genius: Striving for Greatness in All You Do (1993)
Little has been written on managing your own research (and very little on avoiding other people managing your research); however, your research is much more under your control than you may realize.
Geek Career Paths
Suppose you’re doing technology, and like doing technology, and your career’s going well, and you find yourself wondering what you’re going to be doing in twenty years. I’ve been down several of the roads you might decide to take, and it occurs to me that talking them over might amuse and inform.
Is Haskell the right language for teaching functional programming principles?
The “park bench” panel at the Haskell eXchange last week talked about a lot of things, but some of them can be summarised by the question ...
Home computing for $5/month
As a programming father you need to be concerned about your budget. This means resisting the temptation to buy the most amazing hardware, an...
Introducing PureScript Erlang back end
I’m not sure why I decided to create an Erlang backend for the PureScript compiler.The platform is somewhat interesting, but I didn’t know it, and I don’t ha...
Using IBM Bluemix Watson APIs to Optimise my CV
Using IBM Bluemix Watson APIs to optimise my CV (resume)
Decoding an air conditioner control's checksum with differential cryptanalysis
Back in 2009 I wrote an Arduino library ( IRRemote ) to encode and decode infrared signals for remote controls. I got an email recently fr...
Why Is the TSA Scanning Paper?
I’ve been reading a bunch of anecdotal reports that the TSA is starting to scan paper separately: A passenger going through security at Kansas City International Airport (MCI) recently was asked by security officers to remove all paper products from his bag. Everything from books to Post-It Notes, documents and more…
More Good Programming Quotes (2016)
In my previous post, The Wisdom of Programming Quotes, I called out some quotes that look good on the surface, but turn out to promote the wrong ideas about software development. I have also posted…