New
The latest blog posts to take off on Hacker News. 14,544 posts.
How undefined signed overflow enables optimizations in GCC
Signed integers are not allowed to overflow in C and C++, and this helps compilers generate better code. I was interested in how GCC is tak...
State of the Haskell Ecosystem – February 2016
Update post for the State of the Haskell Ecosystem
Working with the Clinton State Dept Email Dumps in R, Part 1
This isn’t a post about politics. I do have opinions about the now infamous e-mail server (which will no doubt come out here), but when the WSJ folks made it possible to search the Clinton email releases I though it would be fun to get the data into R to show how well the igraph and ggnetwork packages could work…
Cheap BlueTooth Buttons and Linux
Selfie sticks - like most modern inventions - are utter tosh. But they've rapidly brought down the price of Bluetooth buttons. So who am I to complain? Let's take the venerable AB Shutter 3 - You can find it on Amazon for around £2 including postage - or around $2 on AliExpress. Frankly, that's stupidly cheap. OK…
Reverse engineering Android from binary to source
Dmitry.GR: Full sources for Android on zWatch
GitHub lock-in?
There has been a lot of noise recently on how GitHub is bad, and how developers should stop using it.
cgo is not Go
Some people, when confronted with a problem, think “I know, I’ll use cgo.” Now they have two problems.
Why GNU Emacs?
I don’t usually try to explain tools that I use to other people, unless they made an explicit request as to how they could improve their workflow. However, since today is “I love Free Software” Day I think I should seize this opportunity and explain what draws me to GNU Emacs and how I use it.
A Modern App Developer and an Old-Timer System Developer Walk into a Bar
Note: Thanks for all the great comments and feedback here and on Hacker News . Please keep them coming. I learned a ton and I am sure others will also.
Before You Get Too Excited About That GitHub Study
Another day, another study purporting to find that Tech Is Sexist. Since it’s showing up here, you probably already guessed how this is going to end. Most of this analysis is not original to …
Why Rust's ownership/borrowing is hard
Working with pure functions is simple: you pass arguments, you get a result — no side effects happen. If, on the other hand, a function does have side effects, like mutating its arguments or global objects, it's harder to reason about. But we've got used to those too: if you see something like player.set_speed(5) you…
Learn Raw React – No JSX, No Flux, No ES6, No Webpack
Learn React from the ground up, without worrying about JSX, Flux, ES6, Webpack, etc.
AWS Java documentation is fucked
Update: Eron Hennessey from Amazon has responded below with a new updated Java SDK that’s much easier to grok. The title of this article has since been changed accordingly. The problem…
Stack traces in GHCi, coming in GHC 8.0.1
Bluesky: @simonmar.bsky.social Github: simonmar Email: marlowsd@gmail.com LinkedIn: Simon Marlow
Show HN: Htop 2.0 released, now cross-platform
This is htop, a cross-platform interactive process viewer. It is a text-mode application (for console or X terminals) and requires ncurses.
Friction Between Programming Professionals and Beginners
In this article I want to talk about negative aspects of the programming community, regarding beginner programmers. This is a touchy topic. I will try to explain both sides to the best of my ability, but I’m not endorsing either side. My only hope is that some readers will gain more empathy for the people they are…
Text Mining South Park
pop culture + data science
Kill Your Dependencies
This post talks about Ruby but it’s true of every language community: Python, JavaScript, Java, etc. The scourge of dependencies spares no one. This is a dependency visualization of every Rails app I’ve ever used. Does any of this sound familiar: Gemfile with 100s of entries. Test gems loading in production. Each…
Erlang Scheduler Details and Why They Matter
Hamidreza Soleimani's Blog - Just about what I know
The Evolution of a Haskell Programmer (2001)
Some time later, I came across Iavor’s "jokes" page, including a funny bit called “ The Evolution of a Programmer ” in which the traditional imperative "Hello, world" program is developed through several variations, from simple beginnings to a ridiculously complex extreme. A moment’s thought turned up the factorial…
How to do distributed locking
As part of the research for my book , I came across an algorithm called Redlock on the Redis website. The algorithm claims to implement fault-tolerant distributed locks (or rather, leases [1]) on top of Redis, and the page asks for feedback from people who are into distributed systems. The algorithm instinctively set…