News

General Loading...

Data-driven bug finding

I can’t remember the last time I went a whole day without running into a software bug. For weeks, I couldn’t invite anyone to Facebook events...

Read more
General Loading...

Editing binaries

Editing binaries is a trick that comes in handy a few times a year. You don’t often need to, but when you do, there’s no alternative....

Read more
General Loading...

That bogus gender gap article

Last week, Quartz published an article titled “There is no gender gap in tech salaries”. That resulted in linkbait copycat posts all over the internet, from...

Read more
General Loading...

Why don’t schools teach debugging?

In the fall of 2000, I took my first engineering class: ECE 352, an entry-level digital design class for first-year computer engineers. It was standing room...

Read more
General Loading...

Do programmers need math?

Dear David, I’m afraid my off the cuff response the other day wasn’t too well thought out; when you talked about taking calc III and linear...

Read more
General Loading...

Data alignment and caches

Here’s the graph of a toy benchmark1 of page-aligned vs. mis-aligned accesses; it shows a ratio of performance between the two at different working set sizes....

Read more
General Loading...

PCA is not a panacea

Earlier this year, I interviewed with a well-known tech startup, one of the hundreds of companies that claims to have harder interviews, more challenging work, and...

Read more
General Loading...

Why hardware development is hard

In CPU design, most successful teams have a fairly long lineage and rely heavily on experienced engineers. When we look at CPU startups, teams that have...

Read more
General Loading...

Randomize HN

You ever notice that there’s this funny threshold for getting to the front page on sites like HN? The exact threshold varies depending on how much...

Read more
General Loading...

Writing safe Verilog

Troll? That’s how people write Verilog1. At my old company, we had a team of formal methods PhD’s who wrote a linter that typechecked our code,...

Read more