Software has diseconomies of scale, not economies of scale
“Practical men, who believe themselves to be quite exempt from any intellectual influence, are usually the slaves of some defunct economist...
Topics /
The most popular blog posts about software engineering on Hacker News. 780 posts.
“Practical men, who believe themselves to be quite exempt from any intellectual influence, are usually the slaves of some defunct economist...
It wouldn’t be a new job without some data porn and a blog post, would it?
Since Version 10.10 (Yosemite), OS X contains Hypervisor.framework, which provides a thin user mode abstraction of the Intel VT features. It enables apps to use virtualization without the need of a kernel extension (KEXT) – which makes them compatible with the OS X App Store guidelines.
This post is based on the text of my GolangUK keynote delivered on the 18th of August 2016. A recording of the talk is available on YouTube .
setup.py is your friend. It’s real sorry about what happened last time.
Adrian Sieber's personal website and blog
This post is preceded by a description of two types of command line interfaces . The more command line-like of these two types integrates into a normal shell session ( python , telnet , bash ) instead of using the alternate screen to present a fullscreen text user interface ( top , vim , emacs ). Sometimes programs…
Robert O'Callahan. Christian. Kiwi. Software guy. All content human-authored unless otherwise noted.
WebFonts are awesome and here to stay. However, if used improperly, they can also impose a huge performance penalty. In this post, I explain how Rubygems.org painted 10x faster just by making a few...
You know what’s universally regarded as un-fun by most programmers? Writing assembly language code. As Steve McConnell said back in 1994: Programmers working with high-level languages achieve better productivity and quality than those working with lower-level languages. Languages such as C++, Java, Smalltalk, and…
I have a simple fast Fourier transform implementation on the page Free small FFT in multiple languages , whose asymptotic time complexity is the optimal Θ( n log n ). I wanted to know how much additional speed-up could be obtained by reorganizing memory access patterns and using SIMD vector arithmetic instructions…
A little over 2 years ago Microsoft announced that they were open sourcing large parts of the .NET framework and as Scott Hanselman said in his recent Connect keynote, the community has been contributing in a significant way:
In light of recent events in the javascript community, I would like to share the story of how I came into control of more than 200 heavily…
This week I started an experiment. I wanted to know whether I would be able to completely ditch tmux. Don’t get me wrong here, I absolutely love how tmux makes terminal multiplexing transparent for me. I’m also very used to <C-b>c, <C-b>1-0 and so on. I also have a custom set of keymaps and plugins I use frequently…
An interface can be thought of as a contract between the system and the environment. In a computer program, the 'system' is the function or module in question, and the 'environment' is the rest of the project. The interface formally describes what can pass between the system and the environment. An 'implementation'…
programming, language design, and human factors
The Rust ecosystem has made some cool progress on the embedded development front since my last article . Let’s take a look how we can build a much more ergonomical and safe API to one of the more popular real time operating systems - FreeRTOS - with a full testing and continous integration setup.
Being able to peek into a process is a very helpful thing when we want to fully understand how a program behaves.
When you start out as a developer there’s an overwhelming amount of things to grasp. First there’s the language itself, then all the quirks of the specific framework you’re using,and after that (or maybe before) we’ll throw front-end development into the mix, and somewhere along the line you have to decide to store…
There have been many different blog posts on the “State of the Web” , problems people face around tooling, and similar-style musings of late. This article is about summarizing my thoughts on recent events. Rather than yet another rant about the state of web development, this piece aims to pour some thought into what…