Blog System/5

Blog System/5 is a newsletter focused on the intricacies of operating systems, programming languages, build systems, and software engineering. It delves into specifics like FreeBSD, Linux, Rust, Bazel, and EndBASIC, offering insights on both historical and modern technological advancements, alongside personal software project discussions.

Operating Systems Programming Languages Build Systems Software Engineering IDEs and Editors Tech Industry Insights Code Quality and Reviews Software Tools and Libraries Development Practices Computing History

The hottest Substack posts of Blog System/5

And their main takeaways
493 implied HN points 29 Feb 24
  1. The post summarizes interesting articles, videos, and projects from February 2024 with added commentary to urge readers to explore the content.
  2. There are discussions on topics like old hardware databases, software development reflections, and the challenges of modern software bloat.
  3. The author explores topics like breaking memory limitations in DOS, DJGPP running GNU programs on DOS, and the creation of a library in Rust for implementing memory vulnerabilities.
411 implied HN points 31 Jan 24
  1. The post shares a curated selection of interesting articles, videos, and projects from January 2024.
  2. Discusses the impact of operating systems like Windows, Plan 9, and Unix in the tech industry.
  3. Explains technical topics like random number generation, x86_64 paging, and representing empty slices in programming.
683 HN points 25 Dec 23
  1. 30 years ago, text-based IDEs had features comparable to today's IDEs
  2. Borland Turbo series in the 1990s offered powerful, language-specific IDEs with integrated tools
  3. Modern TUI IDEs are evolving, but face challenges like resource consumption and lack of feature parity
493 implied HN points 08 Dec 23
  1. Microsoft is exploring adding a CLI text editor to Windows for remote system administration.
  2. Windows used to have a CLI text editor called Edlin and MS-DOS Editor but lost them with the transition to 64-bit Windows editions.
  3. There is interest in bringing back a CLI text editor like YEdit to Windows for a more traditional and user-friendly experience.
411 implied HN points 30 Nov 23
  1. This post features curated interesting articles, videos, and projects from November 2023 with one-paragraph commentaries.
  2. The author acknowledges new subscribers and encourages engagement by liking, sharing, and subscribing.
  3. The list includes a variety of tech-related articles, discussions, and videos from different sources.
Get a weekly roundup of the best Substack posts, by hacker news affinity:
493 implied HN points 27 Oct 23
  1. Blog System/5 covers operating systems, build systems, programming languages, and general engineering practices based on professional experiences and side projects.
  2. The author is using Substack as an experiment to build a community and assess recurring engagement compared to their personal blog.
  3. The title 'Blog System/5' pays tribute to the author's journey through different blog iterations over nearly 20 years.
145 HN points 17 Jan 24
  1. DOS had to use segmentation to maximize the 1 MB address space of the 8086 CPU.
  2. Different techniques like EMS, XMS, HMA, and UMBs were developed to access more memory in real mode.
  3. MemMaker was a tool to optimize memory usage in DOS by moving drivers and TSR programs to upper memory blocks.
198 HN points 15 Dec 23
  1. Old computers with blinking LEDs and noisy disks helped developers notice performance issues quickly.
  2. Modern machines are quieter and lack indicators, making it harder for developers to identify performance problems.
  3. Having a performance monitor visible at all times can help developers catch hidden performance issues on newer machines.
81 HN points 07 Feb 24
  1. Unreal mode is a special mode that allows CPUs to act as if in real mode but reference memory above the 1 MB limit using segment descriptors.
  2. To enter unreal mode on Intel 80386, you load segment descriptors with base addresses above 1 MB and/or limits larger than 64 KB.
  3. DOS extenders are programs that wrap DOS applications, entering protected mode to run code beyond 640 KB, while temporarily returning to real mode for BIOS and DOS calls.
246 implied HN points 21 Nov 23
  1. Code reviews can be beneficial by catching errors and improving code quality.
  2. Thorough code reviews may take longer but can prevent bugs and issues in the long run.
  3. Code reviews are a tool for achieving quality and mentoring, and can be done effectively even asynchronously.
164 implied HN points 10 Nov 23
  1. The shell is a powerful rapid prototyping language for solving business problems quickly with little code.
  2. On BSD systems, tools needed to be self-hosting and written in languages available in the base system, like C, C++, or shell.
  3. To get better at shell scripting, read the language manual, familiarize with Unix toolchain, understand process creation, follow good scripting practices, think in data flow, and use tools like ShellCheck.
82 implied HN points 31 Dec 23
  1. Monthly curated list of interesting articles, videos, and projects with commentary.
  2. Discussion on the limitations and differences between Wayland and X.org.
  3. Exploration of unique or lesser-known tech topics like BSD Unix on Windows and C string representations.
82 implied HN points 21 Dec 23
  1. The interview covers Julio Merino's background in tech, including his transition to the Bazel team at Google.
  2. Introduction to Bazel as a build system and its benefits for monorepos.
  3. Exploration of topics like build incrementality, dependency management, Bazel migrations, remote execution, and forward-looking plans.
102 HN points 24 Nov 23
  1. Microsoft took a bold risk in developing Windows NT from scratch in 1988, which paid off and became the foundation for almost all desktop and laptop computers today.
  2. Developing Windows NT faced challenges like toxic culture, pressure to compete with open-source projects like BSD and Linux, and the need for consistent stability.
  3. The importance of dogfooding, the unique challenges of creating the NTFS file system, and the emphasis on correctness over performance in the development of Windows NT were significant aspects of the project.
82 implied HN points 04 Nov 23
  1. It's important to write end-to-end tests for your CLI tools to verify their functionality as experienced by the end user.
  2. Combining shtk with Bazel via the new rules_shtk ruleset makes it easier to write tests that verify the behavior of your CLI tools.
  3. Using the shtk toolchain in Bazel allows for streamlined testing of tools, ensuring better quality and user experience.
82 implied HN points 30 Oct 23
  1. Attending Bazel events like BazelCon 2023 can provide valuable insights, connections, and fun experiences that are hard to replicate online.
  2. Upcoming improvements in Bazel 7, such as Build without the Bytes (BwtB) feature and path mapping enhancements, aim to enhance developer experience significantly.
  3. Key areas of interest at the events included IDE improvements like the IntelliJ BSP plugin, discussions on remote build details like regional clusters and build viewers, and insights on things to try out like visualizing build graphs and leveraging Buck2's LSP for Starlark.
4 HN points 09 Mar 24
  1. The 'new type' idiom in programming involves wrapping native types in domain-specific types to prevent errors when passing values to external APIs.
  2. Avoid using primitive types like integers or strings directly in your code base by creating new types like `Username` and `Size` for better code structure.
  3. Adopting the 'new type' pattern can help prevent production outages by catching issues like function argument swaps early on and enforcing correct usage through type safety.
4 HN points 21 Feb 24
  1. Knowing C well involves dealing with pointers, memory management, system calls vs. library functions, and understanding the FFI
  2. Knowledge of memory, system calls vs. library functions, and FFI gained from knowing C can be applied to many programming languages
  3. While you don't need to know C to be a good programmer, learning it can help you with understanding fundamental programming concepts
4 HN points 14 Feb 24
  1. DJGPP is a port of GNU development tools to DOS, challenging the limited memory and architecture of DOS systems.
  2. DJGPP's tooling was free and provided a complete development environment with Unix heritage, leading to differences in behavior from other DOS compilers.
  3. DJGPP faced challenges like running 32-bit programs on the 16-bit DOS operating system, dealing with large buffers, and handling Unix-style paths on DOS.
3 HN points 17 Nov 23
  1. SSH agent forwarding allows you to interact with keys without re-entering the passphrase
  2. Problems can arise with long-lived processes like tmux when SSH agent forwarding is used
  3. Solutions for handling SSH agent forwarding issues include smart symlink management and custom daemons
2 HN points 03 Dec 23
  1. Avoid using null-terminated strings in C for better performance and efficiency.
  2. Interop with operating systems and libraries can be problematic when using strings without NUL terminators.
  3. Annotating string representations with size and padding with NUL characters for interop can improve performance and avoid unnecessary string copies.
0 implied HN points 31 Oct 23
  1. The post highlights interesting articles, videos, and projects from October 2023.
  2. Articles included cover various topics like software engineering, Rust, and thinking in programming.
  3. A mix of older and newer content was shared, emphasizing the value of revisiting insightful pieces.