Fighting Like Taliban
Over the last month or so we have seen several reports out of Afghanistan registering the shock of the Americans, the Afghani government, and even the Taliban itself with the speed at which the Tal…
Best practices can slow your application down
In order to get the most performant site possible when building the codebase for our public Stack Overflow site, we didn’t always follow best practices.
Stack size invisibility in C and the effects on "portability"
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
ISP announces 86% slowdown “in line with others”
Altice wins the race to the bottom.
The computer revolution hasn’t happened yet (1997)
In this video, Alan Kay talks about his vision of object oriented programming and how to design scalable systems.
Element Matrix Services Announces Element Home
We’ve launched a brand new version of Element, called Element Home!
Software Development Waste
I've looked back at the end of every software project I've ever been on and thought, "If I'd known then what I know now, I'd have been done in half the time." Despite this, I've never thought carefully about exactly where all the time went and why so much of it felt wasted.
Why bugs might feel “impossible”
Reasons why bugs might feel "impossible"
Security keys are now supported for SSH Git operations
You can now use FIDO2 security keys to authenticate over SSH for remote Git operations, providing a higher level of account security.
The True Meaning of Technical Debt (2020)
"Know your enemy, know yourself, and in a hundred battles you will never be defeated"
Making JavaScript run fast on WebAssembly
JavaScript in the browser runs many times faster than it did two decades ago. And that happened because the browser vendors spent that time working on intensive performance optimizations.
Preparing to Issue 200M Certificates in 24 Hours
On a normal day Let’s Encrypt issues nearly two million certificates. When we think about what essential infrastructure for the Internet needs to be prepared for though, we’re not thinking about normal days. We want to be prepared to respond as best we can to the most difficult situations that might arise. In some of…
Donating my time to grow a VC-funded company: why I quit mentoring at Plato
tl;dr Nonprofit/pro bono organizations I suggest for offering mentoring/seeking mentorship: Mentoring Club [https://www.mentoring-club.com/the-mentors/category/software-engineering] (experienced mentors, EU focus), Coding Coach [https://codingcoach.io/] (aimed at software engineers), Mentors in Tech…
A bug related to handling of authenticated sessions
On the evening of March 8, we invalidated all authenticated sessions on GitHub.com created prior to 12:03 UTC on March 8 out of an abundance of caution.
The sixtyforgan: Commodore 64 equipped with a spring reverb
The sixtyforgan is a Commodore 64 equipped with a spring reverb, featuring the keyboard layout of a chromatic button accordion.
First detection of light from behind a black hole
Fulfilling a prediction of Einstein’s theory of general relativity, researchers report the first-ever recordings of X-ray emissions from the far side of a black hole.
Why is learning functional programming so damned hard? (2019)
My Functional Programming journey was filled with dead ends, false starts, failed attempts and frustration. And I suspect that I’m not…
Arctic Ocean started getting warmer decades earlier than we thought
The Arctic Ocean has been getting warmer since the beginning of the 20th century – decades earlier than records suggest – due to warmer water flowing into the delicate polar ecosystem from the Atlantic Ocean.
Smart contracts on Bitcoin
While Bitcoin is the gold standard in crypto, Ethereum has been the innovator, bringing new ideas, particularly smart contracts, to the table. Smart contracts allow developers to easily build things on a blockchain and we have seen a proliferation of new things built on the Ethereum blockchain as a result. But what if…
Dynamic Programming vs. Divide-and-Conquer (2018)
In this article I’m trying to explain the difference/similarities between dynamic programing and divide and conquer approaches based on two examples - binary search and minimum edit distance (Levenshtein distance)