Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

% of Grads who use thier CS degree

Options
  • 06-01-2013 9:24am
    #1
    Registered Users Posts: 1,466 ✭✭✭


    Does anyone know where i can find a figure for the percentage of people who use thier computer science degree for software development after thier degree ?

    When I left college over 10 years + back, thinking of my friends we went off and did :

    web design - 2 people
    software development - 4 people
    hardware support for schools and colleges - 2 people.

    Now 50% of these people aren't using anything they learnt from thier degrees, i was interested to know if anyone knows of published figures that show these figures through the years.

    I'm just being nosey to see if not using thier degree was common to my group of friends and year of graduation or is a fairly common thing.


Comments

  • Registered Users Posts: 7,157 ✭✭✭srsly78


    I dropped out of comp sci but work as a developer, just to confuse your stats more.

    Out of my old class buddies however, not a single one of them (out of 10) now works as a developer to my knowledge. Some are in support, some retrained into other fields (2 are laywers ugh). Dunno stats for the wider class, just the guys I'm still in touch with.

    For a counter-example:
    Many people that study physics or maths seem to end up as developers of one kind or another, even more than with comp sci from what my personal observations show.


  • Registered Users Posts: 2,022 ✭✭✭Colonel Panic


    I studied Engineering and got an interest in programming from there. It was a pretty big class but of the people who specialised in electronics and the like, I think a lot of them ended up working as developers. There's a few in Google, one working for Havok and a few more like me who work in SMEs.


  • Registered Users Posts: 2,781 ✭✭✭amen


    Many people that study physics or maths seem to end up as developers of one kind or another, even more than with comp sci from what my personal observations show.

    I'll get flammed for this but unless your are going to do a PhD in computer science then studying Comp Sci at undergraduate level is similar to studying Oscilloscope technology. You may have programming skills and an understanding of how to program and how a computer works but those from a Physics/Maths/Engineering background often have the same skills plus a large knowledge/skill base on other topics and the practical experience of using programming to solve real world examples.


  • Moderators, Society & Culture Moderators Posts: 9,703 Mod ✭✭✭✭Manach


    amen wrote: »

    I'll get flammed for this but unless your are going to do a PhD in computer science then studying Comp Sci at undergraduate level is similar to studying Oscilloscope technology. You may have programming skills and an understanding of how to program and how a computer works but those from a Physics/Maths/Engineering background often have the same skills plus a large knowledge/skill base on other topics and the practical experience of using programming to solve real world examples.
    I'd agree. There is a high percentage of people that I work with, myself included, who have primary degrees in other sciences but are employed in IT sector.


  • Registered Users Posts: 8,449 ✭✭✭Call Me Jimmy


    I think it's very interesting. I have thought about the validity of computer science degrees in general. I'm in my final year and am almost certain I won't be using it.

    On the graduates versus physics/maths/engineering graduates I think they would be way ahead of anyone with a computer science degree if they learned programming.

    I might get flamed for THIS but I think a lot of the software 'engineering' folk try to justify themselves with process improvement and being better at creating well-structured code etc. but I don't think it's that hard. If someone has a background already in a maths-based subject, they can easily learn this stuff.

    I'm not complaining but even the relatively small amount of maths in our course has been watered down to almost non-existence. Basically, in order for me or my fellow graduates to implement a domain-specific system requiring advanced maths knowledge, it requires us to do the implementation and a maths/physics/engineer to do that side of things.

    I'm speaking in general, not the exceptional students who have a very high level of maths.


  • Advertisement
  • Closed Accounts Posts: 18,056 ✭✭✭✭BostonB


    Smoggy wrote: »
    D...I'm just being nosey to see if not using thier degree was common to my group of friends and year of graduation or is a fairly common thing.

    Its probably common with a lot of degrees courses. Not just CS.


  • Banned (with Prison Access) Posts: 1,435 ✭✭✭areyawell


    amen wrote: »
    I'll get flammed for this but unless your are going to do a PhD in computer science then studying Comp Sci at undergraduate level is similar to studying Oscilloscope technology. You may have programming skills and an understanding of how to program and how a computer works but those from a Physics/Maths/Engineering background often have the same skills plus a large knowledge/skill base on other topics and the practical experience of using programming to solve real world examples.


    This drivel you have to be good at Maths to be a programmer, network engineer is complete and utter bull in my opinion and is leading people away from doing IT courses. People in Maths and Physics civil and mechanical don't program, they script! Its a huge difference .They wouldn't even be considered for a masters in Computer Science or roles as a programmer. They don't know or probably never heard of things such as JSP, Java,PHP, C++, Oracle, NAT, DHCP, Encrytion, SSL so please don't tell me they would be better than a CS graduate?


  • Registered Users Posts: 7,157 ✭✭✭srsly78


    areyawell wrote: »
    This drivel you have to be good at Maths to be a programmer, network engineer is complete and utter bull in my opinion and is leading people away from doing IT courses. People in Maths and Physics civil and mechanical don't program, they script! Its a huge difference .They wouldn't even be considered for a masters in Computer Science or roles as a programmer. They don't know or probably never heard of things such as JSP, Java,PHP, C++, Oracle, NAT, DHCP, Encrytion, SSL so please don't tell me they would be better than a CS graduate?

    You don't have to be good at maths no, but your post is still drivel. Physicists are just scripters? The other way around more like, you won't find many scientists working as web developers.

    Especially amusing is the way you use encryption as an example. Mathematicians write this, not comp sci grads. Other developers may do some gui stuff on top, but the core is definitely written by mathematicians. I know because I have to maintain their horrible code.


  • Registered Users Posts: 2,021 ✭✭✭ChRoMe


    srsly78 wrote: »
    You don't have to be good at maths no, but your post is still drivel. Physicists are just scripters? The other way around more like, you won't find many scientists working as web developers.

    Especially amusing is the way you use encryption as an example. Mathematicians write this, not comp sci grads. Other developers may do some gui stuff on top, but the core is definitely written by mathematicians. I know because I have to maintain their horrible code.

    Agreed, I know some people involved in cancer research who are hard core c++ developers doing advanced simulations, however they are medical researchers before developers.


  • Registered Users Posts: 40,038 ✭✭✭✭Sparks


    This thread's like a small treasure trove of bad memes...

    "I'll never use the stuff I was forced to learn in college..."
    Sure, if by "the stuff you were forced to learn" you mean something like Pascal or ordinary differential equations. If you mean the ability to analyse a problem, to do estimates, the basics of time management (why else do you think you got 14 courses in one year?), the general grounding that allowed you to choose what tiny area of your professional field you specialised in, or any of the things you were actually being taught, then no, you're just staring at one tree in the middle of Yellowstone park and saying you can't see a forest and therefore there isn't one around.

    "<People who studied subject X> [suck|excel] at being programmers"
    My arse. The only way that could ever be true is if you kicked everyone out of a course on day one if they couldn't code at a professional level. I've known people from every course going who make a living writing code, and the only general judgement I can make from what I've seen is that some individuals can code and some are just quite bad at it. The course they did only seems to have impacted the amount of work they had to do on their own (CompSci/CompEng grads have a headstart on those who did other courses). Looking only at someone's undergrad degree and saying "well, obviously you can't code" is a fast way to make a fool of yourself, if not worse (that kind of thing might give HR or Legal the heebie-jeebies if you said it in an interview situation, if not in and of itself, for the spectre it would raise of you saying that about where someone came from or what gender/race/religion they were).

    "Comp Sci courses are out of date and obsolete"
    No, they're not. They don't use the latest fad language for bloody good reasons, like:
    • You need the people teaching to course to know a language backwards to teach it well, and when the language isn't stable yet, that's not possible;
    • Mainstream languages don't die, so why pick some flavour-of-the-week language that may be regarded as hopelessly daft in four years time when the new students graduate?
    • Undergrads are meant to be learning general principles. You're being trained at a more abstract level than the coal face, and if you weren't being, then you were getting shafted, because a degree that only says "this person can code in <language X>" isn't worth doing; your degree is meant to say "this person can program, can analyse a problem, knows how to learn new techniques, and is generally far more use to a company".

    Industry doesn't like that kind of approach and the blogging gombeens publicly visible entrepreneurs, especially in the US, seem to delight in saying that these degrees are worthless; but if you can't see what they're actually saying (ie. "people who have general degrees can get jobs anywhere and therefore I have to pay them more and that's less profit for me") then you're not listening hard enough. Industry will whine all day long that today's graduates don't have training in <language X> where <language X> is whatever that one specific company is using in the product they need to hire people for; but that's a complaint without any merit, for obvious reasons.

    tl;dr: You want a more general degree, because you will need to change jobs during your career (if you don't actually change careers), and the more general the degree, the easier that is on you.


  • Advertisement
  • Moderators, Society & Culture Moderators Posts: 9,689 Mod ✭✭✭✭stevenmu


    There's a common myth that a Computer Science degree is a degree in programming. This is not true, and would be the equivalent of saying that a Physics degree is watching apples fall from trees, a Maths degree is adding a few numbers together and a Chemistry degree is pouring random sh1t into beakers to see what happens.


  • Registered Users Posts: 2,021 ✭✭✭ChRoMe


    Sparks wrote: »
    This thread's like a small treasure trove of bad memes...

    "I'll never use the stuff I was forced to learn in college..."
    Sure, if by "the stuff you were forced to learn" you mean something like Pascal or ordinary differential equations. If you mean the ability to analyse a problem, to do estimates, the basics of time management (why else do you think you got 14 courses in one year?), the general grounding that allowed you to choose what tiny area of your professional field you specialised in, or any of the things you were actually being taught, then no, you're just staring at one tree in the middle of Yellowstone park and saying you can't see a forest and therefore there isn't one around.

    "<People who studied subject X> [suck|excel] at being programmers"
    My arse. The only way that could ever be true is if you kicked everyone out of a course on day one if they couldn't code at a professional level. I've known people from every course going who make a living writing code, and the only general judgement I can make from what I've seen is that some individuals can code and some are just quite bad at it. The course they did only seems to have impacted the amount of work they had to do on their own (CompSci/CompEng grads have a headstart on those who did other courses). Looking only at someone's undergrad degree and saying "well, obviously you can't code" is a fast way to make a fool of yourself, if not worse (that kind of thing might give HR or Legal the heebie-jeebies if you said it in an interview situation, if not in and of itself, for the spectre it would raise of you saying that about where someone came from or what gender/race/religion they were).

    "Comp Sci courses are out of date and obsolete"
    No, they're not. They don't use the latest fad language for bloody good reasons, like:
    • You need the people teaching to course to know a language backwards to teach it well, and when the language isn't stable yet, that's not possible;
    • Mainstream languages don't die, so why pick some flavour-of-the-week language that may be regarded as hopelessly daft in four years time when the new students graduate?
    • Undergrads are meant to be learning general principles. You're being trained at a more abstract level than the coal face, and if you weren't being, then you were getting shafted, because a degree that only says "this person can code in <language X>" isn't worth doing; your degree is meant to say "this person can program, can analyse a problem, knows how to learn new techniques, and is generally far more use to a company".

    Industry doesn't like that kind of approach and the blogging gombeens publicly visible entrepreneurs, especially in the US, seem to delight in saying that these degrees are worthless; but if you can't see what they're actually saying (ie. "people who have general degrees can get jobs anywhere and therefore I have to pay them more and that's less profit for me") then you're not listening hard enough. Industry will whine all day long that today's graduates don't have training in <language X> where <language X> is whatever that one specific company is using in the product they need to hire people for; but that's a complaint without any merit, for obvious reasons.

    tl;dr: You want a more general degree, because you will need to change jobs during your career (if you don't actually change careers), and the more general the degree, the easier that is on you.

    One caveat to the above, computer science and far more embarrassingly software engineering degrees regularly do omit technologies/practices that are fundamental to writing any sort of code.

    I'd love to see examples contradicting my experience, but I die a little inside every time I come across a fresh grad from either course that does not know what source control is. Any of the ones that do know about it, was through independent learning and not the university course.


  • Registered Users Posts: 40,038 ✭✭✭✭Sparks


    ChRoMe wrote: »
    One caveat to the above, computer science and far more embarrassingly software engineering degrees regularly do omit technologies/practices that are fundamental to writing any sort of code.
    I'd love to see examples contradicting my experience, but I die a little inside every time I come across a fresh grad from either course that does not know what source control is. Any of the ones that do know about it, was through independent learning and not the university course.

    True; though that varies from school to school I think (I know we covered it and that was back in the last century). And I have come across a lot of new grads in the last few years who've not used a command line before. Now *that* was chilling the first time I saw it.

    Other aspects though, are genuinely hard to teach (as in, nobody's really sure how) - how do you teach someone to work in teams, but avoid the plagarism problem? Can you even teach how to work on large problems (and I mean large the way industry means large here, as in tens of millions of lines of code)?

    And some aspects just don't get covered much, like how to negotiate salary, how to handle a bad boss or problem coworkers, how to manage a team, and so on -- and at the age you get most undergrads, teaching those skills ranges from difficult to impossible to irrelevant anyway. In other branches of engineering, they are taught, or at least experience with them is certified (it's a part of the C.Eng accreditation for example), and really, that's the place for it. Trying to teach an undergrad people skills when they don't have very much real-life experience might genuinely be a waste of their time and the university's.

    I think the tl;dr here is that if you just do a degree and then stop learning, you're doing it wrong.


  • Moderators, Technology & Internet Moderators Posts: 1,334 Mod ✭✭✭✭croo


    "Comp Sci courses are out of date and obsolete"
    No, they're not. They don't use the latest fad language for bloody good reasons, like:
    There was a student in the open source forum recently asking about DFDs. I was shocked that SDM & DFD were still thought... I've not used them myself since the early 90s. If anything I would expect them to be learning about UML... though I suspect that in this modern Agile world that too has fallen by the wayside in the real world.

    In my view one of the biggest things to happen in development was Design Patterns but a couple of years ago I was helping an acquaintance do some interviewing (of recent grads) and besides the term few new anything about patterns.

    As for the Math question, for many tasks I would see it as being irrelevant to software development - but if you are smart enough to get a degree in Math then you should be capable of coding. BUT as others have said being able to write code is not the same of designing & building software solutions there is so much more involved.

    In my own experience over 25 odd years writing business solutions, in many countries & fields, I've practically never worked with people whose core qualifications were in computing. Historians, Geologists, Accountants & Engineers as well as a few Math graduates but very few IT grads. And to be honest unless those IT grads have worked to keep current it often made little difference.


  • Registered Users Posts: 40,038 ✭✭✭✭Sparks


    croo wrote: »
    There was a student in the open source forum recently asking about DFDs. I was shocked that SDM & DFD were still thought... I've not used them myself since the early 90s. If anything I would expect them to be learning about UML... though I suspect that in this modern Agile world that too has fallen by the wayside in the real world.
    Pet peeve: I hate that UML seems to have fallen from grace like that. A lot of humans think graphically, and things like UML (and DFDs and all the other funky diagrams you can name with the possible exception of nasty spiderman diagrams) helped a lot with that, especially for developers trying to wrap their heads around a new codebase.
    In my view one of the biggest things to happen in development was Design Patterns
    ...so long as they're not overdone. But then, that's true of everything I suppose -- the moment you stop seeing a tool as just a tool and start seeing it as the One True Method, you start to decline in terms of value added to a team rather rapidly.


  • Registered Users Posts: 2,022 ✭✭✭Colonel Panic


    Design Patterns, classic example of something designed to formalise existing development methodology that seems to force people into thinking of all problems in terms of them, it's much like the Scala thread on this board where it's a laundry list of framework names and words like 'scalable'.

    Either that or they just stick with making everything a singleton. Every class needs a GetInstance method. Just in case...

    The problem with teaching patterns in university is it will do just that, force new developers into a certain way of thinking and turning something that is more about problem solving and design into a formula.


  • Registered Users Posts: 7,501 ✭✭✭BrokenArrows


    I was in a 4 year degree course, dropped out in 4th year! Brilliant idea but it worked out in the end.
    7 years later I ended up being a developer anyway. Tech Support-> QA -> Developer


  • Subscribers Posts: 4,075 ✭✭✭IRLConor


    The problem with teaching patterns in university is it will do just that, force new developers into a certain way of thinking and turning something that is more about problem solving and design into a formula.

    TBH, I'm glad I didn't learn about design patterns until a year or two into my career as a coder. It was much more useful to learn about them in the context of code already written/worked on rather than learning the patterns first and then trying to use them. The experience of "ah, so that's what I was doing" was instructive.


  • Moderators, Technology & Internet Moderators Posts: 1,334 Mod ✭✭✭✭croo


    Design Patterns, classic example of something designed to formalise existing development methodology that seems to force people into thinking of all problems in terms of them, it's much like the Scala thread on this board where it's a laundry list of framework names and words like 'scalable'.

    Either that or they just stick with making everything a singleton. Every class needs a GetInstance method. Just in case...

    The problem with teaching patterns in university is it will do just that, force new developers into a certain way of thinking and turning something that is more about problem solving and design into a formula.
    Firstly when I say Patterns I'm thinking the original Gang of Four patterns... to me these are not (or were not at least in the mid 90s when they were first proposed) the existing development methodology but were a more proposed best practise. That they are so ubiquitous now says a lot. That we can look at some problem and say that needs a delegator or a decorator and most will know exactly what is meant was/is a huge plus that perhaps we just take it for granted now. And I think many people, in the mid 90s when GUIs were still fairly new... many were either spending their time solving the same problems (yet again) and often solving it badly.

    To me they are, in a way, the software development equivalent of the DB normalisation rules. They can creating help in the design but you must still use your common sense to apply the right level of normalisation to the problem at hand.

    @ConotIRL
    I can understand that when you start to code it might be good to first try and solve the problem in order to learn but after a 3/4 years of coding in college they shoud surely be ready? Seems strange to think that you'd need to then spend another few years doing on the job training? What's the point of the college in the first place then?


  • Registered Users Posts: 40,038 ✭✭✭✭Sparks


    croo wrote: »
    I can understand that when you start to code it might be good to first try and solve the problem in order to learn but after a 3/4 years of coding in college they shoud surely be ready? Seems strange to think that you'd need to then spend another few years doing on the job training? What's the point of the college in the first place then?

    3-4 years just isn't long enough. You're seeing that in Engineering at the moment where we're moving from 4 year degrees to 5 year degrees, and where the educational requirements for a CEng degree are increasing. We'll see it in CS as well soon enough I'd guess.


  • Advertisement
  • Registered Users Posts: 7,157 ✭✭✭srsly78


    croo wrote: »
    Seems strange to think that you'd need to then spend another few years doing on the job training? What's the point of the college in the first place then?

    The need for on-the-job training never ends, and there never is any training.

    I just got a load of stuff dumped on me in work that I have no clue or experience with (involves dynamically creating vms to run integration tests on). I will bodge something together by copy/paste/hacking scripts left behind by the last contractor. Oh, and I find myself debugging and admining a solaris box, something which I had never touched until a few weeks ago.


  • Moderators, Technology & Internet Moderators Posts: 1,334 Mod ✭✭✭✭croo


    yeah guys I really needed to add a tongue-in-cheek smilie to that last comment. :D

    srsly78, I think I can see were you got your handle from then. I can just see you looking at those dishing out the tasks to you with a "Seriously?" look on you face :)

    sparks, the problem with a 5 year degree course is that things move so fast your liable to be out of date on the year 1 & 2 by the time you get to complete year 5! :D


  • Subscribers Posts: 4,075 ✭✭✭IRLConor


    croo wrote: »
    I can understand that when you start to code it might be good to first try and solve the problem in order to learn but after a 3/4 years of coding in college they shoud surely be ready?

    I might have been ready near the end of college, but I'd done a lot more coding than many of my classmates.

    My first interaction with patterns was on my first job out of college where I ended up briefly working on patching a ~1 million line Swing application. The lead developer on that was a very generous teacher who would say things like "this feature is implemented using $pattern" and then walk us through the pattern and the feature as implemented. I don't know how you could introduce that in a classroom scenario.
    croo wrote: »
    Seems strange to think that you'd need to then spend another few years doing on the job training?

    The day I don't learn something new is the day I give up being a developer.
    croo wrote: »
    What's the point of the college in the first place then?

    The valuable stuff I got in college was:
    • Exposure to stuff I never would have voluntarily learned: 68k ASM, Eiffel, Handel-C, Prolog, queuing theory, statistics.
    • A chance to learn stuff that would have been hard to learn on my own: compiler design and computer vision.
    • Exposure to stuff that's not directly relevant to what I do but which makes it easier for me to understand the tech I use (context is king). Stuff like basic low-level digital logic, how floating point hardware works, formal methods.
    • Access to lecturers and teaching assistants who helped me understand stuff I had trouble with.

      also:

    • I met the co-founders of the company we founded after graduating.
    • I have a pretty widely scattered circle of friends who are interested/working in tech.
    srsly78 wrote: »
    The need for on-the-job training never ends

    + 10000
    srsly78 wrote: »
    and there never is any training.

    I haven't had any formal training from any employer but I'm pretty good at bugging more experienced colleagues to teach me stuff. I'd advise any developer to do likewise! Start by sharing war stories and a lot of developers will share interesting info.
    srsly78 wrote: »
    involves dynamically creating vms to run integration tests on

    http://www.vagrantup.com/

    It's excellent and fairly handy to automate.

    Also, one of my colleagues made this which may make some of the automation easier, depending on your circumstances.


  • Registered Users Posts: 7,157 ✭✭✭srsly78


    Looks good but I am pretty sure I have to work with pre-existing infrastructure: http://en.wikipedia.org/wiki/HP_QuickTest_Professional

    Can't believe I have to write ****ing vbscript...

    For the vm bit I think some vmware thing is used, but I could also try what you suggested.


  • Subscribers Posts: 4,075 ✭✭✭IRLConor


    srsly78 wrote: »
    Looks good but am pretty sure I have to work with pre-existing infrastructure: http://en.wikipedia.org/wiki/HP_QuickTest_Professional

    Can't believe I have to write ****ing vbscript...

    My condolences.


  • Registered Users Posts: 2,022 ✭✭✭Colonel Panic


    croo wrote: »
    Firstly when I say Patterns I'm thinking the original Gang of Four patterns... to me these are not (or were not at least in the mid 90s when they were first proposed) the existing development methodology but were a more proposed best practise. That they are so ubiquitous now says a lot. That we can look at some problem and say that needs a delegator or a decorator and most will know exactly what is meant was/is a huge plus that perhaps we just take it for granted now. And I think many people, in the mid 90s when GUIs were still fairly new... many were either spending their time solving the same problems (yet again) and often solving it badly.

    To me they are, in a way, the software development equivalent of the DB normalisation rules. They can creating help in the design but you must still use your common sense to apply the right level of normalisation to the problem at hand.

    I figured you referring to the GoF patterns book all right. I stand by what I say to be honest. While I was a teen in the early 90s, there are plenty of examples I've seen large pieces of software that don't necessarily follow a named pattern but do the exact same thing, and not just the dreaded singleton!

    Adapters, facades, visitors, commands, MVC and the like all existed before. Having a book on patterns hasn't suddenly made everything better either. Sling enough bad code at a wall and you'll get something that is good enough to ship in any language with any framework. What good patterns do there?

    I think if you want to teach ANYTHING in addition to datastructures and algorithms that would make someone a better software developer, I think banging SOLID into them could do more good than anything else.

    And don't get my wrong, I find patterns incredibly useful, if only because it makes it easy to communicate my intentions to others and name things consistently, but I certainly was doing a lot of what the GoF book said before I read it and I'm no Martin Fowler.


  • Registered Users Posts: 40,038 ✭✭✭✭Sparks


    croo wrote: »
    sparks, the problem with a 5 year degree course is that things move so fast your liable to be out of date on the year 1 & 2 by the time you get to complete year 5! :D
    <insert obscene expression of disagreement here>
    :D

    The day learning what pointers are or how linked lists work or how other basic programming idioms are constructed go out of date, all our lives are going to get very interesting indeed :D

    Think about it - another year to teach functional or aspect-oriented programming or to do a course or two on glue languages or how to work with legacy systems or even just to do a course on some basic "here comes the real world" survival training :D Wouldn't that be worthwhile?


  • Moderators, Technology & Internet Moderators Posts: 1,334 Mod ✭✭✭✭croo


    How could it not be useful have been introduced to them before hand.
    Yeah it would .. I was just joking.

    But as Conor says he first came across Patterns on his first job. How could it not be useful have been introduced to them before hand. ;)

    @Colonel Panic
    I certainly was doing a lot of what the GoF book said before I read it and I'm no Martin Fowler.
    Perhaps you're more of a Martin Fowler than you think.
    I first came across patterns in '96 and at that time every application I saw seem to be completely different. While patterns were, to some extent, there in the code I was seeing there was no consistency. You guys are obviously just exceptional but speaking for myself and other coding mediocrities of the world the GoF patterns offered a welcome insight and useful guide to the building blocks of a system. And since then when I looked at code and saw a common pattern I was always thankful I didn't need to waste a lot of time working out what the code is. Saying that I rarely code any more and the only code I see these days is from open source projects (usually java). Perhaps I'm just looking back with rose tinted glasses.

    @Conor
    The valuable stuff I got in college was:

    Exposure to stuff I never would have voluntarily learned: 68k ASM, Eiffel, Handel-C, Prolog, queuing theory, statistics.
    A chance to learn stuff that would have been hard to learn on my own: compiler design and computer vision.
    Exposure to stuff that's not directly relevant to what I do but which makes it easier for me to understand the tech I use (context is king). Stuff like basic low-level digital logic, how floating point hardware works, formal methods.
    Access to lecturers and teaching assistants who helped me understand stuff I had trouble with.

    also:

    I met the co-founders of the company we founded after graduating.
    I have a pretty widely scattered circle of friends who are interested/working in tech.
    Yeah, all good stuff. See my tongue in cheek comment. Obviously everyone has some learning time on any new job regardless of their history, but I don't think it's too much to expect that after spending years studying students could be productive on their first job!?

    And I agree with all; you never stop learning, but patterns, to me, are a fundamental... obviously that belief is not wide spread. I bow to popular opinion.


  • Subscribers Posts: 4,075 ✭✭✭IRLConor


    croo wrote: »
    but patterns, to me, are a fundamental... obviously that belief is not wide spread.

    I agree that they're fundamental, I just don't think that recent graduates have the perspective to understand why and how they're fundamental.

    In theory, you could turn out graduates with the necessary experience to have that perspective but I suspect it would involve forcing them to work on lots of projects in their "spare" time which would negatively impact other facets of their college life and turn out less well-rounded graduates.


  • Advertisement
  • Registered Users Posts: 2,021 ✭✭✭ChRoMe


    IRLConor wrote: »
    I agree that they're fundamental, I just don't think that recent graduates have the perspective to understand why and how they're fundamental.

    In theory, you could turn out graduates with the necessary experience to have that perspective but I suspect it would involve forcing them to work on lots of projects in their "spare" time which would negatively impact other facets of their college life and turn out less well-rounded graduates.

    This. Its better for them to **** up and write messy code at the beginning as then they will truly value the structure and robustness provided by well used frameworks/patterns.

    "Dunno what you got til its gone" (but eh the opposite way :) )


Advertisement