Live data from Hacker News

Programmer's Dilemma

medium.com

71–80 of 113 posts

Re: Programmer's Dilemma

#71

When people tell me that I should "do projects in my own free time to keep my skills sharp", it throws me into a fit of rage and makes me want to tear them a new one. Do you see any other professions having to do that in order to stay employable? Can you imagine lawyers having to practice law in their free time to "keep their skills sharp"? Can you imagine civil engineers having to draft plans for bridges and buildin…

>> http://www.halfsigma.com/2007/03/why_a_career_in.html

I read that article, and while i don't fully agree with it, there seems to be at least a grain of truth in there. He talks about how VB programmers are no longer wanted because VB.net is hot stuff now (the article was written in 2007.) He also talks about how one's professional knowledge counts for lesser and lesser as a programmer, and how a lack of any barrier to entry has resulted in a field flooded with cheap workers with no job security or general social prestige.

I consoled myself thinking this won't apply to the more sophisticated programmer, who is well trained in algorithmic and mathematical thinking. For example, writing machine learning systems, advanced statistical analysis or kernel development etc. DO have at least some barrier to entry, and these are not things that a random script kiddie can learn in a "x for dummies" book. Can a more senior engineer comment?

Re: Programmer's Dilemma

#72

Earlier quoted context omitted.

The world of software development moves faster than almost all other fields at the moment, particularly with regards to the tools that we use. All other things being equal, the person with experience in the specific tools the organisation uses will get the job. Its just an unfortunate consequence of the industry we are in. You are of course free to not chase the bleeding edge tools in your spare time, and youll proba…

I don't think that's true at all. According to this paper: http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2909426/ The number of new medicine journal publications significantly outpaces the number of new computers science journal articles per year. Doctors are expected to keep up to date with the most recent research as part of their jobs, and they are payed to do so by going to conferences etc... I don't think the same…

Does your employer not send you to conferences and training? Any hack-days, "20% time" or whatever percentage or encouraging people to set up lunch & learn equivalent meetings?

Re: Programmer's Dilemma

#73

When people tell me that I should "do projects in my own free time to keep my skills sharp", it throws me into a fit of rage and makes me want to tear them a new one. Do you see any other professions having to do that in order to stay employable? Can you imagine lawyers having to practice law in their free time to "keep their skills sharp"? Can you imagine civil engineers having to draft plans for bridges and buildin…

>> http://www.halfsigma.com/2007/03/why_a_career_in.html I read that article, and while i don't fully agree with it, there seems to be at least a grain of truth in there. He talks about how VB programmers are no longer wanted because VB.net is hot stuff now (the article was written in 2007.) He also talks about how one's professional knowledge counts for lesser and lesser as a programmer, and how a lack of any barrie…

I don't think the guy mentioned it that sense either.

The areas that you mention only have a high barrier to entry because there is no bulk job market in those areas, plus no one has yet decided to write a 'x for dummies' book in it for the exact very same reasons.

There are more websites written everyday than kernels.

Web development isn't particularly easy, but has been made easier because there is demand for it that way!!

Let say you have a markup language. The language implements every kernel feature known to mankind. Now all you need to do to get your very personalized kernel is specify the interplay of the features though the markup. Lets say such language also keeps updated with all latest developments in Kernel development field. Over time you see, even the most noob guy producing their own framework to do a range of kernel work.

Kernel development will look pretty much like producing a HTML page. And you will have a dummies book for it.

This is kernel development would look if there were millions of jobs worldwide for it.

You could apply the same analogy for anything.

Re: Programmer's Dilemma

#74

Earlier quoted context omitted.

Every hear of segfaults? They are almost always the result of de-referencing NULL.

I think of segfaults as being caused by accessing an out-of-bounds index in an array, personally. Yes, you can do the same thing by dereferencing NULL, but in my (university only) experience, overrunning an array came up much more often.

In C it is quite common for functions to indicate failure by returning NULL. Not checking for these errors is another very common reason for segfaults.

Re: Programmer's Dilemma

#75
post #73

Earlier quoted context omitted.

>> http://www.halfsigma.com/2007/03/why_a_career_in.html I read that article, and while i don't fully agree with it, there seems to be at least a grain of truth in there. He talks about how VB programmers are no longer wanted because VB.net is hot stuff now (the article was written in 2007.) He also talks about how one's professional knowledge counts for lesser and lesser as a programmer, and how a lack of any barrie…

I don't think the guy mentioned it that sense either. The areas that you mention only have a high barrier to entry because there is no bulk job market in those areas, plus no one has yet decided to write a 'x for dummies' book in it for the exact very same reasons. There are more websites written everyday than kernels. Web development isn't particularly easy, but has been made easier because there is demand for it th…

You make an interesting point about abstractions and the march of technology. As technology progresses, difficult and complicated tasks of yesterday become abstracted away and become more accessible to lesser trained people. C followed by Java allows MOST programmers to not bother with understanding assembly, same with web frameworks, and i can see how it would be possible to implement a markup language that generates custom kernels. I can also see how within the next few years, we will certainly have easy to use machine learning libraries (there are already many good ones today) that bring the power of ML systems to programmers not trained in statistics and linear algebra.

That makes me wonder what kind of technical skills have long lifetimes, valuable in the real world (as opposed to merely being technically interesting), and are difficult enough to acquire that one doesn't have to worry about competition against a low-paid worker army....

Re: Programmer's Dilemma

#76

When people tell me that I should "do projects in my own free time to keep my skills sharp", it throws me into a fit of rage and makes me want to tear them a new one. Do you see any other professions having to do that in order to stay employable? Can you imagine lawyers having to practice law in their free time to "keep their skills sharp"? Can you imagine civil engineers having to draft plans for bridges and buildin…

"Do you see any other professions having to do that in order to stay employable? Can you imagine lawyers having to practice law in their free time to "keep their skills sharp"?"

This is a profoundly ignorant question to ask:

- Lawyers do essentially have to practice law in their free time. Many, many state bars require continuing legal education in order to remain barred. Can you imagine having to pay money for classes or be legally prohibited from programming?

- This is also true for doctors and nurses. Continuing medical education is mandatory for both to be allowed to practice.

- Most professional academics spend a huge amount of their "free time" thinking about their field, reading journal articles to stay current, and taking classes to stay current on new statistical software, programming skills, etc.

Re: Programmer's Dilemma

#77
post #9

Although the article as a whole makes very good suggestions about keeping your skills fresh, I think his standards for the candidates he interviewed are impossibly high. Expecting an understanding of what the kernel does when malloc is called is probably fair (actually I think this is a trick question, as I believe the kernel doesn't actually page in any memory until it is accessed for the first time). But I don't th…

A simple LRU cache is not very much code (certainly less than 100 lines even in C). Assuming the hash function in question has a sensible API, getting something that works but has a few bugs and performs suboptimally should not be at all difficult for an experienced programmer who knows what an LRU cache is.

The glib hash API in question wasn't linked in the article, here's the reference: https://developer.gnome.org/glib/stable/glib-Hash-Tables.htm....

I would say it's very easy to use, but I'm quite biased (through experience).

Re: Programmer's Dilemma

#78
post #76

When people tell me that I should "do projects in my own free time to keep my skills sharp", it throws me into a fit of rage and makes me want to tear them a new one. Do you see any other professions having to do that in order to stay employable? Can you imagine lawyers having to practice law in their free time to "keep their skills sharp"? Can you imagine civil engineers having to draft plans for bridges and buildin…

"Do you see any other professions having to do that in order to stay employable? Can you imagine lawyers having to practice law in their free time to "keep their skills sharp"?" This is a profoundly ignorant question to ask: - Lawyers do essentially have to practice law in their free time. Many, many state bars require continuing legal education in order to remain barred. Can you imagine having to pay money for class…

I don't quite buy your argument - yes these professions may work long days, but generally the upkeep of skills falls into those allotted working hours. Programmers should do this too, when it is helpful to their work. But suggesting that someone should add a whole new project to their resume on the weekend is akin to saying a lawyer should take on a pro-bono case just to buff their CV. If they want to do that, more power to them, but it shouldn't be expected of everyone.

As to academia... don't get me started. That is a strange and unusual profession which lies somewhere between 'hobby as job' and 'slave until you're tenured'.

Re: Programmer's Dilemma

#79
post #7
post #5

Earlier quoted context omitted.

Cut him a break, English is clearly not his first language.

I don't see what that has to do with not using spell check. Wyclif is not criticizing the author for not knowing English spelling--he's criticizing him for not using spell check.

There is more than just a few typo. There are myriad grammatical errors. I don't know how well grammar checkers have improved in the past 5-10 years, but I don't recall MS Office being all too good at catching grammatical errors or being able to recommend correct solutions.

Re: Programmer's Dilemma

#80
post #46

Earlier quoted context omitted.

Teachers / doctors / dentists all need to take courses to keep their skills up to date. Programming is no different. I don't think there is one profession where you aren't required to keep your skills up to date / put in extra time.

As I've mentioned before, in a lot of professions it is paid and considered part of the job. If not, then at least it's regulated. We enjoy none of those benefits. Software is a career requiring a much higher level of personal commitment than many other careers, while often not necessarily being better compensated.

Software is a career requiring a much higher level of personal commitment

Except it really doesn't. Most of us chose to put in the personal commitment because we love it and then convince ourselves it's because we have to.

I know several people who code 9-5 Monday to Friday on whatever their boss tells them to code on and that is it. Sure non of them will ever be offered a top job at Google, Facebook or awesome SV startup of the week, and sure most of what they do sounds frightfully dull, but they still have a successful if unassuming career in software.

Post reply on HN