Anti-If: The missing patterns (2016)
Software development blog of Joe Wright
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,826 posts.
Software development blog of Joe Wright
[This essay in Spanish] [This essay in French] [This essay in Chinese] In an old joke, two noblemen vie to name the bigger number. The first, after ruminating for hours, triumphantly announces "Eighty-three!" The second, mightily impressed, replies "You win." A biggest number contest is clearly pointless when the…
I have been writing a lot more Go this past year. For those not familiar, Go favours a non-ORM, non-query-builder approach to interacting with databases. This comes naturally due to the sql package : A common interface to be used alongside database drivers. It’s very common to see actual SQL in Go, even in large…
28-Nov-2018: I’ve added a small update at the end on how to prevent‘handle collisions’ with a per-slot generation counter
TL;DR Clojure is a great programming languages due to its functional nature, lack of objects / concentration on primitive values
<p> <i>Python</i> haters always say, that one of reasons they don't want to use it, is that it's <i>slow</i>. Well, whether specific program - regardle...
Why you should consider using F# for your next project
Addressing recent Deno criticisms and sharing our vision for the future
I've been sitting on publishing these notes for a while, because I don't want to diminish the work of the talented people that engineered SwiftUI and plowed through years of AppKit and UIKit code to get to this state. But I'd like to draw attention to some performance limitations, in the hope that a SwiftUI engineer…
Protobuf needs no introduction, but this post argues that you shouldn’t use it for telemetry. The basic premise of this post is that a good telemetry library needs to be lightweight to avoid perturbing the application; inefficient diagnostic tools are self-defeating. Unlike other formats, nested Protobuf messages…
Build 3080 is now available, with many fixes, improvements and new features. Full details, and downloads, are on the Sublime Text 3 page.
Asynchronous programming is a popular programming paradigm that allows a large number of lightweight tasks to run concurrently with very little memory overhead, compared to threads.
tldr: we stick to C89 for now. The curl project builds on foundations that started in late 1996 with the tool named httpget. ANSI C became known as C89 In 1996 there were not too many good alternatives for making a small and efficient command line tool for doing Internet transfers. I am not saying … Continue reading…
We have excellent tools to create and edit text (vim, emacs, sublime, etc.). We have pretty good tools to create and edit tabular data (excel, other spreadsheet software). We even have pretty good …
Updated (4/2017): See .NET Framework Releases for newer releases. Today we are excited to announce the availability of the .NET Framework 4.6.2! Many of the changes are based on your feedback, including those submitted on UserVoice and Connect. Thanks for your continued help and engagement! The release is packed with…
In this long article, I, being as far as I know the first outside Microsoft to have learnt how the AARD code works, explain that I condemn its form but broadly sympathise with its function.
Announcing LAMBDA: Turn Excel formulas into custom functions
What are threads? Every modern operating system has support for threads, and most programming environments provide some level of support for...
YAML sucks! This blog post explains why existing tools hardly ease this pain, and what we at Grafana Labs did about it.
We have identified three independently exploitable vulnerabilities in Go's encoding/xml. Read more about their impact to Mattermost users.
Now that Sparrow is effectively dead many of its users will be looking for a new email client. If you're not afraid of the terminal you may want to give Mutt a try.
The human genome project was inaugurated at the beginning of the decade as an ambitious international effort to determine the complete DNA sequence of human beings and several experimental animals. The justification for this undertaking is both scientific and medical. By understanding the genetic makeup of an organism…
I analyzed stackoverflow for secrets and leaks.
An introduction to the core ideas and approaches