Topics /

Software Engineering

The most popular blog posts about software engineering on Hacker News. 21,842 posts.

Any year
14552

Fixing JSON

I’ve edited a couple of the JSON RFCs, and am working on the design of a fairly complex DSL, so I think I can claim to have dug deeper in the JSON mines than most. We can easily agree on what’s wrong with JSON, and I can’t help wondering if it’d be worth fixing it.

14555

What’s to love about C?

Antiquated, clunky, and unsafe. Though beloved to some, C is a language that many choose to hate. The mass opinion is indeed so negative it’s hard to believe that anybody would program anything in C. Yet they do. In fact a lot of things, even new things, are programmed in C. The standard was recently […]

14560

Taking PHP Seriously (2016)

Slack uses PHP for most of its server-side application logic, which is an unusual choice these days. Why did we choose to build a new project in this language? Should you? Most programmers who have only casually used PHP know two things about it: that it is a bad language, which they would never use if…

14563

Actually using Ed

The classic ed editor is a really good example of a sparse, minimal, standard Unix tool that does one thing, and does it well. Because there are so many good screen-oriented editors for Unix, there’s seldom very much call for using ed , unless you’re working on very old or very limited hardware that won’t run anything…

14566

My Favorite Engineering Interview Question

As Ning is ramping up recruiting again, I need to brush off my interrogation techniques interview questions. Sadly, one of my favorites is no longer so useful, as originally designed, due to technical advances in hard drives. I figured I’d share and discuss how I use it. Hopefully folks can give me some feedback on…

14567

C# 8: Switch expressions

COCOL88 merupakan juragan yang sangat terpercaya dalam lingkup permainan online gacoryang mempunyai skill keamanan yang sangat tinggi dan persentase kemenangan yang akurat dengan fitur RTP yang disediakan oleh situs COCOL88

14568

0xCAFEBABE & 0xFEEDFACE (2003)

Tuesday, January 28, 2003 0xCAFEBABE & 0xFEEDFACE Recently, the origin of the magic numbers of 0xCAFEBABE and 0xFEEDFACE came up in an email conversation between a number of ex-NeXT folks. Specifically, someone asked what the origin of the two magic numbers were in the context of mach-o file formats and why had Java…

14572

Don't trust default timeouts

Modern applications don’t crash; they hang. One of the main reasons for it is the assumption that the network is reliable. It isn’t. When you make a network call without setting a timeout, you are telling your code that you are 100% confident that the call is going to succeed. Would you really take that bet? If you…

14574

A Little Clojure

This expression: (1 2) represents the list containing the integers 1 and 2 in that order. If you want an empty list, that’s just () . And the list of the first five letters of the alphabet is just (\a \b \c \d \e) .

14579

C++20 Modules with GCC11

Introduction One of the headline changes of the C++20 standard is the inclusion of modules. Modules promise to significantly change the structure of C++ codebases and possibly signal headers’ ultimate demise (but probably not in my lifetime). It also opens the door to potentially have a unified build system and…