SkillsPython, Ruby, system integration
Joined devRant on 7/9/2016
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
It really sucks being the senior guy sometimes because it means there's nobody above you that you can bounce questions off of. No mentor. Just random people on the internet (and stack overflow, eww.)
The rubber ducky on my monitor can only go so far.
It's a constant worry of "am I writing garbage?" and "is there a better way to do this?"
I'd kill for a QA group that I could actually send some of my stuff to and get feedback.3
I really am not a fan of the contortions you have to go through in Golang to deserialize a fucking JSON blob. If this were any other language I would have already had a data structure I could query rather than wasting hours twiddling structs that will be filled properly.7
Yesterday: Enjoying my VFIO machine running on Ubuntu. Windows nastiness confined to a VM, full performance graphics. Heaven.
Today: Take a system update. Systemd hanging on boot. No console output because systemd helpfully prevents all that from showing. AARGH!1
This was about 3 years ago. I’m on vacation and just getting off the plane, when my boss calls me on his cellphone. Apparently the crontab on our main file upload server had gotten nuked, and he was asking if there were any backups.
A word about this server. I work with video, so this thing is doing about a few gigabits of traffic incoming at any moment. The cron jobs are necessary to move and organize these massive files into a sane scheme for processing. Hundreds of drop folders receiving thousands of files resulting in terabytes of data every single day. Our storage vendor tells us we have the third largest deployment they know about.
No cron jobs mean all of this content is just sitting around piling up. I tell him sorry, try contacting $otherAdmin since he’s more familiar with that system.
A few days later, after the vacation, I come back in. $boss and $otherAdmin have reconstructed the crontab from scratch after an all nighter.
I ask how it got deleted.
$boss was training some people how to set up new customers on this file server, and he told the trainees to open the crontab in read-only mode. One of them ran:
Yes, we back up our crontabs now.3
The networking group at my day job, hooooooolly crap I have some unprintable words. But keeping it professional:
* Days to turn around simple firewall whitelisting requests
* Expecting other teams to know the network layout despite not sharing that information anywhere and going out of their way to not share it
* Adding bureaucracy in the form of separate Word doc forms despite having a ticketing system - for no justifiable reason
* Breaking production systems multiple times per month
* Calling in with problems that are clearly network related, being told it’s our systems, and then the problems magically go away even though they swear they didn’t touch anything
* Outright verifiable lies or vague non-answers when they’re not talking to someone at the director level or a vendor from an outside company on conference calls
* Worse packet loss and throughput on our LAN than my home ISP
Doing anything with these clowns is my single biggest source of stress right now. I can’t wait until we get a full SDN stack set up and then we won’t have to deal with them for day-to-day needs any longer.
My boss swears it’s better that we’re not managing the network directly, but I’m pretty sure my friend’s dog could be loosed into the data center to chew on fiber, and eventually the pairs would be connected in such a way as to improve performance.1
The year is 2218. Machines have taken over the world. A small pocket of resistance fights back against them. And in their darkest hour, Windows, which hasn’t been updated in over a century, still won’t tell their strategists what program is keeping the USB drive with their plans open. They don’t want to unplug the drive as that could damage the files.
While they’re trying to figure it out, the attack comes and catches them all unaware.
As a result, humanity is extinguished.
Don’t let this happen to you.5
Using the new project as an excuse to try out the language I was an absolute newbie at. (Python, at the time).
A couple years later when I’m much more proficient and I go back and look at that code, I want to slap past me for putting that spaghetti mess into production.
I’m convinced that CSS is black magic and those that can visualize what it’s going to do before changing code are witches/warlocks.
Usually my attempts end up in humor as the website ends up /comically/ broken. Elements shifted around to not anywhere near they belong, drop downs appearing from completely nonsensical places...
No idea how you all do it.4
Linux networking: A tragedy in three acts
Wherein the system administrator writes their /etc/network/interfaces file as is the custom.
Wherein the kafkaesque outputs of basic networking commands threaten basic sanity. Behold:
# ifup ens3:1
RTNETLINK answers: File exists
Failed to bring up ens3:1.
# ifdown ens3:1
ifdown: interface ens3:1 not configured
Wherein all sanity is lost:
That feel when an intern is tasked with implementing a web frontend for a project you're working on.
That feel when you open up one of the views and it's filled with JQuery spaghetti and your eyes glaze over.
That feel when you actually step through the code, and it actually makes sense and is remarkably light and clever for what it does.
That feel when you learned a bit more JQuery (a library that you never had any experience with before) and it made doing some more things an absolute breeze.
I learned over this weekend that there are no good tape backup systems for Linux. Oh sure, there are a couple of open source projects like Bacula and AMANDA, but they're both a bit too much on the .conf file hell side for me. And fuck literally everything about .tar scripts.
And then you've got things like Backup Exec that, while having its own problems like not being hostable on a Linux machine, will talk to a Linux machine and its connected tape devices with very little hassle.
Linux people: UX is important! Licenses for expensive software are often cheaper than teaching people how to use obtuse systems!1