2009-09-06
Drawing the US from Memory
I used to challenge people to draw the US from memory, it was usually hilarious when people who weren't from the mid-west tried to draw the region. I can do a respectable job, I almost always hit all the states and the shapes aren't too bad...but holy cow, Al Franken, you're my hero.
2009-08-30
Timing Properties of SPADs
I've gotten requests for more technical material, so here ya go:
Today I'm going to talk about some applications of SPADs. If you want a reminder of the basics of SPADs, you can read my introductory post or my post on noise. SPADs are single-photon detectors that use feedback systems in conjunction with one another to accurately time the arrival of single-photons. Accurately timing a photon's arrival time is important in many applications, but today I'll be talking about rangefinding.
In rangefinding applications, such as laser-based rangefinding for land surveying, a laser fires a pulse of photons and a detector times the difference between the pulse and the photon detection time. Photons, being light, travel at the speed of light. You'll usually here the speed of light quoted as 300,000,000 meters per second, but optics people prefer to quote the speed of light as
Anyways, we have to accurately time this photon arrival so we can determine the time of flight. The timing inaccuracy is termed jitter; we use various metrics to quantify the jitter, but most of these metrics just capture the usual case. For SPADs, the jitter depends on a few things.
First, the temperature is very important. In a silicon integrated circuit, increasing the temperature increases the ambient energy available to electrons, the main information carriers in the circuit. The introduction of additional energy modifies a carrier's behavior, and thus changing the temperature will change the characteristics of both the fast and slow feedback loops in SPADs.
Next, the color of the light is also important. Different colors of light have different wavelengths. The wavelength describes how frequently the energy moves around in space. Since silicon has a repeating structure, the wavelengths will help determine how likely it is that the light interacts with the crystal, producing the primary electron that could cause an avalanche. It turns out that blue light is optimal for the current generation of SPADs - the optimal wavelength is a balance between how far light usually penetrates into the silicon and where the avalanche region is (remember that we moved the region away from the surface to avoid the noise-causing irregularities at the surface).
Within the avalanche region, the build-up time of the avalanche is obviously important. During the initial portion of the positive feed-back loop, when there are very few carriers active, the variation in each carrier can change the build-up time. Current understanding is that it takes between 0 and 15 picoseconds to generate enough carriers to average out these variations, though this build-up process depends on characteristics like the temperature and strength of the applied force (the electric field).
So what is the end result? Well it depends on what you need and what you have available. If you have a lot of area available on a silicon chip, you can use more complex current detectors to get the jitter as low as 15 or 20 picoseconds. On the other hand, if you're short on area you can raise the jitter as much as you like, but you'd be hard-pressed to raise it above nanoseconds and still have a viable application. Keep in mind that you'll be changing how close the SPADs are, so the cross-talk will change.
When you're making a range-finder, you might care only about one specific range, or you might be trying to acquire a bunch of ranges to get a 3D pictures. If you only care about one range, you can use a lot of area to achieve the 20 picosecond resolution. This corresponds to an uncertainty in space around 6 millimeters. If you have an array of SPADs and timing circuitry, you're more likely to have an error in the 100 picosecond range. 100 picoseconds corresponds to an error of 3 cm in space. You can lower this uncertainty by taking multiple measurements, and since the measurements are so fast the accuracy can easily be one millimeter or less.
Anyways, I hope this post helped you understand about the timing uncertainty in SPADs. The uncertainty affects other applications besides rangefinding, things like quantum-based encryption algorithms, biological imaging, and cancer detection, but those applications are a bit more complicated to explain! I'll be attempting in future posts, and we'll see how it goes.
Today I'm going to talk about some applications of SPADs. If you want a reminder of the basics of SPADs, you can read my introductory post or my post on noise. SPADs are single-photon detectors that use feedback systems in conjunction with one another to accurately time the arrival of single-photons. Accurately timing a photon's arrival time is important in many applications, but today I'll be talking about rangefinding.
In rangefinding applications, such as laser-based rangefinding for land surveying, a laser fires a pulse of photons and a detector times the difference between the pulse and the photon detection time. Photons, being light, travel at the speed of light. You'll usually here the speed of light quoted as 300,000,000 meters per second, but optics people prefer to quote the speed of light as
- 30 centimeters per nanosecond
- 300 millimeters per nanosecond
- 300 micrometers (microns) per picosecond
- 30 millimeters per 100 picoseconds
Anyways, we have to accurately time this photon arrival so we can determine the time of flight. The timing inaccuracy is termed jitter; we use various metrics to quantify the jitter, but most of these metrics just capture the usual case. For SPADs, the jitter depends on a few things.
First, the temperature is very important. In a silicon integrated circuit, increasing the temperature increases the ambient energy available to electrons, the main information carriers in the circuit. The introduction of additional energy modifies a carrier's behavior, and thus changing the temperature will change the characteristics of both the fast and slow feedback loops in SPADs.
Next, the color of the light is also important. Different colors of light have different wavelengths. The wavelength describes how frequently the energy moves around in space. Since silicon has a repeating structure, the wavelengths will help determine how likely it is that the light interacts with the crystal, producing the primary electron that could cause an avalanche. It turns out that blue light is optimal for the current generation of SPADs - the optimal wavelength is a balance between how far light usually penetrates into the silicon and where the avalanche region is (remember that we moved the region away from the surface to avoid the noise-causing irregularities at the surface).
Within the avalanche region, the build-up time of the avalanche is obviously important. During the initial portion of the positive feed-back loop, when there are very few carriers active, the variation in each carrier can change the build-up time. Current understanding is that it takes between 0 and 15 picoseconds to generate enough carriers to average out these variations, though this build-up process depends on characteristics like the temperature and strength of the applied force (the electric field).
So what is the end result? Well it depends on what you need and what you have available. If you have a lot of area available on a silicon chip, you can use more complex current detectors to get the jitter as low as 15 or 20 picoseconds. On the other hand, if you're short on area you can raise the jitter as much as you like, but you'd be hard-pressed to raise it above nanoseconds and still have a viable application. Keep in mind that you'll be changing how close the SPADs are, so the cross-talk will change.
When you're making a range-finder, you might care only about one specific range, or you might be trying to acquire a bunch of ranges to get a 3D pictures. If you only care about one range, you can use a lot of area to achieve the 20 picosecond resolution. This corresponds to an uncertainty in space around 6 millimeters. If you have an array of SPADs and timing circuitry, you're more likely to have an error in the 100 picosecond range. 100 picoseconds corresponds to an error of 3 cm in space. You can lower this uncertainty by taking multiple measurements, and since the measurements are so fast the accuracy can easily be one millimeter or less.
Anyways, I hope this post helped you understand about the timing uncertainty in SPADs. The uncertainty affects other applications besides rangefinding, things like quantum-based encryption algorithms, biological imaging, and cancer detection, but those applications are a bit more complicated to explain! I'll be attempting in future posts, and we'll see how it goes.
Labels:
avalanche diodes,
research,
single photon avalanche diodes,
SPAD,
SPADs
Another Airbrushing Site
I stumbled across a really interesting airbrushing site today...I can never click through enough of these to remind me how much people are mis-represented in print and online media. (earlier post)
2009-08-27
Question
Why are TVs and computer monitors horizontally long, but paper is vertically long? I suppose it makes sense that monitors and TVs are horizontal, as this matches our visual field, but then why is paper tall, rather than wide?
2009-08-17
Firsts
It has been a year! Here are some of the things I've done in the past year:
1) Forgot / lost passport, had to travel 3 hours to get it back
2) Setup an experiment using somewhat dangerous radiation while I was suffering a headache from lack of sleep
3) Was the last person on a plane, having nearly missed it (this experience is over-rated)
4) Laid out a portion of an integrated ciricuit that (if it works, crosses fingers!) will have 5.12 GBps going through it
5) Lost PhD topic
5.5) Lost PhD topic
6) Found PhD topic (errrr.....I think?)
7) Went all-in and won a poker pot, went all-in and lost a poker pot, successfully spotted a bluff at a poker table, successfully set a trap at a poker table
8) Gone to one of those fancy European clubs in Paris (it was worse than I thought and I will not be returning)
9) Bought plane tickets, booked a hotel, flew on plane and checked into hotel within 5 hours of one another
10) Successfully found apartment in a foreign country and moved into it from another apartment
11) Gotten a first-hand view of how difficult it is to be an immigrant
12) Earned the title Expatriate
Things I haven't done:
1) Successfully had a conversation in Dutch (I haven't had many successful ones in English over here, either)
2) Joined a choir
3) Written a paper (I'm working on one right now, and I have two in various stages of the paper pipeline)
4) Used tools to go from VHDL to ASIC
By the numbers:
Guitars purchased - 1
Bicycles purchased - 1
Haircuts - 2
"Original" research ideas that someone else had actually tried but adviser didn't know about - 3
Canned hot dogs consumed - 4
Moose seen - 4 (two real, two mascots)
Shoes purchased - 6
Countries book was purchased in - 5 (6 if you separate England and Scotland, 7 if you include online purchases)
Countries "visited" - 7 (Scotland, US, Canada, Switzerland, Ghana, France, Belgium)
Passport resources used - 27 boxes from stamps, 2 pages from visas
Train tickets purchased - ~100 (I go through about 8 a month)
PB&J Sandwichs consumed - ~150 (they have this awesome sour cherry jam over here)
Emails sent - 2,088 (more than I thought, 25 were to myself)
Emails received - 2,698 (fewer than I thought)
Most lines of code written in a single day - ~3,200 (most of it was test code...firmware test code can be pretty massive to go through the appropriate states)
Lines of code written overall - ~16,000 (again, around 14,000 lines are test code)
Heartbeats - ~37,000,000 (the heart is a work of art)
And finally:
Dutch postcards sent - 0 (yeeeeeeeah...I still owe a lot of people postcards.....)
1) Forgot / lost passport, had to travel 3 hours to get it back
2) Setup an experiment using somewhat dangerous radiation while I was suffering a headache from lack of sleep
3) Was the last person on a plane, having nearly missed it (this experience is over-rated)
4) Laid out a portion of an integrated ciricuit that (if it works, crosses fingers!) will have 5.12 GBps going through it
5) Lost PhD topic
5.5) Lost PhD topic
6) Found PhD topic (errrr.....I think?)
7) Went all-in and won a poker pot, went all-in and lost a poker pot, successfully spotted a bluff at a poker table, successfully set a trap at a poker table
8) Gone to one of those fancy European clubs in Paris (it was worse than I thought and I will not be returning)
9) Bought plane tickets, booked a hotel, flew on plane and checked into hotel within 5 hours of one another
10) Successfully found apartment in a foreign country and moved into it from another apartment
11) Gotten a first-hand view of how difficult it is to be an immigrant
12) Earned the title Expatriate
Things I haven't done:
1) Successfully had a conversation in Dutch (I haven't had many successful ones in English over here, either)
2) Joined a choir
3) Written a paper (I'm working on one right now, and I have two in various stages of the paper pipeline)
4) Used tools to go from VHDL to ASIC
By the numbers:
Guitars purchased - 1
Bicycles purchased - 1
Haircuts - 2
"Original" research ideas that someone else had actually tried but adviser didn't know about - 3
Canned hot dogs consumed - 4
Moose seen - 4 (two real, two mascots)
Shoes purchased - 6
Countries book was purchased in - 5 (6 if you separate England and Scotland, 7 if you include online purchases)
Countries "visited" - 7 (Scotland, US, Canada, Switzerland, Ghana, France, Belgium)
Passport resources used - 27 boxes from stamps, 2 pages from visas
Train tickets purchased - ~100 (I go through about 8 a month)
PB&J Sandwichs consumed - ~150 (they have this awesome sour cherry jam over here)
Emails sent - 2,088 (more than I thought, 25 were to myself)
Emails received - 2,698 (fewer than I thought)
Most lines of code written in a single day - ~3,200 (most of it was test code...firmware test code can be pretty massive to go through the appropriate states)
Lines of code written overall - ~16,000 (again, around 14,000 lines are test code)
Heartbeats - ~37,000,000 (the heart is a work of art)
And finally:
Dutch postcards sent - 0 (yeeeeeeeah...I still owe a lot of people postcards.....)
$500 for a Bicycle
The Freakonomics blog has a great post on the cost of bicycles in bicycle-crazy Portland:
I bought an inexpensive, new bicycle in Delft for just over $500, though the university reimbursed most of the cost through a travel program. I was expecting to find a nice, new one for around $250.
We don't have CostCo here, and sadly Ikea doesn't sell bicycles. I'll just keep dreaming.
Yeah, the bike guy answered, he had something super-cheap for me ... I could have it, he said, for $475.
So I went to another store. Same deal, more or less. There was one bike for $275, but it was a girl’s Raleigh from the 1960’s with a wicker basket.
...
At Portland’s Costco, meanwhile — on the outskirts of the city — you can buy a brand-new Schwinn Midtown city bike with Shimano shifters for around $200. But, according to the clerk there, those Schwinns aren’t moving.
I bought an inexpensive, new bicycle in Delft for just over $500, though the university reimbursed most of the cost through a travel program. I was expecting to find a nice, new one for around $250.
We don't have CostCo here, and sadly Ikea doesn't sell bicycles. I'll just keep dreaming.
2009-07-23
A Test for Rental Scams
I'm looking for an apartment, and I seem to get an awful lot of e-mails from people that have beautiful apartments for low, low prices but for whatever reason they won't show me the places. Or they say they'll meet me and when I show up a confused woman answers the door and says, "No, there is no apartment for rent here."
Today I'm going to describe to you how you can check if you are being scammed. Go into your email client and turn on all of the headers (in Thunderbird, this is View->Headers->All). You'll see a giant chain of "received" headers that look like:
At one end of these headers will be your e-mail provider, while at the other end will be the IP address of the computer that sent the email address:
Sometimes the address of the originating computer is listed a bit differently:
The person might have masked the IP of their computer, but this is complicated and most scammers are idiots. Anyways, you can take this IP to a handy geolocation look-up service and find out the originating location.
Every now and then the country won't be listed, but the host name you get back has information you can use to determine the country. For example, 62.173.35.6 resolves to 35-6.rv.ipnxtelecoms.com but the geolocation service doesn't give a country for this IP. ipNX Telecom has its headquarters in...Lagos, Nigeria.
I suppose in the future I'll have to screen any email about apartments. Sometimes I really hate people.
EDIT: Your email client actually uses the same method I describe above to label some emails as being probable scams. Usually IP blocks assigned to certain ISPs and sometimes even entire countries are labeled as suspect.
Today I'm going to describe to you how you can check if you are being scammed. Go into your email client and turn on all of the headers (in Thunderbird, this is View->Headers->All). You'll see a giant chain of "received" headers that look like:
Received: from [216.252.122.218] by n75.bullet.mail.sp1.yahoo.com with NNFMP;
22 Jul 2009 20:09:46 -0000
Received: from [67.195.9.83] by t3.bullet.sp1.yahoo.com with NNFMP;
22 Jul 2009 20:09:46 -0000
Received: from [67.195.9.105] by t3.bullet.mail.gq1.yahoo.com with NNFMP;
22 Jul 2009 20:09:46 -0000
Received: from [127.0.0.1] by omp109.mail.gq1.yahoo.com with NNFMP;
22 Jul 2009 20:09:46 -0000
At one end of these headers will be your e-mail provider, while at the other end will be the IP address of the computer that sent the email address:
Received: from SRV502.tudelft.net ([131.180.4.18]) by ...
...
...
...
Received: from [41.205.182.125] by web111904.mail.gq1.yahoo.com via HTTP;
Wed, 22 Jul 2009 13:09:45 PDT
Sometimes the address of the originating computer is listed a bit differently:
Received: from BLU116-W26 ([65.55.116.72]) by ...
X-Originating-IP: [62.173.35.6]
The person might have masked the IP of their computer, but this is complicated and most scammers are idiots. Anyways, you can take this IP to a handy geolocation look-up service and find out the originating location.
IP: 41.205.182.125
Host: dial-pool07.ab.starcomms.net
Country: Nigeria
Every now and then the country won't be listed, but the host name you get back has information you can use to determine the country. For example, 62.173.35.6 resolves to 35-6.rv.ipnxtelecoms.com but the geolocation service doesn't give a country for this IP. ipNX Telecom has its headquarters in...Lagos, Nigeria.
I suppose in the future I'll have to screen any email about apartments. Sometimes I really hate people.
EDIT: Your email client actually uses the same method I describe above to label some emails as being probable scams. Usually IP blocks assigned to certain ISPs and sometimes even entire countries are labeled as suspect.
Sentences that Make Me Laugh
If we ignore (thing one), (thing two), (thing three), (thing four) and assume (thing five), then the problem becomes tractable using only elementary results from field X.Sadly I wrote the sentence...though it was followed by:
Subsequent sections will discuss the effects of (thing one), (thing two), (thing three) and (thing five), cumulating with results from a simulation including all these effects. The authors plan to revisit (thing four) in later work.Planning to revisit something is a total cop-out.
2009-07-22
CEOs and Pay
While I was home the issue of executive compensation came up several times. I'm a person who thinks that a CEO could easily deserve tens of millions a year or more. The main reason behind this is two-fold.
First, I've worked at a company that has undergone restructuring at a management level. From personal experience, small changes in strategic direction have a massive impact on people at the bottom of the "job-food" chain. It is easy to lose months, probably even years of work because someone above you made the wrong call. Since a CEO helps determine the strategic direction of the company, it seems reasonable to me that the pay of the CEO should scale with the sum pay of every other member of the company.
Second, there are a few studies which show a CEO's personal circumstances can have a percentage-point effect on a company's performance. A great example is a study of the effect on profit by a death in the immediate family of a CEO. Excerpt:
My math is a bit fuzzy here, but as always you're welcome to disagree in the comments and point out any mistakes I've made.
First, I've worked at a company that has undergone restructuring at a management level. From personal experience, small changes in strategic direction have a massive impact on people at the bottom of the "job-food" chain. It is easy to lose months, probably even years of work because someone above you made the wrong call. Since a CEO helps determine the strategic direction of the company, it seems reasonable to me that the pay of the CEO should scale with the sum pay of every other member of the company.
Second, there are a few studies which show a CEO's personal circumstances can have a percentage-point effect on a company's performance. A great example is a study of the effect on profit by a death in the immediate family of a CEO. Excerpt:
Sorting by the number of children we find the biggest effects on firm profitability in cases where the CEO only has one child. Specifically, one-child death shocks correlate with a 5 percentage point decline in firm profitability irrespective of the age of the child.The study goes on to show that the deaths of a spouse or child are significant events for a firm. I think the study underscores the importance of choosing the correct CEO. Though the study doesn't show the variation in profit during standard circumstances, to me it seems like a reasonable conclusion that variations in a CEO's ability to carry themselves through tough times will have a large effect on firm profit. For a company with hundreds of billions in profits per year, like an oil company, the CEO's personal circumstances could have an effect in the billion dollar range, meaning if the CEO themselves only received a fraction of this pay it would still be in the tens of millions range.
My math is a bit fuzzy here, but as always you're welcome to disagree in the comments and point out any mistakes I've made.
2009-07-21
It's All About the Teachers
I've been on vacation for the past, well, month, and I had a lot of interesting conversations. Aside from the very personal ones, the most engaging ones were on the topic of teachers. I had lunch with an old class-mate who is now a teacher at a high school. We talked a little bit about evaluating teachers. There isn't really a coherent point to this post, but if there was it would be that there is enormous room for improvement in the way we allocate resources to educate and invest in our next generation.
There is a lot of interesting quantitative data in how we invest in students. My class-mate and I talked about how too many smart people opt out of teaching. As the feminist movement has matured, a lot of really smart women no longer become teachers and the quality of teachers has suffered. I think the take-away is not that the feminist movement is bad, but rather we as a society don't have a great understanding of the importance of good teachers.
Another subject we talked about was the politics of teaching. If you haven't heard it, I suggest the TED speech of Bill Gates, the education portion begins at about 8 minutes. He talks, amongst other things, about how it is illegal in New York to use performance-based data to evaluate a teacher's performance. Coincidentally my old class-mate was for qualitative data like committees but against quantitative performance-based data. She claimed the quantitative data would have too much variance. I think I dissuaded her from this stance, but I do agree that quantitative data is not perfect. Any one metric can be taken advantage of. As an engineer, however, I have more faith in a well-designed system with numbers than a well-designed system with committees.
Finally, we went over the cost of education at private schools. There is a huge debate about whether private schools outperform public schools. The debate is quite contentious, especially when trying to account for socioeconomic and ethnic diversity factors. She said that public schools are critical to integrating immigrants into society. I do not have a great link to summarize this stance, as I haven't seen anything like this online - please comment and send along a link if you have one. I said that I thought public schools were wasteful due to the political pressure and lack of transparency into the teachers.
Anyways, I think the high level take-away is that evaluating teacher performance is a complex problem that has to touch politics and statistics, though a lot of information suggests there are inefficiencies. It would be interesting to attempt to evaluate schools, but creating a non-partisan report that accurately represents the facts seems to be near impossible. The only thing I know for sure is that I don't have a clue how parents choose schools for their children.
There is a lot of interesting quantitative data in how we invest in students. My class-mate and I talked about how too many smart people opt out of teaching. As the feminist movement has matured, a lot of really smart women no longer become teachers and the quality of teachers has suffered. I think the take-away is not that the feminist movement is bad, but rather we as a society don't have a great understanding of the importance of good teachers.
Another subject we talked about was the politics of teaching. If you haven't heard it, I suggest the TED speech of Bill Gates, the education portion begins at about 8 minutes. He talks, amongst other things, about how it is illegal in New York to use performance-based data to evaluate a teacher's performance. Coincidentally my old class-mate was for qualitative data like committees but against quantitative performance-based data. She claimed the quantitative data would have too much variance. I think I dissuaded her from this stance, but I do agree that quantitative data is not perfect. Any one metric can be taken advantage of. As an engineer, however, I have more faith in a well-designed system with numbers than a well-designed system with committees.
Finally, we went over the cost of education at private schools. There is a huge debate about whether private schools outperform public schools. The debate is quite contentious, especially when trying to account for socioeconomic and ethnic diversity factors. She said that public schools are critical to integrating immigrants into society. I do not have a great link to summarize this stance, as I haven't seen anything like this online - please comment and send along a link if you have one. I said that I thought public schools were wasteful due to the political pressure and lack of transparency into the teachers.
Anyways, I think the high level take-away is that evaluating teacher performance is a complex problem that has to touch politics and statistics, though a lot of information suggests there are inefficiencies. It would be interesting to attempt to evaluate schools, but creating a non-partisan report that accurately represents the facts seems to be near impossible. The only thing I know for sure is that I don't have a clue how parents choose schools for their children.
Labels:
evaluating performance,
high school friends,
schools,
teaching
2009-07-05
Big Pimpin'
Sometimes it helps to remember your fashion roots.

Only a select few can go pantsless with combat boots and diapers. I am one of these few.

Sometimes, though, you've got to break out those whale pants.

When I was big in the 80's, I wore jump suits for a while. I think my life-long relationship with red started around this time.

I also tried the grunge scene in the 80's. Or the potato chip scene. They were kinda the same thing.

After the grunge scene I classed it up a little.

Speaking of classy, nothing says classy like gray shoes and a bow tie.

Sometimes it was hard being with other people who didn't get it. Going as a mouse to Halloween was so last year. Being a pre-schooler was where it was at.

Only a select few can go pantsless with combat boots and diapers. I am one of these few.

Sometimes, though, you've got to break out those whale pants.

When I was big in the 80's, I wore jump suits for a while. I think my life-long relationship with red started around this time.

I also tried the grunge scene in the 80's. Or the potato chip scene. They were kinda the same thing.

After the grunge scene I classed it up a little.

Speaking of classy, nothing says classy like gray shoes and a bow tie.

Sometimes it was hard being with other people who didn't get it. Going as a mouse to Halloween was so last year. Being a pre-schooler was where it was at.
2009-06-16
Toilets Evolved?
How awesome is evolution?
Errrrr, maybe I'll just build it myself.
Also, this is at least my fourth post on toilets, and those are just the ones I've tagged. How disturbing.
Using isotopic analysis, they estimate that shrew feces deposited in N. lowii’s pitchers are a significant source of nitrogen for the plants...Tree shrews visit the plants to eat nectar that oozes from the bowl’s open lid, positioning themselves directly over the bowlNature, how about you evolve me a starship? I promise I'll provide it with nutrients.
Errrrr, maybe I'll just build it myself.
Also, this is at least my fourth post on toilets, and those are just the ones I've tagged. How disturbing.
2009-06-11
Shushing Doom
According to space.com, the military is shushing incoming space objects:
A recent U.S. military policy decision now explicitly states that observations by hush-hush government spacecraft of incoming bolides and fireballs are classified secret and are not to be released, SPACE.com has learned.I'd like to think they're trying to keep the location of orbiting platforms secret, but I know it's really a cover-up of a secret government program which has angered aliens previously posing as Gods who have sent a giant ball of explosives (posing as an asteroid) to wipe out our solar system and only an oddball team of four individuals (one carrying such an alien himself) can prevent the asteroid from hitting Earth by traveling to it and having their simple scheme fail while they'll still save the day with a more complex, 1 in a 1,000,000 chance scheme. Whew.
2009-06-08
Mixed Nuts
Sometimes you end up at the strangest pages on Wikipedia:
Modifying words like "fancy" or "choice" have not historically carried any legal meaning in the United States, and they remain absent from the current regulations.[1] In a 1915 federal case against "fancy mixed nuts" that were argued by competitors to be an inferior grade, U. S. v. 25 Bags of Nuts, N. J. No. 4329 (1915), the court declined to accept a trade standard.
Most Useful Undergraduate Classes
Today I was thinking about how small the knowledge intersection has been between my undergraduate courses and my jobs. I made a list of all the classes I found directly useful at either of my two jobs, and it was shockingly small.
Classes I found useful at my previous, finance job (in order of usefulness):
Classes I've found useful at my current, graduate school job (in order of usefulness):
I think a lot of the other classes I took, such as the math classes and signal processing courses, have had a large impact on how I think and approach problems, but I haven't used this knowledge directly in my day to day life. I was shocked that 6.046, my algorithms course, isn't on the list. I haven't used any of the important concepts from 6.046 in either of my jobs. Just the other day I wrote a one-liner for bubble sort when I needed to sort data.
I'm not sure why there are so few classes on the lists, but I was thinking yesterday about why my design class, 6.111, was so high on both lists. I think it has to do with the design project, which was the first "real" design project I ever had. In 6.001, the programming introduction course, there was also a design project, but 6.001 worked on the principle of building up proven components. You wrote something and checked that it worked. Building bigger things meant building up the system one proven component at a time. When you were handed code, you read through and tested the code to check that it worked.
Unfortunately real life is more messy than this. Components are usually too complex to verify for yourself, and sometimes you have to work around interfaces that were designed for another task. My 6.111 project had to deal with these issues, along with the issues found in building up a proven and known system. My team created an electronic version of Labyrinth, the old tilting maze game wherein one tilts a board to guide a ball through a maze to a goal, avoiding hole traps along the way. Not only did we create a pretty big custom system, we also had to interface our system with a lot of 3rd party components, including tilt sensors, circuits that converted the tilt sensors into something understandable, a VGA controller and an LCD.
This was the first time that something I created had to work with sloppy, complex components. The components we interfaced with included complex but standard interfaces, like the LCD, and sloppy and non-standard ones, like the components written by the teaching assistants for the course. I still remember, four years on, that the tilt sensors could enter an error state during the read-out. This error state required a lot of hand-holding to work correctly. I also remember fighting for a week with the start-up sequence because of nuances with the timing.
It makes me sad that none of the theory courses I took actually have anything to do with my job, but the theory courses that I took don't really have much to do with anything. I indirectly use this theoretical knowledge every know and then, but rarely directly. Whenever I do digital circuit design, for example, my tools use the graph algorithms that I learned in 6.046, but this is abstracted away from me. I don't think I've used a single academic thing I learned in my senior year. What a waste of money. Sigh.
Classes I found useful at my previous, finance job (in order of usefulness):
1. 6.111 - Digital Design Lab / FPGA-based design lab
2. 6.001 - Intro to ComSci with LISP
Classes I've found useful at my current, graduate school job (in order of usefulness):
1. 6.111 - Digital Design Lab, or FPGA-based design lab
2. 6.004 - Computation Structures, or Build a CPU
3. 6.002 - Intro to Circuit Design
4. 17.477 - Technology and Policy of Weapons Systems
5. 6.001 - Intro to ComSci with LISP
6. 6.041 - Intro Probability
I think a lot of the other classes I took, such as the math classes and signal processing courses, have had a large impact on how I think and approach problems, but I haven't used this knowledge directly in my day to day life. I was shocked that 6.046, my algorithms course, isn't on the list. I haven't used any of the important concepts from 6.046 in either of my jobs. Just the other day I wrote a one-liner for bubble sort when I needed to sort data.
I'm not sure why there are so few classes on the lists, but I was thinking yesterday about why my design class, 6.111, was so high on both lists. I think it has to do with the design project, which was the first "real" design project I ever had. In 6.001, the programming introduction course, there was also a design project, but 6.001 worked on the principle of building up proven components. You wrote something and checked that it worked. Building bigger things meant building up the system one proven component at a time. When you were handed code, you read through and tested the code to check that it worked.
Unfortunately real life is more messy than this. Components are usually too complex to verify for yourself, and sometimes you have to work around interfaces that were designed for another task. My 6.111 project had to deal with these issues, along with the issues found in building up a proven and known system. My team created an electronic version of Labyrinth, the old tilting maze game wherein one tilts a board to guide a ball through a maze to a goal, avoiding hole traps along the way. Not only did we create a pretty big custom system, we also had to interface our system with a lot of 3rd party components, including tilt sensors, circuits that converted the tilt sensors into something understandable, a VGA controller and an LCD.
This was the first time that something I created had to work with sloppy, complex components. The components we interfaced with included complex but standard interfaces, like the LCD, and sloppy and non-standard ones, like the components written by the teaching assistants for the course. I still remember, four years on, that the tilt sensors could enter an error state during the read-out. This error state required a lot of hand-holding to work correctly. I also remember fighting for a week with the start-up sequence because of nuances with the timing.
It makes me sad that none of the theory courses I took actually have anything to do with my job, but the theory courses that I took don't really have much to do with anything. I indirectly use this theoretical knowledge every know and then, but rarely directly. Whenever I do digital circuit design, for example, my tools use the graph algorithms that I learned in 6.046, but this is abstracted away from me. I don't think I've used a single academic thing I learned in my senior year. What a waste of money. Sigh.
2009-05-07
Let's Really Be Equal Here
Insurance companies claim that women, especially child-bearing ones, use more health care than men, and hence pay higher premiums. Of course some people think this reason is non-sense, among them some law-makers introducing legislation to equalize the payments:
In related news, it was noticed that women live longer than men. Senator Kerry plans to fix this with a bill which would kill off specific women, equalizing the average lifetimes. He hasn't talked about his plans to equalize the "unmentionable parts of the human body."
Senator John Kerry today introduced legislation that would improve health care benefits for women in the individual market by preventing insurers from charging them more, denying or limiting coverage based on their pregnancy status or delivery method, and ensuring comprehensive maternity coverage.
In related news, it was noticed that women live longer than men. Senator Kerry plans to fix this with a bill which would kill off specific women, equalizing the average lifetimes. He hasn't talked about his plans to equalize the "unmentionable parts of the human body."
2009-05-06
Feeling Good About Being Stupid
I wish I had some people's tolerance for their own ignorance:
Oh, right, I read reddit to help me focus. Nevermind.
Second, we don't do a good enough job of teaching our students how to be productively stupid – that is, if we don't feel stupid it means we're not really trying...Focusing on important questions puts us in the awkward position of being ignorant.Aside from the isolating nature of graduate school, constantly feeling stupid is probably the hardest thing to adapt to. I still haven't found a good way to focus in the face of infinite possibilities.
Oh, right, I read reddit to help me focus. Nevermind.
2009-05-05
2009-05-02
Quotes
I've been staring at colored polygons for the past month, so I don't have anything interesting to say. You know the stress is getting to you when you run across random quotes on the internet and they bounce around inside your head. Enjoy the memes...or, rather, let the memes enjoy you.
Since its foundation nearly two decades earlier, Nato had had its headquarters in France. Now Nato would have to move. Furthermore, de Gaulle added, it was his intention that all American service personnel should be removed from French soil. "Does that include," [Lyndon B] Johnson is said to have replied, "those buried in it?"
When I was in the military they gave me a medal for killing two men and a discharge for loving one.
My father told me I had three career options. I could be a doctor, an engineer or a failure.
...any competent programmer, if given a chance to learn on the job, can become productive in a new software technology within a few weeks... [FYI I strongly disagree with the spirit of this quote, though the meaning is a bit truthful]
We hold these Truths to be self-evident, that all Men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty, and the pursuit of Happiness—-That to secure these Rights, Governments are instituted among Men, deriving their just Powers from the Consent of the Governed, that whenever any Form of Government becomes destructive of these Ends, it is the Right of the People to alter or abolish it, and to institute a new Government, laying its Foundation on such Principles, and organizing its Powers in such Form, as to them shall seem most likely to effect their Safety and Happiness.
Life is good, everyone just overreacts. Even me.
Since its foundation nearly two decades earlier, Nato had had its headquarters in France. Now Nato would have to move. Furthermore, de Gaulle added, it was his intention that all American service personnel should be removed from French soil. "Does that include," [Lyndon B] Johnson is said to have replied, "those buried in it?"
When I was in the military they gave me a medal for killing two men and a discharge for loving one.
My father told me I had three career options. I could be a doctor, an engineer or a failure.
...any competent programmer, if given a chance to learn on the job, can become productive in a new software technology within a few weeks... [FYI I strongly disagree with the spirit of this quote, though the meaning is a bit truthful]
We hold these Truths to be self-evident, that all Men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty, and the pursuit of Happiness—-That to secure these Rights, Governments are instituted among Men, deriving their just Powers from the Consent of the Governed, that whenever any Form of Government becomes destructive of these Ends, it is the Right of the People to alter or abolish it, and to institute a new Government, laying its Foundation on such Principles, and organizing its Powers in such Form, as to them shall seem most likely to effect their Safety and Happiness.
Life is good, everyone just overreacts. Even me.
Subscribe to:
Posts (Atom)