Monday, February 20, 2017

Hats off to Hopper!

As I learn more about the history of computing, I'm realizing that many, and maybe most, of the pivotal contributions  have come from women.

For example, Ada Lovelace, is credited with developing the first algorithm during her work on Babbage's Analytical Engine.

Today, I learned a little more about Grace Hopper. (The image is from Wikipedia.) As well as developing COBOL (one of the first languages I remember hearing about), I now realize that Rear Admiral Hopper wrote the first compiler.


I consider myself to be a semi-competent and a fairly experienced scientific programmer and I have a hand-waving knowledge of many aspects of 'computer-stuff'. However, I have not the faintest inkling of how I would go about making a compiler.

Hats off to Hopper!

Thursday, February 9, 2017

MATLAB, St. Andrews, and the evolution of culture

Here are two facts:
  1. I grew up near St Andrews in Scotland
  2. I use MATLAB a lot
Any blog that combines these points must be interesting, so I was excited to learn that biologists at the University of St. Andrews are running a MATLAB programming contest in order to measure how a culture evolves.

Saturday, January 28, 2017

Hidden Figures - a Hollywood film where numerical methods come to the rescue

I've just finished watching "Hidden Figures", a current Hollywood film that focuses on Katherine Johson, Dorothy Vaughan, and Mary Jackson, and their important roles in the early stages of NASA's attempts at manned flight.

SPOILER ALERT BELOW



Hidden Figures has been nominated for 3 Oscars (including Best Picture) and I enjoyed it a lot. It also includes many powerful messages, not least, the important role that African-American females played in 1960's US science.

Our community needs to do more to increase recognition of non-white non-male scientists and mathematicians. A single film can't make up for all of our prior mistakes but, as my PhD advisor used to say,  "at least the progress vector is now pointing in the right direction".

Hidden Figures also includes some gems relating to scientific computing. There can't be many films where the trumpets sound and Euler's method rides over the hill (albeit in small steps) to save the day. I wasn't quite sure but I thought one of the screenshots in that portion of the film was of relevant pages from Numerical Recipes.

I also enjoyed watching Dorothy Vaughan beat the IBM programmers at their own game after she had to taught herself FORTRAN from a library book. It must have been quite a ride.

All in all, a must-see for anyone that likes the history of scientific computing.

It's also a very good film. The audience clapped at the end at our showing, and judging from the pre-film conversations I overheard, I doubt if many were regular readers of this type of blog :-)

Tuesday, January 10, 2017

Souza's law and the difficulty of providing quality technical support

I spent a year of my postdoc writing SLControl, a fairly sophisticated piece of software for acquiring and analyzing data to do with muscle mechanics. It implemented real-time control loops with 100 µs latencies and allowed us to perform completely new types of experiments.

Writing SLControl was a good investment of time; I, or somebody in my lab, has used it almost every day since 2001. However, providing high quality support has been a challenge. The software does complex things and it's normally connected to even more complicated experimental apparatus. Trouble-shooting requires a lot of experience.

Another problem, I discovered is that people sometimes want to use SLControl for things that it wasn't originally intended for. I discovered this early in the development process when somebody called me up to ask how to fit a 3 parameter exponential to their experimental data. Their measurements had nothing to do with muscle mechanics (SLControl's niche) - the data was just some list of numbers from a fairly random experiment. Maybe it was to do with flow in a river or something. The person requesting help had googled "3 parameter exponential", found a match on the SLControl website, and decided to call me for help.

That, in a roundabout way, gets us to Souza's law. Every time you include a text field on a website, somebody will eventually use it to ask for tech support :-)

Read more on the brilliant MathWorks blog.

http://blogs.mathworks.com/community/2017/01/10/tags-tech-support-and-souzas-law/