Wednesday, February 27, 2008

Storing large files

Usually data storage is the province of the IT department, but sometimes a test engineer has to get involved. Here's a good example:

A few years ago I started work on a system that would take pictures of lit LEDs at the wafer level. It would analyze the image and save analysis data to the database. But we also had a need to save the image itself.

The images were large (over a meg), and even as PNG files (a lossless compression) they were typically over 300k. I had thought about saving them as BLOB files in the database - that seemed like a simple solution. After discussing it with our IT consultant (who later became our IT manager), I decided to save the images on the local network and record the image location in the DB. A year later the test system was complete, and saving images worked very well. The images were often used to do post-mortem analyses on bad wafer lots or mask issues.

Well, this issue has come up again at my new job. In this case it's not just image files, but large dataset files as well. Again, we've decided to save them as separate files & just record the information. This time I actually have justification for the decision: a paper from Microsoft Research ("To BLOB or Not To BLOB" - cute) states that, assuming you're using MS SQL Server 2005, any data set larger than 256KB should be saved as a file instead of in the DB. In more detail, they state that there is actually a gray area between 256KB and 1MB, but you get the idea.

In summary, sometimes it's useful to know something about other disciplines. Especially if you are a test engineer.

Tuesday, February 26, 2008

New job plus one month

As I said over a month ago I started a new job and would need some time to settle in there. Well, I've her almost a month now and it's been pretty good so far. I just wrapped up phase 1 of my first project, I'm in the planning stages of at least one other project, and I have a bit of time now to get back to blogging. In the next week or so I want to write a bit about the following topics:

- Data storage
- Leaving your old job
- Starting a new job
- Outsourcing

These are all things that have come up in the past two months. Stay tuned.

Saturday, February 2, 2008

Training young engineers

One of my original rules for this blog is "keep the personal to a minimum." I'm going to write a few lines about my sons, but I think this post also applies - in a broader context - to anyone who has kids (or nieces/nephews) with an interest in engineering.

I'm sure that thousands of pages has been written about the "science crisis" in America, and the shrinking number of children who become interested in science and pursue it as a career. I am not about to offer my two cents on why it is happening or even whether it is real. And I'm not the sort of father to push my kids into the same field as I. But I do have kids who are interested in science and, like other fathers, I want to encourage them to learn. So I'm going to write a few paragraphs about that.

For Christmas both of my boys got electronics kits. They've been interested in opening up some of the toys they have to see how they work, and asking me lots of questions. The younger one got a Snap Circuits set. It's kind of a cross between legos and electronics. So far he really likes it.

My older son got an Electronics Learning Lab. He played with it some when he first got it, but the jury is still out on whether he likes it. The manual for it is written by Forrest Mims, and while I like his work and have a couple of the notebooks he has written, I'm not sure if his style is suitable for kids learning electronics.

On the flip side, I liked this kit when I first saw it - it reminded me of the breadboard setup when I had my first electronics class in college.

A couple of years ago my older son joined the Robotics club at his middle school. They participate in the First Lego League competitions. They use Lego Mindstorms robots to complete specific tasks in a set amount of time, they research a specific topic and present their results, and they learn. My son has enjoyed it a lot, plus he was actually excited when I showed him some of my LabVIEW code, since the Mindstorms use a simplified version of LV for their programming.

So, there's a few ideas for anyone who has kids that are interested in electronics and science. Hopefully they're useful for you.