Intro to Refactoring: Making Code Easy to Understand in 4 Steps

Refactoring is the process of organizing code to make it more readable and maintainable. There are a few steps you can take to refactor your code, if you don’t know where to start, or if you feel overwhelmed here are some ways to start. The goal is code that is easy to read and understand. Read more on Intro to Refactoring: Making Code Easy to Understand in 4 Steps…

Understanding Uniprocessor OS Scheduling Policies

How does an operating system determine how much processing time a single process receives? There are a number of fundamental “scheduling policies” that an architect of an operating system may consider implementing: Read more on Understanding Uniprocessor OS Scheduling Policies…

Keeping it Simple… Again and Again

The KISS principle is has been highly touted in software design and development for years and stressed in the realm of Agile software development. Most developers desire a simplistic code base and put some thought into it while designing and implementing code… to an extent.

Under the pressures of real development cycles and needing to deliver under frequently too-short timelines, simplicity sometimes is placed on the back burner and becomes technical debt that frequently comes back to bite us. And of course at the least desired times. Read more on Keeping it Simple… Again and Again…

Stow Your Dotfiles – GNU Stow for Managing Symlinks

If you’ve done much work with command line tools, you’ve undoubtedly wrestled with dotfiles, those pesky configuration files in your home directory that are hidden from view by having a dot at the beginning of their name. Bash uses a .bashrc configuration file. Vim uses a .vimrc file and a .vim directory for additional scripts. Tmux uses a .tmux.conf file. Git uses a global .gitconfig. Untold other tools follow the pattern.

Read more on Stow Your Dotfiles – GNU Stow for Managing Symlinks…

Understanding Macros and Code as Data

The other day, while having a conversation in the office about Clojure macros, I was reminded that not everyone fully understands the phrase “code as data” or its useful repercussions. This isn’t surprising, as there are still very few mainstream languages that feature this, and most of the ones that do are lisp dialects. I think that’s unfortunate, as it’s a conceptually simple tool that you can get a lot of leverage out of. Read more on Understanding Macros and Code as Data…

Empowering Our Customers to Deploy Their Own Apps

This was me at a recent sprint review meeting with the Local Orbit team:

What really got me excited during this sprint was our success in implementing continuous delivery. For each feature we delivered, Anna was able to test and approve it before promoting the code, pushing to staging, and deploying to production. We went through this cycle several times this week, and Anna is now completely in control of what features roll into production, and when. Read more on Empowering Our Customers to Deploy Their Own Apps…

Read more on Empowering Our Customers to Deploy Their Own Apps…