Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Trained Perl professional or self-taught hack?

by punch_card_don (Curate)
on Apr 01, 2005 at 14:26 UTC ( #444186=perlmeditation: print w/ replies, xml ) Need Help??

Reading Perlmonks I'm often impressed by the depth and breadth of knowledge of Perl in posts. And sometimes I wonder - are these people trained professionals, or just self-taught hacks like me?

The last computer course I took was a first year Fortran course over 25 years ago. But as a research scientist, programming was an ever-present work tool. Something you just opened a book on, learned, and applied. During ~15 years as a research scientist, I programmed everything from an old Rockwell AIM portable computer for data acquisition from test equipment, to IBM 3000-series mainframes for statistical analysis data crunching programs, to silicon wafer probing robot controllers, and much more, in every language from Basic, to Fortran to Assembler to proprietary PLC languages.

But every one of those projects were hacked together by having a programming manual open beside the computer, extracting just enough knowledge to get the job done.

The other end of the spectrum would be someone with full trainig in general programming theory and in specific languages. People with on-going training to keep their skills up to date. Real programming professionals.

So, which are you?

Forget that fear of gravity,
Get a little savagery in your life.

Comment on Trained Perl professional or self-taught hack?
Re: Trained Perl professional or self-taught hack?
by dragonchild (Archbishop) on Apr 01, 2005 at 14:30 UTC
    I have a CS degree, so I'm technically a trained professional. But, I use almost none of what I learned at school in my career as a programmer. So, which am I?
      I have a CS degree, so I'm technically a trained professional.

      A trained professional is someone who has been trained in a professional setting. College does not turn you into a trained professional.

Re: Trained Perl professional or self-taught hack?
by tlm (Prior) on Apr 01, 2005 at 14:34 UTC

    Sounds like a good starting point for a poll.

    the lowliest monk

Re: Trained Perl professional or self-taught hack?
by RazorbladeBidet (Friar) on Apr 01, 2005 at 14:43 UTC
    I'm a CS dropout (technically), but I learned Perl outside of the classroom.
    --------------
    "But what of all those sweet words you spoke in private?"
    "Oh that's just what we call pillow talk, baby, that's all."
Re: Trained Perl professional or self-taught hack?
by jimbojones (Friar) on Apr 01, 2005 at 14:44 UTC
    Definitely a self-trained hack.

    my experience follows Don's, but for a shorter span of time and fewer systems to work on. I was a researcher for 7 years, and learned enough Fortran, C and perl to get the job done. I've gone deeper on C and Perl of late, but not with any formal training

    - j

Re: Trained Perl professional or self-taught hack?
by Limbic~Region (Chancellor) on Apr 01, 2005 at 15:09 UTC
    punch_card_don,
    This is a hard question to answer. If you are asking if I was taught in school, the answer to that would be a resounding no. I barely graduated highschool and never matriculated into college. On the other hand, I believe I have gotten an equivalent high-priced education hanging out here at the Monastery.

    There is nothing wrong with a little hubris and to be honest, I believe I am a fairly competent hacker. As you can see from Road map woes, my self-taught programming was not in the same playing field. So while I haven't formerly been taught, I certainly owe my education to others and not necessarily myself.

    Cheers - L~R

Re: Trained Perl professional or self-taught hack?
by merlyn (Sage) on Apr 01, 2005 at 15:20 UTC
Re: Trained Perl professional or self-taught hack?
by cog (Parson) on Apr 01, 2005 at 15:23 UTC
    Like dragonchild, I'm technically a trained professional... I mean... OK, two more exams and I'll finish my degree! :-)

    I started learning Perl at my final year at university (2001), but the Perl I learned I learned because I liked it :-) I have a bunch of Perl books, I read a bunch of stuff, I'm always trying new things...

    And if all goes well, I'll receive some official Perl training sometime this year... which I'm looking forward too, but not in the sense of "I'm finally going to learn something"... No, I'll merely receive official training! To tell you the truth, I don't even know whether I want that in my resume :-\

    Anyway, I don't consider myself a guru (japh), but (and I'm not trying to brag myself) I have done a couple of interesting things, I guess... at least I'm organizing this year's YAPC::EU, I have a bunch of modules on the CPAN, I wrote a guide on writing Perl modules and a couple of other things (one of which even got the best paper award at YAPC::EU::2004)...

    I didn't learn those things from training, but I was at the university, so... I guess one could call me a self-taugh-Perl-hacker :-)

Re: Trained Perl professional or self-taught hack?
by Mutant (Priest) on Apr 01, 2005 at 15:40 UTC

    I don't really think the difference between a 'hack' and a 'professional' is whether they've had formal training or not. And often, as others have posted, it's actually the other way around from what you suggest (i.e. those without formal training actually become more professional than those who don't).

    I learnt Perl well before I started my degree, but I was certainly a hack at that point. I was lucky enough to do a degree that was actually worthwhile, but the lessons learnt there didn't really manifest themselves in my programming until I began working full-time. And I learnt a lot more off my more experienced colleauges.

Re: Trained Perl professional or self-taught hack?
by 5mi11er (Deacon) on Apr 01, 2005 at 15:42 UTC
    I think there is no straight professional/hack answer to this for anyone gracing these halls. I think you need a mixture of professional training to get the breadth of knowledge, and hackish tendancies to be able to plumb the depths of knowledge.

    In other words if you don't have the passion to learn on your own, but went to school, you're not going to be better than simply adequate, and if your a hack with no schooling, there will be concepts that you're never going to be introduced to.

    Those with both the passion and schooling are going to make up the upper eschelon of any discipline. And a tiny percentage of those will turn out to be the True Wizards.

    -Scott

      much wisdom, for my money, in 5mi11er's "professional training to get the breadth of knowledge...."
      My eyes don't exactly glaze over when I'm following a thread where the knowledgeable turn the discussion to some truly CS-type byway, but a little voice says -- "ummm, more to study!" and a second little voice asks "with what for time?"

      The second voice doesn't squawk at purely perlish study-time, but gets a tad touchy when deeper knowledge, much as I may want it, gets in the way of dandling grandkids on knee; earning my keep, etc.

Re: Trained Perl professional or self-taught hack?
by bluto (Curate) on Apr 01, 2005 at 16:26 UTC
    So, which are you?

    I started as the typical 13 year old hacker ... about 30 years ago. I had access to some "big iron" back then, and some people were helpful/foolish enough to allow me to use it. Yes, those were the days -- saving your monster 200-line basic game program to paper tape from a 300 (or was it 110?) baud terminal and hoping you could read it back in later; wrangling with the punch card machine; threading reel-to-reel tapes; hand mounting disk packs; grabbing passwords off of printouts carelessly cast into the trash (really).

    Now I have a BS and MS in CompSci, so I guess it's both. I think just having one or the other would cause me to have gaps in perspective/knowledge (i.e. I think both are beneficial). So I should have no excuse for not knowing what I'm doing. Of course I still make excuses...

      Hey! That was my password you swiped off that printout! (But don't worry... I swiped yours, too.)

      :-D

Re: Trained Perl professional or self-taught hack?
by jhourcle (Prior) on Apr 01, 2005 at 16:57 UTC

    I find that I do the same as you -- I learn enough to get whatever job I'm working on done. Now, I try to take the time to do some research so I don't write too crappy of code, but there are those times when you come back to something you wrote a few months (or a few years) down the road, and you realize just how bad the code was that you wrote, given what you now know.

    As for being self taught, yes and no. I've taken basic programming classes (although my undergrad is in civil engineering, and my current master's work is in library science) I've taken classes in Basica, Pascal, C, C++, 68k Assembler, just because I felt like it. Fortran (back when it was still FORTRAN) and Logo, because they were required for school (okay, one was elementary school, but still). And one of my past employers sent me to learn PL/SQL and CFScript (well, ColdFusion in general).

    But that whole 'self' taught thing is really hard so say what qualifies as 'self'. I've learned a lot from people I've worked with over the years. Even if they're not teaching you directly, I never would have gotten to my current point without help from others when I learned Perl, VBA, LPC and k?sh. I guess the only ones that I'm really self taught in are those that I don't really use that often (ie, the ones I suck at), like AppleScript and Java. Well, I guess I can get by in JavaScript, and I've never had someone to apprentice to or had formal training in it... just books and websites.

    As for keeping skills up to date, I get that from using them, or reading books, for the most part. My current employer has a training budget for me, but I don't find that training is worth it unless I can immediately apply it to what I'm working on. If I don't get the change to use it, and burn it into my memory, I forget it rather quickly.

    I've never had any classes in general programming theory (I thought about taking a class on data structures once, but they required you to take Ada first, so it wasn't worth my time), but tend to get that sort of stuff from books for the most part. To some degree, it's actually helped me, as I (used to, less so now) approach problems from a different direction than the folks I worked with who were trained as compsci.

Re: Trained Perl professional or self-taught hack?
by Anonymous Monk on Apr 01, 2005 at 17:57 UTC
    Both. :-)

    I learned Perl, but not at university.

    I did a 3 year general math degree, but didn't have the marks for a 4 year CS major. (Largely because I flunked too many electives: I guess serves me right for trying to learn physics and astronomy where everyone else was taking like Psych 101 & Film Studies.)

    I took all the CS courses I could (stuff like Introduction to Concurrent Programming, Numerical Representation, Theory of Computation, and the first two introductory courses, but many of the useful ones, like Data Structures & Algorithms, Real Time Programming, and AI were for CS majors onlys). I also took as many 'Combinatorics and Optimization' courses as I could qualify for: the Introduction to Cryptography course was quite interesting, for instance.

    I learned Perl, but not at University. However, learning a new language wasn't considered difficult at our school. In three different courses, they threw a manual at us, spent about three weeks giving us an overview of the language syntax and features, then asked us to write useful programs in the language.

    This practice actually worked fine for Turing and Ada, but when they asked people to learn C in 3 weeks in the Intro to Concurrency, half the class failed. Admittedly, asking the class to learn C *and* their own in-house concurrency language extensions was probably a bit much.

    In one course, I remember "learning" about 5 different languages: some form of assembly language, I think, an intro to Prolog assignment, and an intro to Scheme.

    They never taught us Perl; I looked at it first during a work term, but didn't really do much more than glance at the syntax for a long time.

    After I graduated, I wanted a job, and decided to learn Perl. So, I picked a little toy problem to help me learn. I re-wrote most of a 12,000 line C telnet based chat program as a 1,000 line Perl program, put that on my resume as a demonstration I could use the language, and got a job working with Perl a few months later.

    That was in 1998, and I've been using Perl professionally since.
    --
    Ytrew Q. Uiop

Re: Trained Perl professional or self-taught hack?
by thekestrel (Friar) on Apr 01, 2005 at 18:29 UTC
    Have a degree in micro/hardware/eng type stuff, but self taught hack for all programming languages I fiddle with =P. My mentors for perl come in the form of 10 books with goofy looking animals on the front and Perl Monks of course =P.

    Regards Paul.
Re: Trained Perl professional or self-taught hack?
by brian_d_foy (Abbot) on Apr 01, 2005 at 18:46 UTC

    I don't like the word "professional" in these sorts of cases. I reserve that word for people with formal training and in a job that requires licensing, has a formal code of conduct (lawyers, doctors, civil engineers), and requires continuing education. I see "programming" jobs as just the opposite. A lot of people don't have formal training in the area of their work. Programmers don't have to be licensed, and there certainly isn't any agreement on standards of work or quality. Programmers don't even have to keep up with the times and technology: there are plenty of people out there perfectly content to keep plugging away with COBOL on mainframes (although that number dwindles as people retire).

    I also tend to think the people with Computer Science degrees are not formally trained in programming either, but that can vary based on the program they are in. My degree is in Physics, and I went to school with a lot of people who thought since they were smart enough to have a degree in Physics that they could design a bridge or build a tower. Sure, we know all about torques and forces and whatnot, but its not that same as engineer who knows all about concrete and load and technical drawing. The broad theoretical topics like Physics and Computer Science do not necessarily translate to the applied topics like engineering and computer programming.

    In my mind, programming is one of the things you learn after you've had the formal training. You study a lot on your own, and you sit next to wise people who teach you things. You read a lot, and you try a lot of things on your own. That's where things start to separate people.

    I know a lot of people who have programming jobs, but they do the same thing every day, and they use the same tools everyday. They got into programming when they thought it was a cool lifestyle, that's the job they got, and now that's their career because they are invested in it and don't want to start over (retirement plans, house payments, whatever). They show up on time and go home on time. They learn what they need to accomplish their task. That's not a statement of the quality of their work, just that they have their day job and that's what it is. They do their job, and that's it.

    On the other hand, there are people who learn just about everything they can, are trying all the new tools, learn several languages, and read about programming ideas even if they are demonstrated with another language. These people have to take long vacations because after three days in the Caribbean they are still think about their work (or take a GeekCruise and never stop thinking about it). These people would program even if they didn't get paid. They might have a formal education in some area, but not one dealing with technology. They know how to read and they do. They talk to a lot of people and learn their wisdom.

    Now, having said that, I'm don't have formal training in programming, but I'm not exactly self-taught either. I know how to learn things on my own, but I've also had a couple of good mentors and have surrounded myself with really good programmers.

    --
    brian d foy <brian@stonehenge.com>

      So, you object to the term professional. Can we all pretend, then, that the OP asked about "in-class education/training in the field of computer programming"? I think we all know what the OP meant, even if it wasn't formally precise.

      To answer the OP's question myself - I have a degree in Electrical Engineering (I'm not sure why brian d foy singled out civil engineers - at least in Canada, all types of engineers need licensing, not just civil engineers). I took a computer minor, which amounted to 8 out of 41 courses being computer-programming-related (two from computer engineering, two from electrical engineering, the rest from computer science). And I have enough hubris to think I'm the best programmer on my team ;-) The rest of my team has either a comp sci degree or diploma each.

      And I need to point out an inference I have from brian's post above: that programmers do not need to be licensed, nor should they need to be licensed. Perhaps this wasn't meant to be implied, but I inferred it anyway. I do think that there should be places in software where licensing should be mandatory. For starters, anything that any engineer, doctor, or other licensed professional uses in the pursuit of that profession (e.g., CAD, aeronautic computation, etc.) should have the stamp of a licensed professional in order to be marketted to that profession. That stamp would also prohibit any sort of EULA which tries to limit damages in the area of the licensing that is not in accord with that industry in general. Yes, this could drive the software prices way up. But then the quality of that software would have to be methodologically proven, which would help so many engineers, doctors, etc., that it would probably be worth it.

      Authoring a spreadsheet or the like would be one thing. Writing rocket guidance or medical-research software is a whole other can of beans.

        Indeed, I object to the loose use of "professional", and I don't know why I used "civil engineer" otehr than that's who I think of when I talk about this because I talk about building bridges. I want to distinguish that from "software engineer", which is not a proper term in a lot of places no matter what people put on their business cards.

        We don't have to pretend that we know what the OP meant: I addressed that in the rest of the post as I talked about Computer Science degrees and formal training. I wrote a lot more than just the first paragraph. :)

        Also, I don't say that programmers should not need to be licensed. I only point out that they currently don't. That's a different discussion, and don't mistake that to mean I implied anything other than the current state of affairs.

        --
        brian d foy <brian@stonehenge.com>
        There are actually two levels of engineering certification in the US. Basically, once you've gotten your degree in college (from an ABET accredited school), you can then take the first test (Fundamentals of Engineering, which then designates you as an 'Engineer in Training'). After working under a Professional Engineer (someone who's already passed the second test) for about 2-3 years, you can take the PE test. Once you pass the test, you can apply for licensing. I've only dealt with the Board of Licensure in Kentucky (I did some work on their databases ... reminder to self -- never take someone's word that it's 2 weeks of work, without specing it out yourself -- they neglected to mention that I was replacing an existing system, not making something from scratch (which might've taken only 2 weeks)) but the states seem to compare notes on the applicants, to see if anyone else has a reason to black list the applicants.

        Now, my understanding for the licensing is that it's because certain fields in engineering have the possibility to do real economic damage or cause human casualties. Sure, doctors can kill people from negligence, but unless it's misdiagnosing the plague, they're only going to be found out before they've killed a dozen people. Civils, Structurals, and a few other fields have the potential to kill hundreds, thousands, or even more with one bad calculation (building collapse, dam bursting, etc.). That's not to say that electrical engineers couldn't kill people too, of course.

        For quite some time, programmers weren't a profession on their own -- they were scientists, who also did programming, or similar. They knew the problems they were working on intimately. These days, programmers might be brought in on a contracting basis. For some folks, a typo might result in someone not getting their email; for others it might result in people dying.

        I would love to see a form of purely voluntary licensing for programmers, so that you could be sure that the people that you're comparing for a job are similar in skills. I know there's Brainbench, and probably other similar companies, but I'd prefer it to be run by the programmers they're certifying, more like a guild or union. I'd like to see an apprenticeship systems for programmers, to replace and/or build on what they might learn in structured classes. I assume that some larger companies, who focus on software might have a mentoring program, or similar, but I've never worked in that industry.

        I'd also like to see something like the FE vs. PE, where you have a basic skills test, and then a series of higher level tests for specialties. Just as you don't want a podiatrist doing open heart surgery, or a tax lawyer defending you in a murder trial, you might not want someone who specializes in making email feedback forms for websites writing database software to track capital elligible judicial cases, or tracking medical needs for neo-natal care patients. I don't mean to belittle people who make web pages (I do it myself), but there needs to be a different level of due dilligence, when you might adversely affect someone's life in more than just a superficial manner.

      I don't like the word "professional" in these sorts of cases. I reserve that word for people with formal training and in a job that requires licensing, has a formal code of conduct (lawyers, doctors, civil engineers), and requires continuing education.

      I can understand (if not agree with :-) this definition of professional. However I wonder if you have any other terms that you use to describe people who do software development as a career and take their conduct and continual development very seriously, as opposed to people who code as a hobby or know just enough to write some scripts to do some sysadmin?

      Just curious...

        The term "software developer" works for me. :)

        It's not a problem only with programming jobs. There are plenty of occupations that people have as a career, but that other people can do on the side. I think the confusion comes up because people want to identify themselves as what they do at work, rather than who they actually are or what they actually do. For instance, people say "I am a programmer" more often than they say "I program".

        Since people use that first form, I've often seen "title inflation". Some people want to sound more important than what they actually do. "Software engineer" is a fancy term for "code monkey". "Software Designer" seems to mean "code monkey without a spec to follow". You'll find a lot of "Dircectors of" in small business, although they aren't really directing anything more than anyone else. "Vice president" positions in the same company have inflated in numbers over the years too.

        Furthermore, I don't think getting paid or having a job has anything to do with the level of conduct or the seriousness of the activity. The number of hours a person spends on the activity each week also doesn't have anything to do with those things. This is more apparent in the open source world where a lot of unpaid works goes on, often by "hobbyists". :) I think people use the word "professional" to divide those two groups and make the "hobbyists" seem somehow inferior because the "professional" goes to an office and sites in cubicle five days a week, and that somehow makes the activity more worthy.

        --
        brian d foy <brian@stonehenge.com>
Re: Trained Perl professional or self-taught hack?
by adrianh (Chancellor) on Apr 01, 2005 at 20:42 UTC

    I'm another one who fits in the "both" category I guess. Got my first computer when I was eleven, did some commercial code in my teens, did my degree, mostly working as a software developer ever since.

    Personally I find the whole academic/industry divide daft. Idiots on both sides throw stones where there is a heck of a lot of useful info in both camps.

    Never had any formal training in Perl. Just worked through the old pink camel book when I needed to write some Perl code for work.

    As for on-going training - depends what you mean. I've not been on any official paid-for courses in many a year. These days I tend to teach them rather than attend them :-)

    However I spend a chunk of my day, every day reading mailing lists, RSS feeds of clever folk, books, papers, etc. If my personal circumstances allowed it I'd be at every conference I could spare the time and money for too.

    Not to mention trying to find people cleverer than you at work or online and doing your best to learn from them.

    In my opinion that's what you have to do if you want to be a professional developer.

Re: Trained Perl professional or self-taught hack?
by CountZero (Bishop) on Apr 01, 2005 at 20:52 UTC
    Finished law school, been a lawyer for 15 years and now a marine claims handler at an insurance broker's office.

    Taught myself programming, although I did follow a summer course in COBOL and systems analysis.

    Strange, the only programming language I have a formal training in, I have never ever used.

    CountZero

    "If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law

Re: Trained Perl professional or self-taught hack?
by BrowserUk (Pope) on Apr 01, 2005 at 21:25 UTC

    I think that in programing, like most other fields of endeavour, there are four main traits:

    1. Those who treat it as work--a means to an end.

      Always employed, rarely inspired.

    2. Those who treat it as an artform--an end in itself.

      Often inspired, often unemployed.

    3. Those who treat it as a subject, often one of many, to be explored, expanded upon and shared.

      Often employed doing something else, or employing others. Always inspiring.

    4. Those who use their knowledge as a cudgle with which to beat others over the head.

      Usually employed. Never inspired. Never inspiring.

    Most people are a little of all of them. The critical factor is the mix.


    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    Lingua non convalesco, consenesco et abolesco.
    Rule 1 has a caveat! -- Who broke the cabal?
      Very well said. There are other factors too, like laziness and hubris. A little of both are required to be a "good" programmer. (But only a little...)
Re: Trained Perl professional or self-taught hack?
by jonadab (Parson) on Apr 02, 2005 at 01:30 UTC
    On the one hand, I only *minored* in Computer Science; my major was math. So from that angle, I'm only halfway college-trained in the field. On the other hand, if you look at my transcript in detail, you'll see I have almost as many credits in computer as I do in math. On the gripping hand, none of the languages I studied in school (CoBOL, ForTran, QBasic, Visual Basic, Pascal, C, Lingo) are ones that I ever use in the real world. (C would potentially be useful, but despite aceing the class, I never got to the point where I could actually write anything in it, much less read anyone else's code. In retrospect, it's astonishing that I did so well in the course, when the language disagrees so badly with my programming style.) The languages that I actually use (Perl and elisp mainly, and XML and SQL if you count those as languages) were not offered in school. Yet, coming at it again from the other direction, the wide assortment of languages that I did take in school did help prepare me to learn the ones that I am using, and of course there are the conceptual things that span language boundaries; that data structures and algorithm analysis class is *very* worthwhile to have had. For that matter, even some of my math classes provide useful background; modern algebra stretches the mind in ways that prove useful across a wide variety of subjects, it seems. Is the computer knowledge I have now the product of my schooling, or the product of self-study, or of work experience? Yes. All three.

    "In adjectives, with the addition of inflectional endings, a changeable long vowel (Qamets or Tsere) in an open, propretonic syllable will reduce to Vocal Shewa. This type of change occurs when the open, pretonic syllable of the masculine singular adjective becomes propretonic with the addition of inflectional endings."  — Pratico & Van Pelt, BBHG, p68
Re: Trained Perl professional or self-taught hack?
by arc_of_descent (Hermit) on Apr 02, 2005 at 14:07 UTC

    I'm sure I'm self-taught. But no offense to the numerous people out there who one way or the other have helped out. Like my numerous bosses, colleagues, people here at perlmonks, and others.

    I guess it really boils down to the art of learning. If you're inquisitive enough and motivated you can damn well learn most of the stuff out there (I don't mean hardcore stuff like rocket science though).

    Whats keeping anyone from learning a new language? I learnt Perl by myself by reading the Camel book. Although I had to do it cause my first job involved writing a Perl CGI.

    I do have an engineering degree, but I honestly feel it has contributed litte or nothing to my software programming knowledge. Whatever I've learnt is purely "on the job". But I must attribute the patience and need for detail which an engineering degree will teach you.

Re: Trained Perl professional or self-taught hack?
by Juerd (Abbot) on Apr 02, 2005 at 22:19 UTC

    I'm an autodidact.

Re: Trained Perl professional or self-taught hack?
by Robertn (Hermit) on Apr 03, 2005 at 06:02 UTC
    Must be both, got a programming degree ages ago in stuff like Cobol, Assembly and Fortran. Went to work and learned Basic, Pascal, and Algol among others. But I got dumped into maintaining some Perl programs, awhile back, with no time at work to learn, so I wrangled a course at the local Junior College to give me the basics, well I was sitting in class trying to figure out what I was supposed to maintain. Seems to have worked, and since then I've been taking the C++ series at the JC to get familar with that, and hanging out here to see what else I can pick up. But based on my recent class experiences, my degree, I feel, certainly has made picking up new programming languages a lot easier than having no programming background, or so interacting with my fellow newbie programming classmates would lead me to believe.
Re: Trained Perl professional or self-taught hack?
by g0n (Priest) on Apr 03, 2005 at 10:51 UTC
    Very much a self taught hack. My degrees are in psychology & history - I got into the IT field as a syadmin long ago, then as a hardware engineer, then as a lan/wan troubleshooter. I've only really started spending a significant amount of time coding in perl in the last 2 or 3 years.

    Since I've been a regular visitor here my coding has, I think, improved immeasurably - just reading posts & being able to ask quick questions of much more experienced programmers in the CB has taught me an awful lot. Very often a subject (PUGS/coding methodologies/functional programming/etc etc etc) will come up on a post or in the CB that will send me off on a little voyage of discovery, finding new and interesting things along the way.

    Which sort of leads to the point: many of the people posting here may be self taught, but through experience they have been exposed to a wide range of different methodologies, programming languages and ideas. All these things may be taught formally, and that might give someone a head start, but the combination of formal structured knowledge, rather than necessarily training, with experience, is IMO what makes the difference.

    g0n, backpropagated monk
Re: Trained Perl professional or self-taught hack?
by herveus (Parson) on Apr 04, 2005 at 12:25 UTC
    Howdy!

    I guess I count as a trained "professional" (although I won't add the phrase "stunt programmer" -- "stunt herald", yes, but that's a tangent).

    I have most of a Computer Science degree that I am working on finishing, and I have 25 years of experience in the field. I do find myself using stuff I learned at university, but life has been a continuing education, including PerlMonks. Most of the languages I can count as "known/used" were self-taught, but the underlying concepts were there to be built on.

    yours,
    Michael
Re: Trained Perl professional or self-taught hack?
by samizdat (Vicar) on Apr 04, 2005 at 12:53 UTC
    I don't go quite that far back; we did have punch card writers in a high school pod for writing programs in a mock-assembly language called STOP that were sent to the IBM 360 at the school system's central admin, and I took a 270-level class in my first year of college where everything but the APL intro was punch cards and wait-overnight for your printout.

    That said, I've made a career out of being self-taught. I'm not a pure hacker who codes for the joy of coding, but I aggressively take on learning whatever is the tool that fits the need of a project. I think I have about ten units of any kind of engineering (my BA is Sociology and Psychology), but I've programmed everything from single-chips to CDC6400 assembler to Smalltalk enterprise apps, and I've built things from Intel single-board trainers to chips that combined digital, analog and photonics on one die.

    Setting aside my personal hubris, (whatta loada cr... :) ), I think that there's something to be said for academic coverage of the spectrum of programming (and engineering) concepts, but I hesitate to cheer for the process applied in getting degrees and I certainly do not support the hoop-jumping that's involved in the PE process. My personal opinion is that very few who spend their formative years in college have the real analytical, referential, and associative skills -- not to mention initiative and motivation -- to be useful without several years of being thrown off the deep end or having quality mentorship.
Re: Trained Perl professional or self-taught hack?
by Anonymous Monk on Apr 04, 2005 at 13:36 UTC
    I'm a semi-educated programmer, albeit an Associates Degree in Comp Sci with a background in Cobol, Pascal, and Basic. I now program in Perl and java, both of which I've picked up on the fly, so that puts me in the same category as you.
Re: Trained Perl professional or self-taught hack?
by fraktalisman (Hermit) on Apr 06, 2005 at 21:51 UTC

    Another aspect to whether someone is a professional is just how much of their working time do / can they spend programming? In many small (I mean very small) companies and for freelancers, it's often not possible, you have to learn a variety of other things from web design to accounting, fix your customers' PC or explain to them how to attach a file to a mail ...

    Being self taught, I could be much better in Perl by now, if I had had the time to concentrate more on it. On the other hand, that would have been less interesting in a way. So I have to learn quite slowly, but that's OK.

Re: Trained Perl professional or self-taught hack?
by kgraff (Monk) on Apr 09, 2005 at 20:55 UTC

    My first and last college programming course was Fortran IV in 1969, but I took it while earning a BS degree in chemistry and went on to get an MS in analytical chemistry. I too punched cards!

    What turned me into a Perl maniac though was when my Oracle mentor gave me a tiny script and then stepped back and watched. Within a year I was running servers with Perl scripts.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlmeditation [id://444186]
Approved by Corion
Front-paged by hsmyers
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (8)
As of 2014-12-27 12:31 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (177 votes), past polls