Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 14,545 posts.
JQuery is a monad
It’s said that every Haskell programmer writes their own monad tutorial, and with good reason: once you finally understand the definition and capabilities of a monad, you’ll be eager to…
Finite State Entropy - A new breed of entropy coder
In compression theory, the entropy encoding stage is typically the last stage of a compression algorithm, the one where the gains from t...
The C Programming Language: 4.10 (HP Lovecraft version)
C functions may be used recursively; that is, a function may call itself either directly or indirectly. Uninquiring souls may take this as just another peculiarity of those C folk, of whose ways their neighbours speak little to outsiders but much among themselves.
A micro-manual for Lisp implemented in C
Recently I had to go through some code that uses the uIP TCP/IP stack, which reminded me, it has been a long time since I did something in C so I ended up spending the weekend implementing the 10 rules John McCarthy described in his paper A Micro-Manual for Lisp - not the whole Truth .
I pushed 30 of my programming related projects to github
Hey everyone, I just pushed 30 of my projects to GitHub. I realized that all the projects were scattered across my blog and there was no central repository. So I took time to organize them, write documentation, and uploaded them to GitHub. I did all of these projects for fun and to learn better programming. You…
Life in Text Mode
I primarily use Unix-based computers, mostly Linux. On those computers, I live in text mode. This entry is an attempt to document the software I find most useful to my text-mode guerrilla lifestyle. Included are links to the programs I rely on, links to alternative programs, and links to my config files. screen…
Armin Ronacher: Collections in C
Using the C preprocessor to achive basic generic collection types.
Presentation on the new Python GIL
08/01/2009 - 09/01/2009 09/01/2009 - 10/01/2009 10/01/2009 - 11/01/2009 11/01/2009 - 12/01/2009 12/01/2009 - 01/01/2010 01/01/2010 - 02/01/2010 02/01/2010 - 03/01/2010 04/01/2010 - 05/01/2010
Git your act together
Explaining some things that I think would make using Git a bit more enjoyable when working in a team.
Vim Plugins You Should Know About, Part I: surround.vim
Hi all. I am starting a new article series called Vim Plugins You Should Know About. As the title suggests, this series is going to be about Vim plugins that you should know about and be using. The first article in this series will be about one of my favorite plugins called surround.vim. So what is surround.vim plugin?
Distributed systems for fun and profit (free ebook)
git , Single page HTML , Kindle .mobi , PDF , .epub , HTML for printing , book cover .
Anyone Interested in Articles on Using PyPy to Create New Languages?
I'm Tav, a 28-year old from London. I enjoy working on large-scale social, economic and technological systems.
Tail Call Amputation
This is perhaps a slight digression; just an extended expression of pleasure about Clojure’s recur statement. It neatly squashes a bee I’ve had in my bonnet for some years now; if it’s wrong to loathe “tail recursion optimization” then I don’t want to be right.
Learn Emacs in Ten Years
Somebody emailed me the other day, asking about how to go about learning Emacs. This is my (edited and rearranged) reply.
Rewriting the Technical Interview (2020)
Update, November 2023: here are the full term rewrite and language macros which formed the seed of this story. These files include OO notation as well as the basic Algol syntax shown here. There is also a sketch of an object-oriented language with classes and inheritance, implemented as a Clojure macro. I do not…