AboutAnalytical Chemist, Backend dev, DBA, QA/tester.
SkillsHaskell, Python, PHP, Go, Rust, JS
Joined devRant on 4/13/2017
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
Shopping for fridge with sister in law.
"Yeah that one is nice but it doesn't have an app"
"Why do you need an app for your fridge"
"I don't know, but this other fridge has an app, so I think if it doesn't have an app it's not that good"
"But it's very energy-efficient, silent and spacious. The one with the app is the same size, has a worse energy rating, is noisier and is more expensive as well"
"Yeah I know but if there's no extra features that's kind of boring"
"You are everything that's wrong with modern consumers"28
Current PM in the morning: "Startup flexibility! I'm at the beach chilling in the sun! I trust you can do standup without me! #tech-detox #positive-energy"
Current PM in the afternoon: "ARE ALL THE FUCKING TASKS FUCKING DONE YET? THERE ARE ONLY 9 DAYS LEFT IN THE FUCKING SPRINT! WHY HAS NOTHING BEEN DEPLOYED YET?"
This is why I hate wireless earbuds: You don't have a wire available for strangling coworkers.13
Why do Android apps not clear their own irrelevant notifications?
For example: If I mark all notifs as read within the devRant app, or archive an email in Gmail, or read a message in the Jira app, why does it not clear the status bar notification?
Is there a good reason, or is it just often overlooked by developers to perform a cleanup action like this?6
First we were called "rockstar" developers.
Then HR started using "heroes".
Then "tigers" and some confused associates who didn't get the memo used various other big cats.
Now they're starting to call us "product warriors".
"Why did you bring Wagyu beef to the meeting?"
"Because the calendar description said: Engineers should proactively add value for our steak holders"
(True story -- They told me to do what management instructs, without correcting anyone and without asking questions. And I love playing that game!)6
We passed a milestone: 250,000 phpunit testcases.
If it weren't for a heavily parallelized build pipeline which splits it out over 20 servers, it would take about 7.5 hours to complete.
Not hating on PHP, and without tests it would truly be hell...
But still, fucking hell, we outgrew PHP.
Not having a solid type system just means you either accept more bugs, or write thousands of unit tests to guard all the foundational cracks in the system.
On the bright side, I get a coffee break after every commit 😄22
"Hey mate, how are you doing?"
*deep sigh* "It's tough, but I'm managing"
I don't think it's a coincidence that the word managing is often used as a synonym for "Technically alive, but not in a state where I can progress personally, or add any value to my environment".
Now imagine packaging that desolate self-perpetuating feeling of apathy into a farce, propped up with practiced smiles and meet-speak, and calling that daily routine a "career".11
A glass of cognac, a blotter of LSD, go to the spa for a massage, turn on some Sibelius, Mahler or Tchaikovsky, and play Factorio all night.
Sometimes I also just work on my forever unfinished SciFi novel.
Or I install FL studio to realize 30 minutes later that I'm about as musically gifted as a pile of bricks.
Recently I was fed up with work and made a nice new bed for my daughter out of cherry & oak wood. Carpentry is a nice distraction from coding.4
The Manager kept masturbating over "low hanging fruit".
The apples on the bottom of The Product have all been picked.
The apples at the top are starting to rot.
The Manager masturbated a bit more over the low hanging fruit.
The bottom of The Product is now so slippery with Manager Cum that the brave engineers can't reach the top anymore.
Time to bring my axe to work.13
I applaud my coworker who titled the business analytics dashboard showing end user feedback and CES values projected onto the 6 meter high wall of the office lobby.
"International Normalized Customer Effort Score Tracker"9
I think the main issue with Computer Science is that it's considered an Academic study, while 99% of work is very much dynamic, quickly evolving and hands-on.
I think all forms of (higher) education should be part time, starting at 4:1 college/work, gradually moving towards the opposite.
Currently, combining work and study is only done for "lower level" education, at least in my country: For example a car mechanic needs to work on actual cars, and barbers need to cut actual hair.
To me, it makes sense if engineers work on actual software, during their education.
It also feeds back into the education itself, when companies are paying for courses and the course doesn't teach practicalities, there's a lot more feedback to the colleges on how to adjust their material.9
Most successful project... What is success?
My first computer at 8 years old was a Commodore64. There was no internet yet, so I used the manual to learn about BASIC and assembly, sound and sprite registers, and created a pretty elaborate RPG. Mostly text, some sprite art, soldered some eeprom cartridges, optimized the code. Spent almost a year on it. An enthousiast magazine picked up on it, revised, QA'ed & published the game, sold a little over 10k samples. I got ƒ0.25 per sale, and I was completely overwhelmed how much candy one could buy for ƒ2500 ($2k corrected for inflation).
I was employee #3 at my current company, started when it was worth nothing and the website redirected to a set of Google Forms containing all the logic. I wrote a large part of the first, monolithic backend.
Now there's teams in a dozen countries, and an estimated revenue of a quarter billion.
So obviously my current "project" is more successful.
Still, my current job sucks, the company turned into a desolate passion-free wasteland full of soulless fake hipster zombies and managers who seem to derive sexual pleasure from holding extremely ineffective meetings, endlessly rubbing their calendars together in their bureaucratic orgy of ineptitude.
So, I'm more proud of my C64 game.2
Python, the language, is fine.
Some aspects of it are even kind of elegant.
But Python, the VIRTUALENV ANACONDA BLEEDING ASSHOLE WHEELING PIPPING FUCKING TOOLCHAIN IS MORE RAGE INDUCI̵N̵G̵ THAN ANY O̶͔̔̄T̶̊̆ͅH̵̥͒Ȇ̶̥̓R̷̹̳̎̒ ̴M̴o̸d̵u̷l̸e̶N̴o̷t̴F̸o̸u̸n̶d̶E̵r̷r̴o̵r̴:̵:̶̼̳̙̾̈ ̷̧̲̗̓́̾͂N̶̙̆ó̵̱ ̷͔̔m̴͇̔ơ̸͕ď̷̲ư̷̢ḻ̷̉ê̷̼ ̸̗̓n̷̝̔a̷̙̓m̶̖̄è̷̡d̸̳̋ ̷̝̍ ̷͎̚'̷̻̌ḋ̷͔i̴͓͌ṡ̵͍t̵̘̽ṵ̵̊t̷̹͝i̴̛̦l̴̒͜s̸̩͝.̸̱̚u̵̪͆t̵̥͑ỉ̸͍l̵͚͠'̶͚͘14
Be more passive
I always get involved in everything, at every company. Not to further my career through ass-kissing and overperforming.
I regularly piss off people. When C-level has a discussion about strategy, I'm usually ahead of them, ask too many questions, criticize every detail they've missed, cause frustration by making them look incompetent.
Can't help it, when I see retards destroy a great product I have to intervene.
Some people appreciate it. I often defend both devs and end users, when others don't dare speak up.
But fuck it, I'm getting older. I'm gonna coast a bit more. Sit back, relax.
If a product manager doesn't prepare enough tasks — that's cool, I still have a Factorio savegame to work on.
If another team designs an incredibly stupid feature — they'll discover the issues eventually by themselves. Maybe I'll warn once, just to be nice.
*Pours another chocolate milk*
Also gonna spend at least 4h/d with my daughter. She's a better human than most of my coworkers, and the work we do using her Legos is honestly more important for humanity than the Jira backlog.20
Yeah sure, the Metaverse will be bigger than the Internet.
I really believe that. Short of a system collapse, there's nothing which will stop some Web/VR/AR amalgam from eventually going mainstream. If anything, a prolonged pandemic will make humans hunger for more digital entertainment and socializing options.
Might take 5 years, or 25, but it will happen in some form. Eventually, people will even readily accept various augmentations to their bodies to further immerse themselves and connect to digital experiences.
We're still pre-bubble.
Does no one remember the dotcom crash?
Facebook/Meta will become the new Yahoo, decimated to a sliver of its former glory. Million dollar hype NFTs will become the new $10 parked domain names. 99.99% of all current efforts and content will end up like a modern day Geocities Archive.
So yeah... when I read that my pension fund is considering "investing in metaverse technologies"...
...you fucking bet it's time to transfer to a different fund!22
Friends Pandemic December proposal: "We should all get on Zoom every weekend, play Christmas trivia games and do shots"
Family ideal Pandemic December: "Lets send each other Secret Santa presents throughout the whole month, and get on Zoom and unpack them"
Me: Chilled out on a reclining seat next to a freshly slaughtered green fir tree, burning hearth fire, warm wool sweater, faux fur slippers, big mug of liquored up hot chocolate, keyboard on my lap, writing a Rust library on big screen TV.
Sorry friends & family, y'all are doing holidays wrong.
-- signed, Grandpa Bittersweet.12
Type letter "w" in wife's browser
"What is the ratio of open to closed doors in the world right now?"
"Why doesn't my baby molt her skin all at once while she grows?"
"Will Python help me to make a robot friend for my toddler daughter"
"Where do I buy tensors for building robot brains"
"Why don't we solve aging population and climate change by not vaccinating boomers"
Me: ... "Seriously, why can't you just watch hardcore porn, like a normal person"25
I think the weekly rants just exist because @dfox & @trogus got banned from stackoverflow and they still have questions.
When it comes to learning cutting edge tech... Go build already!
I found Rust intimidating.
I read the first few pages of the official book, got bored, gave up.
Few months later, decided to write a "simple" tool for generating pleasing Jetbrains IDE color schemes using Rust. I half-finished it by continuously looking up stuff, then got stuck at some ungoogleable compiler error.
Few months later I needed to build a microservice for work, and against better judgement gave Rust a try in the weekend. Ended up building an unrelated library instead, uploaded my first package to crates.io.
Got some people screaming at me that my Rust code sucked. Screamed back at them. After lots of screaming, I got some helpful PRs.
Eventually ended up building many services for work in Rust after all. With those services performing well under high load and having very few bugs, coworkers got interested. Started hiring Rust engineers, and educating interested PHP/JS devs.
Now I professionally write Rust code almost full-time.
Moral of the story:
Fuck books, use them for reference. Fuck Udemy (etc), unless you just want to 2x through it while pooping.
Learning is something you do by building a project, failing, building something else, falling again, building some more, sharing what you've made, fighting about what you've built with some entitled toxic nerds, abandoning half your projects and starting twelve new ones.
Reading code is better than reading documentation.
Listening to users of your library/product teaches you more than listening to keynote speakers at conferences.
Don't worry about failures, you don't need to deliver a working product for it to be a valuable experience.
Oh, and trying to teach OTHERS is an excellent method to discover gaps in your knowledge.
Just get your fucking hands dirty!12
This is a very mild rant about character limit saying that there are >0 characters left when writing comments, then refusing to submit.
I'm so fucking infuriated! I almost raised an eyebrow in anger! What the fuck, my life is literally ruined, this bug is making my toilet visits insignificantly worse!4
My biggest pet peeve at the moment is people without any development experience using version numbers.
Me: "Communicating a release date for the feature towards clients is dangerous, we have a developer shortage, and currently don't really have enough capacity to..."
Manager: "What we release next month doesn't have to be perfect, it is just a v1"
Me: "You mean it's a beta? If that's the case, could you maybe differentiate the requirements of the beta, let's call it a 0.1.0, versus the 1.0.0-rc, the release candidate?"
*Feature is eventually merged into production, barely in a beta state*
Manager: "So I have some ideas for the v2"
Me: "You mean 1.0.0"
Manager: "Let's compromise and call it v1.5"
Me: "Let's compromise, you stop communicating release dates, AND you stop using version numbers..."
Manager: "That's not a compromise..."
Me: "...I wasn't finished... And I won't respond to the recruiter who just offered me a better paying job"5
We have no more time for all this Agile stuff!
Half of our developers might have been injured when we built the Great Wall of China, but no worries, we've listened to your complaints about feeling overworked!
You can take 3 extra days off this year. Meanwhile, we're starting the next project.
We're building some pyramids.
What? You want Scrum and sprints? Sure, do sprints, whatever helps us build those pyramids!
Requirements? Refinements? What requirements are there to refine?
We require a giant pyramid.
For v1, you can build the foundation out of wet mud. It must be 500 meters. Wide, or high, we're not sure yet, we'll get back to you on that. It must have less than 4 sides, but certainly more than 3.
The Frontend team has already built a part of the entrance using 60 semi trucks filled with papier-mâché, pipe cleaners and glitter.
Now go build already!20
1. I join a company.
2. I get deeply involved in "how to run the company", and get nice compliments from both coworkers & management about my skills in conveying startup/scaleup advice & necessities to upper management.
3. With my ego inflated through all the sweet talk, I think "ah, what the hell, let's do this again", and I accept a Lead/CTO promotion. I have to join board meetings, write reports on quarterly plans and progress.
4. I get unhappy/stressed/burned-out because I really just want to be a developer, not a manager/executive.
5. Upper management understands, I give up my lead position, lock myself back into my coding cave.
6. I get annoyed because the requirements I receive become more and more disconnected from reality, half of the teams seem to have decided to stop using agile/scrum, the testing pipeline breaks all the time, I get an updated labor contract from HR by mail which smells like charred flesh, etc
7. The annoyances become too much to do ANY work. I yell at the other devs outside of the entrance of my cave. There is no answer, only a few painful moans and sighs.
8. I emerge from my cave. The city has turned into a desolate wasteland. The office is a burning ruin, the air sharp and heavy with black soot. Disemboweled corpses of developers litter the poisoned soil.
Product Managers dressed in stained ripped suits scream at each other while they try to reinforce concrete barricades with scotch tape and post-its. *THUMP* Something enormous is trying to break through. "Thank God, bittersweet, you're still alive! The stakeholders! They have mutated! We couldn't meet the promised deadlines! We've lost the whole mobile app department, and that kid there is the last of the backenders and he's only an intern! You're here to save us, right? RIGHT?".
In the corner, between the overflowing coffee machine and a withered cactus, a young boy has collapsed onto the floor. His face is covered in moldy coffee grounds, clasping on to his closed macbook for dear life, wide-open eyes staring into the void, mumbling: "didn't backup the database, and It's all gone" over and over.
A severely dented black Tesla with a dragging loose bumper breaks through the dried up vertical herb garden and the smoothiebar, and comes to a halt against the beanbags in a big cloud of styrofoam balls.
The CEO limps out, leaking blood all over the upholstery. He yells to the COO: "The datacenter is completely flooded with sewage! I saved the backup tapes though", holding a large nest of tangled black magnetic tape mixed with clumps of mud above his head.
9. I collect my outstanding salary and sell any rewarded options/shares for a low dumping price, take a 5 month holiday, and ask a recruiter about opportunities in a different city.14
Today I discovered that we have a CSV export button for an order transaction system, on a page which is completely disconnected from the rest of the website.
It is only being called by an internal server, used by our Data department.
They run selenium to click the button.
Then they import the CSV into a database.
That database is accessed by an admin panel.
That admin panel has an excel export button.
Which is clicked by our CFO. But he got bored of clicking, so he uses IFTTT to schedule a download of the XLS and import it in Google Sheets.
That sheet uses a Salesforce data connector.
Marketing then sends email campaigns based on that Salesforce data...
Running an Alpaca farm in rural Finland, next to some mountain creek with an oldschool water mill so I can grind flour and coffee beans.
I hated people so I tried to find solace as a nerd in technology, but tech is also fucking awful so I feel like retiring in a tranquil forest with some equally grumpy wooly animals.
If I get eaten by a bear because I'm a skimpy city boy that's OK, more epic than being found decomposing slumped over on a keyboard in the boring grey suburbs.
All of this is probably pandemic-me talking though. So sick of this concrete city with the farting cars and fat obnoxious shoppers.
I need some trees around me, and some mammals with a higher IQ than my current neighbors.9
Find a place where management is able to handle some criticism.
I personally think Agile/Scrum is holy, and I don't mean "yeah we kind of do our own version of it", no, fucking do it by the book. The PM shouldn't assign estimates. Developers shouldn't receive bugfix requests from anyone other than the scrum master. The CTO can't be your scrum master... etc.
If a company can't answer the question "What were the points of feedback during the last retrospective(s), and how are those points being picked up?" -- Don't work there.
Many other things are optional in my opinion. I could work at a company without QA, without fruit baskets, table tennis, without Friday drinks. I could even live without git & continuous integration, just emailing patches to a patch integrator. I don't care.
But maintaining a safe bubble of serenity and sanity for devs to do their work in, that is an absolute must.
Also, option to WFH as much as wanted. Offices are nice for social bonding, but they kill productivity for me.6
We have a Miro collaborative whiteboard where product managers map functionality and user flows.
It currently has 89442 post-its & arrows.10
Every single diagramming tool.
All the SaaS ones are either way too limited in function, or proprietary vendor-locked.
All the FOSS/desktop ones have a 90s UX experience.
I really want to make a great, comfortable-to-use diagramming tool which just directly uses SVG as the file format, but without the "FUCK IT DOESNT ALIGN CORRECTLY AND WHY IS THIS ARROW BEHIND THE REST" experience...
But I know deep down that it's hard work, and I'll probably get stuck delivering the gazillionth lackluster, bugged diagramming app.20
*Romantic candlelit dinner*
GF: "What are you thinking about, my love?"
Me: "The chocolate custard always seems to behave differently under stress than vanilla. It has a lower base viscosity, but a similar shear thickening. I was wondering whether anyone has ever made a database of all custard brands and flavors together with their viscosities"
My brain: *Oh fuck, that's not what I'm supposed to say during a romantic dinner*
GF: "Do you wanna check whether we can find a cheap second hand viscometer.... wait.... no.... you'd need a rheometer for that, right? Do you think we could build one ourselves?"
Me: *blinks in awe*
Even after 15 years, I'm still just puzzled, she really fucking is my soulmate22
CEO "If you make costs to build a home office for covid, please be aware that you can fully declare your bills, and you'll retain ownership over the ordered goods. Please all buy some good desk chairs and keyboards, so you can work ergonomically"
6 months later, CFO: "Bittersweet, why did you try to declare €35000? What are these invoices even? Concrete rebar?"
Me: "CEO told us to build a home office. I got permits from the town to dig a souterrain layer under my house. This is just for the foundation, the bills for drainage pumps, sheetpiling, geothermal heat exchangers, insulation, flooring, electricity and of course desk & chair will follow later"
(To be fair, I really did make those costs, but was just trolling by uploading all the material bills)15