Live data from Hacker News

Ask HN: What boosted your confidence as a new programmer?

news.ycombinator.com

211–220 of 245 posts

Re: Ask HN: What boosted your confidence as a new programmer?

#211
post #53

Earlier quoted context omitted.

This is indeed a superpower. I don't really remember when I felt that external dependencies were magic, but thinking about this, it explains a lot of the behavior I see on some developers who are very negative about the more challenging parts of the job. Some of them don't really believe the research stuff we do at work are even possible. They're constantly surprised when other devs finish those tasks. Some don't bel…

I've worked with some of those folks too. It seems to me like they haven't really learned programming the way I understand it; instead, they've learned various incantations that can be strung together, and are just at a loss when they don't work as expected/documented.

I’ve noticed this as well - they don’t view software building as a form of engineering that can be learned from basic principles of computer science, but instead as magic.

So the go to for every solution is to find a third party library from a “real” witch or wizard, and follow its basic tutorial. Maybe try to customize it a bit at most.

If something breaks, just start randomly moving things around or copying and pasting more code from forums until it works.

I can’t live like that. I need to know why something’s not working, AND why it IS working. I like stepping through my code with a debugger just to make sure things look right, even when they’re working.

I think the craziest part, though, is just how much people with this “software is magic” mindset can actually get just by brute force cobbling things together.

Re: Ask HN: What boosted your confidence as a new programmer?

#212
Building, releasing and supporting your own app.

We don’t let junior devs do this now because programs are huge. We throw junior devs into bug fixes on large existing code bases (which are often not well architected, full of tech debt, etc)

There needs to be a step between the toy projects in college courses and the million+ line code bases.

Building, releasing and supporting small apps successfully, interacting with users, making changes they want and actually delighting them gave me a huge confidence boost in my early career.

We do a disservice to junior devs now.

Re: Ask HN: What boosted your confidence as a new programmer?

#213
post #59

As a new programmer? Nothing. Fear of inadequacy was a constant companion. Over the years, though, as I saw more and more code written by programmers I respect and from companies I respect, I noticed that mine was no worse than theirs -- and I realized that my skills were, at the minimum, just fine. Warts and all. (Edited to swap "mine" and "theirs" to be what I meant to say)

I think this is big. I still try to be humble and consider myself to be nothing higher than a novice. When I do see things that I can quickly understand and even improve on, it's a huge boost to my morale.

I believe in being as bluntly honest with yourself as possible. This includes acknowledging the good things as much as acknowledging the bad. So I think it's perfectly fine -- even good -- to recognize areas where you are an expert (just don't think that expertise in one thing makes you an expert in all things).

Humility is a wonderful thing, though, and you can maintain it regardless of your skill level by recognizing the truth that no matter how good you are at anything, there will always be someone better than you.

I personally get nervous when I'm not doing something I'm a novice at. It means that I'm not growing.

Re: Ask HN: What boosted your confidence as a new programmer?

#214
post #204

Earlier quoted context omitted.

I've worked with some of those folks too. It seems to me like they haven't really learned programming the way I understand it; instead, they've learned various incantations that can be strung together, and are just at a loss when they don't work as expected/documented.

Oh, that's definitely true. To me the issue is they assuming everyone around them is like this. I'm totally fine with lack of experience or knowledge, but a co-worker constantly underestimating their peers is not alright.

The senior developer above me is like this for me, and it’s rough because it shakes my self esteem AND often leads to me having to support and extend a fragile and changing 3rd party library to solve a rather specific problem that would be better solved with custom code.

Where it really stings is when I do something of my own initiative (like, for example, create a transparent API over memoizing and caching some expensive calculation, or refactor some of our common client customizations into their own set of classes so it’s easier to extend) and he ignores it or scoffs at it.

Only to then find a third party library that implements something similarly. THEN it’s presented to me as a “brilliant idea” that we can take advantage of.

At that point, when I say “we” already do this, he usually rephrases what his brilliant 3rd party library does, as though he can’t fathom that I would be capable of doing something like that myself, and clearly I’m just not understanding what he’s telling me.

I think it’s a defensive mechanism for his ego against one of his peers or employees being more capable than he is.

But it’s also not like he can’t learn this stuff himself, he just doesn’t ever put in the time or effort.

Re: Ask HN: What boosted your confidence as a new programmer?

#215
post #139

Realizing that external dependencies are regular codebases just like the one you're working on. That you can open them up in VSCode, look around and figure out any bugs or issues you're having and even open pull requests to improve them. At that point, you lose the feeling that there are magic things out there that you will never understand and that for the most part everything is just regular old code that regular p…

Imagine any other profession needing to inspect, rebuild, and fix the tools that they are given to do their job.

Have you met farmers? They will readily tear apart their equipment to fix an issue or modify the tool to make them more ergonomic. This trend of massive multi-million dollar John Deere combine harvesters with DRM widgets that you need to take to a specialized tech to get fixed, is a relatively modern one, and one detested by virtually every farmer.

This was and is quite common in any blue-collar field where works don't always have the money or time for a brand new jawn every time something goes wrong.

I love estate/yard/garage/barn sales and going through the tools and reading the tales they tell from their wear patterns, field repairs, revisions, and hacks from their owner.

Case in point, here's a tool which has gotten multiple leases on life through modifications. https://youtube.com/watch?v=oTA513ttrbQ

Re: Ask HN: What boosted your confidence as a new programmer?

#216
post #215
post #139

Earlier quoted context omitted.

Imagine any other profession needing to inspect, rebuild, and fix the tools that they are given to do their job.

Have you met farmers? They will readily tear apart their equipment to fix an issue or modify the tool to make them more ergonomic. This trend of massive multi-million dollar John Deere combine harvesters with DRM widgets that you need to take to a specialized tech to get fixed, is a relatively modern one, and one detested by virtually every farmer. This was and is quite common in any blue-collar field where works don…

I worked on a farm. I think the things you're bringing up are still subtlely different. Modifying something you can see and touch for some unintended purpose versus modifying some piece of software because it doesn't work are miles apart from each other.

For example, I have a graphics project where screen tearing suddenly started appearing although my code didn't change, and the tearing wasn't there before. Is the issue in Skia, OpenGL, the graphics driver, the Intel or NVidia GPU, or the OS? Or is it some latent issue in my code that started showing up because of a change in these dependencies? Or is it some other complex interaction between multiple dependencies? I couldn't possibly know, and I actually don't think there is anybody that actually knows. And there is zero chance I could ever figure it out. I mean, it at least appears it was a driver issue as after some updates and a reboot it just went away, but there is zero insight into why or what actually made it go away.

If I modify a plow because some part as originally designed was flaky and constantly broke, you usually know to a pretty good degree why your fix works.

In software, the abstractions are such that it is practically impossible atbtimes to understand.

Re: Ask HN: What boosted your confidence as a new programmer?

#219
Any shred of imposter syndrome disappeared when I looked at the corporate code bases for the first time and realized that they didn't do magic, but things I could understand. I read the software and the documentation and it made sense. Talking to the developers of that software made it clear they worked long and hard on it and naturally knew more about it. This familarity and the decade(s) of experience was the only difference between me and them.

Also realizing that a lot of people write really not all that good software was another big point.

Re: Ask HN: What boosted your confidence as a new programmer?

#220
post #141

If anything, my confidence gets lower as I get more experience. The amount of politics, power jockeying, engineers who hide behind decisions as if they were technical only to be highly personal preferences, how many people reject simplicity and prefer complexity while calling it simple, lack of documentation, etc. It just all makes me feel like I don't belong in the field. It's all so overwhelming and complicated, an…

I usually don't respond to comments, but there's a lot of things that I can identify with in your comment and I'm far from experienced as a developer. >The amount of politics, power jockeying, engineers who hide behind decisions as if they were technical only to be highly personal preferences, how many people reject simplicity and prefer complexity while calling it simple, lack of documentation, etc. Learning on my o…

I'm sorry you had to go through that. Sadly, IT is full of 'colorful' characters like these. I've been on multiple projects that could have been so much more fun and lighthearted, were it not for 1 person. Due to their influence (whatever it is) the atmosphere completely changes and eventually people lose interest in the product, burn out, quit or are laid off because of it. No good can exist without the bad I guess.
Post reply on HN