This is for my reference as much as yours.
My GitHub Repository. Thinking this might be the home of larger projects. For now, this page lives there.
My Google Code Repository, small, experimental, and one-off stuff pretty much.
Here's my Amazon Profile, including ridiculously bloated, but interesting for historical perspective, Wish Lists.
Diligent perusal will reveal that I Must Love Beer.
My photo collection on Flickr.
And some others, can't really say they're here to stay … and they are emphatically in no order at all. In fact, they are in disorder. Hence the Filter button. |
|
VOIS. Annoyingly, sounds like "voice". Especially if you expect it to be French. Anyhow, social network to find talent.
Adjix. Revenue with ads - using link shortening and Twitter.
Radar. Photo sharing (via twitter mostly)
Diddit. Bragging forum.
Wordpress. My blog on Wordpress. Don't know what to do with it.
Frustron. A nascent blog. Don't know whether to use just Dragnon, or this one too.
MySpace. I could have sworn I signed up for an account.
Yelp. Restaurant reviews.
Friendster. Account sort of half-registered !?!
Yammer. In-company social network.
Tagged. I deleted my account; seemed too trashy, and I heard a rumor that it was into spam.
Evernote, Never Forget Stuff. Sounds good for me!
When I was traveling altogether too much, TripIt, worked pretty well for an itinerary repo.
Plurk. "Social journal for your life".
Tumblr. Blog container.
Brizzly. Meta-Social.
Playfoursquare. Local social.
Tinker. Twitter browser.
Twitterfeed. Feed aggregator.
Trovix. Personalized Job Search. It's Monster now.
Gist. Email/news/social/business aggregator.
identi.ca. Twitter clone using Status.net.
last.fm. Music recommender (a la Genius).
blip.fm. Play DJ.
SlideShare. But I haven't put any presentations there.
MyMovies at IMDB.
NetGlobers. Travel networking/advice.
Collibra. Semantic/data stuff in Brussels.
OpenAmplify. Semantic Web.
PeopleBrowsr. Meta-Social. GREAT looking interface ...
Bespin. Mozilla Labs. Browser-based web editor using HTML5.
Google Profile. Why not?
Ning. Build my own social network. Cool. Maybe I'll find some time ...
Wakooz!, don't really know what it is. Looks Flaky.
Dipity Social aggregator.
Cliqset Meta-social, social aggregator.
Travelpod Travel blogging!
TokBox Video conferencing, other stuff.
CubeTree. Enterprise Collaboration.
splaht!, aggregator? recommender?
Tarpipe, a social media aggregator.
LiveJournal, yet another place to mouth off.
Hunch, Decision/Recommendation Tool.
Plaxo. From Address Book to Linked In to … ? And, they're using OpenID and Google Sign In. Good boys.
XING. Business network.
Friendfeed. Should I use this instead of Twitter? Especially since it has my Twitter feed in it.
Ginx. Twitter++
Freshmeat. It's going Web 2.0 soon …
Picasa, photos. Don't know whether to use Picasa, Flickr, both, or neither.
Twine, an interest-sharing network.
del.icio.us, glorified bookmarker.
BrightKite, location/travel sharing.
Dopplr, more travel/location.
Trazzler, travel aficionado network.
Hi5. Social network, popular in Latin America, among other places.
My patents. Actually, my patent. Singular.
Aardvark, a human-powered question answering service
Domain Monetization
- Sedo
- NameDrive
Heroku is a Rails total-cloud web host that is FREE for small apps.
Dreamhost is a good web host, more traditional than Heroku, that also does Rails.
Linkibol is a link-popularity-voting network, but it's only in Turkish.
Vreebit Really complex social network. With Monetization as goal.
I recently started tracking books I've read, or want to read, on GoodReads.
Drat, or, maybe, Great! The folks at Likaholix seem to be doing stuff similar to what I want Trovester to be.
My MyGravatar.
Code of the Day
Object Calisthenics, the Nine Rules from Jeff Bay (The tall and skinny of't)
BEFORE:
public static String stringJoin( Collection> objects, String joiner ) {
StringBuilder builder = new StringBuilder();
String useJoiner = "";
boolean first = true;
for( Object o : objects ) {
first = stringJoinAppend( o, useJoiner, builder, first );
}
return builder.toString();
}
private static boolean stringJoinAppend( Object o, String joiner,
StringBuilder builder, boolean first ) {
if( ! first ) {
builder.append( joiner );
} else {
first = false;
}
builder.append( (null == o) ? "null" : o.toString() );
return first;
}
AFTER:
public class StringHelpers {
public static String join( Collection> joinees, Joiner joiner ) {
return new StringJoiner( joinees, joiner ).join();
}
}
class StringJoiner {
private Joiner joiner;
private Collection> joinees;
private StringBuilder builder = new StringBuilder();
public StringJoiner( Collection> joinees, Joiner joiner ) {
this.joinees = joinees;
this.joiner = joiner;
}
public String join( ) {
Joiner useJoiner = Joiner.EMPTY_STRING;
for( Object joinee : joinees ) {
stringJoinAppend( new Joinee( joinee ), useJoiner );
useJoiner = joiner;
}
return builder.toString();
}
private static class Joinee {
private String joinee;
public Joinee( Object joinee ) {
this.joinee = possiblyNullString( joinee );
}
public @Override String toString() {
return joinee;
}
static String possiblyNullString( Object joinee) {
return (null == joinee
? StringHelpers.NULL_STRING
: joinee.toString() );
}
}
private void stringJoinAppend( Joinee joinee, Joiner joiner ) {
builder.append( joiner );
builder.append( joinee.toString() );
}
}
