tags:

views:

655

answers:

13

I'm a young (highschool next year) beginner programmer, currently learning Python and starting to do some really small projects, like creating a contact form with and without django and plan to eventually do some bigger ones, like creating a lightweight texteditor (think notepad).

I would like to eventually get into helping out with Open Source projects, and I am wondering if other developers will be able to take me seriously if I am young? I don't want them to baby me, and I don't want them just completely ignore me because "I'm a kid so I don't know anything."

Do you think other developers would take a -really- young programmer seriously?

Would you take a young programmer seriously?

+29  A: 

Why would they even know how old you are? Unless, of course, you behave without maturity.

Even if they did know your age, it's uncommon in engineering for preconceptions about age to form, at least in my experience.

wallyk
+1 for mentioning maturity. There's a difference between being young and being immature.
Mark Byers
+1 because skill trumps age every time.
jathanism
Don't have to be young to be immature or a pain to work with. An advantage of being young is the time and energy you can devote to a subject with less life-administration getting in the way. Solid project work only improves employability.
MattH
On the Internet, nobody knows you're a dog.
Eric King
@MattH - Haha. I like the description of "life-administration." +1 for that.
JasCav
A: 

Most the time you only know the person's first name. Most programers I know aren't prejudice so I don't see why they would judge you on something like age.

ajcates
Jus' because someone doesn't know doesn't mean they wouldn't have prejudice if they did. Just saying.
Tchalvak
A: 

It has nothing to do with age - if your doing well, eager to learn and generally pleasant you'll go far. An awesome coder who is a real PITA to work with won't get far.

So, just put your work in and keep improving - its never to early (or late) to start. Give it a go!

Mr-sk
+7  A: 

I'll take any programmer serious if they're serious about what they're doing. My concern for you would be more about experience level than age. In other words, learn to program really well, and be able to (more or less) fully understand the code in the projects you'll be working on before asking for help or trying to contribute.

Once you're able to add serious code that solves problems or adds new features to the code base AND if that code is well written, no one will care about your age.

You know, there just aren't enough of us as it is. The developer community in general, not just open source, needs more and more and more fresh meat. We can't be so strict as to limit excellent engineers no matter what. That's why you can still work your way up to a $100k+ job with no computer science degree (or even college degree) at all.

Terry Donaghe
I've seen open-source projects act as a catalyst and rich learning ethos for budding programmers. The successful ones (new programmers) start small, sometimes with things like testing, packaging, but positive contribution is often rewarded with informal mentoring when needing.
mctylr
On the topic of experience, get into freelance programming as soon as you can. If you start into it carefully, cheaply, and completely on your own terms, you will probably learn fast and powerfully. I started freelancing essentially this year (online via odesk.com) and have found that doing small projects with completely new people each time is expanding my skills daily. Wish that I was ambitious to have started freelancing 10, 15 years ago, because I'd be so much better than I am now.
Tchalvak
A: 

As long as you produce good code and don't behave obnoxiously over it, sure.

Vinko Vrsalovic
A: 

You will be judged on your solutions. The people doing the judging won't have any way to know how old you are unless you tell them. On the other hand, no one will hold your hand either. Generally a solution is either accepted or not without a lot of explanation.

Joel
'no one will hold your hand either" - that depends on the project, certainly larger, busy projects they simply don't have time, but in my experience polite requests for clarification if a patch is rejected is normally met with some form of constructive feedback as long as the initial attempt is serious.
mctylr
+15  A: 

Since this question is about Python, it's fitting to note that the current Release Manager for Python is 16 years old. So I think that you would do just fine.

Alok
+43  A: 

"Devoting some care to your writing will pay off hugely," according to Karl Fogel, who retold this story in his book:

Back in 1993, I was working for the Free Software Foundation, and we were beta-testing version 19 of GNU Emacs. We'd make a beta release every week or so, and people would try it out and send us bug reports. There was this one guy whom none of us had met in person but who did great work: his bug reports were always clear and led us straight to the problem, and when he provided a fix himself, it was almost always right. He was top-notch.

Now, before the FSF can use code written by someone else, we have them do some legal paperwork to assign their copyright interest to that code to the FSF. Just taking code from complete strangers and dropping it in is a recipe for legal disaster.

So I emailed the guy the forms, saying, "Here's some paperwork we need, here's what it means, you sign this one, have your employer sign that one, and then we can start putting in your fixes. Thanks very much."

He sent me back a message saying, "I don't have an employer."

So I said, "Okay, that's fine, just have your university sign it and send it back."

After a bit, he wrote me back again, and said, "Well, actually... I'm thirteen years old and I live with my parents."

gruszczy
+1 for LOL. That's crazy...and awesome.
j0rd4n
Wow, that is awesome
Brad Johansen
It was the internet. How do you know he was really 13? 'He' might have been a 65 year old grandma.
aaaa bbbb
I think this story shows two things: If no-one -knows- your age, only your merit and skill will matter. If, however, they do know your age, they may well find that off-putting in how they treat you. So if there's no reason to announce your age to them, why bother with the extra trouble it might bring? At least until they know you better by your work than their preconceived notions.Just my thoughts on the matter.
Tchalvak
Makes you wonder why SO asks for your birthdate in the bio...
Roger Pate
wish i got started that young
Tom Dignan
A: 

It is much easier to be perceived as good if you avoid the following:

  • Write your comments and/or documentation in textspeak. Nothing sells maturity like \\teh codzer can haz ur db handle
  • Make sure others know how great of a coder you are from the start.
  • Engage in obnoxious and useless fanboyism: This project is using perl. Perl is teh suxorz! python FTW!!!!
  • Alienate your peers by asking inane questions: wtf is a complier? is gcc mean great cool codegen woot!

FollowAvoid these simple guidelines and you will be a top coderz in no time!

Byron Whitlock
This could have been a good post if you had spoken directly rather than sarcastically. Fixed.
Ether
+8  A: 

I, too, am a young developer (15 when I started contributing to open source).

I can speak from experience when I say that no one cares. No one will ever ask your your age, and unless you are immature, no one will have a reason to.

Just remember that other people will usually know best, as you're still young. Learning should be your priority. Of course, there's no reason you can't learn and contribute at the same time!

Anyhow, I suggest starting with tiny, tightly-knit open source projects. Small communities are more likely to teach you, and take you under their wing when you mess up, as opposed to silently rejecting a patch.

To start out in open source, just lurk on the mailing list for a while and see where it takes you. If someone asks for something small (an easy patch, obvious bugfix, etc.), volunteer and write it up yourself. It will help you get acquainted with the code base. Once you've got the feel for it, feel free to grab TODOs from the issue tracker and try and implement them.

One last thing - try to get code reviews as much as possible. Not only will it prevent embarrassment when a "rookie mistake" sneaks into a release (and someone will, inevitably, git blame you), it's also a wonderful learning experience when people suggest better ways of accomplishing tasks. It's so exciting to find out something that took you 200 LOC and 4 hours of your time can be accomplished in two API calls. Most of your programming problems have been solved by someone else already.

Clark Gaebel
+2  A: 

Well, this depends on a lot of things. In experience, maturity has very little to do with age. If you act like an adult, chances are you'll be treated like one. If you work, and gain the experience to back yourself up, you will absolutely be taken seriously.

I am 15 years old, and I spend a lot of time in language communities like Clojure and Haskell, and Ioke as of late. I don't act like an average teenager, so I'm not treated like one. I have never come across any sensible, well-meaning software developer that didn't at the very least respect my skills and enthusiasm. Most of the time, people are just amazed that I know as much as I do at such a young age.

All in all, if you act like an adult, you'll be treated like one. Just don't act like a 'kid', and you wont have to deal with such things.

Good luck.

Rayne
+7  A: 

On the Internet, nobody knows you're a dog

On the internet, no one knows you're a dog

Chris Latta
I concur!` ` ` `
Ether
+1  A: 

Not all open source projects require you to have a fully authenticated and real-world verified profile. This may preclude you from becoming a committer on Eclipse, but not on your typical project. Code speaks.

However, when you participate in forums or mailing lists, you need to be careful. Even if you think you are mature, there's still a style of writing and debating when you are younger. Save some messages you write now, wait 15 years, and see what I mean.

Uri