In this series of blog posts, the author delves into the inner workings of the Objective-C language and runtime. Each post focuses on a specific aspect of the language and explores the details of its implementation. The author hopes that readers will find this information valuable for demystifying the language, tackling tricky bugs, and optimizing […]
Read more »
In this article, we will explore various hands-on experiments using Emacs commands to sort text in different ways. We will provide concrete examples to illustrate how these commands work. Our first set of experiments focuses on sorting lines. We simulate a record for each line, representing details about different individuals. We can sort lines alphabetically […]
In this article, the author discusses the importance of following a specific reporting process when providing project status updates. He emphasizes the need to start with the punch line, which includes the objective facts without any embellishments. This approach allows the project manager to quickly grasp the most crucial information and then learn supporting details. […]
Summary: In this article, the author explores why a startup loses its spark as it scales. They discuss the enjoyable and intoxicating work experience at a well-run startup, where engineers have the freedom to talk to users, come up with ideas, and implement them quickly. However, as a company grows, the fun diminishes. Engineers have […]
In World War II, the British came up with a clever propaganda campaign to disguise their newly developed onboard radar technology. They claimed that their pilots had incredible eyesight due to consuming excessive carrots. This tactic, which I like to call a “Carrot Problem”, is used by various individuals and companies to explain their success […]
The Linux kernel, currently at version v6.5-rc5, is a large open source software with 36M lines of code. However, the first version of Linux, v0.01, was much smaller with only 8,670 lines of code. This version is a good starting point to learn about the internals of UNIX-like operating system kernels. The system calls in […]
In this web content, the author reflects on the impact of the release of information about the NSA by Edward Snowden in 2013. The content is divided into four perspectives: someone involved in informing the public responsibly, a security area director of the IETF, a human rights expert, and a computer science and law professor. […]
This web content provides a graduate-level introduction to graph theory, equivalent to a quarter-long course. It encompasses various types of graphs, including simple graphs, multigraphs, and directed analogues. The content explores more specific classes such as tournaments, trees, and arborescences. Notable features discussed include Eulerian circuits, Hamiltonian cycles, spanning trees, matrix-tree and BEST theorems, proper […]
Stanley Black & Decker has implemented a software-defined manufacturing system in its factory in South Carolina, which has significantly increased productivity and reduced the need for manual labor. The software, provided by Bright Machines, directs the robotic arms that assemble cordless power drills. This model, similar to the semiconductor industry, allows for faster product design […]
This article discusses a proposed extension to the Go language, called “range over func,” which introduces the concept of iterators. Iterators are functions that yield one result at a time, rather than computing and returning a whole set of results at once. The article explains the benefits of using iterators compared to returning a slice, […]