AboutI make stuff do things
Joined devRant on 4/5/2016
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
Gaddammit. My night was going great. Skimming a Dice article, my eyes caught the following: "...to be considered, a language must be Turning complete..."
It's like fingernails on a chalkboard.
Turing complete, motherfuckers, get it right.3
So we were supposed to have another good build today.
This one guy on our team gets weird sometimes, and refuses to commit his shit until the last minute. He says "Don't worry, I'll handle all the merging, it'll be fine!"
What he forgets is that much of our code relies on his! His latest commits reworked a couple entry points and a class definition. No backwards compatibility.
He made his commit, and nearly our whole stack shit the bed. Jesus jumping Christ. Weekend? Nope.2
Manager: client is breathing down our necks for that sockets interface. Wrap up any last minute changes, fix the documentation and get everything posted!
Me:*does all the things.*
That was two days ago. Client hasn't even logged in to download the software and the documentation.1
Had a couple occasions to feel like a badass, recently.
I'm the only programming polyglot on the team. They've been wrestling with an encryption problem. I crack open C, make a few calls to wincrypt (yes, I'm sorry, we're a Windows company) and give them a dll they can call in their IDE. They were stunned by how fast it was.
Last week, my manager asked if I could put together a communications module for our flagship software.
Him: will 3 months be enough time?
On Monday, I had an alpha of the module ready, and a standalone simulator of the module, and a couple different examples of how to communicate with it written out in python.3
I absolutely treasure the bug reports we get from users. Nothing helps bring the product closer to perfection than the informed critique of end-users.
Recently, however, this one dude is filing a new fucking report every time he encounters the same fucking bug. "X happens for operation Y on file A"
"X happens for operation Y on file B"
"X happens for operation Y on file Z"
Jumping Jesus Christ, man, I'm pretty sure we can identify a pattern after the first two!
I don't expect him to know about the work we do to reproduce a problem after one report but fucking hell, have some faith that we'll get the picture after two or three.
These are fully detailed bug reports too, so it's not like he's just being a troll.1
Had a manager that, during performance reviews, would say things like:
"You need to work harder on managing our clients' warm fuzzies."
"I can't give you a hard number to strive for on this metric here because you'll just do the minimum"
Needless to say, the turnover in that group was insanely high.
My job is pretty close to ideal.
-manager is technical/proficient
-hardly any meetings
-I'm trusted to design solutions to problems
-I'm trusted to implement those solutions
-Discretionary time off
-We make cool technology7
I'm a bad influence.
It's been a tradition for me to keep a bottle of 'desk whiskey' buried in a drawer at work. A couple weeks ago, I started inviting cube mates over for a drink on Fridays as five pm rolled around.
Soon one of them brought in a bottle of scotch. Then another.
Started observing the afternoon drink on days other than Friday, more folks got involved...
Now the CTO talks about "Whiskey O' Clock" daily.
Searching for a job is a terrible, soul-crushing experience. Take advantage of local meetups and tech-job-seekers groups to help keep your morale up.
During the interview: if you don't know something, that's ok. Don't get rattled by it. Some questions are designed to see how you think, not to see what you know.
I now approach all new situations as though they were a 'black box'
Carefully choose inputs
Examine and analyze output
Socially awkward? Nope, just charting your I/O.
I used to work in a role that was basically tech support for engineers. Folks would call, we'd look at their code and see where things were going wrong.
One customer calls in, they're having timing problems with a satellite control system.
I dig down through their code, and buried in one of the modules is a comment to the effect of:
"Once we upgrade to Windows 98, we'll need to change this call to the precision counter"
They never did.
This system was running XP.
Somehow, they'd avoided destroying satellites despite having the code run on Win98, and ME without fixing that call. It wasn't until they upgraded to a multi core system and XP that their gyros stopped responding correctly.
If someone has more tenure than you, they dont push 'stack busting changes', your code simply failed to account for the future. 😂
(This is why my former employer is my former employer)