Apr
26
2009
Math is composed of a small set of rules or postulates that together can be used to express formulas that try to explain the universe. Not unlike the Three Laws of Robotics, here are the Three Laws of Twitters. These laws are fundamental, much like mathematical axioms.
- The First Twitter Axiom: If you explicitly ask others to retweet your tweet, then your tweet is probably not worth the retweet.
- The Second Twitter Axiom: It’s not the number of followers that matters, it is how you use it.
- The Third Twitter Axiom: Don’t take the Twitter question to literal. In addition to asking what you are doing, ask how you are going to change the world?
Here is a bonus fourth rule…
The Fourth Twitter Axiom: If it takes you three or more tweets to say it, it should be a blog post.
These laws were created out of a conversation between techknow, adriandz, SeanLazer. Follow us to join the conversation.
1 comment | posted in Rant, TechKnow, Tools
Apr
14
2009
Twitter Clients
Writing a Twitter client has become the new Hello, World! There are Twitter libraries in just about every major language such as PHP, Ruby, ActionScript, Python, Java, and more. The Twitter API is simple enough that you don’t need much, you can go a long way with the command line and curl.
As Twitter popularity grows so does the number of Twitter applications. On the iPhone I have tried three of them and on the desktop one. But with all the growth and creativity surrounding Twitter the desktop are essentially all clones of the official Twitter web interface.
To amend for the huge gap in what Twitter client do and what I think they can do in terms of missing features I have thrown my developer hat into the ring. There is a virtual arms race as startups rush to develop Twitter desktop clients. To add fuel to the fire, a few days ago a new Twitter desktop client was announced.
Tweetbox
Tweetbox, released under pre-beta, is my hello, world twitter client. Tweetbox is written mostly in JavaScript and jQuery with a PHP back end that acts as a Proxy to Twitter. Tweetbox also uses Google Gears for added functionality and desktop interactivity. As of the current release of Tweetbox, version 0.1, the key features is the ability to have multiple Twitter accounts. I currently have a huge laundry list of features to complete, including UI plastic surgery, adding support for timelines, retweets, and replies.
I do hope that in the near future Tweetbox will hit the sweet spot for some users. An ultimate goal is to allow extension points to allow for plugins.
2 comments | posted in JavaScript, Programming, TechKnow, Tools
Apr
14
2009
The anatomy of a Twitter status update, at just 144 characters, makes it so easy to manipulate, store, process, and parse. The at replies feature in Twitter makes it a two-way communication medium. The hashtags adds context to the million of tweets running through the system. And the millions of users are finding new and dynamic ways to interact with the system. Twitter is like a web version of the walkie-talkie, some might say that it is the web version of a party line. All of the simplicity, momentum, and openness makes Twitter an interesting platform to play with and develop new social protocols.
There are a growing number of applications that are built on top of the Twitter platform. The first incarnation of Twitter apps piggybacked on your Twitter credentials, including your username and password. These applications include Twitpics, StockTwits, and Twittervision. This is an insecure method authentication and Twitter has announced their plans to move to OAuth
Personally, I think there is a more organic and interesting way to interact with users on Twitter that is just gaining traction and that is via the at replies. Innovative and non-intrusive applications are using the at replies and hashtags as a social protocol. For example if you at reply wefollow with three hashtags it will index you on their Twitter directory under those tags as categories. At reply Mahalo Answers with your questions and they will reply back with an answer. You can also have your tweets read out loud on an audio stream when you at reply a message to No Agenda Stream. Send an at reply Ruby programming language expression to rubx will reply back to you the output value of that expression after the run it through a Ruby parser. All of this is done automatically and programmaticly.
If you want to get started writing your first Twitter application, here is a tutorial that will help you get started with the Twitter Ruby Gem.
no comments | posted in Programming, TechKnow, Tools
Apr
10
2009
Back in May 2007, Digg users revolted against the popular social bookmarking web service over Digg’s overzealous removal of articles that mentioned the AACS key. The first Digg Rebellion was resolved with Digg caving in their users’ wisdom of crowds. The Second Digg Intifada began when Digg launched their now infamous DiggBar, aka DoucheBar. The DiggBar iframe carjacks your content. Since the launch of the DiggBar, all the links on Digg’s front page that used to refer to third party and often independent content producers not refers back to Digg. When you link on a Digg link, they load your content in an iframe below their DiggBar. The DiggBar allows ‘digg users’ to find similar articles, vote up and down, and click on Digg ads.
We have seen similar polemic behavior from you upstart entrepreneurs before, not to long ago Facebook faced a similar uprising over their Terms of Service. Facebook reversed their Terms of Service, I wonder how Digg will save face if not their good will.
Here are some choice reactions to the DiggBar.
no comments | posted in Rant, TechKnow, Tools
Apr
8
2009
Google App Engine was originally released, in Google beta, a year ago. Google App Engine originally had programming support for the Python programming language, but today, on the one year anniversary of its beta release Google has added Java support. Building Java support into Google App Engine means that they have built it for JRuby, Groovy, JavaScript, and all those languages that run on the JVM.
You can request access to Google App Engine for Java via this sign up. I am sure there will be a more news, documentation, and tutorials at Google I/O Developer Conference in May. In the mean time here are plenty of resources to get you started.
Google App Engine for Java
no comments | posted in Java, Ruby, TechKnow, Tools
Apr
7
2009
Here is a Java certification sort of question. Inside a nested inner class, how do you refer to the containing outer class?
public class MyClass {
private String outerClassField = "some value";
public void outerClassMethod() {
someObject.addMyListener(new MyListener() {
public void processEvent(MyEvent e) {
// How do you access the variable outerClassField?
}
});
}
}
You can’t use the this keyword because that will reference the inner class! The only way I know about, and that I have used before, is to use the class name. Such as the following example.
public class MyClass {
private String outerClassField = "some value";
public void outerClassMethod() {
someObject.addMyListener(new MyListener() {
public void processEvent(MyEvent e) {
MyClass.this.outherClassField;
}
});
}
}
5 comments | posted in TechKnow