Hacker News new | ask | show | jobs
by SwellJoe 6158 days ago
You'll need to get involved in a pre-existing project, preferably a large one. Small projects, and projects you start yourself, won't offer a lot of opportunity for mentoring. If you happened to find a project that participates in Google Summer of Code, you might even be able to get paid to work on the project, and you'll have guaranteed good mentorship, since the mentors get graded at the end of the program and projects that don't hold up their end of the deal don't get money in the future.

If you start your own project, you will very likely be the only serious developer on the project for at least a couple of years. This seems strange, perhaps, since Open Source has a reputation for magically bringing developers together to work for the common good...but the fact is, every Open Source overnight success is one that has been in the making for years. And during those formative years, it's almost always one lone developer doing all the heavy lifting. If you start a project that heavy lifter will be you or the project will die.

That said, starting your own project and pushing it along for a few years will also teach you a lot about development. But, you won't be getting help from experienced outsiders for years to come.

Since Cake is quite new, I doubt there will be a lot of large pre-existing projects for you to jump on, but look around. Maybe there's something. I think Mambo had a project to convert to Cake, didn't they? That's still a pretty big project, despite the Joomla mutiny a few years back. I've not been impressed with Joomla, so I've also avoided Mambo, but maybe they've learned their lessons (or maybe it's exhibiting second system effect, by now).

Most Open Source projects welcome additional hands. If you start sending patches, you will generally get feedback. If you take part in the mailing list, and ask to be involved in a more official capacity, it's likely you'll be welcomed in. We certainly don't chase people off when they start sending patches (though we've probably been less good about mentoring and encouraging additional development, in the past, than we should have been).