General


Since I’m all by myself for the next few weeks with the wife and the girls in Japan, I’ve been finding projects and such to do that I normally never find the time to get around to.

Today I tackled the task of trying to retrieve data from my old old laptop computer, an Acer Travelmate 512T. Given as a gift to me by my parents when I returned from my LDS mission in 1999, it has some impressive specs: 400×800 12.1″ LCD monitor, blazing speed of 366 MHz with an awesome 32MB of RAM and a 4Gb HD. Truly an impressive machine. I used it daily from 1999-2004 or so, about the time I graduated with my BS. Since I came to Austin we had a better home computer for the family and I used it progressively less and less. The last time I remembered using it was the summer and fall of 2007, when my wife and the girls were in Japan for an especially long summer. That summer I used it primarily to dink around with some linux distributions, and to write some journal entries. It was those journal entries I was interested in retrieving, since that was during the time when my wife’s mother suddenly passed away, and so I had a lot to think and write about as I dealt with the emotional difficulties of that time.

So I dug out the laptop from the back of the closet upstairs. Battery was shot, but I still had the AC adapter. That was OK. The hinge in the screen/lid is broken, but the display still works and I’m able to get it open. I turn it on – and it gives me a BIOS error. The BIOS battery is dead! Fortunately though, it gives me the option to continue with the boot defaults. So I boot it with the default BIOS, and it takes me to a GRUB screen for an Ubuntu installation – that must have been the last linux distro that I installed on it. However, at the GRUB screen it locks up. It doesn’t recognize any keyboard input for some reason, and after a few taps it starts beeping: the familiar sound of when the keyboard buffer is full. I wait a few minutes, but nothing changes. It looks like perhaps GRUB or the boot sector is corrupted.

Trying to fix this is beyond my expertise, so I decide try a different approach: a live CD. I have a bunch of old Ubuntu, Knoppix, and other linux live CDs that I can try. Since it was an Ubuntu installation, I try one of my old Ubuntu CDs. I didn’t want to try a newer one, because with a whopping 366 MHz of CPU speed and 32 Mb of RAM, there’s no way it could handle the more recent versions of Ubuntu. I had an Ubuntu v3 CD so I tried that. Well, it worked – sort of – but it literally took 30 minutes for it to boot up. When it finally finished, I went to the file browser to see what was there. It had 3 hda’s: hda1 is generated by the Ubuntu live CD to house the OS files and actually resides in memory. hda2 was a few hundred megabytes, and hda3 was the rest of the hard drive. Maybe hda2 housed the critical OS files, or maybe it was originally a swap drive, but it didn’t recognize it as such. However, Ubuntu was unable to mount either of them: it recognized they were there, but couldn’t recognize any kind of file system.

It didn’t look good, perhaps the entire file system or disk was corrupt. Well, Ubuntu was no good, so I decided to try one of my other distributions: Knoppix, Minty, Puppy, Mandriva, an old Mandrake (before it became Mandriva), Red Hat, and DSL. Mandriva, Mandrake, and Red Hat were not live CDs. Of these, I figured DSL was the best choice for an old small machine.

So DSL only took about 5 minutes to boot up (a significant improvement!), and though it is a very simplified GUI, it seemed to work flawlessly. So the real question was: would it mount the drive? It was unable to mount hda2, but hda3 successfully mounted! So what was on it? I couldn’t find a graphical file browser, so I had to go to the good ol’ command line. I had trouble remembering the linux filesystem structure, but after a few minutes of scratching my head I remembered that the various mounted volumes are in /mnt/, so /mnt/hda3/ took me to the drive in question. Inside that there was a /home/derek/journal/. Jackpot! I went there and cated a few of the files there, I had written them in plain text so they were easily readable: except where I had used Japanese characters. DSL didn’t seem to be able to do unicode, but as long as I could copy the files as-is I figured there wouldn’t be a problem.

So the next question was: how to copy them? This laptop had a PCMCIA ethernet card, a 3.5″ floppy drive, and one single USB port. I didn’t want to mess with trying to get the ethernet working and configured, not to mention even if I did, how would I copy it to my main computer? SAMBA or something? I didn’t have the slightest clue of how to do that. I figured the USB port was the easiest. I plugged in a thumb drive, mounted it without a problem, and copied the whole directory over. I also did a quick look at what else was there. The most interesting was a bunch of configuration files for DOSBox, and a file called ‘BattleTech – The Crescent Hawks Revenge.zip’. I copied it over for good measure. That game was way fun, though fiendishly hard.

I just got back from 3 months working in Japan on an assignment. It was a very interesting experience, but I’m glad to be back with my family.

One thing I noticed that I had never seen before: looking to buy a souvenir for a coworker back in Austin, my boss and I were in a high-scale department store in Fukuoka. Since we were looking for something for my bosses admin, we were were in the beauty/bath section. It was a little strange, since were 1) the only males I could see anywhere, and the only foreigners I could see anywhere.

One other thing that I thought was strange though: I saw a girl wearing HUGE plastic horn-rimmed glasses, that quite obviously had absolutely no lenses at all. I had no idea what to make of that, but evidently I’m not the first person to notice this trend.

My flight from Seoul back to Fukuoka was at 6:30 pm, so that meant I had until about 2:30 to 3:00 to do something on Saturday morning. At one of my friend’s suggestion, I decided to go on a guided tour of the DMZ, the border with North Korea.

During my short trip there I was constantly seeing things that reminded me of Japan, but there is one way that South Korea is totally unique: having a border with North Korea. It’s strange to think that after 50 years the war is still technically ongoing, i.e. there has never been a formal peace accord, just a cease-fire. As the tour bus slowly approached the DMZ, there were obvious changes that the tour guide pointed out to us: fences topped with razor wire along the Han river (the river starts in North Korea and becomes the border as it flows south and then west, so it has been an popular method for saboteurs, commandos, etc. to try and slip into South Korea), guard posts and pillboxes every 500m with ROK soldiers standing guard. Another method that the North Koreans set up was tunnels, and one of the discovered tunnels was the first stop on the tour. Before we got there though, we had to pass a checkpoint at the entrance to the army-controlled zone. Though still outside of the actual DMZ, no one goes in or out without the soldiers checking your ID (passports for all of us on the tour bus) and that you have a reason to be there. Although farms are maintained in the area, there is a curfew so that the farmers there can only work during the day and have to leave before nightfall.
(more…)

And by short, I mean short. I’ve been in in Kumamoto, Japan on an extended business trip for most of the summer (since mid-May, in fact), working on a project here. In fact the trip is so long that I had a problem: one week before I left my wife pointed out to me that my scheduled stay was about 95 days, and I can only stay in Japan 90 days without a visa. Unfortunately the travel office for my company didn’t realize it either: I guess they generally deal with people going to Japan for a week or two, or a year or two, but not around 3 months.

It was too late to apply for a visa, so the alternative plan was for me to briefly leave Japan for a day or two while I was there, and when I get back my 90 days should reset. So I ended up with a ticket to go to Seoul, South Korea on July 1st and then fly back to Japan on July 2nd. I asked some Korean friends of mine for suggestions as to what I should do while I’m in Seoul for a whopping 24 hours. So here was how my trip began:

June 1st: 10:30 am: Leave from Fukuoaka airport on Korean airlines flight. The stewardesses (or flight attendants, if you insist on PC), were without exception, young, friendly, and very attractive. I reminded me a bit of Singapore airlines, although I don’t think anything comes close to those dresses the Singapore airlines stewardesses wear. All the Korea Air stewardesses had very good English, and impeccable Japanese that was so good I had trouble distinguishing it from native fluency.

June 1st: 11:30 am: (Just a 1 hour flight, and they still served a meal and drinks!) Arrive at Incheon airport. No problems with customs and immigration, I just have the clothes on my back and a backpack with a change of clothes. As soon as I leave customs and enter the public area of the airport, I must have had an unmistakable ‘wide-eyed lost foreigner’ look, because I’m immediately accosted by an older unkempt man with broken English asking if I need help getting a bus or taxi. It was tempting, since I was there as part of a business trip I could probably expense it, but I wanted to do it the hard way.

(more…)


How is it I have never seen this before? This is totally awesome.

My blog, since it has a posting frequency and readership in the single digits, doesn’t generate a lot of traffic or original viewers. But like any blog, comment spam is a continuous problem. I use the Akismet and WP-SpamFree plugins which seem to do a very good job of keeping out the spam, even without captchas. However recently I have been getting a few comments which I can’t really determine if they are spam or not. Here are some of them:

This sort of details will need to be valued by everyone – it is some thing that I believe we can all draw upon. I very significantly like the theme you’re applying right here which I consider is wordpress isn’t it? I have been searching all around for one thing simular but have yet to uncover anything suitable for my site. I looked at the link on your footer and will try and download a copy of it for myself – thanks.

I just wanted to let you know that I learned a lot from your post and I really enjoyed reading it. I was doing some research on google and I’m happy I discovered your blog. Again, thanks for the info.

Wonderful Blog :) Very Entertaining and I love your perspective. I’ll be adding you to my feed reader and be back again the next time you update. Regards

Hi, I thought I would drop you a line and inform you that your web site layout is really screwed up on the Firefox browser. Seems to work good in IE though. Anyhow keep up the good work.

So I’m not too sure what to make of comments like these. They’re not blatant spam, I mean, they obviously aren’t shilling for viagra or Texas hold-em’ or pump-and-dump stocks or some such. However, what makes them so suspicious is how generic they are. Any one of these comments could be put on almost any blog post anywhere, and they wouldn’t seem out of place… But not quite. That first one is suspicious because the specific post it was commenting on was not really a diary of personal experiences like the comment was alluding to. Also the English seems a bit non-native to me. The last comment there is bogus because I only use Firefox and I know the layout is fine.

So here’s my theory. I think these are all spam, but their initial purpose is not to put blogs in comment spam hell. I think that these are essentially ‘tracer’ rounds in the arms race between spammer and spam blockers. In other words, the spammers are just testing to see what kind of comments can make it through the spam filters, so they can more finely tweak their spamming programs.

I don’t want to help the spammers, so I’ve decided to think of these comments as the appetizer that comes before the main course: a main course of spam. Spam + appetizer = spametizer ?

Cyber-bullying and such has recently come into the consciousness and lexicon of the internet-using west. Incidents like the Star Wars kid or more tragically Megan Meier have made us more aware and wary of what us and our children are doing online.

In East Asia though, there is another type of cyber-bullying that hasn’t really been noticed so much here in the west yet. It’s called internet vigilantism, and this is where seemingly the entire internet attacks someone online, leading to real-life consequences.

There are cases of internet vigilantism in the west, but there has been almost no backlash against it because it’s almost always directed towards individuals that have committed fraud, theft, or pedophile crimes. 419 Eater is famous for baiting Nigerian scammers, and Anonymous/4chan (No link for 4chan. You don’t want to go there. Really, you don’t.) has baited and outed pedophiles in the past. Similarly there have been internet blitzes against people that have thrown dogs off of a cliff. Generally this kind of internet vigilantism results in people working to 1) identify the perpetrator 2) make their identity public, and 3) alert law enforcement. Especially in the case of the dog-throwing soldier there were also numerous death threats, etc., but overall the internet vigilantism served to bring the criminals to justice.

This isn’t how it’s been working in Asia, especially Korea. This article calls it ‘witch hunting’, which is perhaps a better term because many of these cases were not against criminals, but against normal people that had done something that people found offensive. The above article mentions the ‘loser girl‘:

(more…)

I was chatting with my brother Porter the other day and he told me how he made a Tower of Hanoi game for his children to play with. It’s a fairly simple game with a well-known binary sequence to solving it, in fact it’s one of the few puzzle games where the God’s Algorithm (a shortest-number-of-moves algorithm that can be mathematically proven) exists and is known. The shortest-path solution takes exactly 2^n-1 moves to move the disks from one post to another. Porter mentioned in his next blog post that him and his son then calculated how high of a stack The Flash could do if he could move 1 million disks per second, and concluded that it would still take him longer than the age of the universe to complete the 100-disk version.

That’s a good start, but any self-respecting geek has to take things a notch further. First I needed to derive a formula that let’s me calculate how high of a stack I can complete in a given time given a rate of how many disks per second I can move. The original equation we can rearrange as:

\displaystyle{N=\frac{\ln (n+1)}{\ln  2}} ,

where N is the number of disks, and n is the number of moves. Then we can replace the n with n=\omega t, where \omega is the frequency of number of moves per unit of time, and t is the total time. So now our equation is:
\displaystyle{N=\frac{\ln (\omega  t)}{\ln  2}} .

You may notice that I have ignored the \small{+1}. This is because the \omega t will be so large that we can ignore the the \small{+1}, as it is inconsequential.

This formula let’s us do some basic calculations. If we take t to be the age of the universe in seconds (about \small{4.33\times 10^{17}s}) then we have the following number of disks we can expect to complete within that time for the given number of disks moved per second:

\begin{array}{cc} \omega ,s^{-1} & N,\text{disks} \\ \hline 1 & 58 \\ 10 & 61 \\ 100 & 65 \\ 1000 & 68 \\ 1\times 10^6 & 78 \\ 1\times 10^9 & 88\end{array}

So we can see that if an immortal Flash were to move disks for the entire age of the current universe at the rate of 1000 disks/s, then he could only expect to complete a stack of 68 disks. Increasing it to 1 billion disks/s only increases it to 88 disks! Still a far cry from completing 100 disks.

So the next question is what kind of energy/power requirement would we need to move the disks at these kind of rates? First we’ll need to make some assumptions on mass and distance. One typical move is shown in the animated gif below (if someone knows how to set it so that it will repeat more than once, please let me know):

In terms of mechanics, to move the disk from column one to column two the disk has to do six steps: 1) accelerate up until its halfway up the column, 2) decelerate until it comes to a stop having just cleared the column, 3) accelerate horizontally until its halfway to the next column, 4) decelerate until it comes to a stop above the new column, 5) accelerate down until it’s halfway down the new column, and finally 6) decelerate until it comes to a stop in the new position.

Now you may say that we don’t need to decelerate the disk as it reaches its resting point and just let it smack into the resultant stack, but when the speeds become really fast the energy will be enough to obliterate any disk, so we’ll include the final deceleration. We’ll also assume this is done in a vacuum so we can ignore wind resistance, otherwise the heat would be more than enough to ionize the disks (those that have read the well known Physics of Santa will be familiar with this). At some point the acceleration alone will become greater than the structural integrity of the disks, as well as relativistic effects at some point coming into play. We’ll get to those in a moment. For now though, we’ll simplify the 6 steps above by making them all the same length for every step. We can do this by putting the three columns in a triangular arrangement and then saying the disks are thin enough that we can neglect the change in the height of the stack as we make progress. We’ll say the columns are 10 cm apart and 10 cm high, so each of the 6 steps will be 5 cm. Also we’ll say each disk weighs 100 g.

Using classical mechanics (ignoring relativistic effects), the time to complete one step is simply 1/6 of a move, so that is:

\displaystyle{t=\frac{1}{6}\omega ^{-1}} .

The maximum velocity attained (so that we can know if we’re getting close to relativistic speeds) is:
\displaystyle{v_m=\frac{2L}{t}} .

The acceleration the disk undergoes (to see of we are overcoming structural integrity) is:
\displaystyle{a = \frac{2 L}{t^2}} .

The energy required to complete one step is:
\displaystyle{E=\frac{2m L^2}{t^2}} .

And finally the power required to keep the disks moving is:
\displaystyle{P=\frac{2m L^2}{t^3}} .

Putting all these together in a handy chart we can see the results.

\small{\begin{array}{ccccccc}\omega, s^{-1}& N & t_{step}, s & v_{\max},m/s & a,m/s^2 & E, J & P, W  \\ \hline 1 & 58 & 1.67\times 10^{-1} & 0.6 & 3.6 & 1.8\times 10^{-2} & 0.108 \\ 10 & 61 & 1.67\times 10^{-2} & 6 & 360 & 1.8 & 108 \\ 100 & 65 & 1.67\times 10^{-3} & 60 & 3.6\times 10^4 & 180 & 1.08\times 10^5 \\ 1000 & 68 & 1.67\times 10^{-4} & 600 & 3.6\times 10^6 & 1.8\times 10^4 & 1.08\times 10^8 \\ 1\times 10^6 & 78 & 1.67\times 10^{-7} & 6\times 10^5 & 3.6\times 10^{12} & 1.8\times 10^{10} & 1.08\times 10^{17} \\ 1\times 10^9 & 88 & 1.67\times 10^{-10} & 6\times 10^8 & 3.6\times 10^{18} & 1.8\times 10^{16} & 1.08\times 10^{26}\end{array}}

And the results are pretty interesting. We can determine what the trends are with the formulas above, and we can see how the various values scale with the frequency by replacing t in the equations with \frac{1}{6}\omega ^{-1}. That gives us the following scaling arguments: v_m\sim \omega , a\sim \omega^2 , E\sim \omega^2 , and P\sim \omega^3 . In other words, if we double the frequency of the steps we will double the maximum velocity, but the acceleration and the energy will change by 4x, and the required power will change by 8x! This comes out to be a huge power requirement for the higher frequencies.

To get an idea of how huge the power requirements become, here are some power equivalents on the same order of magnitude:
To get \small{0.1 W}, you would need the power consumption of about 10 DVD drive lasers.
To get \small{100 W}, you would need the electrical output of a 1×1 m solar panel in full sunlight.
To get \small{1\times 10^{5} W}, you would need the power output of a typical automobile.
To get \small{1\times 10^{8} W}, you would need the power output of a Boeing 777.
To get \small{1\times 10^{17} W}, you would need the total power received by the earth from the sun.
And to get \small{1\times 10^{26} W}, you would need about 1/3 the total power output from the sun.
(All order of magnitude power estimates are from this Wikipedia page.)

How does this highest frequency look with our other limits on velocity and acceleration? We should be OK on velocity, since 6\times 10^8 m/s is still only 1/5 the speed of light, slow enough that we can still ignore relativistic effects. As for the stress that the object undergoes due to acceleration, that’s fairly simple to calculate too. Stress is simply force over area, given in this simple formula:

\displaystyle{\sigma=\frac{F}{A}} .

Where F is the force and a is the cross-sectional area. We can get the force from Newton’s 2nd law: F=ma. For the area we will need to assume a cross-sectional area of the disks themselves. Assuming the disks are about 3 cm in diameter, that gives about 7 cm^2 in area. Calculating the stress that each disk receives we get the following:
\begin{array}{cc} \omega ,s^{-1} & \sigma , \text{Pa} \\ \hline 1 & 510 \\ 10 & 5.1\times 10^4 \\ 100 & 5.1\times 10^6 \\ 1000 & 5.1\times 10^8 \\ 1\times 10^6 & 5.1\times 10^{14} \\ 1\times 10^9 & 5.1\times 10^{20}\end{array}

Looking up the strength of various materials, the highest two were for high-impact steel and diamond, both being around 1 GPa \left(1\times 10^9\text{Pa}\right). So from the table, we could expect to move 1000 disks per second, but the disks would fail due to the acceleration if we tried to go much faster than that.

Assuming that we could make disks out of impossibilium that can take any amount of stress, then for The Flash to complete a Tower of Hanoi with 88 disks, he would need to move 1 billion disks per second at a speed of about 1/5 the speed of light for 10 trillion years, and he would require the constant power output of about 1/3 of the sun (or a series of equivalent-sized stars, since a single star won’t last that long).

That’s it for this post, in the next post I’ll try to include relativistic effects for even faster speeds.

Overall, I consider myself to be fairly tech-savvy. I program in multiple languages for my research (right now: python and MATLAB, though I have used C++), I use both windows and linux systems (though I’m still not entirely comfortable in linux I’m getting there), and when I have computer problems both software and hardware I can usually diagnose and fix the problem.

However, when it comes to new trends on the internet, sometimes I can be quite a Luddite. I still have yet to register on facebook/myspace (I can’t remember which one is considered ‘cool’ and which is considered ‘stalker’s playground’), and I have no desire whatsoever to ‘tweet’. I blog is only intermittently updated, and its traffic is somewhere near the bottom of the internet. I’m fine with that, since notoriety on the internet is definitely a two-edged sword.

A couple of days ago though, I finally decided to start using RSS feeds for checking websites. My morning internet routine has grown to include several dozen websites, and many of them only update every few days. There are other sites that update less than once a week, and I always forget to check them by the time the next week comes around. (The ones that update many times a day, like Fark, Reddit, and Digg I had to quit cold turkey. They were just sucking up too much time).

So I broke down and registered on google for their google reader service, and started registering for RSS feeds. It’s amazingly simple and it works very well. I just wish I had tried it earlier. Another thing that I found it is great for is keeping track of the latest research. Not only do many research journals have RSS feeds, but some of the larger databases for scholarly research will let you do an RSS feed on search results, so that if a paper that matches your search criteria is published in any of the journals in their database, they will send a link to you. I think it’s a great idea and I hope I can get a lot out of it.

I just saw this video for a modern reinterpretation of Little Red Riding Hood. I don’t know what to call this style, but the execution is excellent.

Slagsmålsklubben – Sponsored by destiny from Tomas Nilsson on Vimeo.

Next Page »