I think the current meme that Twitter will kill Google started with this article Google next victim of creative destruction. Now, I'm seeing all sorts of articles in my news feeds about Twitter vs Google.
It's overblown. Borthwick's article focused on twitter's real-time search capabilities, and the fact that Google doesn't have an equivalent - this is an accurate assessment. But Google does better on things people don't necessarily tweet about. As an experiment, I decided to see which search engine could give me better results for my research topic. Compare the search results I get for "chinese tone assessment for call":
Twitter Search Results
Google Scholar Search Results
Google Search Results
As of now, Twitter search has nothing. Google Scholar, on the other hand, has 46,600 results. Regular Google search has about 2,170,000. Which one is more useful for my research purposes?
That's not to say that Twitter search is useless, I just think it occupies a complementary space relative to Google. There are certain information needs that Twitter doesn't fulfill that Google does. And vice-versa.
One way this could change is if I start tweeting my research activities, and other researchers tweet their research, and so and so forth. This would be interesting to try for a bit.
Chronic Dabbler
My focus varies randomly between current events, fatherhood, navel-gazing, programming, research, and technology.
March 06, 2009
Twitter Search?
February 12, 2009
Python Strangeness Resolved
Yesterday, I posted about what seemed to be a Python inconsistency. Basically, we were puzzled as to why Python would allow:
l = [1, 2, 3]
t = (4, 5, 6)
l += (4,)but would generate an error with:
l = [1, 2, 3]
t = (4, 5, 6)
l = l + (4,)One of the former TAs for 6.00 pointed out that there are two parts to consider. The first is that we shouldn't assume
__add__ (implements +) and __iadd__ (implements +=) have the same semantics. __iadd__ is supposed to actually modify the object in place. __add__ doesn't have that stipulation. Python has a fall back behavior where if it can't find
__iadd__ implemented for a particular object, then it will try to use __add__, however, for lists __iadd__ is overridden so that it functions like extend().The second point to consider is in the following bit of code:
l = [1,2,3]
t = (4,5,6)
l = l + tThe expression
l + t should evaluate to a value. What should the type be? tuple or list? It's ambiguous. Whereas:l = [1,2,3]
t = (4,5,6)
l += tIn
l += t, __iadd__ knows that it's modifying a list in place, so it can take appropriate action with a tuple argument. __iadd__ for tuples isn't implemented because tuples are immutable.Dilemma resolved.
February 11, 2009
Python Strangeness
I'm one of the teaching assistants (TA) for 6.00 this semester. Another TA sent this to our mailing list:
This is just for your amusement. I came across an interesting quirk of python.
First the normal stuff:
>>> [1,2,3] + [4] [1,2,3,4] >>> (1,2,3) + (4,) (1,2,3,4) >>> (1,2,3) + [4] Traceback (most recent call last): File "", line 1, in (1,2,3) + [4] TypeError: can only concatenate tuple (not "list") to tuple >>> [1,2,3] + (4,) Traceback (most recent call last): File " ", line 1, in [1,2,3] + (4,) TypeError: can only concatenate list (not "tuple") to list >>> l = [1,2,3] >>> l + (4,) Traceback (most recent call last): File " ", line 1, in l + (4,) TypeError: can only concatenate list (not "tuple") to list
So far so good, but now:
>>> l += (4,) >>> l [1, 2, 3, 4]
But it's not symmetric:
>>> l = (1,2,3) >>> l += [4] Traceback (most recent call last): File "", line 1, in l += [4] TypeError: can only concatenate tuple (not "list") to tuple
Which is to say, list's __iadd__ function is polymorphic to tuples, but
tuple's isn't to lists, and list's __add__ isn't either. Odd and a little
ugly, but yeah. Anyone know whether this is a bug or a feature?
February 02, 2009
Things I learned during my first 6 weeks of fatherhood
Cordelia Zorana turns 6 weeks old tomorrow, which is not some special number other than it's a number greater than 5 that is a multiple of 1, 2, and 3. It's also the first perfect number (h/t Ian). Natalija and I lucked out in many respects. Cordelia is perfectly healthy, not-too-fussy, and is already sleeping through the night - assuming, that is, she goes to sleep at the end of the evening.
That said, babies have no user manual, and this fact makes for some amusing learning experiences, mainly because they involve bodily fluids and solids.
- Babies use lots of diapers. They are amazing if only for the sheer volume of poop and pee they produce relative to their body size.
- There are few biological functions more awe-inspiring than a "meconium explosion."
- Never turn your back on an undiapered baby. They will use this opportunity to finish draining their bladder.
- A bath towel swaddling a baby waiting for a bath is not a substitute for a diaper. Avoid wearing nice clothes.
- Never turn your back on an undiapered baby. They will use this opportunity to finish emptying their bowel.
- You will be peed on.
- You will be pooped on.
- You will be puked on.
- The set of 6,7,8 is a power set. That is you may be peed on, you may be peed and pooped on, you may be peed and puked on, you may get the trifecta, etc.
- Nine times out of 10, the diaper will be wet when you stick a finger in to check. That 1 time out of 10 will teach you to peer down the backside first.
- Drool is part of the game. All those old t-shirts you failed to get rid of now have a new purpose.
- Baby heads are floppy. Fortunately, they're also bouncy, but don't press your luck.
- Mirrors fascinate the hell out of babies.
January 27, 2009
SimpleGTD
I wrote about my dismay at Google Notebook's despise a few days ago. Removing a key cog in my GTD system was bad mojo. Google has put the writing on the wall for Notebook, they say Notebook will still work for me now and into forever. Riiiiight...
As Jason Scott put so eloquently: F*** the Cloud.
But, the cloud is useful. And since I'm constantly hooked in, it only makes sense to use an internet application to keep track of all those nit-noid little tasks that pop into life when a pen and paper aren't handy, but strangely, a computer attached to the internet is up and running. I needed to replace Google Notebook with a cloud that wasn't about to dissipate soon.
My system didn't follow all the tenets of a good GTD system, but it got the central point: nothing was kept in my head. And the system was easy enough to use that I maintained it for a number of months.
My criteria were: fast, simple, and drag and drop. The most important for me is simple. A simple system is easier to maintain. Complicated applications are nice for the added features, but not for my intended use.
I looked at a number of suggested replacements for Notebook, and really only took serious looks at a few. Google Docs is simply a non-starter - the interface is too slow, too complicated, and not as drag-and-drop friendly as I'd like. I actually can't believe that they suggested this as a viable replacement. The appeal of Notebooks over Docs was the simplicity and speed.
I tried GMail Tasks for a few days. It's integrated into GMail, it's fast, and I can drag and reorder tasks (within a list); however, I disliked the fact that I could not access them from a separate webpage. I had to go through GMail. The integration aspect is wonderful - except when it's not. Email distracts me, and I like to open up my email only periodically to avoid frittering away time clicking refresh. I appreciate the intention, but it doesn't work for me. If I have email open to look at my tasks, it's too tempting.
I tried Zoho Notebook, but their interface was slower than I liked and the interface was too complicated for my purposes. I could insert individual notes and drag them around within a page, but I couldn't drag between pages or notebooks.
I looked at Evernote, the interface is snappier, it's on a number of platforms, and I can drag and drop, but the interface just feels too much for what I need.
I'm really picky about simplicity and that's where most of these Notebook replacements fell flat.
I was almost despairing when I found SimpleGTD. It's fast, simple, it has drag-and-drop between contexts. As an added bonus, because it is GTD centric, my system improved. I actually follow the projects/next actions principle more closely than I did with Google Notebook. I can go to a single page and tell you everything that I need to get done.
I also realize how much I was actually missing with my Google Notebook based system. What makes this system great is the way it automatically moves your project next actions to your next actions lists. When you finish a Next Action, you check a box and it disappears. The author seems to be actively engaged with his user base. If you used Notebook for GTD, then you should take a look at SimpleGTD.
January 21, 2009
Inaugural Hack
January 15, 2009
Web Data Hazards
My news reader delivered some bad news to me: Stopping Development on Google Notebook
Google Notebook did not find enough users to justify continued development, so Google will kill it. This makes me sad, but I understand why google chose to do it. Companies must tighten their belts these days.
This news means I will have to find another way to maintain my GTD lists. I based my system off of Google Notebook because of its availability, whereever I logged on. I even used it with my G1. Sadly, I do not know if any of Google's suggested replacements will fit my requirements.
Google says they will allow current users to continue accessing Notebook. How long will this last? I do not know, but I do not intent to wait to change my system. I would prefer to stay in the Google family of products, but that option may not exist.
This closure illustrates one of the hazards of maintaining data online: if the company axes the product, your data may go away, or you may need to alter your behaviors.

