Portfolio

[escher dream] This section focuses on my portfolio. Here I will highlight some of the different projects I have been involved in and give some details. I have been involved in divergent areas be it experiments to cool F-15 air foils to coming up with different gaming strategies. There is no overlying theme here because I was a jack-of-all-trades. If a project interested me, or gave me money, I did it.

It is important to note that I am just highlighting a few of the projects I have been involved in. Be it McGill or CRIM, there were many other little things I did that are not presented here. What I want to do is show the scope of the things I could do and how they came to be.

This was originally part of my professional section of this website but because of how it is growing, I felt it should be more a primary choice in navigation. I suppose, in some ways, the professional branch might just become part of this branch.

This part of my website is under major construction. Over quite a few backups, I have different reports and graphics that I will incorporate into this section of my website. You may find some subsections empty. They will be filled over the next month or so. Come back every so often and hopefully you will see a much fuller portfolio of things I was involved in.

Overview

From the beginning, I had two areas of interest:

  • Data aquisition and analysis
  • Visualization
Until I left the computer field in 2000, these were the constants in my life, in different facets.

The first was a natural fit for me because of the environment I was in. When my father helped set up the DATAC lab in Mechanical Engineering in the late 60's, the GE/PAC 4020 was chosen specific because it could do real time data acquisition. Peripherals like the CALCOMP plotter were chosen so people could draw different visualizations of the data they were measuring.

My first taste of this was in 1974. My physics prof had assigned us homework to set up an experiment to measure the gravitational constant. Overall, the experiment is simple. Get a long pendulum, measure the time it takes to complete a transit, put the data into an equation and you get g.

At my father's suggestion, the lab was open for me to use. The tech there, George was a great help. I set up a long pendulum and two infrared sensors to a timer. When the pendulum crossed the infrared path, the timer would start. And it came back, the timer would stop. So I could measure the transit of the swing down to milliseconds.

Then I wrote a quick program to take the timing data I had gathered, analyzed the results, plotted some simple charts and calculated the gravitational constant to a few decimal places. I was quite proud of my report.

That is until I got it back. The prof had given me an F. He did not believe I did the experiment. Luckily I still had my set-up there, so I took him to the lab and walked him through the experiment. Then I showed him my program. As he watched explain it and run the program, he realized I had done the work myself. And gave me an A.

This experience gave me a double taste of what research is like. Because of my age (16), he did not believe I could do it. This would haunt me for much of my early career in research. But the process jazzed me. And I was hooked.

My interest in visualization came about the same way, at the same time. I was going a psychology course and had a project on optical illusions. My father suggested I use the plotter to draw the illusions. The CALCOMP was accurate to somewhere in the point millimeters. So I wrote the program to generate different optical illusions. As the pen clicked up and down, drawing out my commands, I was mesmerized. I saw the power of using the computer to generate graphics to express ideas.

From then on, all too often, both data acquisition and analysis walked hand in hand with visualization. Depending on the data I was working with, I would try to find the best way to visualize information; determine the best metrics that would give the inner beauty of the data I was looking at. Try to unlock secrets that were waiting to be found. And that went on for close to 30 years.

Breakdown

McGill

The work at McGill afforded me a broad spectrum of research. As I got to know the systems better and better, researchers from different departments would ask me to work with them. All too quickly, they became paying jobs. And as graduate students left and went to different universities, some called on me so I had a chance to work outside McGill.

Most of the work focused on engineering. My department was Mechnical. But other departments like Metalurigcal, Chemical and Civil engineering used our facility to run experiments. Once I wrapped my head around things like Fast Fourier Transforms, convolutions, RMS, etc. etc., many researchers called upon me to help analyze and visualize the data they were collecting.

But in the DATAC lab, we did not just focus on the behometh called the GE/PAC 4020. As microcomputers started to blossom in the 70's, we were quick to start to use them. We became exclusively a Motorola lab. First the 6800 and then 6809 were perfect for small data acquistion and analysis machines. Quickly we embraced the SWTPc 6809 and did some amazing things with it.

Another area my father and his collegues had identified was that computers would become increasingly important for engineers when it comes to graphics. Way before any CAD programs, we had programs where students could input data and generate graphics, be it projections, contour maps or results from curve regressions.

Quickly, I was part of the push to have the 6809s do the same thing. Those were heady times. Many of our graphical SWTPc 6809 got customized by my ROM instead of the one that came with the system. I rewrote some of the boot up code and pack the ROM with device drives for plotters, magneto-restrictive pads, etc. etc. So on boot-up, many of the systems did not start up with SBUG but VBUG.

This was also my first foray into hacking. Most of the work done on these machines was in BASIC. I decompiled much of the BASIC so I could put in hooks to make it easier for software development and adding drivers. In the end, these machines were used in different areas of computer graphics, including being the main machines that was used in a computer graphics course my father gave.

At the same time, what was exciting was there were other projects going on. I got involved in gaming theory, binary decision program optimization and other interesting fields of research. Which prepared me for the next phase of my professional life.

Centre de Recherche Informatique de Montreal

By 1986, it was time for me to move on from McGill. There were major shifts going on in the departments and I did not like the politics that was developing. I started to look for new opportunities. Early 1987, a friend of mine told me his company was looking for someone like me.

CRIM was starting research in speech recognition and they needed a jack-of-all-trades like me to help get the project up and running. The main research, Yves Normandin, was a great research in the theory but they needed someone to organize the practical stuff. Be it recording speech, visualizing signals or different styles of analysis, they did not have someone for that.

I jumped on the bandwagon. Immediately what I had learnt at McGill was put to use. A good example had to do with recording speech. It was inconvenient to have a press to start, press to end recording system. All too often there would be long stretches of silence in the beginning and end of the signal. Excluding it wasted disc space, it would take longer to analyze the speech signals and place an extra burden on the different algorithms Yves was developing.

Using what I learnt from the EMG research and some pivotal papers within the speech domain, I developed a simple and fast algorithm for voice activation. At the same time, there were critical things like visualizing speech signals, labelling them and visualizing the results from our speech recognition system that I had to develop. Especially as the speech group started to grow.

More and more, though, I was developing tools than doing research. Part of the problem was the snobbish attitude at CRIM. It was a research centre and many of the researchers were working on their PhDs. I didn't even have a masters. But that didn't stop me. With my friend, Regis, I ended up exploring different avenues like neural networks and potentially interesting parameters to use in our speech system.

Yet all good things come to pass. By 1995, CRIM wanted to spin off the speech group into a separate company. There was no place in this spin off for me, so by 1996 I shifted gears at CRIM and joined the Human Computer Interaction (HCI) group and things were never the same.

The main focus of the HCI group was to provide member companies with our expertise in an ergonomic design cycle with respect to user interfaces. Our job was to develop prototypes of interfaces that focused on the user, not on engineering specs. And I became involved in some interesting projects immediately.

But the most important thing for me was meeting an odd-duck named Luc Beaudoin. He was our graphic artist. Not a programmer. He helped design icons and images for our prototypes and helped work on layout issues. But it was one of his ideas that sucked me in.

Part of his job in the group was to look into unconventional ways of presenting electronic information to the user. He had this strange idea of how to present complex hierarchies using triangles. He didn't show me his ideas at first, I suppose because most people in the group didn't get it. But we clicked quickly and I think he saw I would be able to see beyond the novelity of his idea. And I did.

When he showed me his ideas, things just clicked. I could see the potential immediately. The problem was all he had was a simple mock-up. He needed a real proof-of-concept. Luckily, another member of the group, Marc-Antoine Parent also saw the potential of the idea.

To be continued