Details
-
Aboutobsessive about architecture kinda guy
-
SkillsHTML/CSS/JS, TS, PHP Java, JavaEE/Spring, linux/vim/docker ...
-
LocationAustria
Joined devRant on 9/9/2017
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
-
To be a good developer, you must thrive in chaos, and have an insatiable desire to turn it into order.
All user input, both work tasks and actual application input, is pure fucking chaos.
The only way to turn that input into anything usable, is to interpret, structure and categorize it, to describe the rules for transformation as adequately as you can.
Sometimes companies create semi-helpful roles to assist you with this process. Often, these people are so unaware of the delicacy of the existing chaos, that any decision they make just ripples out in waves leaving nearly irreparable confusion and destruction in its path.
So applications themselves also slowly wear down into chaos under pressure of chaotic steak-holders which never seem to be able to choose between peppercorn or bernaise sauce for their steaks.
Features are added, data is migrated between formats, rules become unclear. Is ketchup even fucking valid, as a steak sauce?
The only way to preserve an application long term, is refactoring chaos into order.
But... the ocean of chaos will never end.
You must learn to swim in it.
All you can hope to do is create little pools of clarity where new creative ideas can freely spawn.
Ideas which will no doubt end up polluting their own environment, but that's a problem for tomorrow.
So you must learn to deal with the infinite stream of perplexed reactions from those who can't attach screenshots to issue reports.
You must deflect dragging conversations from those who never quite manage to translate gut feeling into rational sentences.
You must learn to deal with the fact that in reality there are no true microservice backends. There are no clean React frontends. There are no normalized databases. Full test coverage, well-executed retrospectives, finished sprints -- they are all as real as spherical cows in a vacuum.
There is no such thing as clean code.
There is only "relatively cleaner code", and even then there are arguments as to why it would be "subjectively relatively cleaner code".
Every repository, every product, every team and every company is an amalgamation of half-implemented ideals, well-intended tug of war games, and brilliantly shattered dreams.
You will encounter fragmented shards of perfect APIs, miles of tangled barbed documentation, beheaded validator classes, bloody mangled corpses of analytical dashboards, crumbled concrete databases.
You must be able to breathe in those thick toxic clouds of rotting technical and procedural debt, look at your reflection in the locker room mirror while you struggle yourself into a hazmat suit, and think:
"Fuck yes, I was born for this job".24 -
writing library code is hard.
there are sooo many details that go into writing good libraries:
designing intuitive and powerful apis
deciding good api option defaults, disallowing or warning for illegal operations
knowing when to throw, knowing when to warn/log
handling edge cases
having good code coverage with tests that doesn't suck shit, while ensuring thry don't take a hundred years to run
making the code easy to read, to maintain, robust
and also not vulnerable, which is probably the most overlooked quality.
"too many classes, too little classes"
the functions do too much it's hard to follow them
or the functions are so well abstracted, that every function has 1 line of code, resulting in code that is even harder to understand or debug (have fun drowning in those immense stack traces)
don't forget to be disciplined about the documentation.
most of these things are
deeply affected by the ecosystem, the tools of the language you're writing this in:
like 5 years ago I hated coding in nodejs, because I didn't know about linters, and now we have tools like eslint or babel, so it's more passable now
but now dealing with webpack/babel configs and plugins can literally obliterate your asshole.
some languages don't even have a stable line by line debugger (hard pass for me)
then there's also the several phases of the project:
you first conceive the idea, the api, and try to implement it, write some md's of usage examples.
as you do that, you iterate on the api, you notice that it could better, so you redesign it. once, twice, thrice.
so at that point you're spending days, weeks on this side project, and your boss is like "what the fuck are you doing right now?"
then, you reach fuckinnnnng 0.1.0, with a "frozen" api, put it on github with a shitton of badges like the badge whore you are.
then you drop it on forums, and slack communities and irc, and what do you get?
half of the community wants to ban you for doing self promotion
the other half thinks either
a) your library api is shitty
b) has no real need for it
c) "why reinvent the wheel bruh"
that's one scenario,
the other scenario is the project starts to get traction.
people start to star it and shit.
but now you have one peoblem you didn't have before: humans.
all sorts of shit:
people treating you like shit as if they were premium users.
people posting majestically written issues with titles like "people help, me no work, here" with bodies like "HAAAAAAAAAALP".
and if you have the blessing to work in the current js ecosystem, issues like "this doesn't work with esm, unpkg, cdnjs, babel, webpack, parcel, buble, A BROWSER".
with some occasional lunatic complaining about IE 4 having a very weird, obscure bug.
not the best prospect either.3 -
Enter site
"U must disable adblock to use this site"
Ok adblock disabled
Refresh page
"CLICK HERE TO FUCK THIS FUCKIN HOT HENTAI BITCH IN THE PUSSY WITH HER BIG FUCKIN JUICY TITS AND BIG ASS AND EXPERIENCE THE BEST SEX VIRTUAL GAME OF YOUR LIFE IN THIS AD"18 -
Few days ago i niticed one of my (site) accounts was deleted for inactivity. I thought fuck it, ion use that site, lets have fun. I wrote an email to get it restored:
"Sorry i got ass cancer and it took dr lil pump 2 years to cure me and couldnt use the site from the hospital"
Today, i got an email that i got my account back.4 -
My First name, is also my Last name.
So it gets kinda akward whenever i fill out a form and when the lady at the booth notices i have the same names on both the First and Last name fields.
She points and explains to me which is which and everybody looks at me like im some 6 year old hahaha.12 -
Another dev on my team just got a new machine. Before he came in today I made two separate USB installers and left him these notes.
62 -
Not only in my work, but in my life.
My biggest inspiration is the popcorn seller that patiently stays outside the subway exit, standing, every fucking day, from 4-5pm until 0-2am.
He stays until after the subway closes, and only leaves after everyone waiting for their Uber or their ride do.
In the rainiest day of the year, he was there.
In the coldest day of the year, he was there.
In the worst crisis of our country in the last decades, the region became temporarily infested by bandits and beggars. Sometimes I had to work overtime until 11:30pm and I had to be very cautious with all the robbers in the empty dark street. But guess who was there, sometimes calmly saying "get out, go work" to the bad elements bothering him?
I find it reallybfunny and refreshing when everyone is inside waiting for the rain to settle down, while he is standing in the middle of it. Or when I'm coming home really late, and he is still out there freezing cold.
There is no excuse for not doing your best. Life sucks sometimes, but there are no excuses. Just work hard, and laugh at the bad times.
Every time I saw him there, I thought "my day was hard, but I could've worked even harder". At the same time he made me feel better for having a better job, he inspired me not to bitch about any little things.
Then you might ask: "isn't he dumb to stay until 2am even though he is probably not getting any costumers after 11pm?" or "how can someone so unsuccessful be so inspiring?"
Well, I don't know. He just is.
Do almighty, genious people like Steve Jobs inspire me at work? Of course. More than this man? Certainly not.8



