Lately I've been working on weekend projects. These are
very popular on Hacker News and I've been
amazed by the effect some of these projects may have on my daily life.
The idea of a weekend project is that you need to create something simple, yet interesting, in just a couple of days. This may sound ridiculous to some people but there are technologies out there that will let you do this. The result of the 2 days deadline is something out of the ordinary, that just works for that intended task, which is usually what software should be about; here's some of the technologies that let me do this:
Google App Engine. Cloud hosting provider. Lets my app scale. Never have to worry about sys-admin work. Free to start with!
ApeJS. I've built this framework purposely to let me quickly prototype apps. It fits perfectly with my needs and I'm able to meet deadlines. Free.
GitHub. I love GitHub. Lets me easily version my code and quickly switch branches/projects to find some piece of code I want to re-use. Free.
OpenID. I don't have time to do authentication myself. OpenID is a standard and I can have my users login into my website using any of the hundreds of the OpenID provides. Free.
Gravatar. Gravatar has quickly been adopted by many wesbites as the standard avatar repository service. Use it, it's Free.
imgur. Stuck doing image uploads and resizing yourself? Never fear, imgur is here. You can specify also the sizes that you need for your images and all of the processing is done on their servers. Free api with limited features.
jQuery. Nothing to say here. Obvious choice for UI functionality. Free.
CSSgrid. Let's face it, your app needs to look nice. These CSS frameworks will take care of lots of visual things like typography and spacing between paragraphs etc era. Free.
Colour Lovers. Find some of the best color patterns to use with your site. Free.
As you can see one of the things that these technologies have in common is that they're all free. This is important because weekend projects are not meant to bring any revenue so you'll need to be using free services to let them stay alive.
The idea of a weekend project is that you need to create something simple, yet interesting, in just a couple of days. This may sound ridiculous to some people but there are technologies out there that will let you do this. The result of the 2 days deadline is something out of the ordinary, that just works for that intended task, which is usually what software should be about; here's some of the technologies that let me do this:
Google App Engine. Cloud hosting provider. Lets my app scale. Never have to worry about sys-admin work. Free to start with!
ApeJS. I've built this framework purposely to let me quickly prototype apps. It fits perfectly with my needs and I'm able to meet deadlines. Free.
GitHub. I love GitHub. Lets me easily version my code and quickly switch branches/projects to find some piece of code I want to re-use. Free.
OpenID. I don't have time to do authentication myself. OpenID is a standard and I can have my users login into my website using any of the hundreds of the OpenID provides. Free.
Gravatar. Gravatar has quickly been adopted by many wesbites as the standard avatar repository service. Use it, it's Free.
imgur. Stuck doing image uploads and resizing yourself? Never fear, imgur is here. You can specify also the sizes that you need for your images and all of the processing is done on their servers. Free api with limited features.
jQuery. Nothing to say here. Obvious choice for UI functionality. Free.
CSSgrid. Let's face it, your app needs to look nice. These CSS frameworks will take care of lots of visual things like typography and spacing between paragraphs etc era. Free.
Colour Lovers. Find some of the best color patterns to use with your site. Free.
As you can see one of the things that these technologies have in common is that they're all free. This is important because weekend projects are not meant to bring any revenue so you'll need to be using free services to let them stay alive.
Benefits
The benefits of doing weekend projects are huge! Mostly for yourself. You'll be forced to:- think outside the box
- re-use lots of code
- use third party services as much as possible (open-id for authentication, gravatar for avatars etc.)
- tackle issues from another prospective
- not have many features