AboutMile Wide/Inch Deep in most places...deeper in others. I've been a sysadmin (Windows, Linux, firewalls and mail servers) and a developer (Ruby, Java, bash, SQL) Prefer the pronoun: asshat. Um, I mean asset
SkillsBash, Java, Ruby, SQL, a little bit of php, and some Delphi, python, and enough Perl to cast before swine
Joined devRant on 3/26/2019
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
How I find out my boss added a new server to our environment:
I start getting email alerts for processes failing because they haven't been set up yet
Give me good requirements and a solid deadline.
Vague requirements and an open-ended deadline is a real good way to guarantee I will drag my feet.2
Was told by manager: "Ok, that's not the standard we're using. Just curious why you changed it."
I said, "This is the way I've been doing it for 3 years. I'll be glad to modify it to match the standard if you can point me to an example."
He said, "Don't worry about it. Leave it as it is."
What I thought: "Ok, if that's the case...why even mention it?"9
There are 3 types of coders on Codingame:
1. Those who want to learn and to teach others. They write solid code with either comments or non-obfuscated code so it can be read and understood by others.
2. The engineers who believe in not only building a better mousetrap but it should be a smart mousetrap and integrate machine learning so it can one day out-think the mouse when all that was needed was "Hello, world"
3. Code golfers showing off their...putters
Of course, one of any of these types in any given language may be a totally different type in a another language.4
I don't have _a_ most worthless meeting. I have a template. We have meetings like this frequently:
"Customer wants x, y and z done"
"Ok, do we have a data spec for x?"
"Do we know what the output for y will be?"
"No, still in development"
"We can't really do z yet until we know more about x and y"
"Next week. Or sooner. Maybe later. We don't know yet"
At this point I usually think: And we're meeting now...why?
How to piss off a server admin:
"<This> isn't working. Did something change?"
"Do you have an error message"?
"No, it just isn't working"
I hear this as: "Shit's broke. What did you do?"
Usually, it's PICNIC, PEBCAK, LNK or ID10T
But without at least an error message I refuse to go on a wild duck hunt. What changed on your end? Your IP address? Got a new workstation? Forgot your password or fat-fingered it?
IT users think a CPU is a crystal ball6
My boss is always telling me "perfect is the enemy of good" and I want to be perfect at coding so I may never get good.6
Advice I've give to junior devs:
1. Make it work, then make it work better
2. There is always time for neatness. At some point someone else, maybe even a future version of yourself, will have to read it
3. Limit the cut-and-paste approach. You won't learn as much as if you have to write the code yourself
4. Beating your head against a problem has a time-diminished value. Ask someone before you give yourself a headache.4
It occurs to me that the decision to leave a company is a story of overcoming the inertia of not leaving.
In many cases, there are forces within a company that serve to apply force to the inertia, a "push" if you will that helps get it moving. I think this is pretty common. People tend to leave jobs because of a stress they cannot tolerate or a bad manager or burned bridges, etc...
But, I've lately come to realize there is also the gravity of the current job exerting its force on the mass like gravity. When there are no good reasons for an employee to stay at a given position, the inertia is lessened, making it easier to break away.
Which situation are you in?2
Not a security bug, per se, but more of an approach:
- Database root password was the same across all servers
- SSH Keys were shared among all users
- High level of faith placed in the firewall keeping bad actors out so the other two items don't matter
Reasons not to be a developer:
1. You can't handle criticism. It will come from all directions. While some will be helpful, even crucial, much will be irrational garbage about naming standards, formatting, comments, clean code or stylistic preferences.
2. You can't handle moving requirements. Learn the phrase "Isn't it tiring carrying those goalposts everywhere you go?". On Monday, they want 1+1 to be 2 on Tuesday they want 1+1 to be 10 and on Friday they want 1+1 to be 11.
3. You get frustrated if you pour your best effort for weeks or months into something that never gets used by anyone in any way. "Yeah, that's great but the client/department decided a few weeks back we didn't want to do that so we aren't going to use it. The money was already spent so we figured we'd let you finish"
4. You don't enjoy working for people who know much less about what you do on a daily basis but who make decisions about how you will do your job on an hourly basis6
Can we start calling people and website who want to keep Flash around past the end of 2020 "Flasholes"?10
My own bad memory and tendencies toward neatness.
Memory: I comment things I'm sure I will forget why I did what I did
Neatness: My code looks nice! :)
Needed to to look up how to use a command in linux yesterday so I typed:
Which was then quickly followed by
Spending 8 hours automating a task that takes you 2 minutes to do every other month probably won't show a good ROI9
Life lessons learned from programming?
1. Always put things where you look for them
2. You may know better than some people but you never know better than all the people
3. Fuckups happen. Deal with them and move on
4. Take responsibility for your fuckups
5. There is no nice way to tell someone their baby is ugly or that their code is unreadable2
I think "clean code" won't last.
With the ongoing democratization of coding and the myriad lowest-common-denominator coders flooding the market, the concept that code should simply explain itself and be intuitive to all readers will be more and more difficult to achieve.
Clean code requires the reader be on the same or greater technical skill level with the language than the authors. As developers go back to being generalists from over-specialized this becomes more of a time waster than a time saver.16
Bought my wife a new laptop. She's a windows user so I had to go that way.
First, windows 10 now requires you log in to a new installation using a Microsoft login. You can remove it later but you need one to start. <gnashes teeth>
Then, because I chose to use a phone number to set up the Microsoft account, it created the home folder using the first 5 digits of the phone number, including the 1 country code for USA. <gnashes teeth #2>
Finally manage to get the initial set up out of the way and go to copy files from her old laptop which I can see in the "Network" area in explorer but when I click on it am told it doesn't exist <gnashes teeth #3>
Eventually realize that something needs to be shared on the old laptop so the new one can "see" it.
All the while I kept muttering, "Why the fuck does Microsoft make everything so simple so damned difficult?"22
Can we please kill the "You just logged in" emails?
Each time I log into my brokerage or Google or Yahoo I get one or more emails along the lines of "Hey, you just logged in. If this was you, ignore this email. If not, well, suck to be you, I guess. Someone else has logged into your account. Just thought you'd like to know."7
Anything that allows me to forget my imposter syndrome for a few minutes.
- Coworker sending me a Slack message commenting on a function I sent him: "Dude this thing is awesome"
- Manager commenting on a data sync process I wrote: "I love that. Seriously."
- Myself finally solving a problem that had been eating my lunch all day: "In your face, computer!"