I think there is a piece missing now days, I could just be an old fart that does not know what I am talking about (probably), but it's the idea of finding someone with passion, even if they are not the slickest programmer in town.
I think there is a piece missing now days, I could just be an old fart that does not know what I am talking about (probably), but it's the idea of finding someone with passion, even if they are not the slickest programmer in town.
The first is that there are just a lot of people out there nowadays who can convincingly talk about programming for an hour and still somehow not be able to code their way out of a paper bag. Frankly, though, this is really rarely obviously self-taught people. It's usually people who have degrees but managed to kind of skirt around doing actual work during their degree, or who have advanced degrees and it's just been too long since they did much practical coding.
At the first job I had where I was involved in hiring we started with a talking interview and then did a small coding test (which was: write a program that outputs some text of a particular format, take as long as you like, come get us when you're done or if you have questions). Eventually, we had to flip the order around because we had so many people come in who seemed really promising and then literally couldn't write a loop in a language they chose.
The second is that just selecting for passion also selects for a bunch of unrelated traits like free time, wealth, etc. There are plenty of really brilliant coders out there for whom it's just a job. As with literally any job. Many of those people don't really have the luxury of having a history that's littered with working on things they were actually excited about.
In the end, the social forces that created bell labs and the general sense that coding is a thing people do because they're passionate about were/are probably temporary, and programming is likely to become more and more "just a job" for most practitioners. And there shouldn't really be anything wrong with that.
All that said, I do think people pass up programmers with potential a lot. Everyone wants someone who can hit the ground running, but in my experience a lot more mileage is gained in the long run by hiring people who grow into their role. I think to really find these people you often have to go deeper than just looking at their passion projects. A good coding session can tell you a lot about how they think and communicate. And that's where you find people with potential to reach beyond their history.
The next day he sent me and email, in it he had every single question I had asked him verbatim (I did not see him taking notes and I do not think he recorded it) and he had every single answer perfect and then some. He said in his email he got nervous in interviews but said he is good at researching things and said he could solve any problem if I gave him a chance.
I took a risk and hired him, he was fantastic and pull my irons out of the fire. He was one of my best hires ever. So, you never know.
Also, I sort of shortened the story above, but the other intangible thing I saw others maybe would not have picked up on is when I gave all the candidates a tour around our set up, we had these Symbolics computers to do some back end AI stuff (early days stuff) and we needed a Symbolics slayer. I just saw the look in his face when he saw those things, you could tell he was truly excited about working on them. They all said they wanted to work on them of course but just how he looked at them.... I just felt like that was going to make a difference.
In today's world it would not fly if I told HR that I was choosing this guy because he looked at the computer equipment they way a dude looks at a sexy lady.
I'm pretty sure that you can imagine the sort of problem you might be setting up for the organization. If not, I'll spell it out: if you select candidates based on whether they are eye-fucking the hardware, you may just end up with a bunch of technosexuals on the payroll who aren't necessarily as good at their jobs as you hoped they would be.
On the other hand, I was once involved in hiring someone who we thought was nervous but it turned out the signs of nerves we were seeing were probably DTs. They didn't last very long for mostly unrelated reasons, though it's possible we could have done better by them as well. Still, it's sometimes hard to parse out what even looks like nerves in an interview because it's usually treated as such an adversarial process.
Mostly these days I try to focus on making it feel less adversarial when I interview, to try to get people over that nervousness and treat it more as a conversation. It's amazing how far you have to go to convince people you're not trying to trick them though, because of how many standard interview questions are (intentionally or not) trick questions.
For some reason they confuse passion with puppy-love or enthusiasm and they become either sarcastic with you or lose interest immediately, they interrupt the interview, and let you go without any warning.
Nowadays you need to go through SWAT and military training to be considered a candidate to get an email reply.
To me this is a clear indication that the market is extremely saturated and something big is about to happen...there's no other logical explanation behind this madness at all levels and categories of jobs.
There is a long history of devs choosing a tech because they want to learn a new tech or expand their skills instead of the right tool for the business needs. I'm guilty of this.
At the same time, a passionate employee put on the right task & managed well is a great asset. Like everything in software, "it depends", "trade-offs"...
This was for a customer service position.
Nice
Just something to consider. I hope your job search worked out or is going well.
Its a fullstack portfolio project built for the sole purpose of me learning crud. Its not going live, theres no people side. The manager was raising concern anout my experience as a developer
No matter how awesome your particular hammer is, it should be set aside when you're working with screws.
IntelliJ has a good plugin for vim key bindings.
Vs code has one, but it's sufferable at best.
It's my experience that these IDE plugins are more insufferable the more power user you are. Vim is far more than asdf and :wq.
But I digress.
Even the most basic of commands, like '' or u, never do what you expect (i.e, what they should do to be consistent with vi/vim).
And the more compelling features, like q:, are simply not implemented.
That is before even addressing the more minor quibbles, like the fact that when your search wraps around the end of the file, you don't get anything in the "status bar" indicating that fact.
Really, these people should be ashamed of themselves for putting "vim" in the name of this plugin.
On the other hand, in a previous life I had tried a paid ($100) non-free plugin for Visual Studio, and it was much much better.
If the interviewer is 50 or so, or older: "Emacs... people still use that?!"
If the interviewer is under 50: "Emacs... what is that?"
Either way I'm going to get dinged for clinging to a clunky, obscure editor that's not even from this century.
So next time an interviewer asks me what my favorite editor is, I'm going to tell them VSCode, because it has the best tooling and most developers use it.
but also, emacs is pretty cool but I figure i'd mess around with elisp way more than actual programming
Bringing emacs into the 21st century with this technology is life changing. Still run it in full screen terminal mode.
My team can’t comprehend how I can ssh into a box that’s running tmux which had all my shells a full-screen eMacs instance, tons of context, history etc all waiting.
I can reboot my laptop and not loose any of that. I can ssh in with tmux and I can instantly pick up where I left off. And from any host. My laptop, work desktop, etc.
Would you ask them their favorite programming language, and if they say Perl very passionately?
Also, it often depends on the ecosystem.
This is exactly the type of person I still hire to this day. Your specific skills are less relevant than your ability to communicate, your drive and passion, and your shared interests with the team. I've rarely got a bad hire out of this method.