Why the world needs OpenStreetMap (2014)
Every time I tell someone about OpenStreetMap, they inevitably ask "Why not use Google Maps?". From a practical standpoint, it's a reasonable question, but ultimately this is not just a matter of practicality, but of what kind of society we want to live in. I discussed this topic in a 2008 talk on OpenStreetMap I gave…
A Developer’s Guide to Responding to National Security Letters
When the FBI Shows Up at Your Office with an NSL When you receive thousands of requests from law enforcement each year, it’s actually not a surprise wh
A puzzle that tiles infinitely across both sides, based on the Klein Bottle
Have you ever done a puzzle that has no beginning or end? Where you don’t know up from down? Get lost in the infinite galaxy puzzle. The infinity puzzles™ are a new type of jigsaw puzzle insp…
Building a chat app in 8 minutes with Phoenix
One of the great features of Phoenix is how easily it allows developers to include realtime functionality in applications. In this episode we'll use Channels to build a simple chat application in 8 minutes.
C Portability Lessons from Weird Machines
In this article we’ll go on a journey from 4-bit microcontrollers to room-sized mainframes and learn how porting C to each of them helped people separate the essence of the language from the environment of its birth. I’ve found technical manuals and videos for this article to help bring each computer to life.
Raspberry Pi microSD card performance comparison
Back in 2015, I wrote a popular post comparing the performance of a number of microSD cards when used with the Raspberry Pi. In the intervening three years, the marketplace hasn't changed a ton, but there have been two new revisions to the Raspberry Pi (the model 3 B and just-released model 3 B+). In that article, I…
Pointers Are More Abstract Than You Might Expect in C
A pointer references a location in memory and dereferencing a pointer refers to the lookup of the value of the memory location the pointer references. The value of a pointer is a memory address. The C standard does not define the representation of a memory address. This is crucial since not every architecture makes…
Why I'm Ditching Android
I've been slowly de-Googling my life, so the next step is to get rid of Android, in favour of an iPhone.
Qt for WebAssembly
Explore the Qt Blog for the latest insights on e.g. Qt Creator, your go-to source for cross-platform development tips and updates.
What the f*** is the edge?
The edge - or edge-computing has become the latest installment in a never ending chain of tech-buzzwords electrifying investors and managers alike. But beyond the hype lies a fairly simple concept - with enormous potential"
U.S. Secret Service Warns ID Thieves Are Abusing USPS’s Mail Scanning Service
A year ago, KrebsOnSecurity warned that “Informed Delivery,” a new offering from the U.S. Postal Service (USPS) that lets residents view scanned images of all incoming mail, was likely to be abused by identity thieves and other fraudsters unless the USPS beefed up security around the program and made it easier for…
LLVM for Grad Students (2015)
LLVM is a godsend of a research tool. Here are some detailed notes on what LLVM is, why you would want to use it for research, and how to get started as a compiler hacker.
Apple needs to change iPhone’s call UI because robocalls are killing us
Right now, any robocall hacker in the world can instantly take over your phone’s screen, knocking you out of your mobile gaming experience, disrupting you as you check out at the store, or breaking your concentration as you try and type out an email.
How and why I run my own DNS servers
Despite my woeful knowledge of networking, I run my own DNS servers on my own websites run from home.
Google Needs to Come Clean About Its Chinese Plans
Eight years after Google initially took a stand against Internet censorship by exiting the Chinese search market, we are disappointed to learn the company has been secretly re-considering an extended collaboration with the massive censorship and surveillance-wielding state. According to an...
Microsoft cURLs too
On December 19 2017, Microsoft announced that since insider build 17063 of Windows 10, curl is now a default component. I've been away from home since then so I haven't really had time to sit down and write and explain to you all what this means, so while I'm a bit late, here it comes! … Continue reading Microsoft…
Looking Glass – A new type of holographic interface
The holographic display of the future is here and you can have one on your desk for under $600. Ever since I saw Princess Leia appealing to Obi Wan that
Bpftrace for Linux 2018
bpftrace (DTrace 2.0) for Linux 2018: the bpftrace front-end
How LLVM Optimizes a Function
This is very nice summary of IR Passes. I found “InstCombine” pass to be easier to start with to understand the code flow in LLVM IR Pass. Maybe the beginners can start with that first.
Dude, you broke the future
Back to: PSA: Please don't nominate the Laundry Files for a Best Series Hugo Award (this year) | Forward to: New Book Week!
Reach for Markdown, not LaTeX
Writing should be a pleasant experience. With the right tools, it can be. LaTeX is powerful but cumbersome to use. With Markdown, we can focus on our writing, and worry about the presentation later. Pandoc can take care of the presentation for us, so the only thing left to do is start.
What Businessweek got wrong about Apple
The 8 October, 2018 issue of Bloomberg Businessweek incorrectly reports that Apple found “malicious chips” in servers on its network in 2015.
The death of a TLD
Another one bites the dust. The gTLD gold rush is now seeing a steady flow of TLD’s that clearly just didnt work out.
Cloud Filestore, high-performance file storage for GCP users
By Tad Hunt, Product Manager; Chris Talbott, Product Marketing As we celebrate the upcoming Los Angeles region for Google Cloud Platform ...