and whatever you do don’t get old:
and whatever you do don’t get old:
Was talking to a friend about this recently. I agree that the ICT curriculum in the United Kingdom is terrible, would probably be better teaching word processing and stuff like that as part of other courses given the cheapness of computers these days that isn’t an impossible realisation.
Personally I study Electronic and Electrical Engineering but have many friends over in the comp sci department. Oddly I reckon only 1 in 3 want to program. Some want to do what I do, others want to manage. Fortunately for them Aberdeen in the UK is full of oil businesses desperate for project managers and engineers and through my work experience it is very common to find computer science graduates in both roles. From what I understand they generally get the roles by demonstrating the skills necessary from group software development to apply to projects. So there is plenty of work for the programming hating computer science students out there.
Why not create a separate site along the lines of CareerAdvice for these types of questions?
I say this because the general question is not specific to CompSci… A relative of mine had been in engineering (ME or EE, I think) and decided after 10+ years in the field that it was of no interest to him… he ended up getting a career in a completely different field.
Another relative was quite determined to go into a pharmacy, but ended up going into psychology, for similar reasons (though thankfully the decision was made prior to the X years of experience).
I could just as easily envision people asking for advice with jobs (bad culture, bad boss, bad whatever), with specific career paths (I’m good, but company isn’t, should I consider starting my own business… should I get into management… etc), or with moral dilemmas (execs that need to withhold info regarding upcoming mergers, etc).
The only real concern would be adjusting the SO/SE platform that creates/enforces some level of anonymity, to avoid undesirable name/profile association between sites (SO, LinkedIn, etc)
I code in Vim and the Mouse is no longer practical for me. What prompted this? Well, I’m going to say synesthesia combined with dyslexia. This spells for an interesting result.
Of course like most programmers, I use syntax highlighting. After years of moving away from the mouse I realized that the satisfaction from coding is isolated to sets of hand gestures, where the house introduces what is quite clearly to me a form of code switching, costly cognitively and inhibits Flow.
I think Heidegger’s What is Called Thinking? pertains here. – Many of you are discussing thus entirely off-base with the real material matter here. Some of us find programming to be PHYSICALLY rewarding, and this is the important part: like playing music. When I code, I dance.
THAT is what makes me not want to code as a career. Not one of you is prepared to understand that it is your HAND that fights the Computer, not YOU. To be frank, the latter is overly romantic self-martyrdom if not narcissism. Or I’ll just say that it is an unnecessary restatement of The Matrix’s premise. Boring.
People are fighting for food or the struggle of life, you are not.
It needs to be understood that a pianist gives two performances while the piano performs nothing.
Pair programming is naturally a kind of solution. But are they talking about the code only, do we appreciate the performances of our peers? Demanding that they not consult reference material and all this aggro-interview styling is like asking a pianist to speak theory.
Again. Two performances and the piano does nothing. My hands don’t know shit about concurrency or OO.
Programmers or rather developers of software do use real computer languages while others write scripts, some without knowing they do, because the GUI is able to perform code in whatever language as we call it under water and print the result on whatever piece of hardware is filling up some space in their room, office or even pubs, libraries at the other end of the world or beyond.
I used to develop applications in Cobol, hosting a CoDaSyl hierarchic/network database supported by some geeky assembler routines, procedures. Times changed: Now just about everybody, database administrator “knows” SQL and manipulates relational databases as easy as using a pocket calculator. What’s that? The most simple smartphone has one included.
Since I worked as a developer when it was still called programmer, I prefer the real thing going deep inside the operating system cooperating nicely with all applications built-in, downloaded. I love to add more shells and wrappers with bells and whistles so the others have to code less in BASIC, Java, Perl etcetera.
Zephyros MMXI is going to help. It’s still a beta though, but great fun.
I love programming, love how great the tools are. I realized this when a teacher complained about how good ‘the young kids’ who had better tools than he had, this guy was younger than 30! I remember thinking it’s great that tools get better and better!
I have stories from other teachers who had to flip switches on a byte to enter a command! I recently finished my education and started my first real job. It’s not great, because it’s a web site and I don’t like working on web stuff. Coupling between system components is poor and I don’t like communicating in general. But it’t a pure software company (300+ people) and many divisions and oppertunities to work on new products.
I don’t know if I’m good enough, but I like working on math stuff. Euler project, Fibonacci algorithm, my own chess computer. So that’s what I’d like to do at this company.
Can’t imagine not wanting to program, even if it’s a web site.
What do you think about web site building tools? It seems to me they have a long way to go.
Also, did someone forget a ? God, I am so frustrated. I hate computers.
Oops, I meant closing i tag.
I love programming. I don’t love my job.
At one point, I thought to myself “data is data is data, it doesn’t matter what the domain is.” Now? Now I realize that more than programming, you have to be passionate about the product.
Oh I enjoy solving the problems. I just can’t get excited about the end product. And that affects how I feel about my successes. The minute after pumping my fists victoriously in the air after defeating that one especially pesky issue, just how little I care for the product hits me and makes that victory feel rather hollow.
So that is something else to take into consideration as a programmer. Would you be happier working on something else?
Corporate Counsel (IP or licensing) would be another career path for someone with a C.S. degree and engineering experience. Granted more schooling is involved, but folks that can see the possibilities of applying a technology to partnership situation etc. are rare.
Absolutely, if you love to program, that means way more than having a CS degree. With the experience you have, plus what you have learned from your own reading, you can probably do it better already than most CS grads. Why not try picking up a few jobs on oDesk and see how well you can do?
(Background: Started programming at 10 years, now 30, no CS degree but can code circles around most who have one, working as a volunteer in Africa, do web programming in the evenings – actually I prefer more hardcore stuff but web dev jobs are just too easy to find, make enough money that me and my wife can live comfortably and go on vacations now and again. I think I’d hate programming if I did it 9-5, but part-time is great, just enough that I never lose my love for the code. And what other profession allows you to travel the world without ever leaving your job behind?)
Here’s a funny story. In 1984 I was hired as a programmer. I loved it. I spent way too many hours working at what I loved.
Then they contracted out programming. By 1991, I wasn’t even allowed to have a compiler. Since then, I’ve moved into program management, and it pays the bills.
I program in my spare time. I’ve learned most of the newer languages/frameworks. And I enjoy it. But, I can’t do any of that for work.
The most humorous part is, that I know I’m only a mediocre programmer. I’ve seen cruft and I’ve seen craft, and for the most part I can tell the difference and why. But elegant code escapes me.
So, although I love programming, and have a real passion for it. I’m not so good at it, and they pay me for my technical expertise and my program management skills.
BTW, I actively dislike program management, but don’t let that interfere with my work.
This is sort of a “first world problem,” isn’t it? In most parts of the world, a job that doesn’t involve physical labor and that can provide for a family is highly valued. So you’re only an average programmer. So you don’t wake up in the morning with a burning desire to go to work. Well, you’re still collecting a paycheck, aren’t you? Don’t let a quest for the ideal blind you to the value of the real.
(Going to try to close the italics tag here)
It seems so to me, and it makes sense, remember Maslow’s pyramid?
Also, thank you for closing the italics tag, that was getting out of control.
I’ve seen hordes of people who enter some field just because
they had education in that field. And they had education in
that field because they chose their college based on some random
idea/opinion/advice-by-old-folks in their youth.
And if you go to StackOverflow or some forums for programmers (not to mention many LinkedIn groups), you will see plenty of questions from those kinds of programmers. They obviously don’t know the platform, and they don’t have the drive or enthusiasm to find out things on their own, to test or try things, or to just play around.
It is very obvious that programming to them is “just a job”, and they are not very good at it. They graduated from some university or technical school with a degree in CompSci, got a job at a consulting company and now is tasked with writing business critical code for a customer.
The few times those programmers post their code, it is obvious that they are not very good or experienced.
This is sort of a “first world problem,” isn’t it? In most parts
of the world, a job that doesn’t involve physical labor and that
can provide for a family is highly valued. So you’re only an
average programmer. So you don’t wake up in the morning with a
burning desire to go to work. Well, you’re still collecting
a paycheck, aren’t you? Don’t let a quest for the ideal blind
you to the value of the real.
If you are “just an average programmer”, you are not giving the customer/employer what they pay for/expect.
As I mention above, I see way too many avergae or below average developers posting questions that a good programmer should not have to ask. But the scary thing is that they often don’t even seem to have the problem solving skills or logical thinking that is required by a developer.
Here are a couple of links from an IBM forum that illustrate what I am talking about.
In the last one, the “programmer” does not even grok data types…
Finally this one is truy scary. Read the comments as well, from a couple of well-known Notes/Domino experts (both Rich and Carl are frequent speakers at big conferences Like IBM Connect/Lotusphere):
Here are their comments:
Rich: "To take it further on the frightening scale… I think that in 20 years of Notes development, I’ve never known anyone who does understand DocumentContext but who doesn’t understand basic document operations."
Carl: “Judging by their posts in this forum, they’ve been doing Notes development for over a year.”
So how do you think if you’re passionate about programming and
really interested, self-educated is it more important then
having degree in it?
I absolutely think that being passionate about programming and having the problem solving (and almost OCD) mindset and attention to details you need as a programmer is much more important thatn sitting through four years of CompSci classes in college to get a degree.
Programming and IT in general is one of the few areas where a degree means very little. But many companies do not realize that, they look at the degrees and potential certifications to find out if a candidate is a good hire. This is because they are not competent to identify good vs bad code, or to see if a candidate is a passionate developer.
<< If you are “just an average programmer”, you are not giving the customer/employer what they pay for/expect. >>
I guess I could have been clearer. What I meant by “average” is “basically competent.” Sort of the Toyota Corolla of programming: reliable, functional, not a prima donna. Providing a serviceable product at a reasonable price. Not everyone gets to drive a Mercedes, that’s just how the world is.
By definition, most people are going to be close to average. Now, you may very well be right that many people enter the profession for the wrong reasons, and that the empirically average programmer may well be incompetent. I’m not so sure how to fix that problem. But as a young programmer looking to start a career, it is something of a reassurance …
I have a couple of theories about the Don’t-Want-To-Be-A-Programmer-No-More syndrome.
The person never really wanted to be a programmer but heard that they could make good money doing it. My advice - get out now and stop taking up cube-space that could be given to a real programmer.
The person becomes overwhelmed by the rate of change and thinks that they are falling too far behind his peers. Unfortunately this may be true in some cases, but before you quit something you truly love, consider putting in more time toward continuous learning.
It could also be that the current working environment they are in is not programmer friendly. If programmers are treated like expendable and replaceable units, that may sour the perception of their chosen career. It is important to focus on the intrinsic rewards of programming and try to remember why you fell in love with it.
The person may actually be ready to pursue another career path. If it took 10 years working as a programmer to realize they should be a writer, project manager or lion tamer then that may be the right path for them. I believe the analytic skills one acquires as a programmer are definitely transferable. Spread your wings and try something new.
When I wrote my first computer program, I thought it was the coolest thing I had ever experienced at the time. I didn’t think about the money I could make or any other extrinsic rewards. I just wanted to do more of it because I enjoyed doing it and I believed computers were going to change the world.
Despite all the challenges facing us as programmers, we have to remember that little by little we are making the world a better place. It may not seem that way when you are coding a small routine for an outdated accounting application, but when you consider yourself as part of the whole IT community, just look at what we’ve done.
Man… this kills me, because I have been programming since Basic on my Commodore 128d in the late 80’s and have degrees in Computer Science and Internet Technologies… yet I still just don’t have the amount of intimate coding knowledge or mathematical skills necessary to go out there and just land a programming job. I also don’t have the SDLC or general software development “real world” experience, which they seem to even want for entry-level type positions. I would love a programming/development career, but I just don’t feel I can cut it. I try to learn what I can but there just never seems to be enough time to learn all the languages and become familiar with coding practices. As soon as I start to learn something, there’s another language that’s becoming more popular and desired. I just want to create things and solve problems… guess I will just have to continue enjoying some dabbling here and there as a hobby… just wish I could swap places with someone who has a good programming job and just doesn’t want to be there!
Meh, I’m completely in the other camp. I want to do programming, I want complex and challenging projects and problems. And yet I’m stuck in boring dead-end jobs and can’t get out.
First job: Flex/Java developer at an SAP consultency
Second job: AS3 developer at a huge browser game company (despite how it sounds, I do know how to use frameworks/design patterns/unittest)
When I find a company that seems worth working for, I always…
And yet I barely manage to even get basic replies from the companies I apply to.