Art of Another Kind

I think Halle Berry is sexy, particularly her face, voice, and, er, you know what.  But I didn't think her nose was that particularly good looking until I saw her Catwoman photos like the one above.  Isn't it amazing how hiding the nose under the mask changes her overall look?  She doesn't look like Halle Berry at all.  Even her you know what looks less attractive.  Weird.

I filed this post under Technical category for obvious reasons.

Art of Assembly

While my first program was written in Basic, a simple game typed onto a neat roll of yellow paper tape during lunch hour, my first program as an engineer was written in assembly.  I still have nostalgia for the assembly language and it's ability to squeeze amazing performance out of even whimpy computers.  While the popularity of assembly language has dimished much over the years, you can still enjoy it and might even find good excuses to use it again.

Check out the Art of Assembly Language Programming and HLA (High-Level Assembly) site.  There you can find the latest version of the classic Art of Assembly book and assembly language tools/libraries.

Tortures for Dummies

Usually Tim Bray makes a lot of sense, but his recent post Torture didn't make much sense to me.  This is what he wrote about those soldiers at Abu Ghraib who are being charged:

This recent New York Times piece got me mad enough to provoke this essay. It’s a lengthy cri de coeur about those poor soldiers on the scene at Abu Ghraib, understaffed, undertrained, overworked. Excuse me? They’re torturers! They’re sick out-of-control sadistic animals. Can we have a sense of proportion here?

Apparently, he believes in the saying you are what you do.  In contrast, I am more partial toward you are a battleground of good and evil and everyone is capable of committing inhumane acts under the right conditions.

We know that inhumane acts can be brought about in many ways, most notorious being brainwashing.  To brainwash a person, one must have control over the victim's surrounding through isolation or immersion.  Isn't a prison an ideal environment for brainwashing whether the victim is a prisoner or a guard?  Can one brainwash oneself?  Definitely.  If your peers are brainwashed, what's you chance of being infected?

Even if you have the iron will, a rare property in my opinion, you won't last long under interrogation because interrogation is an art of not only pain but an art of brainwashing.  To break you, they will first break your perception of the world, twisting it as if opening a jar, aligning it into a position that will give, turning allies into enemies and friends into betrayers.  Guess who those soldiers were interacting with on daily basis?  That's right, professional brainwashers.

I am not saying they are all angels corrupted by evil interrogators.  What I am saying is that they are not too different from you and I.  The problem is not just them, but all of us.

You know what you did, but you know not what you do.

Phishmark Patent

I found out last Friday that the Phishmark idea is likely to be covered by a patent filed by PassMark two years ago.  Although I haven't read their patent application yet, discussion with Louie Gasparini, CTO of PassMark, made it clear that the broad languages used in the patent covers not just use of user/site specific visuals on the webpages for website authenticity, but also use of user/device-specific visuals in client-software for verification of UI authenticity.

Since I never planned to patent Phishmark and have many other ideas to pursue, I am not planning to disputing PassMark's patent.  If you have planned to use Phishmark in your product already, I advise you to talk to PassMark.  I am sorry if this turn of event affects your product.  As for me, I'll have to credit one of my clients for the hours I spent implementing it.

Does this upset me?  Not really.  Anyone can have ideas and I have more fair share of them.  Execution is important too but I care more about people and how ideas affect their lives.  Phishmark was a good idea, but someone else had a similar idea and had the courage to follow through.  Yes, the situation is rather awkward, but not uncommon.

As they say, if your pants are uncomfortable, keep walking.

Turning News Aggregators into News Distributors

Although I travel in the wide open realm of ideas, I am not into impractical ideas no matter how attractive they may be.  My excuse for wasting my time with impractical ideas is that they tend to be stepstones to practical ones.  Anyhow, here is one I thought could be of immediate use to the blogosphere.

The idea is to turn all those news aggregator clients out there into news distributors.  So all the RSS files I download every morning is also made available to others.  Whether sharing of RSS files and resources is done through a variation of BitTorrents, blogosphere-specific P2P network, or existing P2P networks is irrelevant as long as the sharing is done by those who can.

I know this is probably not a new idea, but I am peddling it here because I believe this must be done if blogosphere is to continue growing.  At some point, distribution of load across news aggregators must be discussed but that's a post topic for the future.  For now, enthusiasm for something new is enough to power this effort.

Filelist and Wishlist

My recent burst of interest in P2P networks stems from the idea of sharing wishlists which I mentioned in my comment about CleverCactus Share.  Diego expressed some enthusiasm about the idea so there is a good chance it will appear in ClearCactus Share.

But my mind is already leaping forward exploring generalizations and mutations of the basic idea of sharing and seemlessly integrating the capability into the operating system.  To power this exploration, I am asking questions like:

  • What is a file?
  • What does it mean to share?
  • How can I share something without having it?
  • How can I share nameless, locationless, temporary, and formless objects?
  • What if everything is shared by default?
  • What if bots are loosened into the shared space?

Many of the answers seem to point to a need to review some basic assumptions pounded into us by file systems and databases like names, locations, queries, etc.

If you drag a file from here to there, people expect the object to move from here to there and also expect the operation to take some time.

If the object is a wish, meaning it will arrive sometime in the future, dragging it from here to there could mean it should be moved there when it arrives.  That's like an instruction.  But people usually don't give instructions to empty air.  Is it better to introduce a bot-like objects or should future actions or 'promises' be turned into an object?

There is also the problem of having too many P2P networks.  They can be abstracted or hidden behind other shapes and forms.  At that point, even services like eBay and Amazon can be thrown into the mesh.  An auction involves someone wanting to sell something they either own or can provide.  Drag and drop this from here to there and eventually a real-world object is 'downloaded' to someone's doorstep.  All this is nice except abstraction and usuability don't often walk hand-in-hand.

I know that I am overstepping the bounds of practicality in many areas, but overreaching is often useful when searching through the solution space.  Anyway, these are kind of things I occupy weekends with these days.

MLDonkey and BitTorrent

I was looking through MLDonkey wiki when I ran into this technical yet compact explanation of how BitTorrent protocol works.  I already know how BT works but I thought my fellow geeks might find this useful since the diagrams at the official BT site aren't that useful:

It [BitTorrent] divides shared data (a single file or a directory) into pieces, typically of 256 KiB. A SHA-1 checksum is computed for each piece, and used to check the piece has been correctly downloaded. The checksums are stored in a .torrent file, along with filenames. The .torrent file also nominates a tracker, a Web resource that introduces peers to each other. Peers contact each other, learn what pieces they have available, request the rarest (least commonly seen) pieces first, and send requested pieces.

Just in case you are wondering, MLDonkey is a universal client of sort for many P2P networks including FastTrack, eDonkey2000, Gnutella, and Direct Connect.  It supports BitTorrent too but then BitTorrent is not really a network.  While MLDonkey is open source, it's written in Ocaml which is powerful but non-mainstream.

Good News for Hackers

Writer of Sasser worm was caught today in Rotenburg (not Rottenbug, mind you) and Microsoft awarded $250K to the informer.  Brilliant.  *eyeroll*  Now we'll have seasoned hackers recruiting and training talented minors to write and spread worms just so they can sell them out for reward money.

Hey, kid.  Keep your mouth shut and you'll be world famous, $50K richer, and even receive job offers.  Wouldn't your girlfriend be impressed?

P2P Spoofing Patent?

Some years ago, a collegue of mine asked me how I would stop music pirating.  I haven't thought about the problem before but it took me only a minute to decide P2P spoofing was the best intermediate answer.  It was obvious that traditional DRM wouldn't work and spoofing attacked the problem at reasonable cost, could be deployed fast, and adapt to changes in real time.  My collegue nodded and that was that.

According to Wired, someone had the exact same idea and filed a patent in 2000.  Now I am scratching my head.  Is this a silly patent or not?  Should I be filing patents on similar ideas?  Heck, I can pump out enough ideas like that everyday to keep an army of patent lawyers busy if someone would just keep throwing problems at me and file my answers as patents.  I even have ideas on how to efficiently generate new patents.  Maybe I'll even best IBM at the game.

If you are an idle patent lawyer, come to me and I'll keep you busy.  How does 50-50 sound?  Filing cost?  No problem.  Let private investors place 'bets' on the patent applications they like out of daily streams of patent applications.  Together we'll worsen the patent problem ten-fold within a year and force the Congress to come up with a better solution.  Now that's a silver-spoon full of patriotism for ya.  🙂