Watching, Listening, Learning

I have been thinking about how education could be improved with technology.  Actually, I came up with an idea first and spent most of the time trying to justify the idea.  Does the order matter?  Of course, there is more self-hypnosis going on in one direction than the other.

For one thing, I believe too much emphasis is being placed on reading and writing.  A baby does not learn by reading and speaking comes before writing.  Reading is like eating which requires one to digest and integrate what one eats into.  Reading is tedious and forced reading is torturous.  Don't bother thinking too much about these bits.  They are mere justifications.

The idea, which I am amusing myself coming up with justifications for, is learning-by-experience, helping kids learn by letting them just watch and listen.  Instead of explaining how to count 1 to 10 or the multiplication table, just let them watch numbers being counted or multiplied, leaving them to discover the rules by themselves.

Learning-by-experience doesn't require technology, but technology can accelerate the rate of learning by increasing the amount of experience a child consumes.  As to the downsides, the idea turns kids into young couch potatos.  Also, some experiences will not learned but burned into the person's memory, a brainwashing of sort.

Anyway, it was a fun 10 minute break.

How BitTorrent Works

BitTorrent can be difficult to understand so I'll try to explain how it works.  Let me know if there are any mistakes.

BitTorrent is NOT Napster

BitTorrent is not a file sharing technology.  It's a download sharing technology.  With BitTorrent, you share with others what you are downloading while you are downloading.

What is a Torrent?

A torrent is just a web resource served by a web server and accessible by a URL.  Usually a torrent maps to a file or a folder of files.  Link to a torrent can be published and shared like other links so torrents are blogosphere-friendly.

How do I download a Torrent?

To download a torrent, you need to install a BitTorrent client that will run when a torrent link is clicked on.  Note that there is no need to launch the client explicitly so don't be surprised if there is nothing to launch after installing the client.

While Downloading a Torrent…

As mentioned above, clicking on a torrent link will cause the BitTorrent client to start downloading the torrent.  Torrent-enabled web server keeps track of the downloaders and refer them to each other so they can share what they downloaded so far.  If there is just one downloader, there is no one to share with so it's just regular file download.

If there are many downloaders, some of the downloaders will have parts others don't and could share those parts with others.  This reduces load on the web server and allows it to handle large number of downloaders easily.  Bandwidth saving also means a shocking ISP bill won't wipe the slashdotted smile off your face at the end of the month.

Corrupted Torrent?

While a torrent is being downloaded, some (all?) BitTorrent clients will scramble the content for reasons I am not sure of.  If there are more than one file in a torrent, all the downloaded files will be scrambled until all the files are downloaded completely.

Where Do I Find Torrents?

Websites, blogs, and Google.  There is no central directory like Napster.

In my opinion, flash flood nature of blogs will be well served by BitTorrent.  Likewise, link-happy nature of blogs will complement BitTorrent well.  Ultimately, I think a tailored variation of BitTorrent should be built into blog clients and servers for download sharing of feeds, images, enclosures, and other blog-related resources.  BitTorrent will encourage media-rich blog posts without applying power-law to the bloggers' wallet.  BitTorrent means blog torrents.

First Korean Pilot

Korea's first airplane pilot is Hee-sung Park according to a recently found pilot's license issued in America on July 7th, 1921.  He was one of many young Koreans sent by the Provisional Government of the Republic of Korea, established in Shanghai on April 13, 1919, to be trained as soldiers in America.

According to Early Korean Immigrants to America: Their Role in the Estabilishment of the Republic of Korea (88K PDF – HTML version), some went to the Korean Young Soldiers' School in Hastings, Nebraska to receive ROTC-style military training before joining the independence armies in Manchuria and Russia.  Mr. Park and a few others went to Willows Flight Academy in Northern California to receive pilot training.

The heart throbbing part of all this that there was a plan to bomb the Japanese Emperor's Palace.  Since there wasn't enough resources for a more ambitious plan like the one General Doolittle's Tokyo Raiders pulled off, the plan probably involved suicidal missions.

While I think the bombing would have delivered a shocking blow to the Japanese and given hope to Koreans struggling to free the country from Japan, I can't help pondering where the line between acts of heroism and acts of atrocities lies.


Last time I have been in an adult shop was about two years ago.  My wife was in Korea visiting her relatives and I was bored and horny but too lazy to go hunting for some skin.  Yes, it's the sad story of a Don Juan turned couch potato.  Anyhoo, I haven't been in an adult shop for a long time so I thought a visit was called for.  Besides, my wife not being at home widens the range of raunchyness I can mix with popcorn.

While checking out the boxes, I saw that many of the boxes had a category sticker labeled Gonzo.  Gonzo?  Is that some new fetish for the X-Generation?  So I asked the perv standing next to me what Gonzo was.  Despite his apparent embarrasement and suspicion (?!?), he explained that adult flicks with outrageous actions are labeled as Gonzo.  Gonzo!

You see how educational blogs can be?  For more education on a similar subject, read Tim Bray's Debbie does BitTorrent.

My Google Number

Latest Google fad seems to be calculating Google Number (via Elliotte Rusty Harold).  A person's Google Number is the number of results return by Google when queried with the person's name in double quotes like "Don Park".  Bill Gates and Michael Jackson are both around 2,900,000.  Dave Winer is 194,000 and Don Box is 127,000.  My google number is 83,700 which seems too high.

The problem is that my name is not unique enough, which means there are several Don Parks contributing to my google number.  Unfortunately, it's difficult to figure out what percentage of the Google search result is associated with me because results are sorted by Google page-ranking scores which is affected by my being a blogger.  Sampling first ten pages reveals that only about two percent of the results are not associated to me.  Hmm.

Anyway, Google Number is good for ego masturbation.  Try it when you are feeling depressed during the holiday season.  If your head gets too big, go stand in line at the nearest DMV for an hour.

Herons and Egrets

An hour ago, a mixed flock of herons and egrets came by and stood around long enough for me to take a picture then disappeared like magic.  I know that the fat one in the middle is a local (that's his fishing spot) but the rest are migrants.  Mixed migrating flock?  Hmm.

One of these days, I'll bike around Redwood Shores and take pictures of all the resident herons and egrets.  I think they somehow divided up the waterways in this area because I have yet to see them fight over their favorite fishing spots.  At each spot, I see the same bird day after day which makes me wonder if they sleep there as well.

Mind Pool

One discovery I made about myself since I started blogging is how my perspective about myself differs from most people.  For me, so called self is like a cat sitting on a wall that separates the real world from the inner world.  When I look at myself, I am looking down onto a community of emotions that interacts with each other like balls on a pool table.

When something happens that affects my inner world, I am sitting on the wall watching the balls move and bounce off walls or collide with other balls.  Under high emotion though, the cat will jump onto the table and become a large fast moving ball that knocks everything out of its path.  Watch out!

Microsoft Hiring Hypocrisy

With my stomach full of turkey, I was cleaning out my mailbox when I came upon a recent recruitment e-mail from Microsoft.  It was for some Windows security software developer positions which I am obviously over-qualified for based on my experiences and knowledge.  Wrong.  The job requires a 'BS or MS degree in CS or equivalent field'.

You see, I dropped out of UC Berkeley about 20 years ago because I lost interest in physics over software engineering.  I have been programming since I was in highschool and taught myself well-beyond the undergraduate CS level, so I started working as a software engineer instead of switching major to CS and face the boredom.  Besides, I was having difficulty paying my way through college.

Anway, I thought it was amusing that a company started by Bill Gates, a dropout like me, requires its engineers to have a degree.  Thinking that it might be a fluke, I checked some software architect positions at Microsoft Career pages and found that all of them requires a degree in CS or equivalent field.  Obviously the job requirement for the Chief Software Architect position is different from mere Software Architect positions at Microsoft.

If this is not hypocrisy, I don't know what is.

BitTorrent Model for Tech Sales

Reading Scoble's post on Dave's sour encounter with Best Buy and Scoble's suggestions on how to improve the tech sales/purchase experience made me think about the problem as well (the blogosphere is like this in that blog posts are like can openers.  Reading a post could open your can.)

A sales person, no matter how carefully you choose them, will be cluess about most of the product he is assigned to sell.  The first problem is that they lack the motivation to learn.  The second problem is that they are not excited about the product.  They are just clueless people who just wants to sell it and don't care whether the buyer is making the right purchase or not.

One solution I can think of is rather outrageous and could have some legal implications.  The core idea is to let customers sell to each other in return for discount coupons.

If I am really excited about a newly released laptop from HP, I would have scoured the net for information about the laptop and would be far more informed than your average sales person pushing HP products at stores.  Chances are also pretty good that I would be more informed than an employee of HP.  All those hours spent learning about the product are valuable.  Geeks are like that.

Now I walk into Best Buy to buy a laptop.  At this point, I know which laptops they carry and which ones I am interested in.  Only remaining issue at this point is the price.  If Best Buy offered me a $100 discount coupon on any product I help them sell, I would be looking around to see if anyone else is looking at the laptops I know about.  While I am not going to hang around for hours waiting for someone to come, I am very likely to tackle anyone who might be interested in the laptops I buy so I can get that discount coupon.  It doesn't matter how many figures I make a year.  It's the human nature thing.

The chance of me making a sales is arguably higher than a sales person because a) I am well informed about the products, b) I am highly enthusiastic about the products, and c) I am a peer.  Although I am doing this partly for that $100 coupon, I wouldn't be doing it unless it's an effort in the same direction I am going anyway.

This model is similar to the way BitTorrent works.  While I am downloading something via BitTorrent, I am sharing what I downloaded so far with other downloaders in return for faster downloading speed.  While I am making a purchase, I am sharing my knowledge and energy with other potential purchasers in return for discounts.

Too creative?  Well, consider the idea to be raw ore that needs further processing.  I am just a miner.

Update (11/29/2003)

There are some really good comments to this post, so don't forget to read them.  Also, Jason Lefkowitz and his father discussed the idea over Thanksgiving and came up with a possibly workable variation which discusses in a Anthill Communities blog post.  Interesting.

One potential pitfall in the idea seems to be that there won't be enough 'peers' hanging around to help or that they would be looked up on with suspicion.  I think it depends on the how the 'peer sales' business is designed.  A store 'well-known' as the place to go for geeks will attract enough during busy hours.

It is well known that people's behavior is highly contextual, particularly by where they are.  If the store encourages 'conversations' among customers in the store, customers will remember that store as the place to go to find others with whom they can talk to about products they are interested in.  As to the number, all you really need is one customer who is either knowledgeble or has friends who are.  Even if everyone present is clueless, there is certain comfort in asking others what they think of the product one is interested in.

Ultimately, it all depends on how the business is designed and how attractive the sales atmosphere is.  Think about the night club business and what it takes to create a successful night club.  In a sense, night clubs are peer sales business because it depends heavily on how customers interact with each other.  While I am not advocating that tech stores put bouncers at the door to control the quality of customers, encouraging certain types of customers to visit through marketing and in-store incentives will influence the sucess of the business.

BlogStAX: Using StAX to Parse RSS 2.0

Last night, I wrapped up the first release of my RSS 2.0 parser using the StAX API.  It's tentative name is BlogStAX and you can download it from the BlogStAX page.  Beside the obvious speed, you might find its design rather interesting.  While it is definitely not a turkey, consider this my Thanksgiving present to the open source community. 🙂

FYI, BlogStAX doesn't validate RSS feeds.  It used to validate and report the errors via the RSSValidationListener interface, but I ripped it out because validation checks were not complete.