It’s been a lot a fun working at IBM and I’ve had the opportunity to work with some truly amazing people and software products over the years but there comes a time when you have to look beyond the ‘safe’ zone and to take that leap of faith. It’s been quite a while since I’ve taken this sort of leap but I have to announce that today, I have left IBM and will be starting a new adventure very soon.
I hope to continue to post to this blog but obviously the topics for the most part will change although they will continue to be mostly about mainframe topics. So I hope that you, my few readers, continue to find something of interest here that will lure you back from time to time.
The missing components turned up so I spent a day building the MIDI interface board. Figuring out where to place the various connectors and components on the prototyping board so that the connectors were not blocked by the sides of the box it would all live in was far harder than writing the code or designing the circuit. Once I had it all hooked up I tried it and…. nothing! Well, the switches worked as did the LEDs but I was not getting a MIDI signal out of the box, or if I was the other end was not detecting it. When I looked at the circuit for the commercial MIDI interface board I had it was a lot simpler than my over engineered effort so after some hesitation I ripped out the output circuit from my board and replaced it with a much simpler version based on the commercial units circuit (basically one wire and a couple of resistors, no transistors). Swapped over the output cables to account for the circuit changes and tried it…. nothing again!
Now had been very careful about hooking up the output wires to the MIDI connector the right way around. Seems I was not careful enough! On a whim I swapped them and of course it worked. It was probably OK the first time, just the had the wires the wrong way round but at least it works now.
This is what the inside of the project looks like:
As you can see pretty cramped. The board you can see is the MIDI interface board I made. The Arduino is underneath that screwed to a piece of board that is then glues to the case to hold it in place and insulate it from the metal box.
I always think that it is a shame to hide all the electronics as so much effort goes into creating it. In some ways it’s like programming, you can put a lot of effort into making some code as elegant as possible but in the end, all people care about is ‘does it work’.
So with that in mind, this is what the completed project looks like:
The power switch is on the other side of the box but that’s it. The left button controls the bypass on the effects unit and the right button switches between two patches. The LEDs just indicate the current setting that is selected for each switch. All pretty simple.
Time to go play!
In my (mostly) mainframe life, when it comes to user interfaces I am used to pretty minimal interfaces. In the old days it was all 3270 and at 24 lines by 80 characters for a model 2 real estate was at a premium so the emphasis was on simplicity.
Even today when using graphical or web based interfaces I like to keep the data I am looking at to a minimum in order to enable me to concentrate on the task in hand.
Interestingly I was watching my son play World of Warcraft last night and this is typical of the screens he has up while playing:
You can see there’s a LOT going on on this screen. When I asked him about it he said that he’s pretty much scanning it all the time as well as actually fighting (there seem to be lot of fighting in this game) one or more opponents.
I thought it was interesting how he (being a LOT younger than I am) consumed all that information while I was aghast at the information overload.
From my internal work blog some time ago:-
Then we had 3480 cartridges (do we still? I have a couple somewhere).
Now we’ve got? Well it does not matter really. The point is, technology moved on.
VHS tape player anyone?
Super 8 film?
But there is still plenty of data (and music) around on these old media.
Anyone got a wax cylinder player anymore?
A post on an internal blog at work recently referred to this post by Seth Godin where success and failure are like two sides of the same coin. A quick Google search revealed many articles along the same vein. However after some thought, I have to disagree with this analogy.
The general consensus is that you can succeed or you can fail, that they are in some way opposites of each other. At first glance that would seem to be true but I choose to look at it this way…
Failure is where we find out how NOT to do something. Failure in itself is a learning experience, it teaches us something about what we are trying to achieve and about ourselves. Failure is simply a step on the road towards success.
The difference between success and failure is the point at which you give up and accept the current outcome. If you give up at any point before achieving your desired outcome (the successful one) then you have failed. Therefore the difference between success and failure is not that they are polar opposites but that you did not see that task through to the end and accepted an undesirable outcome over the preferred one.
You cannot have success without failure but you can have failure without success.
As for the coin analogy, my solution is simple. Change the shape of the coin. Make it a sphere (we ‘could’ have spherical coins, we just don’t). Only one side so only one outcome. Which it is is up to you. Where will you choose to end the journey?
360 degree photographs have been around for quite a while. Here’s a hi res image of St Pauls Cathedral.
The problem is of course that you can only see everything from the position of the camera. I got to thinking how neat it would be if you could actually move around the image and see things from different points of view. This would of course require that you take millions of 360 degree pictures from pretty much every physical point within the area you are photographing. Not entirely practical.
But then I got to thinking about the sort of technology being used by numerous people in conjunction with the Microsoft Kinect to generate 3D images. Some cleaver mapping software lets the the viewer see things from points other than the Kinnct’s physical location.
So here’s my thought. Merge 360 degree photography with the 3d software being used by Kinect hackers to generate a virtual 3d environment. You would only need a limited number of actual 360 degree photographs in order to dynamically recreate a 3d space by dynamically generating the view for points between the actual photographs.