Slashdot Mirror


Open Source as Programming Exp. for College Students?

texatut asks: "With the computer industry in a slump, many college CS students nearing graduation are looking at pretty meek prospects. While 'formally' educated, few actually have concrete experience dealing with development of software. Many would like to have something concrete to put down on their resume or application to graduate school. However, starting their own project is a hard and time-consuming task. Obviously, the Open Source community is a perfect place for us to get our hands dirty. My question is, are there any resources that can help people with varying levels of experience connect with development teams in a way that would benefit both the project and the students?"

20 of 410 comments (clear)

  1. Check sourceforge by nate1138 · · Score: 4, Insightful

    You could always check sourceforge, they always have listings for tons of projects that need testers, coders, documentation folks, etc. Good way to get your "hands dirty" and help out the community.

    --
    Where's my lobbyist? Right here.
    1. Re:Check sourceforge by hillct · · Score: 5, Insightful

      SourceForge is a good place to start if you wanted to get involved in OSS development, but I would question whether such experience is truly valiable in the job market. While it looks good on a grad school application (maybe) it really doesn't demonstrate an ability to work in a close knit team, to meet deadlines, to solve problems, enguage in project management activities (in the more treditional sense).

      It's true that working on an OSS project may give you experience in the actual work of software development in that you will be producing code, vary few of the software development skills msot companies look for are really developed or evaluated in the OSS world, unless you think a hiring manager at any company would actually be influenced by your code-fu rating as listed on SourceForge or Avogado. While in the strictest sense it may allow one to sharpen one's coding skills, I seriourly doubt whether it would significantly effect a hiring decision at any large company. On the other hand, if you want to start building up a consulting business it could never hurt to say you were a lead developer on OSS projects A, B, and C.

      --CTH

      --

      --Got Lists? | Top 95 Star Wars Line
    2. Re:Check sourceforge by Macrobat · · Score: 3, Insightful

      You may be right about what SourceForge or OSS development doesn't add to your resume. Realize, though, that nothing that isn't a job itself exactly replicates a job. What work on an OSS project demonstrates is that you are self-motivated (because nobody's forcing you to do this), that you work well with people even if you don't see them day-to-day (because you are working on a distributed project) and that you have the ability to finish a project and create a working piece of code. All in all, an intelligent employer should recognize the benefit.

      --
      "Hardly used" will not fetch you a better price for your brain.
  2. Plenty of possibilities by ghutchis · · Score: 2, Insightful


    Most projects would love to see more help--simply find lead developers or maintainers and say hello. Or send a message to the project mailing list and ask about projects, suggestions, etc.

    There are always features that have sat on the back burner, code to be cleaned up, etc. And of course I can tell you that as an undergrad, you often have more time to code.

    -Geoff

    1. Re:Plenty of possibilities by Jim+Hall · · Score: 2, Insightful

      When I was out hiring for our last open position at work (it's filled now ... don't send me email) I had been hoping to find someone with experience on an OSS project. That actually would have been my ideal, as I believe this offers real-life experience in a way that lets you dip your toes into the water on your own time.

      But alas, that didn't happen. Maybe next time I need to do hiring...

      If you want a suggestion, I would recommend helping out the FreeDOS Project. The FreeDOS Documentation Project (FD-DOC) lists a few of these suggestions for helping out with FreeDOS:

      - Take any of the open projects on the FreeDOS Software List.

      - Contribute to FreeCOM (our command.com) or the FreeDOS kernel. It's not as hard as you would think, especially if you start small by applying some bug fixes.

      - Apply some contributed patches to Freemacs (a GNU emacs clone for DOS). The patches are already there .. you just need to apply them. This should be fairly easy!

      - Patch an existing program to use Cats or MSGLIB to support internationalization. It's not hard .. just read through the docs and you'll be fine.

      There are other things, too, but if you are looking for suggestions these should get you on your way. I'm sure that any sane employer will look on this as valuable experience, as you will have demonstrated the ability to work with others on a project, and contribute to the code.

  3. Not just experience by www.sorehands.com · · Score: 5, Insightful

    The problem that some employers have with new grads is not just the lack of experience. It is also the lack of experience on large projects. Writing and maintaining a 2k-3k utility, even at a job, is very easy as compared to dealing with a small portion of a 250,000 line program.

  4. Senior Design by Dr.+Bent · · Score: 3, Insightful

    Many 'Senior Design' (aka Capstone) courses are ideal for open-source projects. You gain valuable experience, contribute to the open-source community, and get course credit! Plus, sometimes these projects translate into actual jobs when you get out of school.

    Many professors will let you work on O.S. projects if you find one than can be completed in the alloted time, and if it's relevant to some of your other coursework. Of course, this depends greatly on the professor, but you'll never know if you don't ask.

  5. Academic Research by slcdb · · Score: 3, Insightful

    Although, not all students will get positions on research staff, and it usually doesn't pay all that great... research staff positions are available at most universities.

    Plus, (at the risk of getting flamed) most commercial software companies will give more credence to someone with a research background than to someone who worked on the latest Open Source project.

    --
    Despite what EULAs say, most software is sold, not licensed.
  6. Re:No. by Raleel · · Score: 2, Insightful

    Would you say that if the project were Mozilla? If the project were Gnome? If the project were XFree86?

    --
    -- Who is the bigger fool? The fool or the fool who follows him? --
  7. Re:What else do that have to do? by Aurorya · · Score: 2, Insightful
    Let's see, as a computer science major at a good college, i have classes and homework, sports, campus activities, signifcant other(s), friends, beer, crazy little stunts to keep life interesting, piano lessons, running, and a senior thesis to keep in mind. Going to college is much more involving than a 40-hour-a-week+commute job, where you live in an apartment or house, NOT surrounded by 200 other 18-22 year olds. You think about things from your classes and discuss them with people in other classes...not preparation for the real world, perhaps, but time consuming!

    Now, if I wanted to start my own project, come up with some brilliant idea on my own and work on THAT too, I think i'd get even less sleep...

  8. Here's where to start. by Stillman · · Score: 2, Insightful

    I believe it's a great idea.

    here would be a great place to begin.

    Could look great on your CV and benefit the OS community as a whole.

    --
    Prisoner #655321
  9. Re:Isn't that what Sourceforge is for? by Anonymous Coward · · Score: 1, Insightful

    An MSCS with 0 years experience is not going to get a whole lot extra $$$.

    But it does open doors that wouldn't be open to a normal undergrad. NSA, being one research facility that would be very interested in a grad with a crypto background.

    What makes you think that the tech slump is going to end?

    I don't think the slump has actually occurred. I believe that a lot of the money that was flowing into the hands of overpaid, underqualified programmers and web hacks is going to be redirected towards truly qualified people who can contribute to the technology push. India and China will gain a lot of the drudge programming jobs, I expect.

    So a Master's would be a much better credential in the long run than 2 or 3 years of extra experience without the degree.

    (I do not have a Master's)

  10. Re:Virginia Tech CS student... bitching by patoco12 · · Score: 2, Insightful

    Calculus is taught to CS students to give them Mathematical "Maturity". It is worth it to learn your math. Someday, all software engineers may have to prove that their code works. How? Through math.

  11. You can learn loads just by reading the code by dtr20 · · Score: 2, Insightful

    With OSS code around, it's a fantastic opportunity to *read* lots of other people's code. Writing some HTTP protocol stuff? Take a peek at the Mozilla, Konq, curl etc source for some pretty wildly different ideas at how others have tackled it, and compare it with your own ideas.

    Books and professors never seem to teach you about ideas for debug, error handling, build systems, using profiling tools etc. Also, by dipping into lots of projects you can get a feel for what's good and what works for different situations, much quicker than the usual company where you'll tend to stick to the same tools and systems, not to mention a small pool of opinions.

    The environment / requirements of your software will no doubt be changing quickly so you need to keep getting wider experience than your job generally gives you.

  12. Re:Difference between open source and real work by Anonymous Coward · · Score: 1, Insightful

    Now, by the same token, most college curriculums suck as far as CS is concerned. Realize that if you only rely on college to teach you how to program, your essentially going to an employer without knowing how to program.

    This might get a little offtopic. As an instructor at a professional college in computer programming (hence the AC-ness), I have to say that this is bang on.

    There are schools out there that cost $15000-$20000 and promise to make you employable at the end of a year. For most people this is WASTED MONEY. I went to the school before taking an offer to teach (hey, it's a job, no heavy lifting (unless I have to unpack books)), and by day I was digging into VB/ADO/ASP/MS-SQL, and by night I was refining my Linux/C/PHP/PostgreSQL skills. When I was at school, I was one of the most qualified people on that floor including the instructors, and when I got out there the pickings were very slim.

    I have a university degree in another discipline, and this is pretty much a golden rule -- if you rely on your curriculum to teach you what you need to know, you won't learn nearly enough, and certainly not enough to keep up with the people who love doing what you're studying for a living.

  13. Re:Open Source development *IS* a job by Salamander · · Score: 5, Insightful

    Wow. Slashdot is pretty full of people with lots of ideals and no skills or experience, but you completely take the cake.

    There are plenty of legitimate and highly stable ways to make money writing free software.

    Bold claim. Got any proof? Got any numbers for how many people are actually doing it? How many programmers actually make a living doing open-source programming full time today? How about a year from now, if the economy doesn't pick up? How many total programmers are there in the world? This "phenomenon" you rant about, this wave that's going to overwhelm us all, was barely even statistical noise even at its peak, and that peak has passed.

    Find some buddies who are also into Open Source and form a consulting group

    Been there? Done that? No, didn't think so. Open source or closed, your zealotry would be fatal in business. Those few people who are making money off open source have survived by learning not to piss off the guys with the money with that kind of extremism.

    There is absolutely NO need for ANY proprietary software in this world.

    You might actually be right there. "Need" is a funny word. No, the world doesn't need proprietary software or copyright law. But they exist, and people - real people, not just big corps - benefit from them. You haven't provided any compelling argument that society would be better off without them. Heck, far better programmers and writers than you have tried to make such arguments, and they haven't succeeded either.

    Those who argue otherwise do so only because they have a vested interest in proprietary venues and are afraid

    That, my friend, is called argumentum ad hominem and it's frowned upon as a fallacy. I'm not just nit-picking either; logic and debate are essential skills in the business world, regardless of whether your source is open or closed. There are myriad reasons why people participate in the creation of open source. Lambasting them all as parasites or cowards is as absurd as characterizing all open-source programmers as thieves. There's a grain of truth in each case, but no more.

    Choose your sides.

    Even if I were the most ardent advocate of open source - and I've probably done more for open source than you ever will - I'm too much of a pragmatist to back the losing side in any fight. You'll find that such pragmatism is a common trait among real engineers.

    --
    Slashdot - News for Herds. Stuff that Splatters.
  14. Open research forums. by Capt.Smirk · · Score: 3, Insightful

    As I approached completion of my undergraduate degree, I was lucky enough to get a graduate student level internship at NASA. While I was there, I learned that I could make important contributions by applying the theory I had learned in school; essentially doing graduate level research while still an undergraduate. Speculating that there were others out there like me, I came up with the idea that we could come together to form a online research society. The society would differ from the open source community in that it would be based around a process. People would submit proposals, contributors would then offer resources for implementing the proposal, and the project would start when it had enough resources. The only constraints on the project proposal would be that it describes its goals, the process it will use to acheive these goals, and that it would have a deadline. The society would track proposal status and require a postmortem at the end of the project duration. This system is somewhat similar to the (failed) commercial ventures CoSource and SourceXchange, but would be not-for-profit.

    While I understand that such a system is hardly any kind of substitute for a "real" job, the research would be public, and citation of such material would be valid resume fodder. Of course, you could be lazy like me and look for work in your school. What started my resume was not the internship at NASA, but work I did for a professor, namely C++/Win32 application development at $6/hr!

    Save the Wild Thoughts and Ideas! -wildideas.org

    -smirk

    P.S. I just checked the link to find it didn't work anymore...then I found out that I had let my name registration lapse! If the above link doesn't work, wait for the DNS change to propigate. Thx.
  15. Yee ha! by ansonyumo · · Score: 5, Insightful

    First, let me qualify my post:
    * I regularly evaluate candidates for employment in a disciplined software development environment.
    * I fully support Open Source Software.

    That being said, the open source code that I have reviewed has been of low quality in the areas that I look for in evaluating candidates, including:
    * strong OO principles
    * rigorous design
    * excellent documentation

    The few open source projects that I have tried to contribute to (freenet being one) actually scoffed at these points, claiming them to be the stuff of over-educated highbrows, stuffed-shirt engineer etc.

    If that is the culture of open source software, then so be it. However, in the world of commercial software development, these are very real, very important requirements. The best hacker is useless if he creates an unmaintainable system.

    The point is that, from my experience, OSS projects and commercial development are two very different environments (granted, many commercially-developed codebases are poorly engineered, hackfully constructed and are devoid of documentation). OSS projects will get you acclimated to integrated your work with that of other developers', but may also indoctrinate you in an unrealistic development environment.

    In other words, it produces a lot of cowboys. Don't expect your bazaar approach to be successful in the cathedral.

  16. Re:Open Source development *IS* a job by Zog · · Score: 2, Insightful
    There is absolutely NO need for ANY proprietary software in this world.


    I have a vested interest in proprietary software. It's how I pay for food and stuff.

    I make proprietary software for people. They don't want their competition to have the advantage, so they have exclusive rights to the code.

    They pay me. I eat.

    'nuff said.
  17. Re:Whatever by FallLine · · Score: 3, Insightful

    Firstly, the original author was referring to the money mentality, not just the growth and dominance of "non-open" software which is quite a different argument indeed.

    Secondly, before Bill G. came along, software was really NOT motivated by the ideas that open source espouses today (and likes to claim were espoused at that time). Quite the contrary, most of it was developed by companies for profit to sell or bundle with their own machines. It was about money from the start. The reason it changed from relatively unrestrictive / complimentary / free is because the nature of the industry changed, not because of a real change in mindset. These companies didn't sell the software or protect it as it is today because they simply saw software as a means to sell hardware. In other words, the entire notion of developing software for its own sake really did NOT exist at that time. The nature of the industry allowed for them to do this, or rather, it was more economical to not worry about protecting their intellectual property when the nature of the industry has its own built in protections and when the software was itself relatively trivial.

    The point is that you can no more blame (or credit) Bill Gates for this shift than you can for the Moon rising. It was inevitable. As computers became more and more common and accessible and programs became less and less trivial the method for creating, distributing, and protecting the software HAD to change. Bill Gates just had enough wit about him to catch the wave before most others did [My dislike for Bill Gates and Microsoft is for entirely different reasons.]