Mouse: A Language for Microcomputers

The only class that I’ve ever truly worried about passing was my compiler design class with Mr. Richard Simpson at Midwestern State University.

While the material was interesting at times, it was almost always several levels over my head and I had a hard time keeping up.

Even though I constantly worried about passing that class, I did have quite a bit of fun with at least one project in that class — Converting the C based interpreter for Mouse into any language of our choice. You can probably guess that I decided to go with PHP :)

I’m not sure why I was fond of that language. It was esoteric, hard as hell to understand, and there was almost no chance that I would ever use it for any practical situation.

After all, looking at this sample program below, do you have any idea what’s going on?

"Enter a positive number that you would like fibonacci numbers up to."

A0=
B1=
C1=

D?="You entered: "D.!"!"
"Fibonacci Sequence: "

(D.C.-^ A.!" "AB.=BC.= CA.B.+=)

A.!" "B.!

"!"

$$

But something about it was enjoyable. Which is why I geeked out so hard the other day when I came across an old copy of the Mouse: A Language for Microcomputers.

Now that I’ve got the book, I’m considering creating a JavaScript based interpreter for Mouse.

Until then, here’s a link to the PHP based interpreter of Mouse that I came up with about a year ago.

https://github.com/ebinnion/Mouse-Playground/blob/master/translations/mouse79.php

At this point, the interpreter doesn’t include macros, but should run all of the sample programs in my Mouse repository.

How to Squash Commits with Git

Part of my Git workflow at Automattic includes getting a pull request going as soon as possible.

I find this workflow useful as I am learning the code base for the latest version of WordPress.com, which is completely different from any codebase I have touched before. Because of this, I try to commit often so that I can get feedback and collaborate with my coworkers.

And while committing often is great to get feedback in a pull request, I tend to like to squash all of the commits into one before I merge my pull request into master.

How I Squash Commits with Git

The first few times I squashed commits with Git were very nerve wracking as I was worried about nuking my changeset. But, as I have worked more with Git in a team setting, I have become very comfortable with these following steps:

  1. Get merge base git merge-base my-branch-name master
  2. Rebase git rebase --interactive {hash from merge base}
  3. Change pick to squash for all but first commit

Although I have grown comfortable with the above commands, I find that I sometimes still refer to this awesome article from edX about rebasing pull requests.

If you find you need a bit more explanation for how to squash commits with Git, I’d recommend giving that article a read.

Easily Crowdsource Photos of your Wedding

When my mom remarried a couple of years ago, she did something that I thought was really cool.

At the wedding ceremony, visitors were given disposable cameras so that they could take an active role in the wedding by helping to take pictures.

I thought this was a great idea for a couple of reasons:

  1. It was a cheap
  2. It would provide a greater amount of photos.

But, as I recall, not many people ended up using the cameras.

What Went Wrong?

I think the main issue is that disposable cameras are a big pain in the ass. Disposable cameras have to be manually wound for each shot, the button has to be pushed to charge the flash, and the packaging is a pain to open.

While the disposable cameras were a great idea, in hindsight, it makes sense that it didn’t turn out as well as we had hoped.

The Solution

Compare the process of taking pictures with disposable cameras to taking a picture with my iPhone where once I am in the camera app I can just keep tapping to take more pictures.

What if there were was a way to get pictures that your friends and family took without having to track them all down?

Well, there is such a thing. IFTT has a tool/recipe that will allow you to automagically save any images that your friends take at your wedding into a Dropbox folder!

IFTT: Instagram to Dropbox

Check the recipe out here: https://ifttt.com/recipes/188138-save-your-wedding-s-instagram-hashtag-photos-to-dropbox

Photo Credit: TarviRa | cc

Disclaimer

I believe that crowdsourcing images for a wedding is a great idea, and can result in great candid shots.

That being said, I wouldn’t consider having a wedding without a professional photographer — And I would recommend that you hire a photographer as well.