Live data from Hacker News

The Insecure Developer

dev.to

21–30 of 59 posts

Re: The Insecure Developer

#21

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

>if you don't have confidence that you can achieve something better, it is unlikely that you will even look.

This isn't true. The worst developers I know are also the most confident. They think their code is perfect the first time and they don't need to learn any more because they believe they already know everything there is to know. The more confident they are the worse their quality of work is. Luckily they are few and far between.

I'm not saying nobody should have any confidence only that having too much is very detrimental.

> Anybody who is hiring (i.e. everybody)

We aren't hiring.

> more than half the time I reckon companies are dissatisfied with the programmers they hire

Your organization has a problem. We've hired "duds" only a few times. The vast majority of the programmers we have hired have been just fine. Or maybe your expectations are just entirely unrealistic?

>So there is actually a huge supply of average programmers that nobody wants. The average programmers aim at the "barely works" bar, and having hurdled it think they are senior programmers. A year or two under their belts, they demand their incredible wages.

That has not been my experience.

> Love what you do because it's a crappy, horrible job if you don't

You don't have to love it, just not hate it.

Re: The Insecure Developer

#22

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

The longer I'm in this field, the more clear this is to me. Being a good programmer takes a lot more than most people want to believe.

Re: The Insecure Developer

#23

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

I agree with your points. It is curious to me that we've lost the idea of trade associations. I think knowledge work in general is fuzzy but whiteboard tests prove nothing. Degrees are becoming more and more meaningless. I wonder if there is a lack of financial benefit to having such associations.

Re: The Insecure Developer

#24

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

As someone who has hired programmers, I cannot upvote you enough. Last time was less than a month ago. I interviewed everybody from junior to (presumably) almost lead. During that time, I haven't met a single soul who would be able to describe what a call stack is and how it works, in rough terms. I don't have a CS degree, but I would imagine that it is something you would learn in the first year - I was tought it in…

I had to look it up, once I did, I knew exactly what you were talking about, I just didn't know it by name. I was thinking about the process a request/response goes through via TCP/IP port. I've been doing this for 20 years. Maybe you need to rethink your interview questions. You are just testing for word/definition association which doesn't really matter outside of tech chest pumping. Perhaps explain what a call stack is, then ask why it's important and how it's used for debugging, etc. You shouldn't care so much about the what but rather the why.

I remember an old Delphi interview where they asked me what a I already forgot was. I didn't know by name, but once they showed me what they were talking about, I could explain it in depth. They ended up hiring me and I fixed their broken DSS engine and it ended up in a lucrative M&A.

Anyway, standard IQ tests have sections for various skills. Among the ones that are important for programming is abstract thinking and pattern recognition. You should be testing for that rather that word/definition association.

http://www.thinktonight.com/WISC_IV_subtests_s/331.htm

Re: The Insecure Developer

#25
post #7

Earlier quoted context omitted.

We give coding challenges to our intern applicants, and most fail. We give different challenges and expect different levels of competency for a senior role. Code challenges at least have the capability of being very useful. We try and present the type of problems people will have to be solving in that position; if they struggle with it and someone else excels, they have done their job.

>We give coding challenges to our intern applicants, and most fail. Cool, we can finally remove CompSci degrees from job postings.

Meh, let it stay there. It has always been as optional as every other "requirement" on there.

Re: The Insecure Developer

#26

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

>Some people should not be in this industry -- not because they don't have the chops; but because they don't actually want to put in the time and effort to develop their skills. And it is an overwhelming task.

This is something that is near and dear to my heart, so I'm gonna take the opportunity to rant on it a bit. There are quite a few high-paying and fast-moving fields.

Pretty much everything under medicine or law moves is moving on a week-to-week and even day-to-day basis, just like software development. Unlike software development, practitioners in these fields get paid to stay up to date, as part of their day jobs. Lawyers spend a good chunk of their days just reading the latest case reports that are relevant to their field, and boy howdy do our legal systems churn out a lot of reading for them to do.

It's pretty much only in software development that we expect professionals to stay up to date and develop new skills /in their spare time/. There would be a lot more 1% developers out there (or rather, we'd be able to look for the 5% or 10% rather than the 1%) if companies were willing to have their teams spend 4 hours a week training, but no one is willing to do that.

I have guesses on the causes of this industry-wide unwillingness to train, but one thing is for sure: this situation will never resolve itself as long as we honestly and unironically expect members of the field to spend their evenings and weekends learning new algorithms and languages instead of playing with their kids or chilling with their mates.

You know why so many developers settle for mediocrity? Because mediocrity pays the rent, and no one is supporting their path to excellence.

Re: The Insecure Developer

#27
> Insecure or maybe well known as imposter syndrome hits me hard many times from when I started as an iOS developer

Used to feel the same when the Python-crowd harassed me on choosing PHP over Python for webdev. I got my revenge when the python-devs i knew started rewriting their entire projects in ExpressJS/NodeJS due to scaling-related issues and mine still outperform them after 5 years of service.

Re: The Insecure Developer

#28

I'm sleepy, so I shouldn't post, but here goes. Confidence is really important for a programmer. Writing good code is very, very difficult. On the other hand, writing terrible code that barely works is not so difficult. There is a pretty big gulf between the two and if you don't have confidence that you can achieve something better, it is unlikely that you will even look. Having said that, our industry is full of a l…

As someone who has hired programmers, I cannot upvote you enough. Last time was less than a month ago. I interviewed everybody from junior to (presumably) almost lead. During that time, I haven't met a single soul who would be able to describe what a call stack is and how it works, in rough terms. I don't have a CS degree, but I would imagine that it is something you would learn in the first year - I was tought it in…

Maybe you're asking the wrong questions or are from an undesirable area. I mean the example question you're using is just trivia and not difficult to learn when a problem arises. I'm not sure how much more you want compared to "local variables, return addresses, parameters" tbh.

Re: The Insecure Developer

#29
post #10
post #4

Isn't the point of an internship to continue your formation ? How comes companies making the same tests as for recruiting for real jobs ? "Hi, we are not going to pay you, or not very much, but please be at the same level as senior that are already working for us" I had interns back in the day I had an office (and not working from home) and I always made them work on basic tasks under my supervision. Once I had one w…

>How comes companies making the same tests as for recruiting for real jobs ? 1) Because desirable internships have more candidate applications than available slots. E.g. Google has 40,000 students wanting an internship but only 1500 slots.[1] With that supply & demand ratio, Google can be selective via difficult coding tests. 2) Even though internships are unpaid, companies evaluate interns to potentially offer perma…

Internships are paid a decent amount too. More than the average American by some distance.

Re: The Insecure Developer

#30
post #6

Earlier quoted context omitted.

Or maybe it means that he was not "good enough" for the multiple technologies they use. Like just in one language but not all they use. Pretty dumb at the end if you ask me.

Then the hiring firm is a group of fools best avoided. Tools change like fashion. What is "hot" today will be nearly frowned on in 5 years and forgotten in a decade or so. In 20 years the fundamentals still matter, the tools, not so much (Pascal? Powerbuilder? Win32 in C?) A smart developer can learn any tool. Hire for aptitude, not today's toolset.

A developer that knows just one tool has not shown the aptitude to handle a continually changing toolset.
Post reply on HN