Joined devRant on 2/8/2018
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
When you just finished watching Google IO and they presented lots of super cool machine learning powered stuff...
... And suddenly, what you've been working on just few hours before, feels like:
"Yay! Finally this button is changing the color of this text!"1
What. The. Fuck. Did. Just. Happen.
A random girl followed me on social media. She looked nice and intelligent so I followed her back.
Started to chat about some random stuff. She told me she works at the HR department of an international company and asked me what's my job. Told her I'm a software developer.
Right after that she sent me a selfie. Obviously I said she looks nice, she thanked it and asked some more about my job. After a short discussion I received another selfie but somewhere in between she lost the outer layer of her clothing.
She still looks nice but now I'm sitting here utterly confused and cant tell whether it was my sarcastic humour and moderately handsome facial features which charmed her or she just needs to recruit someone for a new project and willing to do everything to reach the quota.66
What's with some devs around here posting their stories of doing shitty things like they're heroes or something?
Oh, you hacked your former boss and destroyed data because he did something you didn't like?
Oh, you tried to work smart, but then essentially defrauded your client by claiming you had to rewrite the app for another platform?
How many other ones?
It's shit like this that make it harder for the honest developers out there to get a client to actually trust us, and that trust is so important for both sides of a contract.
How can a client who was burned by one of these douche bags trust when another developer actually quotes a rewrite of a code base that is fundamentally flawed?
How about a business partner of the one who was hacked. What if they're as honest as can be, but heard the horror story, and now refuses to entrust anything to their developers?
It makes all our jobs harder and makes us all look like shit.
And here you are, posting it up for those precious ++'s.
Fuck you. Either shape up or do us and your clients a favor and choke on your keyboard.8
Oh gosh.. i can finally understand the CV and application nightmare stories... We're getting new people in, and there are quite a few interesting ones.
0) pages of randomly placed info. PAGES. I'm lost in there!!
1) no basic info whatsoever. Like, no nationality(we're recruiting internationally), no birthdate, barely his name and email. I know that the first ones are not really needed for the job, but they're still customary.
2) entry level back and/or frontend job. This guy's a phd graduate, working research with big data in a bio-something department. We're a web startup.
3) there are some listing so much unrelevant stuff, I'm not even sure if they meant to apply to us.
4) (my favourite) email subject: application, email body: empty, attached: short_application.doc ("hi, this is an application to the posted job. Best regards, Name") WAIT WHAT?6
So this guy passed large objects as function arguments directly instead of referencing. What a jackass. So the program was slow as fuck AND taking up too much memory.
So yeah, I'm basically ranting about myself.2
The day I accept a management position, please lop off my hands and replace them with harmless ice cream scoops to keep my rusty ass from touching perfectly good code.1
First day after 3-4 hours:
"Our bathroom were out of the office and needed a badge to get in and out of office."
Him:"Hey i need to go the bathroom can you help me?"
Never to be seen again4
Sometimes you know what's the problem yet you don't know what's the problem.
Does it means your are just assuming that's the problem yet problem is something else.
After the latest great update for filtering I still see memes when all I checked was Rants filter 🤦🏼♂️5
Copy and paste a piece of code from stackoverflow without having the trouble to understand the code3
Worst one I’ve seen so far is when I was working for my previous community another developer joined to help me, without the permission of me or the other lead developer he pushed a client-side update. We didn’t think it was a big deal, but once we began reviewing the code it became a big deal... he had placed our SQL credentials into that file that every client downloads. All the person had to do was open the file and could connect to our SQL which contained 50k+ players info, primarily all in-game stuff except IPs which we want to protect at all costs.
Issue becomes, what he was trying to do required the games local database on the client-side, but instead he tried connecting to it as an external database so he decided to copy server-side code and used on the client.
Anyways, the database had a firewall that blocked all connections except the server and the other lead dev and myself. We managed to change the credentials and pull the file away before any harm was done to it, about 300 people had downloaded the file within an hours period, but nothing happened luckily. IP to the DB, username, password, etc, were all changed just to keep it protected.
So far this is the worst, hopefully it doesn’t get worse than this :/1
1. Naming all variables with letters of the alphabets
2. Not indenting (screw tabs VS spaces, I could use anything here)
3. Putting all src files in one directory
4. Writing the entire code without using any functions
5. Writing code and asking me to fix linting
6. Asking why they should follow language style guidelines4
Custom CSS? Who am I kidding, I'm a backend/security/server guy.
Fuck this shit, bootstrap, here I come!21
As a developer, sometimes you hammer away on some useless solo side project for a few weeks. Maybe a small game, a web interface for your home-built storage server, or an app to turn your living room lights on an off.
I often see these posts and graphs here about motivation, about a desire to conceive perfection. You want to create a self-hosted Spotify clone "but better", or you set out to make the best todo app for iOS ever written.
These rants and memes often highlight how you start with this incredible drive, how your code is perfectly clean when you begin. Then it all oscillates between states of panic and surprise, sweat, tears and euphoria, an end in a disillusioned stare at the tangled mess you created, to gather dust forever in some private repository.
Writing a physics engine from scratch was harder than you expected. You needed a lot of ugly code to get your admin panel working in Safari. Some other shiny idea came along, and you decided to bite, even though you feel a burning guilt about the ever growing pile of unfinished failures.
All I want to say is:
No time was lost.
This is how senior developers are born. You strengthen your brain, the calluses on your mind provide you with perseverance to solve problems. Even if (no, *especially* if) you gave up on your project.
Eventually, giving up is good, it's a sign of wisdom an flexibility to focus on the broader domain again.
One of the things I love about failures is how varied they tend to be, how they force you to start seeing overarching patterns.
You don't notice the things you take back from your failures, they slip back sticking to you, undetected.
You get intuitions for strengths and weaknesses in patterns. Whenever you're matching two sparse ordered indexed lists, there's this corner of your brain lighting up on how to do it efficiently. You realize it's not the ORMs which suck, it's the fundamental object-relational impedance mismatch existing in all languages which causes problems, and you feel your fingers tingling whenever you encounter its effects in the future, ready to dive in ever so slightly deeper.
You notice you can suddenly solve completely abstract data problems using the pathfinding logic from your failed game. You realize you can use vector calculations from your physics engine to compare similarities in psychological behavior. You never understood trigonometry in high school, but while building a a deficient robotic Arduino abomination it suddenly started making sense.
You're building intuitions, continuously. These intuitions are grooves which become deeper each time you encounter fundamental patterns. The more variation in environments and topics you expose yourself to, the more permanent these associations become.
Failure is inconsequential, failure even deserves respect, failure builds intuition about patterns. Every single epiphany about similarity in patterns is an incredible victory.
Please, for the love of code...
Start and fail as many projects as you can.30
I'm getting addicted to collectables.
New one is the storm trooper. Me no like rubber ducks.
Thanks china... Would never pay 30 dollars for a doll :p3
Me: I have been working for you for almost 12 years now, and I feel that my current pay is not comparable to the work I currently produce. Therefore, in order to secure my future as your employee, I must request an immediate raise in pay to a level that is acceptable.
Boss: I can't afford it. If you want more money, you need to bring in more clients, plain and simple.
Me: I'm serious. If I don't get a raise, I will qui---
Girlfriend: Babe, stop talking to yourself and come to bed...
Me: Okay... [looks in mirror] This isn't finished...13
Me, doing ui design: 'hm, i feel like jumping into machine learning right now'
Me, writing a ml chatbot: 'but what if i extend flutter with my old custom android components'
Me, porting java components to dart: 'hold on, p5js has vectors, i could make a physical simulation'
Me to me: 'why are you like this'10
LONG RANT AHEAD!
In my workplace (dev company) I am the only dev using Linux on my workstation. I joined project XX, a senior dev onboarded me. Downloaded the code, built the source, launched the app,.. BAM - an exception in catalina.out. ORM framework failed to map something.
mvn clean && mvn install
same thing happens again. I address this incident to sr dev and response is "well.... it works on my machine and has worked for all other devs. It must be your environment issue. Prolly linux is to blame?" So I spend another hour trying to dig up the bug. Narrowed it down to a single datamodel with ORM mapping annotation looking somewhat off. Fixed it.
mvn clean && mvn install
the app now works perfectly. Apparently this bug has been in the codebase for years and Windows used to mask it somehow w/o throwing an exception. God knows what undefined behaviour was happening in the background...
Months fly by and I'm invited to join another project. Sounds really cool! I get accesses, checkout the code, build it (after crossing the hell of VPNs on Linux). Run component 1/4 -- all goocy. run component 2,3/4 -- looks perfect. Run component 4/4 -- BAM: LinkageError. Turns out there is something wrong with OSGi dependencies as ClassLoader attempts to load the same class twice, from 2 different sources. Coworkers with Windows and MACs have never seen this kind of exception and lead dev replies with "I think you should use a normal environment for work rather than playing with your Linux". Wtf... It's java. Every env is "normal env" for JVM! I do some digging. One day passes by.. second one.. third.. the weekend.. The next Friday comes and I still haven't succeeded to launch component #4. Eventually I give up (since I cannot charge a client for a week I spent trying to set up my env) and walk away from that project. Ever since this LinkageError was always in my mind, for some reason I could not let it go. It was driving me CRAZY! So half a year passes by and one of the project devs gets a new MB pro. 2 days later I get a PM: "umm.. were you the one who used to get LinkageError while starting component #4 up?". You guys have NO IDEA how happy his message made me. I mean... I was frickin HIGH: all smiling, singing, even dancing behind my desk!! Apparently the guy had the same problem I did. Except he was familiar with the project quite well. It took 3 more days for him to figure out what was wrong and fix it. And it indeed was an error in the project -- not my "abnormal Linux env"! And again for some hell knows what reason Windows was masking a mistake in the codebase and not popping an error where it must have popped. Linux on the other hand found the error and crashed the app immediatelly so the product would not be shipped with God knows what bugs...
I do not mean to bring up a flame war or smth, but It's obvious I've kind of saved 2 projects from "undefined magical behaviour" by just using Linux. I guess what I really wanted to say is that no matter how good dev you are, whether you are a sr, lead or chief dev, if your coworker (let it be another sr or a jr dev) says he gets an error and YOU cannot figure out what the heck is wrong, you should not blame the dev or an environment w/o knowing it for a fact. If something is not working - figure out the WHATs and WHYs first. Analyze, compare data to other envs,... Not only you will help a new guy to join your team but also you'll learn something new. And in some cases something crucial, e.g. a serious messup in the codebase.11
Something I refer to as the "Lost Cause Syndrome".
Basically you start working on a project enthusiastically with the resolution to write the best possible code. But either one (or some or all) of management, client and colleagues succeed in transforming the project into a comedy (or tragedy, depending on your outlook) of errors.
Then finally, one day you decide that the project is a lost cause and stop caring about it. You end up in a "Let's get this over with and get out of here" type of mindset without making any efforts to improve the situation.3
For some reason my manager freaked out after her non developer husband told her that each of the web pages for our main service would take months to build. Shit man its just static content with some animations here and there. It is a total of 15 pages and this dude estimated that I (as in yours truly) would only be able to do 2 per month. Bato stfu. Stick to banking (hopefully your time estimates don't suck ass there) and let me woo your woman with my frontend godspeed.
So what did I do?
Simple, asked her to show me one of the design models she already created on photoshop. Saved that thing to my computer and coded it at home. In 2 hours (It was originally one but my dumbass gor tab trigger happy with rm rf autocomplete so I had to do it again...fking dumb) and showed it to her this morning.
Eat a dick dude. The woman is already going apeshit over all the other shit we have to do plus working on her masters and attentind 100+ pointless meetings a day whilst still being able to be the best fucking manager I've ever had. I really don't need her freaking the fuck out over your dumbfuck estimates. Why in the wholy fucking world she listened to your dumbass is beyond me, probably stress made her freak out.
Its cool b.....I got it under control.
Fucking chill woman damn.
I would (at apprenticeship level) start to teach more software architecture and security related stuff.
Yes knowing how to iterate over an array is important but it’s getting lame...
And last but not least it’s fucking 2018 why am I writing a Java 6 swing GUI on paper as a test8
I think CS education is getting weaker and weaker every year.
Since they released CS GO, CS seems to be overtaken by little cry kiddies who put out insults like an AK on speed.
I wish CS education was like when CS 1.6 came out.
Those were great years to learn gungames on The Simpsons maps and you were actually able to land headshots by skill and not just utter luck.20