As I’ve mentioned on previous blog posts, I’ve been spending a lot of time working on my side project lately, which I’m glad to announce has reached its first releasable version, which you can check out at universit.as.
The thing is, it’s ‘releasable’, but it’s too basic, it has its major features which I consider to be appealing, but it lacks those small details which makes a platform addicting and that makes it clear to everyone what it’s all about. So after reaching this first usable version, I decided it was time to ask for help. I alone won’t be able to take this platform to the maturity it deserves, and since its code is all open source anyways, why not make a huge call to arms to all Rails developers and designers out there?
I did my best to ‘sell’ the application to users by describing it as much as possible on its homepage, now I’m gonna convince you on why you, as a Rails developer or designer with some time spare time, should help me out building this thing and make it also YOUR side project.
All of us geeks love hearing about tech, so let’s get that out of the way first. Universitas is a Ruby on Rails 3 application running on top of NGINX, Unicorn, Ruby 1.9.2 (on RVM) and MySQL, all on a Linode Ubuntu 10.04 box with its code being hosted on GitHub. Some on the gems include Devise, OmniAuth, InheritedResources and CarrierWave. RSpec is being used for unit testing, Steak for acceptance testing (started using it before the Capybara update) and Factory Girl for mocking. Amazon S3 is also being used for storage since one of the project’s main feature is document uploading. Oh, and let’s not forget about HAML for presentation (haters gonna hate).
Use it as your playground
I use Universitas to test out new stuff. Take a look at the application Gemfile and see what gems are being used, I try my best to test out every new thing (that’s in the context of the application, of course) that comes out on news channels such as Railscasts, Ruby5, RubyInside and so on. You probably don’t get to use all of these new things on your job, so here’s your chance to have a live production app where you can just go wild and see if that gem you heard about is really as cool as they say.
Use it as a practice ground
Sometimes you need to deliver fast because you have deadlines. We’ve all been there. And sometimes, when in a hurry, we write some code which we’re not really proud of, but that gets the job done nevertheless. We also don’t experiment new coding techniques or not break existing legacy patterns, because you shouldn’t be practicing at the cost of being wrong, you should do what you know will work.
Well, since we have no deadlines in Universitas, you don’t have to be in a hurry, so you can just write code, refactor it to look the best it can, and ultimately try out new things that will raise your skill level as a programmer, which is the whole point behind a side project.
Go wild with your ideas
As I said, I am only one person, and I can’t think of everything, so if you have tons of cool ideas about the project, I don’t see why we shouldn’t put them on the table and start working on them. The project is extremely green and in need of more minds to polish it.
I’ve created a public project on Pivotal Tracker for Universitas so you guys can check out some features I thought of after this first release. Anyone in the project will, obviously, be able to add stories and start working on any story they want.
Be a part of something useful
Universitas isn’t just for kicks, it has a solid idea which I believe is of great use to lots of people, since we all know too well that Google Groups does a poor job doing what it does and that someone could do much better. Let that someone be us. I think a level of seriousness and vision is needed for everything, and if I wasn’t serious about this, I wouldn’t be willing to alone pay all the bills necessary (such as S3 storage, server and domain (which was NOT cheap)). Last but not least, the ‘big picture’ behind Universitas is to become a huge information reference, where you would go when you want to learn something and build a solid community around something you know about.
If you got interested (if you read all the way down to here then you probably did), drop me a line at email@example.com so we can get you set up. I’m not too picky, but I need people with at least some experience in Rails that have built 2 or 3 Rails apps and knows how the flow goes. The project is simple enough to pick up in a couple of hours, so the time between setting it up in your environment and starting to work on a feature will be minimal, and I am online almost all the time to answer any questions and help out anyway I can.
So, what are you waiting for? To arms!