Eitan Adler wrote:
As an aside can anyone point me to a relatively easy bug/feature that I can work on as a beginner C coder?
There are thousands of such; could you narrow it down a little bit? Are you interested in kernel hacking? Device support? Core libraries? Networking? Utilities? Porting? There are a couple of idea pages floating around and many discussions in public mailing lists, blogs, and other places: * Search the source code for "TODO" or "XXX" to find comments about things that could use cleaning or improvement. As a bonus, these usually comment things that someone thinks should be done, so you might have a little easier job selling your solution. * Search the web for "FreeBSD GSoC" or "FreeBSD Summer of Code" to find ideas that are intended to be 3-month projects targeted at student-level developers. You'll find links both to past projects (a fair number of which are still not yet entirely completed; maybe you could help?) and web pages and mailing list discussions about possible future projects. * Search the web for "Junior Kernel Hacker" for other ideas that people have come up with over the years. * Go to FreeBSD.org and skim the mailing list archives to find ideas and see what problems people are having. hackers@ and current@ are good starting points, some of the more specialized lists can also be interesting reading. You might find problems that you can solve yourself or you might find an ongoing project that could use a little help. Projects like FreeBSD work best when there are several people working on any given area. Of course, how a lot of people get involved is simply to install and use FreeBSD for a little while, and find something that doesn't seem quite right: * a hardware device on your system that's not fully supported? * a utility that doesn't work the way you think it should? * an application that doesn't run on FreeBSD as well as it does on some other platform? In my case, I'd used FreeBSD for many years, decided I didn't like the installer (still don't, by the way) but found that writing a new installer was too big a project for the limited time I had available. So I cast around and found my niche working on archiving tools. (Maybe Ivan Voras is interested in having help with his finstall project?) As you figure it out, it's usually a good idea to ask on mailing lists (hackers@ is good) or IRC to see if other people are encountering the same problem or if someone is already working on something. That kind of discussion can help you get more complete background on a particular problem, including approaches that other people have tried or even partial code for fixes that were never completed. (There's a lot of interesting bits sitting around people's hard drives that are worth the effort to study, test, and fix.) Perhaps most importantly, by talking about your work-in-progress, you have a better chance of connecting with a committer who will help get your work into the tree. A lot of excellent ideas never make it into FreeBSD because the author never talked to anyone until they were "done" and the result couldn't really fit into FreeBSD correctly without a lot more work. On this latter point, it can help to read carefully through old commit logs, study past work in that area, and ask questions specifically of developers who have done work in that area. (Though it's usually better to ask first in a public forum like hackers@ or current@; individual developers are sometimes very busy or on vacation or just slow to respond for various reasons.) Most importantly, have fun and remember that most of us are volunteers who enjoy using and working on FreeBSD in our (often quite limited) spare time. On the one hand, that sometimes makes us slow to answer: If I only have a couple of hours a week, I'd usually rather spend it coding than typing long answers to questions that people could answer themselves. On the other hand, it also means I enjoy talking about FreeBSD and sometimes get carried away writing overly-long email epics with lots of detail about stuff that noone really cares about. <grin> Welcome to the zoo! Tim P.S. libarchive has a number of mid-sized projects that I'd like to see done, including improvements to the ISO reader (tar's ability to read ISOs is a popular feature that merits some additional work), RMT support for tar and cpio, a pax front-end, an ISO writer, and a bunch of work to identify common functions in tar and cpio and find clean ways to move them into libarchive so they can be effectively shared. This last in particular doesn't require complex coding since the core functionality is already written, but does require a lot of care with library API design (a subject about which I have strong opinions) and refactoring existing code. _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"