Exciting Days for ARM Processors
Introduction ARM CPUs have long dominated the mobile world, nearly all Apple and Android phones and tablets utilize some model of ARM processor. However Intel and AMD still dominate the laptop, des…
Topics /
The most popular blog posts about software engineering on Hacker News. 14,540 posts.
Introduction ARM CPUs have long dominated the mobile world, nearly all Apple and Android phones and tablets utilize some model of ARM processor. However Intel and AMD still dominate the laptop, des…
When measuring the size of a two-dimensional digital picture, the unit pixel is used in a weird overloaded way. Sometimes, it is used as a unit of linear length. For example, each frame of an animation is 1920 pixels wide and 1080 pixels tall. The Cascading Style Sheets (CSS) web standard has px as a unit of length…
In my previous post I talk about how I got rid of hundreds of thousands of lines of Objective-C code while at Audible and I explain why keeping Objective-C code around is a terrible idea. And I explain that…
A review of the Odin programming language # Written by Dale Weiler Twitter GitHub Last updated Tuesday, September 10th, 2022 What is Odin # For those unfamiliar, Odin is a systems programming language that is more conservative in its design than other newer programming languages such as Rust, Zig, and Carbon. The…
Here at Malwarebytes we are experiencing phenomenal growth, and since I have joined the company over 1 year ago in the Silicon Valley, one my main responsibilities has been to architect and develop several systems to power a fast-growing security company and all the needed infrastructure to support a product that is…
Suppose that the logic of your program depends on time. That is, you need to keep track of when something in the past happened, and what tim...
Programming language performance is something that nearly everyone cares about at some point, whether they realise it or not. If you’re a programmer, you sometimes have to make your programs run fast; if you’re a user, you might be frustrated at a program that runs slowly, without knowing that it’s caused by a poor…
This blog post presents several techniques to make the binaries resulting from C or C++ compilation smaller with GCC (or Clang). Please note...
This is going to be a long post, but I hope you get value out of it. This wasn’t an easy topic to tackle but it was definitely worthwhile!
LDM—or load multiple —is my favorite assembly instruction of the ARM instruction set. Here’s why.
Why SQLite and Go in the cloud are a great match, getting started, best practices, and more.
So I couldn't sleep the other night, and my brain wanted to think about odd problems… Ever had a script that's compatible with both, Python 2 and 3, but you didn't want to bother the user to know whic
F38 just released and seeing a bunch of people complain that TF2 dies on AMD or other platforms when lavapipe is installed. Who's at fault? ...
A modest defense of the rodent So, Emacs and the mouse. This is an unexpectedly contentious topic, with discussions that end, at best, with careless dismissal. More often they turn into arguments with folks talking past one another. The advantages of using the mouse for common actions in Emacs are immediate and…
Far too many developers use Git without understanding it. It's time to straighten out your thinking about what Git is, and isn't.
Becoming a project manager after being a software developer for many years changed me quite a bit. Below are my thoughts and breakdown of the experience.
A few months ago I gave a presentation on my philosophy for error handling . In the talk I introduced a small errors package designed to support the ideas presented in the talk.
When it comes to accuracy, how you add a series of arbitrary values together, and average them still matters.
Navigating codebases of any meaningful size is difficult. Most of a programmer's time is spent jumping through the codebase, reading or skimming to build a ment...
Modern C++, as defined in the C++11 standard has evolved to become an algorithmic language. This represents as much an idiomatic departure from Object Orientation as C++ was a departure from …
Instructions for compiling and running MIT/GNU Scheme.
I am currently working on a Rust to .NET compiler, rustc_codegen_clr . To get it to work, I need to implement many Rust features using .NET APIs. One of such features is panicking and unwinding.