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.
Entities with which I am somewhat familiar
Right now I work at Rally. It doesn't suck.
I worked at Thoughtworks for a good while. I have the frequent flier miles to prove it.
My buddy Karan does spiffy things with graphics and animation.
My stepmom happens to be a great SAT, ACT, college admission prep, etc. coach. Check her out!
My wife works with Cotton Council International, bring U.S. Cotton to buyers in various other countries.
My brother in law is an agent and recruiter in Boulder. Looking for a change?
My freshman year roommate practices Law in the 'burbs of Seattle.
For a number of years, I lived in Brussels, Belgium.  Those were formative years.
I was born and raised in Oregon.  I mean, before that whole Brussels escapade.
Now I live in Boulder, which I'd been visiting for years and years prior - finally decided it was time to just move, already.
I also lived in Costa Rica for a Load of Years.
Oh yeah - I lived in Budapest for a little bit, where I was ostensibly studying math in the BSM program, but in reality was mostly learning Hungarian and railing around Europe.
... I also lived in Dusseldorf for a couple years. That was AMS's fault (now absorbed by CGI)
In addition to Computer Science, I'm a student of Linguistics and Languages. I'm also a minor European History buff.
I studied that CS stuff at Tufts and Ohio State in Columbus. I miss Academics a bit.
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. Which is mildly embarrasingly primitive. |
|
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 sharhttp://ci.boulder.co.us/ing (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() );
}
}
