Software engineering is, like music, essentially a creative discipline.
Programming involves visualizing a concept and bringing it to fruition.
The possibility of creating something from virtually nothing is thrilling.
Solutions have many possibilities, and constraints inform design decisions.
Satisfying requirements while honoring limitations requires great ingenuity.
The best systems are functional and elegant, not aesthetically inept.
Computing has advanced so much that it is not enough simply to solve a problem; design is now a priority.
Software design and development involves an intersection of sciences and the liberal arts that was perhaps best articulated by Steve Jobs.
Beautiful usability respects users.
Software is fairly new, and it is rapidly maturing with new innovations.
While much has been discovered, there are many ongoing questions.
As more answers are found, further questions are uncovered.
Sustained discovery depends on deliberate pursuit of knowledge.
I maintain a list of questions and topics for desired learning and exploration.
All software evolves over time.
Most of the work on software involves maintaining existing tools or systems.
Sustainable practices allow for scalable innovation, reducing waste.
Progress is never automatic; it requires forethought and execution.
There is a shortage of people working on genuinely challenging problems.
Sadly, trivial projects often overshadow transformational undertakings.
I believe that software can be beautiful and remarkably empowering.
Building software is almost like creating something from nothing, using invisible machinery.
I have much to learn, and am indebted to the works of some of the best computational minds.
I work for Waterfield Technologies and sometimes share code on GitHub.
My side projects include a social network and a music practice system.