Alright, I think we’ve stewed with the idea of DIS long enough…
We touched on it lightly last post but let’s talk about some tangible solutions to get passed it.
A sort of “life after getting DIS’d” – that’s right STILL not tired of it! I’m gonna milk it as much as I can… DIS is the hill I’m going to die on… 🙂
Of course, the vlog will go into a lot more detail, and I recommend you watch it but I’m just going to give you a little TL:DW if you’re on the move…
As we stated previously , there is no unicorn (know it all) developer, know your basics and then pick up the rest on a need to know basis and having a good resource pool will help a lot. Now let’s add to that: diving into projects and writing easy to understand code will help: it’ll get the project done quickly and efficiently. Clean, simple, and easy to understand code IS professional and professionals get paid. Also, Specializing in a niche (of programming) that makes you money (ex: machine learning code, e-commerce for small businesses, etc.). Again, check out the vlog for a little more detail and stick around in ’til the end for “Montreal in February” or “a -23 meditation”. Keep warm and enjoy!
So, you’ve been a developer for maybe two or three years? You’ve got some gigs and you’ve gotten paid and now you’re starting to work with the big fish… You’re maybe even working alongside other developers with 5-8 years of experience and suddenly you feel a kick in the pit of your gut… “WTF am I doing here?”
“I’m wayyyy in over my head, everyone knows what’s going on; they get their work done faster, they know which languages to use for any given situation. I don’t belong here.”
Ya just got DIS’d, son!
Yup, developer imposter syndrome…’d.
Now for some of you I may be spot on and for others, you either have felt this way and gotten past it <bravo>, or you haven’t crossed this particularly crappy bridge yet. And though I know it’s hard to come to any universal agreement on the internet, I think even in the back of our mind we can understand, sympathetically, “You can never ignore the emotional aspects of anything you do in life; especially career.”
Everyone Gets DIS’d, Bro:
(yes, I’m enjoying the hell outta this acronym)
But seriously, as unpleasant and humbling as these feelings are, they are completely normal. Everyone has felt these feels; even outside of the development field (it’s just called plain “Imposter Syndrome”, I know IS = boring acronym, but you should look it up). Ironically, feeling like we don’t belong (an Imposter), is something that everyone feels at one time or another. And perversely, it’s kind of a milestone; it means you’re “moving up in the ranks” and coming into your own by being around other more experienced programmers/devs who you should be taking the opportunity to learn from, or if you’re a little more solitary in your work, branching out finding a community you can learn from and feel supported in.
Alright I Got DIS’d, Now What? (Still not tired of it, mwahaha.)
Guess what? “There is no unicorn developer”, that is to say there’s no one that know every language, has been in every situation and knows everything. If there was, clients would just hire him/her and there would never be a need for anymore programmers or devs. Check out this vlog: if for no other reason than to see me freezing my butt off in the cold as we switch from a tight “man on a mission” shot to FPS mode and then the car for some “real talk”… It’s a fun way to talk about what can be a pretty frustrating subject. Me? I’m gonna sit here and think of how I can work this acronym into a sentence where I DIS your mom! OOOOOOHHHHH, snap!
Documentation is super important in development. How important, you ask..?
[Throw head back and laugh charmingly & disarmingly – then suddenly and intensely] …But seriously it is.
While it’s not the norm, it is becoming more common that programmers don’t leave proper documentation, be it self describing code, comments (little notes that you leave to yourself in your code) or more formal documentation (ex: what type of database structure did you choose and why?).
Granted, sometimes you’re doing something fairly straightforward, like a simple authentication object; it’s not really necessary. But for other projects, you’re only really hurting yourself. When you come back in 3 months or 6 months and you don’t recognize the thought process behind the choices you made, you’re going to double or triple your workload.
Also, it’s just a good professional courtesy from one coder to another. “The worst thing for coders is to have to go into a code base where there’s no documentation, you have no idea what the developers were thinking at the time, and it’s very hard to patch, expand, bug repair; extend a code base where you don’t know the reasoning behind the basic architectural decisions.” Take the time and make everyone’s job much easier and enjoyable…especially yours.
A Code of Conduct about Coding and a play on words for sure!
It seems every profession, association or club has their own “code” of operation. A set of rules or procedures that govern how members dress, interact and methodically complete a project or task. Well guess what? We have one too. And ours is Waaayyy better because it’s a code…about coding (if you can’t do anything with that, maybe you’re just dead inside…).
The Master Developer’s Code
A set of 5 lessons that have been amassed over 20+ years as a programmer. Granted some of the lessons here can sound pretty obvious if you think about it, we rarely do in fact. Sometimes we get so caught up in wanting to be the best, wanting to WOW, that we can end up making a mountain out of a molehill or worse; not listening to client needs. After this video, I recommend checking out our “Keeping it Simple” article if you haven’t already. It’s worth it.
Are you being original or just gumming up the works?
A simple -if not a little insulting- acronym. How many times have we come across a co-worker, a manager, or even a boss drooping the old “kiss bomb”. Keep it simple, stupid… easier said than done? Sometimes, YES: absolutely. But other times, when we take a step back and look at the whole picture (maybe even take our egos out of the equation), we come to realize that simplicity can be clean, elegant and best of all easy.
Huge messes of code are a symptom of one or more of the following:
1. bad developers
2. overly complex frameworks
3. coders purposely hiding code …. by making it insanely complex.
At the risk of sounding old, “It’s not cool to write complex cryptic code that nobody can understand. Simple code is the best code”…ya young punks! And really you’re only hurting yourselves… What’s gonna happen when you have to go in 6, 8, 10 months down the road for updates and you have no idea what’s going on?
The pros keep the their work simple and clean where they can and not only do they look good, competent and in control; it saves them time. So get out there make life simple for yourself.
I recently got an email from a student learning web design (and some basic web programming) … and he said something like this:
I took a web design course and the syllabus only taught Perl …
Wow! They are still teaching Perl!
Perl (is not) part of the modern web … for the most part.
Yes Perl is a powerful language and yes it is still used by a shrinking number of die-hard zealots. But these days, you have a few other languages that are just so much better suited for today’s modern web design and programming:
… And there are more.
Perl’s power without its’ weakness.
Perl’s power was largely found in something called regular expressions – RE (as nerd’s call it,) can process and parse text like nothing else. It is tricky to use but so powerful it is, that most … if not all modern programming languages have it built-in now. So Perl’s secret weapon is now gone and all you are left with is the weakness.
I am starting to hear that all too familiar nerd-buzz of premature excitement – this time it’s about HTML 5 and all it’s cool new capabilities.
Yes, HTML 5 does have a lot of cool things it can do, and so it’s tempting to jump in and start learning. But that would largely be a waste of time … at least for now.
What?! Isn’t HTML 5 the future?
It sure is. In fact, I’ve been telling people for years that XHTML was a pipe dream (because IE would not support it) and I advised people to stick to good old HTML … even when it was heresy to say so! Here’s the problem (now) with HTML 5 – most of the browsers being used today don’t support it AND it will take a few years before the majority of people out there will have HTML 5 equipped browsers.
… Man, reality does bite!
Hard-core nerds tend to ignore reality
A time long, long ago, in an Internet that is now far, far away … back in the mid to late 1990’s, CSS was invented and naive nerds such as myself started playing with it, investing precious time that could have been spent playing video games, only to find that most of the browsers being used did not support it … so using CSS was basically useless.
… It took several years before CSS enabled browsers had penetrated enough to use CSS in a serious way. Using CSS prior to wide adoption, only ended with wasted time and disappointment, since you could not actually use it live. The same will be true for much of HTML 5 – unless you start hacking and browser sniffing and all kinds of other nonsense.
Let me conclude by quoting Coder’s Code #36:
The wise web designer shall not waste precious time on learning cutting edge technology … if said nerd wishes to earn a living.