Where the term "Zero Day" comes from
After seeing a FOIA request earlier today that someone created asking for FBI training documents that teach staff how to understand/communicate using hacker leet-speak, I was reminded about something I’ve wanted to put in virtual ink for a while.
PHP 5.7 now nearly twice as fast as PHP 5.6
correction: php core developers have urged that it is improper to call this version “5.7” (despite the versioning file stating so) PHP 5.7 PHP NG is still in alpha development…
Interactive Programming in C
I’m a huge fan of interactive programming (see: JavaScript , Java , Lisp , Clojure ). That is, modifying and extending a program while it’s running. For certain kinds of non-batch applications, it takes much of the tedium out of testing and tweaking during development. Until last week I didn’t know how to apply…
Headerless Train Announcements
A blog about signals, programming, music, and other stuff.
Build a browser engine part 5: Box model and layout tree
This is the latest in a series of articles about writing a simple HTML rendering engine:
Programming without objects
Recently I gave an itemis internal talk about basic functional programming (FP) concepts. Towards the end I made a claim that objects and their blueprints (a.k.a. classes) have severe downsides and that it is much better to "leave data alone", which is exactly how Clojure and Haskell treat this subject.
The problematic culture of “Worse is Better”
Our industry has been infected by a dangerous meme, and it’s one that hasn’t been given its proper scrutiny. Like many memes that explode in popularity, “Worse is Better” gave a name to an underlying fragment of culture or philosophy that had been incubating for some time. I point to C++ as one of the first instances…
Kotlin, the Swift of Android
Well, not quite but let's start from the beginning.
We Need Hardware Traps for Integer Overflow
How many problem domains require wrapping signed integers or non-wrapping unsigned integers? Can the current undefined case be replaced with a trap and everything else be left intact?
The two cultures of mathematics and biology
I’m a (50%) professor of mathematics and (50%) professor of molecular & cell biology at UC Berkeley. There have been plenty of days when I have spent the working hours with biologists and…
Hacking the Samsung NX300 "Smart" Camera
blog about networking, cameras, old gear, and xmpp
Everything that is wrong with American capitalism, in one headline
Here it is, in the LA Times: " Comcast, Charter reach $20-billion deal, would swap customers in L.A. " Cable companies Comcast Corp. ...
The Dentist Office Software Story
I’ve been telling this fictional story about Dentist Office Software for years to describe why we are so focused on our “networks” investment strategy. Yesterday I told it at a HackNY event we did at the USV office and my partner Albert provided a finishing touch that really drives it home. Since I’ve never told […]
Depackaging the Nintendo 3DS CPU
If you haven't read my Nintendo 3DS intro blog post first, I'd suggest it as it's a fun short read that gives some backstory of my interest...
Syntax extensions and regular expressions for Rust
WARNING: 2018-04-12 : The code snippets for this post are no longer available. This is just as well anyway, since they all depended on an unstable internal compiler interface, which hasn’t existed for years.
Computational Knowledge and the Future of Pure Mathematics
Proposing technology for pure mathematics: curating concepts, constructs, theorems, & literature; precise symbolic language; automated computations...
In Praise of Perl 5
I have decided to do a two-part series here praising Perl in part 1 and PostgreSQL in part 2. I expect that PostgreSQL folks will get a l...
The Indie Bubble Is Popping
Writing this article really stressed me out. I reworked it over a dozen times. To calm down a little, I will intersperse this with image t...
Docker containers should not run an SSH server
When they start using Docker, people often ask: “How do I get inside my containers?” and other people will tell them “Run an SSH server in your containers!” but that’s a very bad practice. We will see why it’s wrong, and what you should do instead.