Thursday, October 26, 2006 8:27 AM
These are just freaking cool... but I'm having a hard time figuring out what I'd actually use them for. I guess it's just another one of those things that only a geek would understand. But just the fact that something so small can have so much holding power is freaking cool. You can find out more about rare earth magnets here. In fact, one could argue that rare earth magnets have contributed to the computer industry just as much as transisters have. There is a page with all sorts of interesting ideas... and you just have to love a product that comes with a warning like this:
These magnets are very strong and should be handled with care. Small children should not handle these magnets. Older children should be supervised at all times when handling these magnets. These magnets should not be ingested. If the magnets are allowed to snap together or against steel, they will chip and crack. You should keep them at least six to twelve inches away from computer hard drives, credit cards, computer monitors, and other susceptible electronic equipment. Individuals with pacemakers and other internal medical devices should not handle or come within close proximity of strong magnets. These magnets are safe for air transport as packaged but as a general rule they should be kept off airplanes.
And seeing as how my life is surrounded by computers and electronic equipment... I'm not sure I want to worry about accidently bringing my cool new toys within range of something I haven't backed up in a while. But still....
Wednesday, October 25, 2006 3:19 PM
If you can't keep a voice mail to under 15 seconds, then put it in an email. If your voice mail is longer than 15 seconds, then make sure the most important information is first, because I'm pretty sure I'm zoning out after that.
Friday, October 20, 2006 11:38 AM
I'm avoiding risk by delaying a decision until the last responsible moment:
Making decisions at the Last Responsible Moment isn't procrastination; it's inspired laziness. It's a sold, fundamental risk avoidance strategy. Decisions made too early in a project are hugely risky. Early decisions often result in work that has to be thrown away. Even worse, those early decisions can have crippling and unavoidable consequences for the entire future of the project.
Early in a project, you should make as few binding decisions as you can get away with. This doesn't mean you stop working, of course-- you adapt to the highly variable nature of software development. Often, having the guts to say "I don't know" is your best decision. Immediately followed by "..but we're working on it."
And this isn't a joke. It's actually very true. And although I can't claim to practice this strategy because I thought about it thoroughly, and decided that it was always responsible to do things at the last possible minute... I'm sure deep down that's the motivation for my procrastination. I just haven't taken the time to analyze my reasoning yet... I'll do that tomorrow.
I do this all the time with technology I buy. People are often times surprised that I don't have more really cool and up to date tech goodies than I really do. And at one point in time in my life, I used to buy lots of this stuff. But then I realized I wasn't using half the stuff to its full potential... and when I finally needed to use it, there was a new thing out there that did the job 10 times better. But now I've got this thing that I bought a year ago when it was more expensive, and I'm pissed. So now I wait to buy stuff until I actually have a real good use for it... and often times I wait a little longer.
I tend to do this with the code I write as well. I prioritize the bugs I'm fixing and the features I'm implementing by the amount of information I know about it... not how long it will take to do the work. It kills my boss when I do it that way, because it sometimes means I'm doing the larger stuff last, when most project managers like big features done first... but I also have to redo a lot less work than everyone else because of this strategy.
Tuesday, October 10, 2006 10:56 AM
Just a quick note. I've disabled trackbacks for a while since I've been getting more trackback spam than actual trackbacks. I've got a couple changes to make to the code base I use, and will re-enable them when those have been completed.
Monday, October 02, 2006 12:55 PM
I wonder how many companies exist out there where this has happened to them:
Of course the reality is that the guy wasn't all that smart... he just thought out of the box so much, that he was unable to write intelligible or logical code, and didn't know enough English to write proper comments. And when I say he didn't know enough English, I'm not saying he was an H1B from another country... there are plenty of locally grown computer geeks that have a problem mastering their own language as well.
Prior to interviewing at a company a long time ago I was given a test by a staffing firm in order to test my knowledge of C++, which at the time was my language of choice. It was a timed test, and by the end of it I had a massive headache. Each question was filled with code written so poorly, with so many uses of pointer indirection, and non-standard pointer dereferencing, that I almost screamed. At the end of the test they gave me an opportunity to provide feedback, and I said something along the lines of:
To be honest, I hope I failed this test. I would never want to work with anyone who passed this test, because that means that they write code like this often enough to be able to answer your questions correctly. People who write code like this are not good programmers.
It goes without saying that the staffing company didn't offer me a position, though I barely passed the test.