Earlier quoted context omitted.
IMHO labeling people “incompetent” is a bright orange flag. Sometimes it is true, but far more often it’s a genuine lack of respect.
>function1(){ ApiCall("1") } >function2(){ ApiCall("2) } Quoting from earlier in the thread, see this and tell me the person writing it is competent. The polite way to put it is "there might be a skill mismatch". Plenty of people get slowly drifted into programming roles they aren't qualified for. At the end of the day, I'm not some super hero looking to drastically improve every company I work for. It's fine to walk…
A bunch of programming advice I'd give to myself 15 years ago
311–320 of 327 posts
Re: A bunch of programming advice I'd give to myself 15 years ago
#312The one thing I disagree is the thing about editors. When I began coding I spent hours tweaking my vimrc file and learning all the essentially random shortcuts, and dealing with the absurdities of vimscript. (and debugging vim plugins that broke each other.) It felt like actual work while I was producing nothing. Now I just open vscode with default settings and I am productive right away. Who cares about editors, vsc…
The author claims that a strong knowledge of development tools is a good indicator of general proficiency, but what if it's that learning how to use your editor makes you proficient? After all, nobody gets familiar with Emacs without inadvertently becoming a practitioner - if not an enthusiast - of Lisp! That happened with me, and I'm now a big fan of functional programming, Clojure, Scheme etc., and that experience…
Re: A bunch of programming advice I'd give to myself 15 years ago
#313Earlier quoted context omitted.
You don’t get the same salary and equity as a top performer. Very few companies give flat raises and bonuses without taking into account performance. And if your manager cares about productivity, the 10x programmer is going to take the cake.
The correlation between performance and pay is really weak. In my experience, probably negative too, since most work seem to be done by junior employees while the most seniors coast around fixing some bug every now and then on something they wrote some time ago.
Coasting senior clock punchers get base salary and little more. It’s easy for high performing people with lower titles to pass seniors in TC over a couple of years due to stacking perf bonus stock grants.
Re: A bunch of programming advice I'd give to myself 15 years ago
#314Earlier quoted context omitted.
The demand might be there, but if you have a proven way to get recognized as a "good developer" during the hiring process I'd love to hear it.
References. Ask the good devs you have for someone good they know.
And even then, there is a famous story of the dev of the popular MacOS FOSS package manager, Homebrew, failing his interview at Apple.
Re: A bunch of programming advice I'd give to myself 15 years ago
#315Earlier quoted context omitted.
Unless you have a lot of flexibility in terms of where you work, this type of advice is becoming less relevant in an IT job market that's in free fall. Much fewer devs can just jump ship at will than between 2003 - 2022.
The market is not in a free fall. Or rather, it's only a free fall for junior fresh-out-of-college developers. If you are skilled and senior, don't believe this nonsense and have confidence in yourself. This is just an extension of the imposter syndrome that I see often in many people.
Re: A bunch of programming advice I'd give to myself 15 years ago
#316Those are way too abstract advice when you start programming. You can only understand them because you lived those situations, which implies experience you don't have. I would say (specifically to my young self): - There is no substitute for doing. Less tutorials, more coding. - Stop being obsessed with quality: you are not at the level where you can provide it yet. Do dirty. Do badly. But ship. Some people will be m…
Motivation, productivity go out the window. You don't give a sh*t about the work, team, code quality, made up deadlines or real issues.
Real maturity comes now. You learn to appreciate your limits, see what really matters despite what's being said and observe who make the calls and what their agenda is.
And finally, when you've picked a path and it seems like it works, you'll find equilibrium, somewhere between an idealistic comment on a PR and your next interview.
Till something else like health or kids rock the boat.
Take it easy, you matter more to you than your work. 15 years on, only ones who will remember the weekends you spent at work are your family and kids. Get out more, find solace in the varied arts. Enjoy you painless body till it lasts. Make the weekdays show up between weekends not the other way. Laugh more. Eat well. Feel your surroundings. Make friends, keep friends. Make memories. Don't throw your life away chasing menial pursuits. If a piece of work is really that substantial and meaningful, it will show itself as such. Don't go looking for it.
Re: A bunch of programming advice I'd give to myself 15 years ago
#317Earlier quoted context omitted.
It’s funny, this comment went in a totally different direction from what I expected based on the start. When you wrote ‘don’t take things personally at work’, I was expecting you to say things things about various kinds of humility – trying to make requested changes in code review instead of pushing back, not feeling wronged if someone rewrites something you wrote, etc – and seeing the bigger picture – the code exist…
A lot of my progression as a software engineer has come from decoupling my ego from the things I produce. That’s hard to do because the code you produce is a very strong reflection of your mental models and it’s justified to feel some connection to it. Tactfully navigating this kind of thing in code review takes practice. In my experience, the best teams of programmers work through problems with their egos held to th…
Re: A bunch of programming advice I'd give to myself 15 years ago
#318Earlier quoted context omitted.
References. Ask the good devs you have for someone good they know.
None of the FAANGs or even tier 2 companies work on references, unless you invented the internet or something. And even then, there is a famous story of the dev of the popular MacOS FOSS package manager, Homebrew, failing his interview at Apple.
Re: A bunch of programming advice I'd give to myself 15 years ago
#319my advice would be much simpler: 1. Most of the time you'll be manipulating test. Learn options how to manipulate text professionally. That includes vim, bash, sed, awk, perl, and regexes in general, including lookbehinds etc. It's worth it. It takes a few years to learn but even the basic options give you the culture and approach how to do things faster. Most coders have trouble swapping two columns in a text file or finding unprintable character.
2. Learn hotkeys seriously. They're more consistent and uniform than UI, learn how change them, which tools are better designed for them, and organize some memorization scheme. It pays off a lot and gets into body memory, freeing up mental space.
3. Learn how to version your own code instead of creating multiple files and folders. Read git manual at least once. Learn how patches work, what is interactive rebase, and how to go back and forth, combining different changes from different branches. That gives you freedom to experiment with code on a larger scale.
4. Learn how to quickly test any framework/code. There will be countless situations where you have some piece of crap not producing the needed result, and you should be able to quickly prove it. For this p.1 is invaluable. I have my own json,xml,rest,kafka and text log parser and diff, and a few cloud, database and search clients which I tweak when switching jobs. It's all mostly written in standard unix tools, and can be literally retyped if needed (I worked on high security envs often). It's also isolates me from poor (non-)standard tooling different in every enterprise to which I only fallback when I already know the answer and need to prove it to a peer.
The rest is subjective and optional. You can love or hate your job, you can love tabs or spaces, weak or strong typing, but the above will definitely makes it faster. What to do with the rest of that time is your decision.
Re: A bunch of programming advice I'd give to myself 15 years ago
#320Earlier quoted context omitted.
IMHO labeling people “incompetent” is a bright orange flag. Sometimes it is true, but far more often it’s a genuine lack of respect.
>function1(){ ApiCall("1") } >function2(){ ApiCall("2) } Quoting from earlier in the thread, see this and tell me the person writing it is competent. The polite way to put it is "there might be a skill mismatch". Plenty of people get slowly drifted into programming roles they aren't qualified for. At the end of the day, I'm not some super hero looking to drastically improve every company I work for. It's fine to walk…
I can't, nor could I make any sprawling generality about them based on secondhand quips.
> The polite way to put it is "there might be a skill mismatch".
More than polite, it may be practical. Perhaps this person is vastly skilled in some other way and importantly valuable if applied to that work.
> Plenty of people get slowly drifted into programming roles they aren't qualified for.
Like me. I'm unqualified in many ways having no formal education in CS. Yet I've created around 1,000 jobs so far. I've taught CS and lectured on it in college programs. I'm pretty sure you'd consider me incompetent if we met, because we seem to see the world and this work very differently.
> At the end of the day, I'm not some super hero looking to drastically improve every company I work for.
I don't consider it super heroic to simply do your work in good faith, interact professionally with respect for other humans, and strive to leave the world (and every part of it you touch) no worse, if not better. That's just basics.
> It's fine to walk out if your not vibing with your co workers. Always say it's about money, you never know who you'll see again.
Yes, absolutely, change roles when it seems the right choice. That is freedom I wish everyone had, and felt safe in, and no guilt for. Pursue happiness. Even saying it's about money I can't argue with unless doing so obscures some other fact that harms other people.