The Curious Engineer

All blogs / OS / kernel

Julio Merino's corner on Julio Merino (jmmv.dev)

jmmv.dev

Julio Merino’s blog. A blog on operating systems, programming languages, testing, build systems, my own software projects and even personal productivity. Specifics include FreeBSD, Linux, Rust, Bazel and EndBASIC.

OS / kernelDev tools / editors / IDEsRustLinux / UnixTesting / QA

Posts
950 from 22 Jun 2004 to 21 Oct 2026
Posting
monthly (12 in the last year)
Kind
personal blog
Feed
https://jmmv.dev/feed.xml

2026 9

  1. BazelCon 2026 recap
  2. An old-new take on argument parsing in Rust
  3. Autoconf’s revenge: ad-hoc shell templates
  4. Is anyone still using Emacs?
  5. A Markdown-based test suite
  6. What if there was no BASIC in EndBASIC?
  7. I think AI is pushing me toward the AGPL
  8. Reflections on vibecoding ticket.el
  9. Grumpy Julio plays with CLI coding agents

2025 17

  1. ssh-agent broken in tmux? I've got you!
  2. From Azure Functions to FreeBSD
  3. BazelCon 2025 recap
  4. You are holding BUILD files wrong
  5. Bazel and glibc versions
  6. Trusting builds with Bazel remote execution
  7. Understanding Bazel remote caching
  8. Bazel and action (non-) determinism
  9. Lessons along the EndBOX journey
  10. Whatever happened to sandboxfs?
  11. Beginning 3D printing
  12. The next generation of Bazel builds
  13. Bazel at Snowflake two years in
  14. Hardware discovery: ACPI & Device Tree
  15. ioctls from Rust
  16. Hands-on graphics without X11
  17. Self-documenting Makefiles

2024 19

  1. Revisiting the NetBSD build system
  2. Synology DS923+ vs. FreeBSD w/ZFS
  3. Demystifying secure NFS
  4. BazelCon 2024 recap
  5. The costs of the i386 to x86-64 upgrade
  6. Revisiting the DOS memory models
  7. Windows NT vs. Unix: A design comparison
  8. Picking glibc versions at runtime
  9. Kyua graduates
  10. Rust doesn't solve the CrowdStrike outage
  11. 20 years of blogging
  12. Porting the EndBASIC console to an LCD
  13. How "new type" helps avoid production outages
  14. Links: February 2024 edition
  15. To C or not to C
  16. Running GNU on DOS with DJGPP
  17. Beyond the 1 MB barrier in DOS
  18. Links: January 2024 edition
  19. From 0 to 1 MB in DOS

2023 34

  1. Links: December 2023 edition
  2. The IDEs we had 30 years ago... and we lost
  3. Bazel interview at Software Engineering Daily
  4. Hard disk LEDs and noisy machines
  5. A CLI text editor? In my Windows?
  6. Strings, encodings, NULs and Bazel
  7. Links: November 2023 edition
  8. Windows NT: Peeking into the cradle
  9. Code reviews: A success story
  10. SSH agent forwarding and tmux done right
  11. Why do I know shell, and how can you?
  12. End-to-end tool testing with Bazel and shtk
  13. Links: October 2023 edition
  14. BazelCon 2023 et al. trip report
  15. Hello, Blog System/5!
  16. Build farm visualizations
  17. Unit-testing shell scripts and tools with shtk
  18. Analyzing OOMs in IntelliJ with Bazel
  19. 5 ways to instantiate Rust structs in tests
  20. Good performance is not just big O
  21. Costs exposed: Frameworks
  22. Costs exposed: On-call ticket handling
  23. Costs exposed: Monorepo vs. multirepo
  24. Raspberry Pi 3, rfkill, and real root causing
  25. A failed experiment with Rust static dispatch
  26. Unit-testing a web service in Rust
  27. ldd(1) and untrusted binaries
  28. Fast machines, slow machines
  29. A persistent task queue in Rust
  30. MVC but for non-UI apps
  31. In-house email subscriptions
  32. Addressing Bazel OOMs
  33. Introducing III-IV
  34. BASIC parsing difficulties in EndBASIC

2022 32

  1. EndBASIC 0.10: Core language, evolved
  2. From AST to bytecode execution in EndBASIC
  3. Farewell, Microsoft; hello, Snowflake!
  4. Tips on formatting Markdown lists
  5. Speeding up autoconf with caching
  6. EndBASIC 0.9: Run shared demos easily
  7. Remembering Buildtool
  8. Rust is hard, yes, but does it matter?
  9. Do Rust devs hate Go devs?
  10. Rust traits and dependency injection
  11. QB64 Super Dark Blue color theme
  12. Introducing db_logger
  13. Abandoning GAFYD
  14. A year on Windows: Finale
  15. A year on Windows: Software installation
  16. A year on Windows: System debugging
  17. A year on Windows: Networked file systems
  18. A year on Windows: PowerShell
  19. A year on Windows: Development experience
  20. A year on Windows: Miscellaneous tools
  21. A year on Windows: PowerToys
  22. A year on Windows: Window switching
  23. A year on Windows: Look'n'feel
  24. A year on Windows: Input methods
  25. A year on Windows: Keyboard shortcuts
  26. A year on Windows: Introduction
  27. Windows 10 on a Mac Pro 2013
  28. Configuring SSH access into WSL 1 and WSL 2
  29. My story with Windows
  30. Comments are back and other news
  31. DIY web analytics
  32. Fair on-call scheduling

2021 22

  1. Constructors and evil initializers in C++
  2. EndBASIC 0.8: Now, with graphics!
  3. Useless use of GNU
  4. Should the browser use all available memory?
  5. Principal engineers should be on-call
  6. Definitions and initializations in C++
  7. macOS keyboard shortcuts for Windows
  8. EndBASIC 0.7: Hello, cloud!
  9. From FeedBurner to follow.it
  10. Running a healthy production service
  11. On software deadlines
  12. Always be quitting
  13. Defining build time SLIs and SLOs
  14. Tips on well-being while on-call
  15. How does Google keep build times low?
  16. EndBASIC 0.6 release announcement
  17. Seeding a file server quickly
  18. Embedding EndBASIC into a (Rust) program
  19. EndBASIC 0.5 release announcement
  20. Why am I wasting time on EndBASIC?
  21. Prevent accidental commits with DO NOT SUBMIT
  22. Enforcing code health via GitHub Actions

2020 38

  1. How does Google avoid clean builds?
  2. EndBASIC 0.4 release announcement
  3. Unit-testing a console app (a text editor)
  4. Using the builder pattern to define test scenarios
  5. EndBASIC 0.3 is here
  6. What makes an article succeed (or not)?
  7. Windows Subsystem for Linux: The lost potential
  8. Updating Google Domains from DD-WRT
  9. Argument processing in Unix and Windows
  10. Configuring Windows for key-based SSH access
  11. Flags parsing in PowerShell (vs. Unix)
  12. My interviews with Facebook, Twitter, and Microsoft
  13. Farewell, Google; hello, Microsoft!
  14. The final boss: Bazel's own JNI code
  15. Who should do cleanups?
  16. Bazel output streaming, Ctrl+C, and test flakiness
  17. Bazel UI locking and file downloads
  18. pkgdb belongs in libdata, not var
  19. rc.d belongs in libexec, not etc
  20. A tour of directories as system-wide databases
  21. Configuration files and .d directories
  22. Cutting down on interrupts with office hours
  23. Internships para estudiantes españoles
  24. Down the memory lane with OS/2
  25. My 18 steps to prepare a great presentation
  26. My 18 tips to deliver great presentations
  27. Shipping Bazel's new dynamic scheduler
  28. Black Lives Matter
  29. Bridging the web gap in EndBASIC
  30. Running codesign over SSH with a new key
  31. EndBASIC 0.2.0 is here
  32. What is Rust's Into<T> for?
  33. Hello, EndBASIC!
  34. test, [, and [[
  35. macOS terminal stalls running a binary
  36. FOSDEM navigation 101
  37. Ensuring system rewrites are truly necessary
  38. The OSXFUSE, hard links, and dladdr puzzle

2019 31

  1. Lifting the local lock for dynamic execution
  2. Tree artifacts and transient files
  3. Artifact downloads and dynamic execution
  4. Output conflicts and dynamic execution
  5. Bazel's dynamic strategy
  6. How does Bazel track local resource usage?
  7. Introduction to Bazel's dynamic execution
  8. What are Bazel's strategies?
  9. The /bin/bash baggage of macOS
  10. Waiting for process groups, macOS edition
  11. Waiting for process groups, Linux edition
  12. Waiting for process groups, introduction
  13. Bazel's process-wrapper helper tool
  14. A quick glance at macOS' sandbox-exec
  15. Resurrected ONLamp.com articles
  16. Sample REST interface in Rust and Go
  17. Safely restoring the previous working directory
  18. Optimizing tree deletions in Bazel
  19. Darwin's QoS service classes and performance
  20. Using setenv equals setting global variables
  21. Encode your assumptions
  22. Hello, sandboxfs 0.1.0
  23. Open files limit, macOS, and the JVM
  24. On smartphones and email procrastination
  25. The GOPATH problem
  26. My Git Workflow
  27. From Blogger to Jekyll: How to export a Blogger site
  28. Common Makefile pitfalls
  29. Bullet Journal review after two years
  30. Building a prototype
  31. 11 years of the Julipedia... and thanks for the ride

2018 25

  1. The fallacy of forbidding assertions
  2. Rust vs. Go
  3. Rust review: Closing thoughts
  4. Rust review: The ecosystem
  5. Rust review: The book
  6. Rust review: The match keyword
  7. Rust review: Expressions, expressions, expressions
  8. Rust review: Learning curve
  9. Rust review: Protect the data
  10. Rust review: The borrow checker
  11. Rust review: Immutable by default
  12. Rust review: Introduction
  13. A few extra system calls... and you lose 1% build time
  14. Preliminary sandboxfs support in Bazel
  15. Stick to your project's core language in your tests
  16. A case for writing Bazel's integration tests in Java, part 2
  17. A case for writing Bazel's integration tests in Java, part 1
  18. Shell readability: local
  19. Shell readability: strict mode
  20. Don't rollback rollbacks
  21. My self-powered commute
  22. Shell readability: function parameters
  23. Shell readability: main
  24. From Jekyll to Hugo
  25. Looking to replace Jekyll

2017 6

  1. Fighting execs via sandboxfs on macOS
  2. Introducing sandboxfs
  3. Introducing sourcachefs
  4. Easy pkgsrc on macOS with pkg_comp 2.0
  5. Keeping NetBSD up-to-date with pkg_comp 2.0
  6. Introducing pkg_comp 2.0 (and sandboxctl 1.0)

2016 11

  1. #! /usr/bin/env considered harmful
  2. Welcome to my homepage, version 3.0
  3. On the success of an OS
  4. On the success of an OS
  5. Visual Studio Code: A modern editor
  6. Understanding Git
  7. A look at Go from a newbie's perspective
  8. Those pesky Makefiles
  9. Analysis of SSHFS performance for large builds
  10. The Medium experiment wrap-up
  11. Joining the Blaze team

2015 17

  1. Introducing Nudgy Timer
  2. Introducing Markdown2Social
  3. Compilers in the (BSD) base system
  4. Welcome to my homepage, version 2.0!
  5. An open letter to online support staff
  6. "Your English is pretty good!", they said
  7. My coding workflow
  8. How to commit a code hack and not perish along the way
  9. Get a handle on email subscriptions
  10. Six years at Google
  11. Hello, Medium!
  12. Offloading maintenance tasks to Travis CI
  13. On Bazel and Open Source
  14. Nexus 9, focused writing, and more
  15. Kyua turns parallel
  16. Unused parameters in C and C++
  17. One month in with Android Wear

2014 17

  1. The NetBSD vs. the FreeBSD test suite
  2. Task tracking and the Bullet Journal
  3. shtk 1.6 is now available
  4. Redefining Kyua's mission
  5. Code review culture meets FreeBSD
  6. Refocusing Kyua maybe?
  7. BSDCan 2014 summary
  8. The beauty of computing
  9. What does it mean to test a OS?
  10. BSD vs. Linux
  11. GSoC 2014 idea: Port FreeBSD's old-style tests to ATF
  12. How to merge multiple Git repositories into one
  13. Moving projects to GitHub
  14. Killing the ATF deprecated tools code
  15. FreeBSD Test Suite tutorial at AsiaBSDCon 2014
  16. FreeBSD Test Suite goals and planning
  17. Header files: Series wrap-up

2013 63

  1. Introducing the FreeBSD Test Suite
  2. Header files: Poor compilation times in C++
  3. Header files: Qualify your identifiers
  4. Header files: Poor man's replacement for modules
  5. lutok-0.3, kyua-testers-0.2 and kyua-cli-0.8
  6. Header files: Avoid C++ 'using' directives
  7. Header files: C++ ipp files
  8. Three productive days on the Kyua front
  9. Header files: Self-containment
  10. Header files: Multiple-inclusion protection
  11. Header files: Series introduction
  12. Patch management with Quilt
  13. How to add the Mac OS X screensaver to the dock
  14. Joining the FreeBSD committer ranks
  15. Production software: Series wrap-up
  16. Production software: Identifying your builds
  17. Production software: Logging
  18. Production software: Hide new features behind flags
  19. Production software: Constants will bite you
  20. Production software: Be wary of assertions
  21. Production software: Series introduction
  22. EuroBSDCon 2013 takeaways
  23. Live from EuroBSDCon 2013, day 4
  24. Live from EuroBSDCon 2013, day 3
  25. Live from EuroBSDCon 2013, day 2
  26. Live from EuroBSDCon 2013, day 1
  27. Novel color scheme for xterm
  28. CLI design: Series wrap-up
  29. CLI design: Consider interactive prompts twice
  30. CLI design: Screen wrapping
  31. Rebranding
  32. CLI design: Handling output messages
  33. Adding The Julipedia to Technorati
  34. CLI design: Single-command interfaces
  35. CLI design: Subcommand-based interfaces
  36. CLI design: Do not reinvent option parsing
  37. CLI design: Putting flags to good use
  38. CLI design: Requesting and offering help
  39. CLI design: Error reporting
  40. CLI design: The CLI is the presentation layer
  41. CLI design: Series introduction
  42. Writing good release notes
  43. Top 5 tips to write great commit log messages
  44. Readability: Series wrap-up
  45. Readability: Narrow try/catch blocks
  46. 'Hello GitHub!' say shtk, sysbuild and sysupgrade
  47. Readability: Don't modify variables
  48. Readability: Conditionals as functions
  49. Readability: Explicitly state complementary conditions
  50. Putting a PowerMac G5 to good use
  51. Installing FreeBSD with a ZFS root on a PowerMac G5
  52. Readability: Do not abuse classes as global state
  53. Readability: Dictionaries are not data types
  54. Readability: Abuse assertions
  55. Readability: Avoid comments
  56. Readability: Document your types
  57. Self-interview after leaving the NetBSD board
  58. Readability: Mind your typos and grammar
  59. Lutok 0.3 released
  60. Readability: No abbreviations
  61. Readability: Blank lines matter
  62. Readability: Blocks and variable scoping
  63. Readability: Series introduction

2012 29

  1. Setting up my old Mac Mini G4 as a development machine
  2. I don't really like C++
  3. Testing NetBSD's share/mk
  4. Introducing shtk
  5. Introducing sysupgrade for NetBSD
  6. Introducing sysbuild for NetBSD
  7. Getting rid of @public.talk.google.com GTalk contacts
  8. Kyua gets its own blog
  9. Exposing a configuration tree through Lua
  10. Type-safe, dynamic tree data type
  11. Rethinking Kyua's configuration system
  12. Kyua's configuration system showing its age
  13. Kyua gets nicer console messages
  14. Kyua generates its first public HTML report
  15. Projects migrated to Git
  16. Converting a Subversion repository to Git
  17. Kyua 0.3 released!
  18. Encrypted disk images in NetBSD
  19. NetBSD 6.0 BETA tagged
  20. Kyua: Weekly status report
  21. Switching projects to Git
  22. A brief look into Fedora's packaging infrastructure
  23. Kyua: Weekly status report
  24. Kyua: Weekly status report
  25. Lutok 0.1 available
  26. Kyua: Weekly status report
  27. Kyua: Weekly status report
  28. Kyua: Weekly status report
  29. Kyua: Weekly status report

2011 60

  1. Kyua: Weekly status report
  2. Kyua: Weekly status report
  3. Kyua: Weekly status report
  4. Kyua: Weekly status report
  5. Kyua: Weekly status report
  6. Kyua: Weekly status report
  7. Kyua: Weekly status report
  8. Kyua: Weekly status report
  9. Kyua: Weekly status report
  10. Kyua: Weekly status report
  11. Kyua: Weekly status report
  12. Kyua: Weekly status report
  13. Kyua: Weekly status report
  14. Kyua: Weekly status report
  15. VirtualBox and port forwarding (and Fusion)
  16. Kyua: Weekly status report (db designdoc edition!)
  17. Name your C++ auto-cleaners
  18. Introducing Lutok: A lightweight C++ API for Lua
  19. Kyua: Weekly status report
  20. Using va_copy to safely pass ap arguments around
  21. Diversions in Autoconf (actually, in M4sugar)
  22. Kyua: Weekly status report
  23. Introducing 'Dirt and the City'
  24. Splitting utils::lua from Kyua
  25. Kyua: Weekly status report
  26. Kyua 0.2 released
  27. Kyua: Weekly status report
  28. Kyua: Weekly status report
  29. Kyua: Weekly status report
  30. Kyua: Weekly status report
  31. Kyua: Weekly status report
  32. Kyua: Weekly status report
  33. Kyua: Weekly status report
  34. Kyua: Weekly status report
  35. Kyua: Weekly status report
  36. Kyua 0.1 released!
  37. Kyua: Weekly status report
  38. Validating format strings in custom C functions
  39. Kyua: Weekly status report
  40. Kyua: Weekly status report
  41. Kyua: Weekly status report
  42. Joining the Board of Directors of The NetBSD Foundation
  43. Kyua: Weekly status report
  44. Kyua: Weekly status report, BSDCan 2011 edition
  45. Kyua: Weekly status report
  46. Kyua: Weekly status report
  47. Use explicit conditionals
  48. Kyua: Weekly status report
  49. Kyua: Weekly status report
  50. Kyua: Weekly status report
  51. Kyua: Weekly status report
  52. Kyua: Weekly status report
  53. Kyua: Weekly status report
  54. A teeny tiny review of Twitterville
  55. Injecting C++ functions into Lua
  56. Error handling in Lua: the Kyua approach
  57. C++ interface to Lua for Kyua
  58. Error handling in Lua
  59. Understanding setjmp/longjmp
  60. Happy new year!

2010 26

  1. Using RAII to clean up temporary values from a stack
  2. Dependency injection: simple class constructors
  3. Dependency injection and testing: an example
  4. Kyua: Design of the configuration system
  5. Sticky bit trivia
  6. Getting the hang of Twitter searches
  7. Introducing Kyua
  8. Creating atf-based tests for NetBSD src
  9. ATF 0.10 released
  10. Testing NetBSD: Easy Does It
  11. ATF 0.9 released (late announcement)
  12. Ads gone
  13. Trac installation for ATF
  14. ATF 0.8 imported into NetBSD
  15. Announcing etcutils 0.1
  16. Announcing ATF 0.8
  17. Forget about test(1)'s == operator
  18. Always define an else clause for portability #ifdefs
  19. Where does Gnome use file monitoring?
  20. File system monitoring, Gnome and NetBSD
  21. New gio-fam package
  22. NetBSD in Google Summer of Code 2010
  23. New version of the monotone-server package in pkgsrc
  24. Introducing the ATF nofork branch
  25. set -e and set -x
  26. Installing NetBSD/macppc on a Mac Mini G4

2009 31

  1. Processing Makefile.am with M4
  2. Extending sudo credentials
  3. Best config setting ever
  4. Books by Joel Spolsky
  5. 1000 revisions for ATF
  6. Rearchitecting ATF
  7. The mess of ATF's code
  8. Technicians and schedules
  9. Child-process management in C for ATF
  10. How to find an apartment in Dublin
  11. Trying AdSense
  12. Paella in NYC
  13. Mailing lists for commit notifications
  14. DEBUG.EXE dropped in Windows 7
  15. Using C++ templates to optimize code
  16. The NetBSD Blog
  17. Numeric limits in C++
  18. NetBSD-SoC needs your application!
  19. Returning to Google
  20. Comments for old posts now moderated
  21. What are unnamed namespaces for in C++?
  22. Making ATF 'compiler-aware'
  23. Debug messages without using the C++ preprocessor
  24. userconf support for the boot loader
  25. ATF 0.6 released
  26. pwd_mkdb and the new time_t
  27. Windows 3.1 startup speed
  28. Silencing the output of Python's subprocess.Popen
  29. Hardware (and other stuff) on sale
  30. Kernel modules in NetBSD/shark (or other ARMs)
  31. Happy new 2009!

2008 61

  1. Live@NYC: Not any more
  2. Vacations@SF: 3rd day
  3. Vacations@SF: 2nd day
  4. Vacations@SF: 1st day
  5. Live@NYC: Coming to an end
  6. SoC 2008 Mentor Summit
  7. Live@NYC: ... or not; now in MTV!
  8. C++ teaser on templates
  9. Boost.Process and SIGCHLD
  10. Live@NYC: Prospect Park
  11. Live@NYC: 2 months and a half
  12. Live@NYC: Almost 2 months
  13. Live@NYC: Month 1
  14. Live@NYC: Days 21, 22 and 23
  15. Live@NYC: Day 17, 18 and 19
  16. Live@NYC: Day 20
  17. Live@NYC: Day 16
  18. Live@NYC: Days 13, 14 and 15
  19. ATF talk at NYCBSDCon 2008
  20. Live@NYC: Day 12
  21. Live@NYC: Day 11
  22. Live@NYC: Photos
  23. Live@NYC: Day 10
  24. Live@NYC: Day 9
  25. Live@NYC: Day 8
  26. Live@NYC: Days 6 and 7
  27. Live@NYC: Day 5
  28. Live@NYC: Day 4
  29. Live@NYC: Day 3
  30. Live@NYC: Days 1 and 2
  31. Recent news
  32. Reinstalled Mac OS X in multiple partitions, again
  33. Blacklisting a device in HAL
  34. Desktop effects with an nVidia card and Fedora 9
  35. lib64 problems
  36. Twitter and other news
  37. Lost 4x05
  38. Back to Stone Age
  39. NetBSD talk at Isla Cristina
  40. New Apple keyboard
  41. Problems booting Debian on the PS3
  42. Google Summer of Code 2008 and NetBSD
  43. Software bloat, 2
  44. ATF's error handling in C
  45. Rewriting parts of ATF in C
  46. C++: Little teaser about std::set
  47. BenQ RMA adventures, part 2
  48. Home-made build farm
  49. ATF 0.4 released
  50. unlink(2) can actually remove directories
  51. Linux is just an implementation detail
  52. Interview on NetBSD 4
  53. BenQ RMA adventures, part 1
  54. A request to virtualization software developers
  55. Testing the process-tree killing algorithm
  56. How to kill a tree of processes
  57. Implementing timeouts for test cases
  58. Got a BenQ FP241W Z flat panel
  59. 24' widescreen comparison
  60. Interferences in CVS tagging
  61. Welcome, 2008

2007 86

  1. Choosing a 24' widescreen monitor
  2. Ministry of silly walks
  3. Past days' work
  4. Thanks, SystemTap!
  5. Dying MacBook Pro battery
  6. Hello world in Linux/ppc64
  7. Mad at the Cell SDK
  8. Fixing id's command line parsing
  9. ATF imported into NetBSD
  10. ATF 0.3 released
  11. Games: Resistance: Fall of Man
  12. Got it! (The PS3)
  13. Considering to buy a PS3
  14. ATF meets XML
  15. ATF 0.2 released
  16. Getting started with Cocoa
  17. TV series: Jericho
  18. Me @ deviantART
  19. Serial console cable for an old Mac
  20. New camera (and current desktop)
  21. Weird laptop keyboard
  22. Random MacBook Pro notes
  23. SoC: ATF 0.1 released
  24. SoC: Some statistics
  25. SoC: Second preview of NetBSD with ATF
  26. SoC: Status report
  27. SoC: First preview of NetBSD with ATF
  28. SoC: Status report
  29. Hibernating a Mac
  30. Processor speed and desktop usage
  31. Parallels Desktop and VMware Fusion
  32. Death star!
  33. SoC: ATF self-testing
  34. Daggy fixes (in Monotone)
  35. SoC: Web site for ATF
  36. Recovering two old Macs
  37. SoC: Converting NetBSD 'regress' tests
  38. Book: Producing Open Source Software
  39. SoC: Code is public now
  40. Degree completed
  41. SoC: Short-term planning
  42. New Processor preferences panel in Mac OS X
  43. SoC: The atf-run tool
  44. SoC: Prototypes for basename and dirname
  45. SoC: Start of the atf tools
  46. SoC: A quote
  47. SoC: Project name
  48. SoC: Getting started
  49. Ohloh, an open source directory
  50. tmpfs added to FreeBSD
  51. Six months with the MacBook Pro
  52. PFC report almost ready
  53. NetBSD's website redesign
  54. Compiler-level parallelization and languages
  55. Flattening an array of arrays
  56. Is assembly code faster than C?
  57. Mac tutorials at ScreenCasts Online
  58. Keeping pkgsrc packages up to date
  59. Piled Higher and Deeper
  60. Monotone's help rewrite merged
  61. Talk about Git
  62. pkgsrcCon 2007 report
  63. Monotone's help rewrite
  64. SoC: Selected again!
  65. Problems with locales?
  66. Mounting volumes on Mac OS X's startup
  67. How to disable journaling on a HFS+ volume
  68. Games: Doom 3: Resurrection of evil
  69. Fixing EXIF date information
  70. Cross-platform development with Parallels
  71. Cursa Bombers 2007
  72. Games: Doom 3
  73. NTFS read/write support for Mac OS X
  74. Building an updated kernel for the PS3
  75. X11 mode-line generator
  76. Building the libspe2 on the PS3
  77. NetBSD and SoC 2007
  78. Article on Multiboot and NetBSD
  79. Making NetBSD Multiboot-Compatible
  80. ICB support added to Colloquy
  81. PFC subject chosen
  82. Mac OS X aliases and symbolic links
  83. Hide a volume in Mac OS X
  84. Install Mac OS X over multiple volumes
  85. MacBook Pro review
  86. CVS and fragmentation

2006 103

  1. Doesn't 'ls f*' do what you expect?
  2. A subject for my undergraduate thesis
  3. Software bloat
  4. Hard disks and S.M.A.R.T.
  5. tmpfs marked non-experimental
  6. Making vnd(4) work with tmpfs
  7. A couple of Ext2/Ext3 project proposals
  8. Mac OS X vs. Ubuntu: Summary
  9. Improved Multiboot support in NetBSD/i386
  10. Mac OS X vs. Ubuntu: Development platform
  11. Mac OS X vs. Ubuntu: Commercial software
  12. Mac OS X vs. Ubuntu: Freedom
  13. Mac OS X vs. Ubuntu: Automatic updates
  14. Mac OS X vs. Ubuntu: Software installation
  15. Mac OS X vs. Ubuntu: The environment
  16. Mac OS X vs. Ubuntu: Hardware support
  17. Mac OS X vs. Ubuntu: Introduction
  18. A letter to NetBSD
  19. Trying out DD-WRT
  20. GNOME on NetBSD needs YOU!
  21. More on LOCAL_CREDS
  22. Recent GNOME fixes
  23. LOCAL_CREDS socket credentials
  24. A split function in Haskell
  25. What have I learned during SoC?
  26. Boost.Process 0.1 published
  27. Boost.Process tarballs posted
  28. SoC: Boost.Process published
  29. Blog migrated to new Blogger beta
  30. SoC: Status report 3
  31. IMAP gateway to GMail
  32. GNOME 2.14.3 hits pkgsrc
  33. X11 and the Win keys
  34. SoC: Playing with Doxygen
  35. SoC: Status report 2
  36. SoC: Status report
  37. Fixing suspension problems
  38. Disabling bitmapped fonts
  39. Windows: Remapping keyboard keys
  40. Windows: Where is deltree?
  41. Happy second birthday!
  42. Windows Vista Beta 2 review
  43. Setting up BoostBook under Windows
  44. Win32: Mappings for Unicode support
  45. Burning ISO images from Windows
  46. SoC: First commit
  47. Little application with Qt and OpenGL
  48. Become productive with Quicksilver
  49. Games: Half-Life 2: Episode One
  50. Functional programming and Haskell
  51. SoC: List of accepted projects
  52. SoC: Accepted, again!
  53. Analyzing security with Nessus
  54. Parallelizing command execution with vxargs
  55. What is keeping me busy
  56. Article: Smart Pointers in C++
  57. Smart Pointers in C++
  58. iBook and the clamshell mode
  59. iParty 8 slides available
  60. NetBSD's KNF: Prefixes for struct members
  61. NetBSD talk at iParty 8
  62. tmpfs on FreeBSD
  63. NetBSD/i386 development under OS X
  64. Apple's customer service
  65. Mac OS X: Boot Camp
  66. GNOME 2.14.0 hits pkgsrc
  67. Fixing GNOME's trash under NetBSD
  68. GNOME and the dbus daemon
  69. GNOME 2.14.0 released
  70. Bikeshed
  71. Linux problems: binary redistribution
  72. Fixing xv problems
  73. VigiPac: dead and reborn
  74. Managing passwords and keys
  75. C++ code in the kernel
  76. FAT versions
  77. Samba performance under Mac OS X
  78. Calling the BIOS from within the kernel
  79. Toying with KDE
  80. SoC: Introductory article to tmpfs
  81. The RAII model
  82. Rewriting from scratch
  83. Automatic mouse button repeating
  84. NetBSD is now Multiboot-compliant
  85. Got the trackball
  86. Multiboot support for review
  87. File systems documentation uploaded
  88. File systems documentation for review
  89. Buying a trackball: the odyssey
  90. Desktop screenshot
  91. NetBSD slides for PartyZIP@ 2005 available
  92. GNOME 2.12.2 in pkgsrc
  93. How not to close a bug
  94. GStreamer 0.10 in pkgsrc
  95. Some pictures of my rig
  96. Google Talk talks to other servers
  97. Routing protocols
  98. Taking backups of your data
  99. Apple unleashes Intel-based systems
  100. Applications vs. windows
  101. Updating the pkgsrc GNOME packages
  102. Got a BenQ FP202W flat panel
  103. File previews in Nautilus

2005 129

  1. The Multiboot specification and NetBSD
  2. Merry Christmas!
  3. NetBSD 3.0 released
  4. Monotone: Got T-Shirt
  5. SoC: Got T-Shirt
  6. Comments after a month with the iBook
  7. Vim: Macros
  8. Java: Visibility
  9. Case-sensitive vs. case-preserving
  10. RAID: Monograph
  11. Java: Dynamic class loading, part 2
  12. NetBSD: File system directories, part 2
  13. NetBSD: File system directories, part 1
  14. How to prolong lithium-based batteries
  15. Got new laptop: iBook 12'
  16. Java: The finalize method
  17. Delta modulation
  18. Java: Dynamic class loading
  19. USB mouse, pbbuttons and lack of udev
  20. GNU Zebra
  21. SoC: Map and results
  22. Remembering Freedows OS
  23. SoC: Payment received
  24. MINIX 3 published
  25. Sending mail from the command line with Mutt
  26. Suggestion box
  27. How to contact Julio M. Merino Vidal
  28. About The Julipedia
  29. Blog migrated to Blogger; welcome!
  30. GNOME 2.12.1 hits pkgsrc
  31. Blogger
  32. Articles: Lightweight web serving with thttpd
  33. Lightweight Web Serving With thttpd
  34. C++: Constructors and global data
  35. Monotone: Using mini-branches to apply patches
  36. Games: Half-Life 2
  37. C++: Inlined code and the ABI
  38. C++: Templates and the ABI
  39. New utility: verifypc
  40. Lose vs. loose
  41. Cleaning up a Debian box
  42. NFS exports lists rototill
  43. Quality of digital signals
  44. Linker's link sets
  45. Interface to change NFS exports
  46. NFS file handles
  47. tmpfs: Project merged into NetBSD
  48. FFS, LFS and MFS
  49. SoC: The end
  50. A prompt that does not get in the way
  51. SoC: Project announced
  52. Local sockets' permissions
  53. pkgsrc's strengths
  54. SoC: Status report 6
  55. Manual ChangeLogs; a thing of the past?
  56. Booting NetBSD with Yaboot
  57. SoC: Status report 5
  58. Raw disk devices vs. regular ones
  59. SoC: Status report 4
  60. Using 'goto's in C
  61. Dedicated machine for kernel testing
  62. Hollywood OS
  63. SoC: Status report 3
  64. SoC: Thoughts about tmpfs data representation
  65. SoC: Status report 2
  66. SoC: Status report 1
  67. Monotone's CVS gateway, part 2
  68. Going on vacation
  69. NetBSD conference at Partyzip@
  70. Monotone's CVS gateway
  71. SoC: Project page ready
  72. SoC: The NetBSD-SoC project
  73. SoC: Accepted!
  74. EasyTAG
  75. Msdnaa
  76. SoC: My project proposal
  77. MFC: Developing for Windows
  78. Fragmentation in Unix file systems
  79. pkgsrc: Documentation about pkginstall
  80. pkgsrc: mplayer switches to the options framework
  81. Unprivileged pkgsrc builds
  82. Distributed streaming
  83. Styles in word-processors
  84. Shutting up /etc/security
  85. pkg-config: Sanity-checking package dependencies
  86. Recent pkgsrc changes
  87. Articles: Making packager-friendly software (part 2)
  88. Making Packager-Friendly Software (part 2)
  89. Modifying the environment from scripts
  90. Increasing RAM to 1GB
  91. pkgsrc: Linux distributions
  92. Articles: Making packager-friendlier software (part 1)
  93. Making Packager-Friendly Software (part 1)
  94. pkgsrc: Package-related terminology
  95. The TERM variable
  96. pkg-config: Specifying dependencies
  97. Books: The Da Vinci Code
  98. XTerm: Anti-aliasing
  99. GNOME 2.10.0 hits pkgsrc
  100. XTerm: Setting up scrolling
  101. pkg-config: Mixed state in some libraries
  102. TV series: Dark Angel
  103. pkg-config: A quick introduction
  104. GNOME 2.10.0 released
  105. How to get the window size?
  106. pkgsrc: Yesterday's changes
  107. Tabulators vs. spaces
  108. Boost: Shared pointers
  109. Boost: First impressions
  110. Boost: To use or not to use it
  111. Passing information to configure scripts
  112. How to get the user's home directory
  113. C++: Verifying program sanity
  114. C++: Containers of pointers
  115. Guessing Tcl/Tk configuration
  116. C++: Exceptions and destroyers
  117. Alternatives added to pkgsrc
  118. GNOME Panel easter eggs
  119. vr(4) problems
  120. Alternatives become wrappers
  121. Qemu
  122. Alternatives system in pkgsrc
  123. Automatic verification of PLISTs
  124. Monotone dedicated server
  125. Kernel debugging tutorial
  126. NetBSD 2.0 beats FreeBSD 5.3 in server performance
  127. Tracking down a deadlock
  128. Epiphany's scrolling
  129. VigiPac is now public

2004 84

  1. Got a new DVD recorder
  2. Giving blood
  3. Setting up a bridge
  4. Windows and CHS
  5. OpenPAM hits NetBSD
  6. Latest releases and news
  7. Variable names in Makefiles
  8. Cederrón
  9. Buildtool status
  10. Impressions on Monotone
  11. QT Parted experiences
  12. Differences between a hub and a switch
  13. Linux's UFS support
  14. Dynamic open of libpthread considered harmful
  15. Good user interfaces
  16. Do you run?
  17. GNOME 2.8.1 released
  18. Portability: unsetenv('FOO') vs. putenv('FOO')
  19. The libexec and libdata directories
  20. Fixing Evolution Data Server crashes
  21. An example of kqueue
  22. FAM and kqueue
  23. Trying Bogofilter...
  24. Pipes over SSH
  25. New versioning scheme for NetBSD
  26. The AM_GCONF_SOURCE_2 macro
  27. NetBSD/mac68k soft-float support
  28. Why function names appear in column 1?
  29. Preformatted manual pages
  30. Bugs and questions
  31. VCS Made Easy: sources imported
  32. GNOME 2.8.0 hits pkgsrc
  33. Writing portable code
  34. GNOME 2.8 published
  35. VCS Made Easy - Project registered
  36. One time passwords
  37. The old new thing
  38. Why pkgsrc uses static file lists
  39. Added RSS feed
  40. autogen.sh scripts
  41. About the Finder...
  42. Migrating to new versions of the GNU Build System
  43. Strange USB mouse
  44. To rely or not to rely on the PATH
  45. Back at home
  46. The Windows UI
  47. Changing NetBSD's console colors
  48. Framebuffer on NetBSD
  49. Tips to create good patches
  50. The FluxBox window manager
  51. Creating patches using CVS
  52. GNOME 2.7.4 released
  53. Understanding patches
  54. Compiled vs. interpreted languages
  55. Scheduling timetables
  56. Teleworking considered bad
  57. Build your own PRAM battery
  58. Playing with NetBSD keymaps
  59. Deprexification
  60. Got the Mac's ethernet card working
  61. My solution for the 'shared directories' problem
  62. The 'shared directories' problem in pkgviews
  63. Why learning English is a good idea
  64. An introduction to pkgviews
  65. Need new music? Get Nightwish!
  66. The seahorse project
  67. Ease the way to plug your earphones
  68. Silencing the computer
  69. Test Driven Development
  70. The Kaffe packages in pkgsrc
  71. Buildtool 0.16 released
  72. Posting messages with Drivel
  73. Make your prompt more visible
  74. Got BSD Hacks
  75. Improving your coding skills
  76. Dealing with bug reports
  77. GNOME 2.6.2 released
  78. Watching remote system activity
  79. Making an Athlon system consume less power
  80. The art of bug reporting
  81. Connecting two networks
  82. Helping pkgsrc (through pkgsrc-wip)
  83. Getting involved in a free software project
  84. Welcome to my new journal!