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

If you where to start again....

Options
  • 09-06-2012 12:20am
    #1
    Registered Users Posts: 1,695 ✭✭✭


    This is more for the people well into a career in I.T.

    If you could be twenty again and just about to enter college what would you concentrate on? Would you change anything you did?

    What advice would you give to someone who has to make a choice of what IT course to apply for? And what would you advise to do when they are in college?


Comments

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


    I'm pretty happy with where I've wound up going, so I don't think I'd change much about what I did for undergraduate level (which was computer/electronic engineering in TCD, but frankly, there are many fine computer engineering/computer science courses at the moment, I don't think any of them stand out by very much above the others).

    I would say that if you chose to go on and do any postgraduate work, choose to do so based on your advisor and not your project, because the advisor is the more critical thing there. A good one will see you succeed; a bad one will waste years of your life for very little.


    And as to what you should do in college, without being facetious, learn.

    I'm not being a smartarse with that comment, what I mean is that a lot of undergrads (well over 90% the last time I had anything to do with undergrad courses) did the bare minimum for the course. If it wasn't being graded in a way that directly fed into the final degree mark, it was dodged, not done, or given the absolute bare minimum they could scrape by with. And because college is just about the first time in your life when you are in charge of what you learn and when, that kind of behaviour is not policed in any way.

    Well, other than by its consequences in the real world - those students who behaved like that are by and large now the students who Google and their peers are sifting through while saying they can't hire anyone from Ireland. They're the ones who just aren't good at this job. They're the ones you are trying to filter out when hiring people in favour of those who went the other way in college.

    College is a very useful time, professionally speaking, because you have more free time and freedom to choose your activities than at any time when you're working. If you want to go learn some obscure language for fun, it's actively encouraged. Do that on the clients time in industry and you're in trouble, if not actually fired. So while in college, grab that opportunity with both hands and wring all you can from it. Do extracurricular stuff like it was going out of fashion. Geek out completely on stuff. Overdo every project you get, just to see how far you can push things. Master whatever development environment you normally use for assignments, then abandon it and master another. If you want to know what students in a 200-odd-person class are going to be the ones people will want to hire after graduation, stick your head in the door during a lab where they're all meant to be doing an exercise writing linked lists in Visual C++, and find the guys/girls who are doing the exercise in vim over putty to one of the college's unix machines, using gcc and debugging with gdb just for kicks. Or find the students who go dumpster-diving for parts to bolt onto hardware projects, or who sit in on classes they're not being examined on because they want to know how something works.

    Give you an example, in the courses we did, one project was to build a 68008-based computer from scratch (as in, you're given some chips, some perfboard to mount them on, and a shedload of wire, and you build it from there). The basic exercise was to get the board to the point where it could copy ascii characters from one serial port to the other.

    One group (from the year before me) built a system that required expansion boards because it had a video card, a hard drive interface, a network interface and it had built-in BASIC, if I remember correctly. That system is still sitting on display in the department (ask Dr.Jones if you want to see it), and everyone in that group has enjoyed immense professional success in the years since because of their technical ability - an ability which was gained through doing crazy over-the-top stuff like that.


  • Registered Users Posts: 9,153 ✭✭✭everdead.ie


    The one thing that I would recommend is on projects go the extra mile, Professors don't set the bar too high because not everyone is a super star but if you are good there is always something you can add to add value to your projects.


  • Registered Users Posts: 221 ✭✭Elfman


    I think everdead.ie has nailed this one. You have a chance to get into good habits . I would add to that point by saying that if you can get into the habbit of really spending some time on the planning and designing your projects rather than diving straight in it will stand to you massively.


  • Registered Users Posts: 221 ✭✭Elfman


    one more thing just to take a step back and address the actual question, if I could go back I'd tackle every project like it was going to a paying customer not like a school assignment and use the time I had on my hands to play with the various technologies on hand.

    I'd also pay more attention is some of the theory classes which seemed unimportant to me at the time as I thought being a developer was all about writing code as quickly as I could.

    I would spend more time with web based technology as it's a very exciting area.

    I would ask more questions about everything.

    Finally I would be brave and try to get summer work in a software house, even if it was just making coffee . Few things have helped me more than talented senior developers who appreciated that although I wasn't the best coder in the world I was enthusiastic about getting better.

    .. I kind of want to go back now ...


  • Registered Users Posts: 1,922 ✭✭✭fergalr


    Media999 wrote: »
    This is more for the people well into a career in I.T.

    If you could be twenty again and just about to enter college what would you concentrate on? Would you change anything you did?

    What advice would you give to someone who has to make a choice of what IT course to apply for? And what would you advise to do when they are in college?

    Everyone will give a different answer; there are as many different careers, and perspectives, as developers.
    I can give some subjective advice based on my experience.

    College is a wonderful opportunity, but often squandered.


    There are some things you can pick up as you go.
    There are some things that you can only learn if you have time to do devote dedicated study to building an understanding of them.


    Learning how to use the Java Swing API, or learning Ruby on Rails, are examples of knowledge that you can pick up, during a career, as you are doing a job, or in evenings spent playing with the technology. Don't waste too much precious college time on such things.
    Learning the principles of a few APIs is good, but spending time learning several, in detail, is a bad idea. A lot of students, anxious to be as employable as possible make this mistake. Decide if you want to spend four years focused on getting your first job, or build the foundation for a career.


    Learning a new programming paradigm (e.g. proficient functional programming, applied in a project) or a new type of knowledge (e.g. bayesian stats, and how to think about problems using that toolset) are things you can't really just pick up part time. In college, you have time for dedicated study; its smart to use it to learn things that require dedicated study.


    Separate point: In college, you can learn things in a non-greedy manner. You can spend a month or two, acquring a new set of knowledge, learning new tools that you are unproductive with, in return for accumulating long term gains. In work, you rarely get the opportunity to be unproductive for a couple of months while you integrate a new body of knowledge. So, use the time in college to learn this type of knowledge.


    Realize that much IT knowledge expires. Think about the half-life of the knowledge you are learning. Around 2006, learning how to build dynamic websites in Java and Struts probably seemed like a really good use of time. Now its 2012, and that knowledge and expertise isn't as useful any more.
    In college, try and acquire bodies of knowledge with long half-lives.

    Its all about accumulating advantage - if you can learn things, in college, that benefit you for your entire career, that's a lot better than learning knowledge that will not be useful a few years down the road.

    I would also say spend a lot of time on meta-learning. Learn and read about learning efficiently. Read the basics of project management, and apply it to your group projects. It makes sense to try and front-load meta-learning in a career.


    The expected standard in courses in Ireland isn't that high. Courses are often graded for the wrong things. Don't use course grades as a guide to whether you are doing enough, or the right things. Course grades don't matter that much in the long run; not nearly as much as competencies do. (Some exceptions apply, eg if you want careers that arbitrarily demand high course grades, say, because they select preferentially for consistent workers, or lack better means to discriminate between large numbers of candidates).


    Take responsibility for your own learning. You are in charge of making sure you learn the things you want to know. Many people just sort of trust the syllabus, and put their heads down and learn. This is probably a mistake.

    At the same time, when a seemingly irrelevant course is on the syllabus, think hard about why it might be there, before deciding its not worthwhile taking seriously. Hopefully someone with a lot of experience decided it was a good idea. But its always possible its someones pet research area, and is a bad use of your time. Is it on the syllabus in other institutions?



    Everyone says this, but do as many team projects as you can. Do ambitious ones. Learn as much teamwork and communication as you can. Try to learn written communication in college. Its really hard to do communicate well.


    I neglected a lot of my more advanced hardware courses in college (in TCD, in 2nd and 3rd year). I'm really glad I did. I did the main projects, and read Hennessy and Patterson, but neglected a lot of the nitty gritty (e.g. lectures on sparc architecture (which is interesting)); I skipped a lot of lectures. I focused on software, AI, and higher level stuff instead. This was one of the best decisions I made in college.

    I would advise myself to spend a lot more time studying maths and stats; maybe do a maths degree first. (Maybe not, unsure).


    When you are studying something, read the textbooks, and read up online on what your lecturer is telling you. Don't trust any one source for information.


    Finally, I would say spend lots of time on personal development in college. Becoming really good at something, to spend 50 years unhappily doing it, isn't the idea. Learn lots, but also spend time figuring out who you want to be, and what is going to make you happy. Read widely. Try find these things early. Doing lots of constructive extra-curricular stuff (clubs, societies, trying different things) is a good use of time.


  • Advertisement
  • Registered Users Posts: 1,657 ✭✭✭komodosp


    When I just left college, I bought a book on How to learn Java for C programmers. (This was about 12 or 13 years ago). I never bothered learning Java and lazily stuck with my COBOL job before moving to another COBOL job and eventually running out of COBOL jobs and pretty much having to restart my career as a php / web developer.

    Just recently I was looking through job ads and all I could see was jobs for Java, lots of money for lots of years experience!

    So if I could go back in time and start over, I'd read that f*ckin book! (And get a lowly Java job)


  • Registered Users Posts: 9,557 ✭✭✭DublinWriter


    Media999 wrote: »
    What advice would you give to someone who has to make a choice of what IT course to apply for? And what would you advise to do when they are in college?
    I think the most important thing for anyone to decide on is whether they want a career in the technical or business side of IT. It's very hard to switch mid-way through your career.


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


    If I had a chance to do it again I would repeat my LC so I wouldn't be stuck with my 2nd choice (tcd comp sci) :pac: Ended up dropping out and doing physics as mature student.


  • Registered Users Posts: 7,468 ✭✭✭Evil Phil


    If I could write a letter to 25 years old Phil I would tell him to be a bit more confident in his people skills as he going to be using that particular talent a lot over the next 13 years, go with what you're good at and don't kill yourself trying to be good at something you're not.

    I'd tell him choosing Java over VB is a great idea in spite of what he's being told, but he already knew that.

    I'd tell him that work/life balance is really important, and there is no kudos in burning yourself out working 80 hour weeks. Do it because you are young, and you can, and you have to, but it doesn't give you bragging rights.

    I'd tell him: Don't be afraid to ask lots of questions, particularly of senior developers. They are there to help and want to, and will be concerned if you don't ask lots of questions.

    I'd tell him: Read the RFCs, read them a lot.


  • Closed Accounts Posts: 55 ✭✭ChickenZombie


    Wow insights and info - ta y'all...

    Returning to UL in Sept as a mature student...


  • Advertisement
  • Registered Users Posts: 976 ✭✭✭Gandhi


    I would try to get more one-on-one interaction with lecturers. For most of college I thought of them as anonymous talking heads reading copious notes at the front of the lecture hall. It was only during my final year project that I got to know my project adviser and realized that they were real people who had (in some cases) extensive experience in industry and valuable insights into their respective subjects.


Advertisement