Monday, 7 September 2009

Cull.us: Branded URL Shortener with Google Analytics, CNAME, and .htaccess

One of the biggest problems with URL shorteners – aside from being needed at all – is it’s not easy to move from one to another without breaking all the previous links.

Culld.us hopes to change all that.

  • Use Your Own Domain Name
    At Culld.us, you get a subdomain – like grv.culld.us – and just point a CNAME record to it from your domain.
  • Use Your Own Web Analytics
    Put the statistics on your short URLs in your existing web analytics package, whether it be Google Analytics or another package, just paste the tracking code in your subdomain’s settings.
  • .htaccess and archival feeds
    If you want to leave Culld.us, you can take your redirects with you. Anytime you want – you can grab the .htaccess file, containing your shortened urls and the webpages they redirect to, and upload to your own server.
    You can also grab the RSS or JSON feeds.
  • Fully Customized Stylesheet
    Anything you can change in CSS can be changed in your Culld.us subdomain.
  • Collaborative
    Anyone you authorize has access to add URLs to your Culld.us subdomain. Everyone gets their own login and API tokens.

Labor Day: Celebrating Opportunity

“Isn’t it sad that we have a job where we spend two 2 weeks avoiding the stuff we have to do fifty week a year?” – Seth Godin, Tribes

Almost 15 years ago now, a fellow student at the German design school I was attending, purchased a run-down flat. When he wasn’t focused his design degree – he was renovating the flat. With school Monday through Friday – his core renovation days were the weekend.

Well, Saturday.

The neighbors would complain if he used power tools on Sunday.

At the time, I was also surprised by the number of unfamiliar public holidays
German shopkeepers observed. Their frequency caught me unprepared more than a couple of times. While closed can be a cultural benefit – having the option to be open for business is a competitive advantage.

Here in the States, 12.4% of the workforce – 16.1 million people – belong to a union.

Over the past 24 years as union membership has dropped by a 1/3, real compensation has risen by 1/3.

union membership vs real compensation

“The problem with unions is not all that dissimilar to that posed by entrenched management: Once they win comfortable contracts, they often become impediments to the kind of innovation and flexibility essential to success in today’s economy.” – Wall Street Journal, Opinion, Sept 29, 2007

This Labor Day – as an entire family – we headed to the mall to purchase some new school shoes for the kids. On the way home we grabbed a soup and some sandwiches. The stores were open and the shopkeepers were as eager to help as any other Monday. If I understand U.S. labor laws correctly – everyone working today did so – by choice. Their employer provided them the opportunity and they took advantage of it.

Maybe their politics don’t mesh with organized labor. Maybe they were still protesting the outcome of the Pullman Strike. Maybe they find it ironic. I suspect for the vast majority of them – the additional dollars were more valuable than non-work-related plans.

Yes, I did some client work while the kids were napping, and will continue after I finish this post and clean up the dinner dishes.

The ability for a single individual to make the decision to work on Labor Day is why the U.S. is still the land of opportunity.

Friday, 4 September 2009

auth via params API Access with Authlogic

Authlogic, my current favorite Ruby-based authentication library and I were in a fight the last couple of days.

I was trying to add token-based, auth_via_params, authentication (vs. login and password) to a project – but Authlogic and I weren’t agreeing on how it should be done.

I had assumed:

@person_session = PersonSession.new(single_access_token => params[:token] )
@person_session.save

Instead Authlogic wanted me to give it a Person first.

@person_session = PersonSession.new(Person.find_by_single_access_token(params[:token]))
@person_session.save

Thursday, 3 September 2009