Monthly Archives: August 2012

Understanding Memory: Part 1

This article is meant for programmers who have some familiarity with writing and compiling simple code in C/C++. It assumes the reader knows basic data types like int and double and how to define and use variables and functions. This article will then expose the reader to a basic memory model, explain how the use of variables interacts with this memory, and introduce addresses and pointers. On a modern platform, memory is presented to a program as byte-addressable blocks. Each … Continue reading

Posted in Software | Tagged , | Leave a comment

Shifting My Own Bits: Part 1

Refactoring plays an important role in the software development lifecycle — an opportunity to incorporate lessons learned, improve code quality, and lay down a solid framework going forward. The entropy decay of code over time that necessitates refactoring plays a role in other places as well, such as our minds. We can apply the principles of science and engineering to ourselves, allowing us to control who we are with rigorous analysis and study. This rather long essay won’t be appealing … Continue reading

Posted in Self | 1 Comment