News for hackers. Stuff that matters.

How I launched flickrup.com in less than two weeks

Please Note: the point of this post is not to pitch my site, but rather to provide some of the lessons learned and hopefully spark some interesting discussion.

Flickrup allows people to submit flickr photos and vote on them.

The idea with Flickrup! was to launch a working, stable site as fast as possible. The idea I had when I started working on the site was to be as minimalist as possible in regards to design, code complexity (frontend and backend), db schema design and user authentication to name a few. I also wanted it to be ridiculously easy to submit and vote on photos. So here are some of the things I did.

frontend design:

I used a css framework (blueprint) to assist in creating a grid based layout and also utilized all the predefined styles for elements. Instead of creating my own css classes and ending up with a cluttered mess, I forced my self to use the classes defined in blueprint as often as possible.

I didn't waste time making a logo. The logo is simply a text link to the frontpage.

I didn't clutter the frontpage with flashy css based buttons and login/signup links everywhere. Instead, when someone hovers over a vote link, a css popup comes up which allows them to vote anonymously or using the flickr account.

I didn't waste time setting up a blog for the site.

backend design:

No brainer: I used a well known php framework (codeigniter) and forced myself to use as many classes and helpers they had to offer including: (pagination, session control, url helper, captcha, date helper)

I had a problem that needed some solvin' and I was greatly tempted to roll my own solution, but I searched until I found an already existing one.

Database:

I have four tables. That's it. Photos, sessions, users and votes.

Authentication:

There isn't an ugly login/signup link to be found on the frontpage and it doesn't need one. Logging in is inconspicuously placed in the flow of voting and submitting.

You don't have to sign up to use the service. You can vote and submit anonymously. It's true that you can vote for a photo as many times as you want as an anonymous user, but so what? If someone wants to spend their precious time painstakingly figuring out the captcha a dozen times to fluf their votes, who cares?

( 43 comments | 34 points | on HN )
Re:How I launched flickrup.com in less than two weeks by mtrimpe on Saturday March 14, 2009 @09:18PM (#516436)
I love it that "flickr" phonetically means "faggot" (flikker) in Dutch and "flickrup" means "fuck off" (flikker op).
Re:How I launched flickrup.com in less than two weeks by Hates_ on Saturday March 14, 2009 @07:32PM (#516319)
Re:How I launched flickrup.com in less than two weeks by monological on Saturday March 14, 2009 @07:33PM (#516321)
thanks
Re:How I launched flickrup.com in less than two weeks by ohizkiya on Saturday March 14, 2009 @09:13PM (#516429)
Can you make it so that "comments made" next to the picture on the front page links to the comments on flickr? It's a little annoying to click on a picture twice and scroll down just to see the comments.
Re:How I launched flickrup.com in less than two weeks by monological on Saturday March 14, 2009 @10:38PM (#516510)
done and done
Re:How I launched flickrup.com in less than two weeks by monological on Sunday March 15, 2009 @12:03AM (#516566)
I get down voted because I actually implemented what he said?
Re:How I launched flickrup.com in less than two weeks by Zev on Sunday March 15, 2009 @01:06AM (#516610)
Possible someone just hit the wrong arrow. Happens from time to time :\
Re:How I launched flickrup.com in less than two weeks by hsuresh on Sunday March 15, 2009 @08:46AM (#516782)
Can you change the captcha implementation? I tried a few times and could not get it right. The text is not clear. Believe me, i'm a human :)
Re:How I launched flickrup.com in less than two weeks by peterhi on Sunday March 15, 2009 @06:31AM (#516751)
Looks very nice. The fact that you got it up just using the standard tools rather than reinventing the wheel shows remarkable restraint for a coder (wish I could stop reinventing wheels :( ).

Must look into blueprint, CSS frameworks seem to be the way to go.

Well done

Re:How I launched flickrup.com in less than two weeks by scorpioxy on Sunday March 15, 2009 @08:45AM (#516781)
Nice...i like the simple design and functionality.

But, a serious question in regards to how you implemented it. Isn't that how you would usually go about implementing something?

As in, the rule of thumb is: think of the least functionality needed to launch a first version, use a CSS framework to avoid writing your own, use a JS framework to avoid writing your own, start up with a simple design, use some kind of code framework to avoid re-implementing common functionality such as authentication and caching..., and so on....

After testing the water with that, you can start replacing stuff if needed, hiring a designer for a more fancy look and the like...

Re:How I launched flickrup.com in less than two weeks by monological on Sunday March 15, 2009 @07:07PM (#517375)
Yes all those things that you mentioned are done by default. What I'm simply saying is that you have to watch out for the temptation of adding non-critical features or rolling your own solution without doing your hw first. It's easier said than done.

In regards to design, people spend a lot of time creating photoshop mockups, then modeling it with css and html. I'm just saying, if you want to get it done quickly, just skip all that and keep it minimal.

Re:How I launched flickrup.com in less than two weeks by airlabam on Saturday March 14, 2009 @08:58PM (#516413)
Very nice, concise writeup on getting the idea to the ground. I must shamefully admit, I've been quite guilty of ideating a lot of the no-nos you've talked about!
Re:How I launched flickrup.com in less than two weeks by juliend2 on Sunday March 15, 2009 @10:53AM (#516858)
Nice app. Do you use a plugin for the authentication? I also use CI for some of my projects. Its my favorite PHP framework so far.
Re:How I launched flickrup.com in less than two weeks by monological on Sunday March 15, 2009 @06:58PM (#517367)
I use Pear's Flickr api library and then use the built in CI sessions library to handle login/logout.
Re:How I launched flickrup.com in less than two weeks by TTDaVeTT on Sunday March 15, 2009 @06:59AM (#516757)
Pretty cool. I'm curious, did you use the Flickr API to process the flickr url and get the thumbnail? or did you scrape it?
Re:How I launched flickrup.com in less than two weeks by monological on Sunday March 15, 2009 @06:35PM (#517343)
I just exploded the link using "/", grabbed the ID of the photo and I used the flickr api to make sure that it's a valid photo_id.
Re:How I launched flickrup.com in less than two weeks by mikeyur on Saturday March 14, 2009 @10:57PM (#516518)
I've been playing with CodeIgniter, thinking of using it for a small project. Did you like working with it?
Re:How I launched flickrup.com in less than two weeks by monological on Sunday March 15, 2009 @12:03AM (#516565)
I love working with it and it's also relatively fast compared to the other existing php frameworks. However, I have not used any of the others, so I can't really compare it. Maybe someone else can chime in.
Re:How I launched flickrup.com in less than two weeks by sachinag on Sunday March 15, 2009 @12:56AM (#516603)
Kohana's a CI fork that's optimized for faster. Think Merb as a Rails fork - lots of love, but a need for something along a slightly different path.
Re:How I launched flickrup.com in less than two weeks by mikeyur on Sunday March 15, 2009 @01:54PM (#517009)
I don't think Kohana is faster, I think it's about the same. But it's strict PHP5 OOP, and there are a few other differences.

http://pr0digy.com/codeigniter/benchmark-static-cake-codeign...

Re:How I launched flickrup.com in less than two weeks by jacoblyles on Sunday March 15, 2009 @06:57AM (#516756)
Cool site. Did you spend all your time on it, or was this something you made on nights and weekends?

It looks nice.

Re:How I launched flickrup.com in less than two weeks by monological on Sunday March 15, 2009 @06:33PM (#517340)
I have a full time job so just nights and weekends.
Re:How I launched flickrup.com in less than two weeks by akirk on Sunday March 15, 2009 @08:47AM (#516783)
Couldn't your domain name be a problem in the future? I always thought trademark owners need to fight other people using their trademark in order to keep it.

So Yahoo will have to ask you to change your domain to something else, right?

Re:How I launched flickrup.com in less than two weeks by lrajlich on Saturday March 14, 2009 @09:54PM (#516475)
Love the design. Does anyone have any recommendations for a CSS framework?
Re:How I launched flickrup.com in less than two weeks by Hates_ on Saturday March 14, 2009 @09:56PM (#516479)
I'm currently in love with http://www.blueprintcss.org/
Re:How I launched flickrup.com in less than two weeks by monological on Saturday March 14, 2009 @10:45PM (#516513)
Re:How I launched flickrup.com in less than two weeks by carbon8 on Saturday March 14, 2009 @10:08PM (#516491)
In addition to blueprint, you could go meta with compass: http://wiki.github.com/chriseppstein/compass
Re:How I launched flickrup.com in less than two weeks by monological on Saturday March 14, 2009 @10:41PM (#516511)
I do love blueprint. It made the frontend design a snap.
Re:How I launched flickrup.com in less than two weeks by lrajlich on Saturday March 14, 2009 @11:30PM (#516542)
The mention of blueprint got me thinking about CSS frameworks and that there's probably alot of value in using one. What are its strengths? weaknesses?
Re:How I launched flickrup.com in less than two weeks by monological on Saturday March 14, 2009 @11:59PM (#516563)
CSS frameworks generally do the same thing.

They reset the browsers setting, e.g., setting body, div, span's margins and padding to zero.

They setup the typography, picking a global font, setting up font-sizes, margins and padding for html elements such as h1, p, ordered and unored list, etc...

They provide a way of setting up a grid. Blueprint, by default, uses a grid chunked into 40px segments, creating 940px wide design. You then place divs inline or nested to create your design.

Blueprint also provides some extra goodies like defining styles for forms, error and success styles for divs, and some ie fixes.

Re:How I launched flickrup.com in less than two weeks by mcxx on Sunday March 15, 2009 @11:19AM (#516878)
I like 960GS (http://960.gs/) a lot better than Blueprint.
Re:How I launched flickrup.com in less than two weeks by amr on Sunday March 15, 2009 @01:51PM (#517007)
Can you tell us why?
Re:How I launched flickrup.com in less than two weeks by dc2k08 on Sunday March 15, 2009 @12:13PM (#516920)
nice idea, I would be in favour of a longer front-page though..as a side, I'm nearly sure someone either attempted or is about to attempt a similar site using slinkset.
Re:How I launched flickrup.com in less than two weeks by monological on Sunday March 15, 2009 @06:31PM (#517335)
Any recommendations as to how many should be shown?
Re:How I launched flickrup.com in less than two weeks by iamdave on Saturday March 14, 2009 @07:34PM (#516322)
Not surprising, on the front page with majority votes: a picture of a cat. Nice application
Re:How I launched flickrup.com in less than two weeks by monological on Saturday March 14, 2009 @07:40PM (#516328)
That's because it's newer and so it has a greater weight. The site is brand new so if someone submits garbage, it is very likely that it will end up on the frontpage. This problem should go away as the site grows and people start submitting more photos.
Re:How I launched flickrup.com in less than two weeks by theone on Sunday March 15, 2009 @11:48AM (#516901)
The work could have been done in less than 1wk if some web famework(django, ROR) were used.
Re:How I launched flickrup.com in less than two weeks by monological on Sunday March 15, 2009 @06:32PM (#517338)
side note: I have a full time job and I just did this on the weekends and after work on the weekdays
Re:How I launched flickrup.com in less than two weeks by adrianscottcom on Sunday March 15, 2009 @08:09PM (#517454)
nice writeup thanks
Re:How I launched flickrup.com in less than two weeks by henryw on Sunday March 15, 2009 @07:12AM (#516760)
please consider adding categories
Re:How I launched flickrup.com in less than two weeks by monological on Sunday March 15, 2009 @06:32PM (#517339)
I could maybe show the top tags used? What do you think?
Re:How I launched flickrup.com in less than two weeks by pclark on Saturday March 14, 2009 @07:27PM (#516310)
what the fuck is it?
Re:How I launched flickrup.com in less than two weeks by monological on Saturday March 14, 2009 @07:30PM (#516315)
flickr photos + voting