Hello

My name is Haris, and I’m the owner of this website.

Here, I explain my programming in-depth and share essays on my various interests, particularly books, music, and education. I don’t post often and instead focus on depth of content. The best way to stay up-to-date is through the site’s RSS.

To reach me:

  • email at hmuhammad+blog {at} outlook {dot} com
  • see my resume here
  • browse my coding projects at github
  • visit my profile at linkedin

Although it may not be much, thank you for taking the time to read and visit.

Programming

As of now, I coded professionally for over 2 years. Like many others, I began humbly, starting way back in middle school with basic HTML and CSS. My first real class was AP Computer Science back in high school where I got introduced to Java. However, I did not choose to study Computer Science in college. Instead, I choose to study for an Associates in Science and learned programming largely by myself. I discuss in-depth about learning to code here.

Currently, my expertise lies in JavaScript and its full-stack tooling, namely Node, React/Angular, SQL/NoSQL, and, of course, Git. I am also proficient with general software concepts such as functional and object-oriented programming, test-driven development, continuous integration, and Agile. I am also familiar with Python and I am actively learning other languages like Java and C (though, Ruby looks fun and Lisp seems out of this world).

Most of my professional experience comes from two startups: Narnia, where I served as Scrum Master, and Dashbold, LLC, where I was a co-founder and Principal Engineer.

Narnia

Narnia is a project aimed at creating a rich social media platform designed for fashion. It has all of the usual social functions such as likes, tags, and posts, but it also has some unique features like being able to design an outfit and share it, or save a piece of clothing to a profile. It utilized React Native and was designed for both iOS and Android.

Narnia was made up of a team of 4 with I acting as Scrum master. A proof-of-concept was produced within 6 months and its code can be viewed here, though please note the licensing.

This was my first foray into React Native and iOS tooling. My knack in seeing how all of the desperate technologies interlocked was paramount in development (and was honestly the reason why I was Scrum master).

Dashbold, LLC

Dashbold is a business services company housed in Ann Arbor, Michigan. Its vision is to unite those useful but disjointed applications businesses use on a daily basis (Gmail, Slack, etc.). Moreover, it aimed to unite even private tools and databases that businesses may have running already with newer services. This vision required more than just a smorgasbord of API calls; it required a deep integration between Dashbold’s framework and all its connecting services.

Being an early co-founder, I acted as the Principal Engineer at Dashbold (even though the role was way out of my league). Over the months, I worked with the CEO in fleshing out the main vision with tangible technical plans. I am quite comfortable with both narrow detail work and high-level abstractions, but it is still a challenge to tie those desperate concepts together. You do not want to lose yourself in the technical weeds, but you do not want to float away on clouds of ideals either. To add all of this, these technicalities have to translate from a business plan.

Still, I believe I managed to succeed in creating a workable vision. Developmeng began swiftly and Dashbold’s mission caught on. Eventually, the company was successfully acquired by a small venture fund. I stepped away from my role as Principal Engineer, but I gained a huge leap in my personal learning.

It is one thing to write code and quite another thing to architect software. Much like our thoughts, every line of code follows a train of vision; and like your thoughts, those lines could be impulsive and disorderly, or deliberate and cohesive.

Writing

I love writing. I am someone with a wide-range of interests; yet, writing is one those hobbies that seems infinitely useful and persistently enjoyable. Nothing clears my head better than putting thoughts to form and running with ideas all the way to their conclusions.

I am particularly fond of nuance. Looking from a wide-variety of angles, expressing an old concept in a new light, combining distinct things into a newer whole; these are all ideas that I enjoy exploring, and a lot of my writing deals with such.

For example, I wrote in-depth on how to learn to program, the subtleties involved in the field, and how to approach it. I also wrote about why teaching helps learning, why explaining things help, and the elegance of the Feynman Technique.

I don’t think I’ll ever exhaust myself of writing ideas, and that in itself is incredible.

Music

Like a lot of others, I love music; however, I enjoy playing more than listening. Instead of zoning out, I often find myself noticing all of the neat details, flourishes, and rhythms in a piece. That gets me excited to learn and play it.

Music is a very personal activity for me; yet, I don’t feel that there’s such a thing as a particular taste. To me, genres are just convenient starting points, much like how books are labeled as “Fiction” or “Non-fiction.” None of these labels tell much, but they do serve as a good leaping off point.

For me, my musical interests mainly revolve around the instrumentals: which instruments are present, how they are used, what voicing and harmonies do they provide, and so forth. Rather than focus on the specifics of a genre, I enjoy listening how an acoustic guitar brings out its chords, how a violin sings a melody, how a rock guitars rips through a riff, and so forth.

My favorite instrument is the piano by a wide margin. It can handle harmonies and melodies equally well, fly through fast passages, bring out interesting counterpoints and tones, all with emotional phrasing. It never fails to surprise me how the piano can be played in so many diverse ways. For instance, a really small example of this is:

  • you can play acoustically and get a beautiful piece like Chopin’s Berceuse, Op. 57,
  • or, attach a synth and get a real groove like Haywyre’s remix of Smooth Criminal,
  • or, take one note and make it instantly memorable like in Kayne’s Runaway.