Beta

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Introducing Students To the World of Open Source

Soulskill posted more than 3 years ago | from the what-do-you-mean-my-boss-doesn't-have-an-autograder dept.

Education 182

paulproteus writes "Most computer science students never see a bug tracker, and very few learn about version control. Classes often don't teach the skills needed for participation. So I organized a weekend workshop at the University of Pennsylvania. Total newbies enthusiastically spent the day on IRC, learned git, built a project from source, and read bugs in real projects. I learned that there's no shortage of students that want to get involved."

cancel ×

182 comments

Sorry! There are no comments related to the filter you selected.

In my experiance... (4, Funny)

daid303 (843777) | more than 3 years ago | (#34166482)

Most computer science students don't know how to write code. So it doesn't matter at all.

Re:In my experiance... (0)

Anonymous Coward | more than 3 years ago | (#34166636)

I agree completely. Having just earned my BSc. Comp. Sci. a few years ago, and making money on the side marking for various CS classes, most CS students can't write code.

Re:In my experiance... (3, Interesting)

cheekyjohnson (1873388) | more than 3 years ago | (#34166684)

I came to the same conclusion. What's worse is that the class I was in was a Visual Basic class. Most of them didn't care about programming, the ones who did performed very poorly at it (and in Visual Basic no less), and the teacher didn't even know what a function was (sure, he is a math teacher, but he had been teaching that class for three years). Disturbing.

Re:In my experiance... (1)

Monkeedude1212 (1560403) | more than 3 years ago | (#34167064)

That's the kind of stuff I'd expect at a high school level, not a post secondary that you are paying tons of money for. It's annoying when a teacher doesn't know the answer to a question, but I'm willing to let it slide. If they don't even know the terminology to understand my question though - I would ask for a refund.

Re:In my experiance... (1)

cheekyjohnson (1873388) | more than 3 years ago | (#34167378)

"That's the kind of stuff I'd expect at a high school level"

Really? I wouldn't. Visual Basic is so simple that anyone should be able to grasp it (or at least the simple things that were being taught in that class). Besides that, a function? Really? That's terrible, high school or no.

Re:In my experiance... (4, Informative)

Monkeedude1212 (1560403) | more than 3 years ago | (#34167458)

In high school, they don't have Computer science teachers (usually). They have a different teacher, who gets handed a text book on how to teach programming. They don't bother reading it, they probably teach language arts or Math - so they just kind of dole it out to the kids and try to help where they can.

At least, thats been my experience. I didn't reach anyone with programming experience till Post secondary.

Re:In my experiance... (1)

jellomizer (103300) | more than 3 years ago | (#34167592)

At least in my undergrad the Class on VB was designed for all the majors, as the requirement for graduation was either a Foreign Language or a Comp Sci course. So a lot of students took CS 101 Visual Basic, to get the requirement.

So CS Students who had 0 programming experience took the class or anyone else who didn't want to take a Foreign language class.

It was usually taught by a Non-CS Professor (or the worst one they could possibly find who is still on payroll) as most of the students just wanted a grade to pass and not really learn anything new.

It wasn't really a CS Class it was create a basic interface to do some math class. However it was good in giving some appreciation to what real programmers can do, as they struggle to get some simple things going they soon realize when we are writing a basic program and it takes us 12 hours to do it they know why.

Re:In my experiance... (1)

spiffmastercow (1001386) | more than 3 years ago | (#34167392)

Well, in fairness, a function means something very different to a mathematician than a programmer.. Also, IIRC, in BASIC they're called subroutines.

Re:In my experiance... (1)

CannonballHead (842625) | more than 3 years ago | (#34167444)

Different, yes, but similar.

f(x) means that you start with x, do whatever "f" does to x, and end up with a different value at the end. So, if f(x) = x*2, then f(4) = 8.

That's pretty much the same thing that programming functions (or subroutines) do. You define what the function does to the given inputs, and return the value when you're done. Sure, programming functions are a bit more complex and you can do stuff without any inputs, etc., but the general idea is the same, isn't it?

Re:In my experiance... (1, Funny)

Anonymous Coward | more than 3 years ago | (#34166786)

Well, he did introduce them to weekends spent on IRC. Something they will most likely be doing for the rest of their lonely, lonely lives.

In my experiEnce... (1)

Chapter80 (926879) | more than 3 years ago | (#34166860)

I would LOVE to attend something like this - so if it's held again, please post the invitation on Slashdot. I'd travel the 300 miles to attend. (Better yet, make videos and post them!)

Re:In my experiEnce... (0)

Anonymous Coward | more than 3 years ago | (#34167068)

you don't know how to use IRC, git, or a bugtracker? Or do you want to have sex with college kids?

Re:In my experiEnce... (0)

Anonymous Coward | more than 3 years ago | (#34167164)

He wants to cyber the "hot college girls" on IRC, duh.

Re:In my experiance... (1)

Xtifr (1323) | more than 3 years ago | (#34166866)

Actual Computer Science has very little to do with writing code. Of course, what they teach in CS classes usually has little to do with Computer Science, so it all evens out. :)

Re:In my experiance... (1)

immakiku (777365) | more than 3 years ago | (#34166894)

Most CS students can write code, though some may be of poor quality. But as with any open-ended endeavor, coding requires a bit of creativity and some artistic touch to get a good result. It's hard to teach this in a classroom setting. Plus, the core of computer science has very little to do with coding anyway. Coding is a way of applying the knowledge, almost similar to the difference between Physics and Applied Physics.

I'd argue that trackers and version control should not be taught in a CS curriculum. Let that be taught in specialized degrees, like software engineering or something. Not all CS students need to know how to use those, and it distracts some away from the core principles of CS to focus on these.

Re:In my experiance... (0)

Anonymous Coward | more than 3 years ago | (#34167126)

Trackers and version control (and lots of other techniques for managing large projects) are taught in computer science curricula, if you choose the software engineering courses. Computer science is a huge field with many different specializations, including software engineering.

Re:In my experiance... (5, Insightful)

EvanED (569694) | more than 3 years ago | (#34167356)

I'd argue that trackers and version control should not be taught in a CS curriculum.

Trackers... OK, I don't see those as essential. Version control? Disagree vehemently. There might be a couple programs in the country where you can specialize in theory enough to avoid all heavy programming, but most programs require you to do at least some practical courses (OS, compilers, etc.), and even in programs where you could avoid such classes probably most students don't. And IMO, if you're teaching a programming-heavy class and you don't at least strongly recommend using version control and give a quick overview of what that means and why you want it, you're doing your students a big disservice.

I'm not saying "spend a week going over CVS, SVN, Git, and Mecrcural" or anything like that, but a 15-minute quick intro to one of them of your choice is definitely not out of place in many CS classes.

Re:In my experiance... (0)

Anonymous Coward | more than 3 years ago | (#34167506)

I'm not saying "spend a week going over CVS, SVN, Git, and Mecrcural" or anything like that

Unless there's a course in which data structures are taught and they (esp. Git and Hg) could be used as examples.

Re:In my experiance... (1)

jlechem (613317) | more than 3 years ago | (#34167776)

I soooo agree with this. At first I was miffed my CS degree didn't teach me things I used at work like version control, bug tracking, database development, etc. All I learned were those pesky CS concepts. Those things are taught to the CIS (computer information systems) kids. And as I've gone on to work at real programing gigs the people with plain CS degrees write better more maintainable code over and over again. You can pick up those skills on the job and not worry about them too much. Core CS concepts are harder to master and are worth emphasizing in college.

Re:In my experiance... (4, Insightful)

spiffmastercow (1001386) | more than 3 years ago | (#34166984)

That's okay, most professional programmers don't know how to write code, so they'll fit right in.

Re:In my experiance... (1)

Have Brain Will Rent (1031664) | more than 3 years ago | (#34167442)

I wouldn't go so far as to say most (I haven't met >50%) but it can be amazing what some don't know. I recall one recent graduate of a software engineering program (actual engineering program, not a CS degree, at a fairly prestigious school)) who had no idea what the stack was used for, how to use a stack trace in debugging etc. etc. It has been a few years since that encounter but somehow I doubt it is any better.

Re:In my experiance... (1)

spiffmastercow (1001386) | more than 3 years ago | (#34167630)

As I work with more and more people with real engineering degrees, I start to question where the "engineer worship" comes from.. Yes, I wish I had learned some of that fancy hardware stuff and the extra math, but being an engineer doesn't necessarily mean you can code any better than a CS person. In fact, I've noticed that most engineers just give a blank stare when you ask them about topics like algorithm complexity. They've learned some other difficult material, for sure, but that doesn't make them experts in everything.

Re:In my experiance... (1)

fishexe (168879) | more than 3 years ago | (#34167006)

Most computer science students don't know how to write code. So it doesn't matter at all.

I feel like your spelling of experiance is some level of brilliant meta-commentary that I'm not qualified to understand.

Re:In my experiance... (0)

Anonymous Coward | more than 3 years ago | (#34167026)

It's been my experience (20 yrs. software engineer) that the ones that spout off the loudest (like you) about "everyone else's" coding skills are the ones how really can't program to save their lives.

Re:In my experiance... (0)

Anonymous Coward | more than 3 years ago | (#34167060)

This. A thousand times, THIS.

Sad (0, Offtopic)

Microlith (54737) | more than 3 years ago | (#34167076)

I'm disappointed that such an arrogant and ignorant post got modded up after I gave up my downmod to post elsewhere.

Re:In my experiance... (2)

chemicaldave (1776600) | more than 3 years ago | (#34167134)

Most computer science students don't know how to write code. So it doesn't matter at all.

That's because many computer science departments focus on the theories and science of CS, not good programming techniques because many professors have never written code for a living. It's probably why so many departments started teaching Java instead of C++ (or *gasp* both!) because they just don't know any better.

Re:In my experiance... (0)

Anonymous Coward | more than 3 years ago | (#34167172)

They do. A very significant part of computer science is software engineering. That, and a lot of papers being written usually have some kind of implementation. It's true, however, that coding is seen as something you just need, kind of like writing and presentation skills.

Re:In my experiance... (1)

Kjella (173770) | more than 3 years ago | (#34167332)

So what? The people you talk about are never the kind of people that like to tinker, to program up a little tool to scratch an itch. They're not the people likely to contribute something after a long day of studying or work - not that all open source must be volunteer work, but much is. The vast, vast majority of the population can't code and it's not really important how many CS students can't either, the hit ratio is probably roughly as good as it's going to get. Consider it a bit like searching for rare earth minerals - no matter where you search it's likely you won't find large pure blocks of it. It's still worth doing...

Re:In my experiance(sic)... (0)

Anonymous Coward | more than 3 years ago | (#34167448)

Most computer science students don't know how to write code. So it doesn't matter at all.

Many working programmers (and ./ posters) are unable to write/spell in English!

Re:In my experiance... (0)

Anonymous Coward | more than 3 years ago | (#34167816)

I think you are confusing computer science with computer programming....they are different.

Computer Science: a branch of science that deals with the theory of computation or the design of computers (http://www.merriam-webster.com/dictionary/computer+science)

I tell my students that you can get a computer science degree to become a programmer but it is similar to getting a chemistry degree to become a cook.

Blog Post (1)

prestonmichaelh (773400) | more than 3 years ago | (#34166488)

Thanks for the blog post, random guy.

Please Come! (1)

Rabbidous (1844966) | more than 3 years ago | (#34166496)

Please come to my university (University of Wisconsin Madison). I would love to participate in this. I have learned simplistic elements of open source on my own, but would love to see a "get involved in open source fundamentals" at my university

Re:Please Come! (1)

gabereiser (1662967) | more than 3 years ago | (#34166646)

Or..... you can learn online at anytime by learning how to use git and taking a look at projects on github.... You don't need some guy to come to your school to teach you how to use widely documented tools that take virtually no time to start using...

Re:Please Come! (0)

Anonymous Coward | more than 3 years ago | (#34166902)

Or..... you can learn online at anytime by learning how to use git and taking a look at projects on github.... You don't need some guy to come to your school to teach you how to use widely documented tools that take virtually no time to start using...

Exactly. One of the joys of opensource / free software is the extremely low barrier to participation

Re:Please Come! (1)

toadlife (301863) | more than 3 years ago | (#34167024)

Or..... you can learn online at anytime by learning how to use git and taking a look at projects on github.... You don't need some guy to come to your school to teach you how to use widely documented tools that take virtually no time to start using...

So what you're saying is, "RTFM n00b."

You sound like the perfect candidate. Are you available to teach the course?

Re:Please Come! (1)

Duradin (1261418) | more than 3 years ago | (#34167544)

I wonder if he has a follow up class on how to say "It's open source, fix it yourself".

This has always been one of my gripes (4, Interesting)

SirGeek (120712) | more than 3 years ago | (#34166546)

I've been a professional software developer for over 20 years and this is one area that I really think would benefit the REAL world so much.

I would also love to see a 2 semester class where 1 semester is where they learn how to write software specifications for fictitious business software package.

Then the 2nd semester is where it has to be implemented by a different group of students.

Re:This has always been one of my gripes (0)

Anonymous Coward | more than 3 years ago | (#34167204)

We had a course similar to this in my university; although we ended up developing our own software during the second semester. We used version control, open source, etc... even though we were never "taught" it in class.

Although I do agree that some computer science majors cannot code worth a dam, people shouldn't generalize -- we are not all terrible =P.

no just open source (1)

JonySuede (1908576) | more than 3 years ago | (#34166558)

to anyone with a project: go talk to your local college or university cs department, they most probably have some kind of project course and they are always happy to received interesting real world realistic project proposition. Student cost less than outsourcing (only your time) and the quality can be quite good if you mentor them correctly.

Just give them outlook express (-1, Redundant)

Anonymous Coward | more than 3 years ago | (#34166584)

Sounds like a waste of time. If you want to teach US students what they will really be doing. give one student outlook express and show them how to offshore their work to India. Then the other students get to leave with pink slips.

Version control (1)

pak9rabid (1011935) | more than 3 years ago | (#34166608)

What blows my mind is the complete lack of teaching any sort of version control software in most CS programs, which is usually going to be the first thing you'll have to use when working with software at your first job. Seems to me that the CS professors should be using something like subversion to have their students check-out files being provided for a project, then have them submit all their work by checking into their assigned repository. Not only would students get experience working with version control software, but it would be really easy for professors to lock checking into their repo after the due date.

Re:Version control (2, Informative)

Microlith (54737) | more than 3 years ago | (#34166704)

This is very true. Version control and the ability to diff against previous check-ins would have made finding some bugs (and avoiding others) much easier, had I known how to do it at the time.

it would be really easy for professors to lock checking into their repo after the due date.

Not even. You could just check out the last revision checked in on the due date. Subsequent revisions wouldn't even matter.

Re:Version control (0, Flamebait)

HogGeek (456673) | more than 3 years ago | (#34166806)

Not even. You could just check out the last revision checked in on the due date. Subsequent revisions wouldn't even matter.

That statement is proof that you don't know how to admin a repository...

Using and administration are two very different things

Re:Version control (3, Insightful)

Microlith (54737) | more than 3 years ago | (#34167118)

That statement is proof that you don't know how to admin a repository...

Using and administration are two very different things

I'm confused as to how you got anything regarding "administration" out of my point that there was no need to lock a repository. Can you explain your point than just saying "you don't know anything" in the typically condescending attitude of a know-it-all?

Re:Version control (3, Informative)

HogGeek (456673) | more than 3 years ago | (#34167276)

Honestly, I mis-read your statement to mean that there was a way to bypass the lock.

I agree with your statement, but have no way of correcting the original post...

Apology offered

Re:Version control (1)

onionman (975962) | more than 3 years ago | (#34167480)

Honestly, I mis-read your statement to mean that there was a way to bypass the lock.

I agree with your statement, but have no way of correcting the original post...

Apology offered

Honestly, I mis-read your statement to mean that there was a way to bypass the lock.

I agree with your statement, but have no way of correcting the original post...

Apology offered

Wow! A sighting of the amazingly rare acknowledgment of error and an apology in an internet forum!!
    HogGeek, you are a good person.

Re:Version control (1)

Swanktastic (109747) | more than 3 years ago | (#34167842)

I think I just shed some robot tears.

I can feel it.

I'm afraid.

Daisy, Daisy, give me your answer do...

Re:Version control (2, Insightful)

Microlith (54737) | more than 3 years ago | (#34167490)

Accepted. Slashdot does need an edit command.

Re:Version control (2, Insightful)

vlm (69642) | more than 3 years ago | (#34167382)

Using and administration are two very different things

Not so much with git. Just do your final git pull at the due time (start of class that day or whatever)

The prof can also git pull at their leisure to see what if anything the students are trying to do.

And it makes cheating accusations much more fun when there is a timestamped record.

Re:Version control (1)

TooMuchToDo (882796) | more than 3 years ago | (#34166752)

Most of that stems from CS programs being behind the times. Too much theory, not enough real-world application. Not all of it should be code, as theory is necessary. But CS folks should be graduating knowing both high-level ideas on why you write code in certain ways, and the tools of the trade.

Re:Version control (0, Troll)

AnonymousClown (1788472) | more than 3 years ago | (#34166766)

Why?

Version control isn't rocket science: add, checkout, check-in, compare files, ... BFD.

If someone has to have their hand held on how to use a version control system, they have no business being in the profession.

Re:Version control (2, Insightful)

Hiro2k (264020) | more than 3 years ago | (#34166822)

You are an idiot. Version control isn't that simple, even in a smaller project. Merges and Tree Conflicts are something that everyone should learn how to work out. I'm not saying it hard, but the sooner you are introduced to these concepts the better it will be in the long run. I would hope that after using a VCS that the students would continue to use it later on in other class projects.

Re:Version control (1)

OzPeter (195038) | more than 3 years ago | (#34167336)

You are an idiot. Version control isn't that simple, even in a smaller project. Merges and Tree Conflicts are something that everyone should learn how to work out.

You sir are wrong. I say this because I use VSS in file locking mode and I have none of those problems at all!

Re:Version control (0)

Anonymous Coward | more than 3 years ago | (#34166870)

>If someone has to have their hand held on how to use a version control system, they have no business being in the profession.

Absurd. Training is not hand-holding.

Re:Version control (0)

Anonymous Coward | more than 3 years ago | (#34166944)

If you understood things like Git, it would blow your mind. At least when you are a computer science student. There should be a mandatory class about Git itself, *how* it functions (internals, etc.) and maybe a day spent on various applications. Many CS grads spend a class on FS design, but Git includes all that theory plus it's distributed, multi-revision bits that generally are never included in FS class.

Re:Version control (5, Insightful)

cforciea (1926392) | more than 3 years ago | (#34166854)

It isn't really that surprising to me. Computer science and software engineering are not identical disciplines. Computer Science programs on a core level are about data structures, algorithms, and the theory behind why we program things the way we do. The actual specifics of a development cycle, while obviously important if you want to put any of that to practical use outside of research positions, are disjoint from those concepts.

You can make an argument that more people should be learning Software Engineering instead of Computer Science, but that's really a different discussion.

UCOSP - Undergraduate Capstone Open Source Project (2, Informative)

Vandilzer (122962) | more than 3 years ago | (#34166642)

What you have is great but you should check out: http://ucosp.ca/ and participate if you can.

I am mentor with the program and work with a small group of students on a project. The student get to work for an entire semester on an open source project producing or contributing things of real value. On top of that they learn how to work in a distributed environment, which is essential these days. Really it is just amazing for the students.

Re:UCOSP - Undergraduate Capstone Open Source Proj (1)

skids (119237) | more than 3 years ago | (#34166720)

What needs to happen for this type of material to start getting rolled into real, for credit, coursework, in your opinion?

(And as an aside, it would be nice to see technical writing classes where one of the assignments is to critique and improve a wikipedia page.)

Re:UCOSP - Undergraduate Capstone Open Source Proj (1)

Vandilzer (122962) | more than 3 years ago | (#34167322)

It already is, 3erd semester, running and growing...

Wow... (1)

froggymana (1896008) | more than 3 years ago | (#34166644)

I'm 17 years old and I even know what IRC is, SVN, Git, and CVS... I've used bug trackers before, filed bug reports and I've compiled (and even cross-compiled...) projects from source... oh and I read slashdot.

Re:Wow... (2, Funny)

Anonymous Coward | more than 3 years ago | (#34166676)

Congratulations! You win the internet! No one has ever won the internet at such a young age!

Re:Wow... (1)

froggymana (1896008) | more than 3 years ago | (#34166698)

almost forgot... I even use Debian on my main computer for everything except a few games that run in Wine. For those games I boot into windows..

Re:Wow... (1)

spiffmastercow (1001386) | more than 3 years ago | (#34166938)

Don't pat yourself on the back too hard, you'll damage your spine.

Re:Wow... (1)

HaZardman27 (1521119) | more than 3 years ago | (#34167626)

You must be the coolest guy in the world.

Re:Wow... (3, Insightful)

drcheap (1897540) | more than 3 years ago | (#34166700)

Wait until you get into college for your CS degree and see what level your classmates are at. It's sad, really.

It was the same way for me over 10 years ago.

Re:Wow... (1)

dave562 (969951) | more than 3 years ago | (#34166788)

Wait until you get into college, where you'll be so far ahead in most of your classes that you can spend your time doing really important college things... like drinking.

Re:Wow... (1)

froggymana (1896008) | more than 3 years ago | (#34166950)

Then I can focus on even more important things like mastering the Ballmer Peak!

Re:Wow... (1)

Have Brain Will Rent (1031664) | more than 3 years ago | (#34167416)

That's how it worked for me :)

Re:Wow... (1)

froggymana (1896008) | more than 3 years ago | (#34166932)

It does seem sad... Here I thought I was rather behind on things in the computer world for my age, but I guess I'm really not.

Also, I'm not sure if knowing what about IRC is a good thing for me as I tend to spend 5-6 hours on it a day, but its better than facebook I suppose...

Re:Wow... (2, Insightful)

Hatta (162192) | more than 3 years ago | (#34167762)

Wait until you get a job and see what level your coworkers are at.

Re:Wow... (1)

TooMuchToDo (882796) | more than 3 years ago | (#34166728)

Excellent. Those of us who both write and use open source can appreciate that. You ready for GSOC 2011?

http://code.google.com/soc/ [google.com]

Total noobs enthusiastically spent the day on IRC (1)

santax (1541065) | more than 3 years ago | (#34166678)

Not so enthusiastically anymore now are you?

As an open-source software developer, let me say (0, Flamebait)

Anonymous Coward | more than 3 years ago | (#34166686)

As an open-source software developer, let me say: FUCK YOU BUDDY.

The last thing most projects need is a bunch of clueless n00bs filling up the mailing list with "OMG how do I run make", and I see no evidence that your "training" will produce anything else.

Seriously: none of these tools are a secret, and any software the students are USING has a pretty clear process for contributing. The only way they can be this clueless is if they're totally unprepared to actually contribute.

Re:As an open-source software developer, let me sa (0)

Anonymous Coward | more than 3 years ago | (#34167000)

Many students do not have an idea of what is even going on out there. This is a chance to at least help them make informed decisions to see if they might want to contribute some day. They will still post stupid questions but will at least know the context for the answers assuming it is not just "FUCK YOU AND THE HORSE YOU RODE IN ON." Students need to know how to share code and the process for how it is done. There is no place in the curriculum for these basic skills in most institutions, and this is a valuable experience to at least let students know where to start on google.

Now that I think about it, they should probably have a section on dealing with assholes on the internet, but that is probably a basic life skill now days.

So what you're saying is.... (1)

fishexe (168879) | more than 3 years ago | (#34167014)

The last thing most projects need is a bunch of clueless n00bs filling up the mailing list with "OMG how do I run make", and I see no evidence that your "training" will produce anything else.

...teaching people how to use make will cause more people to go "OMG how do I run make?".

Real World vs Classroom (1)

Cloudgatherer (216427) | more than 3 years ago | (#34166716)

I attended a college where the most popular professor of CS there taught part time and ran his own software business on the side. Of course, it helped that he taught some of the advance courses and was able to cherry pick the better students for part time positions. As a result, his classes and teaching style was real world oriented in terms of producing quality code, but the soft skills of a) delving into an existing code base b) using a SCCS (source code control system) or c) bug tracking systems were completely lacking in all my time spent doing CS.

I ended up learning the topics in this article on the job, and various companies are going to approach these systems differently. How an organization deals with some of these issues can reveal what the mindset and culture are handled in a company. While I think the lessons here are valuable, as far as the "practical student" goes, the vast majority of assignments are one-time throw-away. So it is no surprise to me that while interesting, the skills learned may be quickly lost as the day to day college student doing CS work will write one program for one assignment before moving on to write another program for a completely different assignment.

Re:Real World vs Classroom (1)

Hiro2k (264020) | more than 3 years ago | (#34166846)

That's a problem with the curriculum then which is easily solved by assigning group projects that are due at the end of the term.

Re:Real World vs Classroom (1)

vlm (69642) | more than 3 years ago | (#34167434)

While I think the lessons here are valuable, as far as the "practical student" goes, the vast majority of assignments are one-time throw-away.

Most work assignments by quantity are also one-time throw-away. However, most time spent is on the big eternal monster systems.

Might not be completely out of line to give them a mix of little "import this very raw data into a SQL database" and big "Lets spend an entire semester building a complete inventory system"

What a surprise (1)

PapaPrinny (1348895) | more than 3 years ago | (#34166772)

Computer science students who want to learn how to be programmers? Has the world gone mad??? No, it seems you have discovered what every computer science student wants: To become actual programmers. If only more CS professors possessed such insight.

Re:What a surprise (1)

magnusrex1280 (1075361) | more than 3 years ago | (#34166848)

Actually a lot of computer science students want to be lots of things besides programmers, and in fact many of them want to be anything BUT programmers.

Re:What a surprise (1)

daedae (1089329) | more than 3 years ago | (#34166910)

+1: The class I had in undergrad that I was most excited about was the one that had a series of 7 projects, which cumulatively were 70% of the grade. There was a small midterm and smaller final, but the main point was to get our hands dirty and write a lot. On the other hand, there is something to be said I think for the basics that you get in lower-level courses, and most people in the lower-level courses aren't going to do well if you throw lots of code at them. (Yeah, yeah, use that to select out the bad students so only the good coders even make it to the upper-level classes.)

Re:What a surprise (1)

Lanteran (1883836) | more than 3 years ago | (#34167350)

No. In my experience, most CS students now are part of the 'digital generation' and want to get an easy A or an easy degree. Not that this (introduction to the world of FLOSS) is a bad thing, quite the opposite. But still, for a perspective, most of the people in a web design class I'm in use Internet explorer and design all sites with WYSIWYGs.

Correction (1, Insightful)

schnikies79 (788746) | more than 3 years ago | (#34166814)

If by "world" you mean "religion", then okay.

There is nothing wrong with open source, but the dogma turns a lot of people off, including myself.

Re:Correction (0)

Anonymous Coward | more than 3 years ago | (#34167196)

Exactly, version control and automated builds are not exclusive concepts to FOSS. That the author relates them as such tells me a lot about what kind of person he is. After having read the article these people seem very much like the same evangelist types that turned me off OSS when I was in college over a decade ago.

Dazzle me with tools that work but don't force me into your bag (man).

Re:Correction (1)

PeterKraus (1244558) | more than 3 years ago | (#34167244)

Are you sure you don't mean Free Software when you are talking about Open Source?

great meeting you at the summit (1)

LetterRip (30937) | more than 3 years ago | (#34166852)

Hey is this the individual who had the talk at the google summer of code summit? Did you put your talk online yet? Don't forget to send an email to the list on it...

Re:great meeting you at the summit (1)

paulproteus (112149) | more than 3 years ago | (#34167546)

:D

You followed me all the way from California, back to Slashdot.... I will put it on the list soon! (Or you can, probably, given this Slashdot post.)

Orthogonal (1)

Xtifr (1323) | more than 3 years ago | (#34166948)

Bug trackers and version control are really orthogonal to FLOSS. Yes, it's true that most of the most popular VC systems and several popular bug trackers are OSS, but that's more by-the-way. These are all things that students of computer programming should have exposure to, yes, but mixing them all up as if they were the same thing may not be the most productive way to suggest that.

Not Open Source Specific (3, Insightful)

VGPowerlord (621254) | more than 3 years ago | (#34166956)

The first thing that struck me, both from the summary and the article itself, is that none of these are really open-source specific.

To reiterate, the four they listed in the article are:

  • Communication technologies, like IRC and mailing lists
  • How to get, build, and modify open source code
  • Project organization, including version control, bug trackers, and individual roles within a project
  • Linux and command line skills

OK, well, you could argue command-line Linux skills are open-source, but that's not guaranteed.

If anything, these are skills that all businesses who have programmers would want them to understand.

Heck, even my current project, an internal project that I swear I could submit things to The Daily WTF [thedailywtf.com] every weekday for the next year on, has version control and bug tracking software!

Re:Not Open Source Specific (1)

vlm (69642) | more than 3 years ago | (#34167518)

Project organization, including version control, bug trackers, and individual roles within a project

You'll read many more interesting examples of the above in the linux kernel, than say, yet another one week in-class project.

outlook express (-1, Troll)

Anonymous Coward | more than 3 years ago | (#34166980)

Sounds like a waste of time. US CS students should be spending more time learning to describe project requirements via Email to the real programmers in India.

Figure it out later (2, Interesting)

cforciea (1926392) | more than 3 years ago | (#34167100)

Not to diminish the complexity of version control or anything, but I'd rather have a programmer that knows how to design an algorithm and needs help getting it checked in than a lousy programmer who knows his way around SVN well enough to check in his crap code.

Of course there are people with CS degrees that can't design an algorithm and vice-versa, but they are really trying to teach the more important part of the equation. If you can figure out the core theory behind computer, I'm confident that you'll be able to eventually navigate the software development process; I'm not sure the reverse is always true.

And introduction to "how to live under a bridge" (0)

Anonymous Coward | more than 3 years ago | (#34167160)

And introduction to "how to live under a bridge" or "how to ask for money in the street"

waste of time, learn to use email (0)

Anonymous Coward | more than 3 years ago | (#34167186)

US CS should spend more time learning to describe project requirements in e-mails, and learn multiple languages. That way the real programmers in China and India will be able to complete the project quicker.

Hmmm (0)

Anonymous Coward | more than 3 years ago | (#34167352)

I'd say if you're studying Computer Science you should be a big enough nerd to have already encountered those things, no?

If you want to help run a similar event... (4, Informative)

paulproteus (112149) | more than 3 years ago | (#34167370)

Hey all! I'm going to be working on organizing more, similar events going forward.

If you want to stay on top of that, or try to organize an event near you, join the mailing list for OpenHatch events: http://lists.openhatch.org/mailman/listinfo/events [openhatch.org]

This is part of the OpenHatch project, an ongoing effort to help new contributors get involved in open source. If you want to stay in touch with OpenHatch, join us on #openhatch on irc.freenode.net or follow the links on our "About" page, http://openhatch.org/about/ [openhatch.org] .

Yuvi Masory and Felice Ford played a huge role too (2, Informative)

paulproteus (112149) | more than 3 years ago | (#34167438)

In my late-night Slashdot writing, I forgot to mention this the summary: Yuvi Masory and Felice Ford played a huge role in organizing the workshop. Yuvi and Felice handled all the logistics, getting all the details down to a T -- that included asking Github for sponsorship, staying up late the night before to organize the students into groups, reserving rooms, and earning the support of Penn computer science.

The workshop was just a pipe dream until Yuri and Felice nailed down all the pieces. My hat's off to them!

Further thanks go out to John Stumpo, Jonathan Simpson, and Zach Goldberg, who all came in from out-of-down to help these students get their feet wet in open source.

Quite True. Can confirm by personal account. (1)

ALoopingIcon (992589) | more than 3 years ago | (#34167758)

Yes it is true. A personal experience below.

Using real open source projects in the context of a University course can be a quite successful experience. Both from the didactic point of view and from a software production perspective.
Five years ago I decided to involve my students of the advanced computer graphics course at the Pisa University in the collective writing of an extensible mesh processing system that we called MeshLab with a plugin based architecture that allowed a easy to be managed compartmental development. Students get very involved and, beside the computer graphics hard core topics of the course, they learned a lot in term of collaborative development, ethics of sw development, open source licenses. At the end of that course a working system was successfully distributed under a GPL.
Since then, every year, I have repeated this approach extending it, and with the helps of tens and tens of willing students the system evolved into a serious complex mesh processing system, GPL'd, multiplatform, included in ubuntu and that is used worldwide by ten of thousands of users in academic and commercial environments.
I found that the knowledge of participating to the development of a **real** system gives the students a really strong motivation to give their best. The fact that their contribs will be released publicly with their name linked to the commits and listed in the official developer page was a strong incentive to do not cheat. For most of them it was the first time that they were making something real (not only exercises) something with a purpose that was quite different from the standard "get the score" approach. Many of the students continued to maintain their portion of code well beyond the course terms (some even after graduating).

I cannot but thanks my students for the dedication that they have shown in the projects.
Just google for MeshLab [sourceforge.org] for more details of it.
P.

The one thing missing (1)

DevConcepts (1194347) | more than 3 years ago | (#34167868)

Would seen to be the assumed and inherent responsibility with regards to the use of open source (FOSS). Contribution (Not specifically money, but it helps) to the open source community as a whole, by users just want free with no strings and full (What do ya mean support is only email and you will get back to me when you can! I wont be bothered to read anything and can't figure out how to do something simple). Adding bugs that are found to trackers, maybe even fixing the code if you can do it. Helping in forums with the knowledge that you have. Promoting the use of open source and the responsibility that follows. It would seem that "most" want everything for free and on a platter waiting for them without the contribution part. I have been there in the past and I can see the error of my ways. Sometimes the contribution can be in the most unlikely ways.

An author I have followed (All of his books are released in digital form for free under CC) is self publishing a book (Dead tree, limited edition) that is a collection of past works and includes all the digital files for the works. E books, audio books, whatever is avaiable for the contents, all licensed under CC. He was looking for some cheap hardware to clone the SD cards that are included in (Yes attached in the cover) and I wound up recomending some hardware and writing the software to perform the cloning. The code is being wrapped up, along with the program and install instructions, for all to take for free later this month once the website is updated for my FOSS contributions, as small and somewhat insignifiant as they are. We are only as free as we help with the free.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?
or Connect with...

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>