Details
-
Aboutstudy & Work & study & ....
-
Skillsjs, Java, Go,
Joined devRant on 5/29/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
-
Wholesome anti-rant.
There’s this Indian chick at work that I really, really do not get along with. Fortunately she’s on a different team so we have practically zero interactions. Her code was always decent, maybe upper junior level? but I went away fuming almost every time we talked.
However, I did a release security review today (I’m down from five/six per month to one) and read through quite a bit of her code. It was clean and easy to read with good separation, clear naming and intentions, nothing was confusing, etc. It was almost beautiful. Had I any emotions I might have shed a tear. I sent her a message and let her know :) I actually learned a better way of doing a couple of things from it.
She has grown so much as a dev.32 -
My start in new company....
HR: you will get a Macbook from us...
Me: yessss!!!!
~~~
One Day before first Day:
I Picked up the laptop from company...opened the case....
No Macbook, but HP 😂😂😂...🤷♀️
~~~
First Day at new company:
PM: you will be using Ps, Sketch....
ME: how will be the licence costs payed?
PM: it is already installed...
ME: wait, what? It's nothing in my Laptop.. Wait what? Sketch?....I haven't recieved a Mac....
PM: What?????🤦♀️.....
~~~
Later in the same Day...
My laptop: Fu*k you!!! Your account has been disabled. Contact your system Administrátor...
ME: wtf????? 🤷♀️🤦♀️
.....to be continued....23 -
One year ago, I quit my job in order to "make life easier". And by that I mean work+home in the same city. I went from 40 minutes commute - to 3 minutes. I had a blast the first week.
Then I realized that it was actually a mistake. I did not like working with "that kind of systems" and "that kind of tasks". It was tedious, stupid, and I was angry every, single day because the previous ones had built a system on 10-15 year old hardware because "it is cheaper".
That continued for a year. I discovered new stupid "solutions" every week that was potentially dangerous for the company. It built up a huge pile of shit and I started to feel that my mental health was disappearing, fast.
And equipment such as servers, switches, routers, storage started to fail because of age. Despite my warnings from day 0 to the CEO who only kinda laughed it off and said "you can to solve that", but I never got the approval to actually buy the equipment that was needed. Because "the company did'nt have the money for it". Somehow, the company had the money to buy expensive cars for the CEO - I can't really figure out that equation.
So today, one VERY old UPS died at our office. It caused some powerspike that killed off some switches and a NAS.
"Whatever" I thought, I just have to find the backup of the files and get a new one.
Then I discovered, that the NAS that acted as a iSCSI target for VM's and document storage was backed up using VEEAM on another server - that was configured to backup everything to the same NAS. I just wanted to cry, because I could not take anymore shit.
So I picked up my phone, called my old employer and asked if I could start working for them again. My old boss got insanely happy and gave me a great offer which I immediately accepted.
So tomorrow, is the day that I am going to walk into my current boss and say that I will quit. My last day will be on Christmas day. And I will start my new year with a few weeks off, and then back to the job that I actually loved.
Life is to short to work with something you hate.13 -
A guy on another team who is regarded by non-programmers as a genius wrote a python script that goes out to thousands of our appliances, collects information, compiles it, and presents it in a kinda sorta readable, but completely non-transferable format. It takes about 25 minutes to run, and he runs it himself every morning. He comes in early to run it before his team's standup.
I wanted to use that data for apps I wrote, but his impossible format made that impractical, so I took apart his code, rewrote it in perl, replaced all the outrageous hard-coded root passwords with public keys, and added concurrency features. My script dumps the data into a memory-resident backend, and my filterable, sortable, taggable web "frontend"(very generous nomenclature) presents the data in html, csv, and json. Compared to the genius's 25 minute script that he runs himself in the morning, mine runs in about 45 seconds, and runs automatically in cron every two hours.
Optimized!22 -
- I was typing a huge rant on devrant finished my story 2000+ characters.
- filled in tags..
- And clicked on the dark part outside of the input field!
Whole story gone! FML!8 -
As a senior developer, I introduced a bug in the hiring system at the company I worked at and it took HR nearly 2 years to fix it.
Bug: Every candidate I interview on Wednesday between 12:30 PM and 4:15 PM gets selected irrespective of performance.
Impact: 270 candidates got a job
1st Fix [1.5 years in]: Add multiple developers to conduct a single interview (still did not fix it completely after all I was a senior developer)
2nd Fix [2 years in]: Removed me from the hiring committee
3rd Fix [though was not needed but for HR's extra safety]: Started recording all interviews
It was a good time.3 -
Hands down this year.
10 months ago I left my boring fulltime job and opened my own ltd.
I also had to relocate to another country and basically start my life from 0 (got a nice apartment, new car, new gf and got new exciting remote projects).
Now Im happy, actually never been more happier. I have full control of my life and I dont need to deal with idiots.
I left a boring workplace where no one has an opinion because everybody is trying to stay politically correct meanwhile shit doesnt get done. I also left a toxic relationship where my spoiled by parents gf was constantly nagging me and nothing I would do was ever enough for her.
So my advice is a cliche but follow your gut instinct. Somehow deep down you already know what you are worth, so all is left to do is plan and act accordingly. Take risks. Sooner or later you will get where you want. If not then thats fine, making mistakes means that you actually lived instead of existed like a mindless puppet controlled by strings of outside circumstances.6 -
I was to optimise a SQL query (7 min to execute,yes) with around 20 joins (I did not write this). Checked for missing indexes,etc.. but nothing worked. Stared outside the window, and back to desk reordered the joins ,executed in 10 secs.1
-
Today I discovered by myself that...
...in a shell...
...when entering a password (e.g. ssh)...
...and you make a typo... 🤦♂️
...you don't need to smack that backspace key like a maniac! You can just use the clear line shortcut: control+U (^U). This clears all input to the left of your cursor and this also works for passwords.26 -
!rant
After over 20 years as a Software Engineer, Architect, and Manager, I want to pass along some unsolicited advice to junior developers either because I grew through it, or I've had to deal with developers who behaved poorly:
1) Your ego will hurt you FAR more than your junior coding skills. Nobody expects you to be the best early in your career, so don't act like you are.
2) Working independently is a must. It's okay to ask questions, but ask sparingly. Remember, mid and senior level guys need to focus just as much as you do, so before interrupting them, exhaust your resources (Google, Stack Overflow, books, etc..)
3) Working code != good code. You are an author. Write your code so that it can be read. Accept criticism that may seem trivial such as renaming a variable or method. If someone is suggesting it, it's because they didn't know what it did without further investigation.
4) Ask for peer reviews and LISTEN to the critique. Even after 20+ years, I send my code to more junior developers and often get good corrections sent back. (remember the ego thing from tip #1?) Even if they have no critiques for me, sometimes they will see a technique I used and learn from that. Peer reviews are win-win-win.
5) When in doubt, do NOT BS your way out. Refer to someone who knows, or offer to get back to them. Often times, persons other than engineers will take what you said as gospel. If that later turns out to be wrong, a bunch of people will have to get involved to clean up the expectations.
6) Slow down in order to speed up. Always start a task by thinking about the very high level use cases, then slowly work through your logic to achieve that. Rushing to complete, even for senior engineers, usually means less-than-ideal code that somebody will have to maintain.
7) Write documentation, always! Even if your company doesn't take documentation seriously, other engineers will remember how well documented your code is, and they will appreciate you for it/think of you next time that sweet job opens up.
8) Good code is important, but good impressions are better. I have code that is the most embarrassing crap ever still in production to this day. People don't think of me as "that shitty developer who wrote that ugly ass code that one time a decade ago," They think of me as "that developer who was fun to work with and busted his ass." Because of that, I've never been unemployed for more than a day. It's critical to have a good network and good references.
9) Don't shy away from the unknown. It's easy to hope somebody else picks up that task that you don't understand, but you wont learn it if they do. The daunting, unknown tasks are the most rewarding to complete (and trust me, other devs will notice.)
10) Learning is up to you. I can't tell you the number of engineers I passed on hiring because their answer to what they know about PHP7 was: "Nothing. I haven't learned it yet because my current company is still using PHP5." This is YOUR craft. It's not up to your employer to keep you relevant in the job market, it's up to YOU. You don't always need to be a pro at the latest and greatest, but at least read the changelog. Stay abreast of current technology, security threats, etc...
These are just a few quick tips from my experience. Others may chime in with theirs, and some may dispute mine. I wish you all fruitful careers!221 -
I'm really down.
I spent 10 years building on an application worth 800K$ revenue per year.
I tried to build a technical team. All left, because of fights with stupid account managers, CEO, business managers.
I was left alone for almost one year alone, working like 60-70 hours per week to keep the things going and adapt to more customers.
And looking for potential partners to outsource things.
Now out of the blue, 3 weeks before my summer holiday, investors introduce me to a "partner" that will rent to us a "developer" for 2 months. from tomorrow.
What the fuck I'm gonna do with him in 2 weeks I don't know.
Actually I understand that this "partner" will take over the whole project.
They used the word "to help me", but actually during the meeting they said to fix things that are not working, and to develop new features because the project is blocked.
Of course there are bugs, I have no developers with me and hundred of features and integrations to maintain. And of course everything is blocked because I have to think hard about priorities.
I feel humiliated in the worst way.
I don't know what will be my future position.
I wasted time contacting potential partners and the answer was always "there are no money".
The business strategist, entered one year ago and said "no more IT investment".
Basically as cofounder and cto (of myself), they will not fire me, if I stay silent. If I accept to be a puppet. And eat, eat eat a lot of shit. I'll grow fat from the shit I'll eat.
I feel I've lost all my hard work, and I'm alone.40 -
Just redid a small work script in Golang to test it out.
Honestly, speed matters little for what it is, the original was in Python.
By heavens Golang is one ugly ass looking language.
I like using it tho, its easy to understand and performant for networking, file io and shit like that.
But man....shit is ugly to look at from a distance.
I do think that most langs look ugly af tho, so shit is allright.
Syntactic whitespace is still shit btw.12 -
Boss 1: You have such a dedicated team of workers, how do you make them all come in time?
Boss 2: Its simple, 30 employees, 20 parking spaces.14 -
Wait a fucking minute! C# has 4 + symbols in it! Plus signs are combined into a # symbol!
C -> C++ -> C++++
I see it now 🤯8 -
Product Owner: "need this doing in 6 months, can you do?"
Me: "we're too busy to start another project at the moment - can you wait about 6 months for it to start, or I'll have to hire more devs"
PO: "I'll just outsource it"
36 months later the company he outsourced to is out of business and hasn't delivered, and I've had their half-finished shit show git repo dumped on me.
No comments, no docs, and no units tests, so no fucking idea what it's supposed to do4 -
Remote manager: Hey, that contractor you are working with that sits with me. We are thinking of sending him over to you guys, get him a visa, pay relocation and all that stuff and have him sit with you guys as a full time employee. What do you think?
Me: .... eh ... look I have to be honest, that guy is awful. He doesn't listen to me, constantly working on other things, and the architecture he forced onto the rest of the team is some of the worst i've ever seen.
RM: hhhmmmm, ok but what if we have him report to you, can you whip him into shape?
Me: Honestly I think theres too much effort involved. We are very short staffed. I'd prefer to hire someone else here who has more experience. Its a firm no from us on this guy.
RM: Ok, understood, thanks.
*2 weeks later*
Contractor: Hey guys, was chatting to my manager last week and he said the company is finally looking to convert me to a full time employee, and best of all he wants to move me over to sit with you guys. Isn't that great?
..... not really no7 -
One comment from @Fast-Nop made me remember something I had promised myself not to. Specifically the USB thing.
So there I was, Lieutenant Jr at a warship (not the one my previous rants refer to), my main duties as navigation officer, and secondary (and unofficial) tech support and all-around "computer guy".
Those of you who don't know what horrors this demonic brand pertains to, I envy you. But I digress. In the ship, we had Ethernet cabling and switches, but no DHCP, no server, not a thing. My proposition was shot down by the CO within 2 minutes. Yet, we had a curious "network". As my fellow... colleagues had invented, we had something akin to token ring, but instead of tokens, we had low-rank personnel running around with USB sticks, and as for "rings", well, anyone could snatch up a USB-carrier and load his data and instructions to the "token". What on earth could go wrong with that system?
What indeed.
We got 1 USB infected with a malware from a nearby ship - I still don't know how. Said malware did the following observable actions(yes, I did some malware analysis - As I said before, I am not paid enough):
- Move the contents on any writeable media to a folder with empty (or space) name on that medium. Windows didn't show that folder, so it became "invisible" - linux/mac showed it just fine
- It created a shortcut on the root folder of said medium, right to the malware. Executing the shortcut executed the malware and opened a new window with the "hidden" folder.
Childishly simple, right? If only you knew. If only you knew the horrors, the loss of faith in humanity (which is really bad when you have access to munitions, explosives and heavy weaponry).
People executed the malware ON PURPOSE. Some actually DISABLED their AV to "access their files". I ran amok for an entire WEEK to try to keep this contained. But... I underestimated the USB-token-ring-whatever protocol's speed and the strength of a user's stupidity. PCs that I cleaned got infected AGAIN within HOURS.
I had to address the CO to order total shutdown, USB and PC turnover to me. I spent the most fun weekend cleaning 20-30 PCs and 9 USBs. What fun!
What fun, morons. Now I'll have nightmares of those days again.9 -
Rant time of 'Derp & Co.'
Today I decided that I am going to find another job, I just can't keep with this shit.
They said that use Agile: FALSE.
• Daily (best scenario) take like 1 hour and a half.
• New task enter the sprint and "Fuck you, more task in the same time". This is something regular done.
• "Oh, dev, we need you to check this other project" I am in the middle of my sprint on this project. "But you have to fix this bug here". (3 fucking days the bloody bug) "You are late again with tasks".
• Meeting for fresh sprint: 6 BLOODY hours... nonstop
The workflow is garbage:
• SOMEONE should did all the devops shit on the first sprint, guess what? They did nothing!, guess now who is being blamed for it (not only me, but a few coworkers).
• Nothing is well designed/defined:
~ task are explained like shit
~ times measured wrongly
~ We are in the last fucking SPRINT and still doing de ER of the DataBase cause Oh, apparently no one has work before with SQL (damn you MongoDB! (Not really)) so I am doing my best, but "jezz dev, this is so hard... maybe we can do it WRONG and easy".
~ No one is capable of take responsability of their mess, they just try to push down the problems. (Remember the devops situatuion? Why is.my fault? I came at the 3 or 4 sprint and I am doing backend tasks, I know nothing about devops).
But the big prize, the last one:
• Apparently you can't send whatever you want to the boss, it has to pass a filter previously of coordinators and managers, hell yeah!
And I am an idiot too!
because I see that we can't reach our schedule and do hours on my spare time!
This is because there are a few good coworkers who probably ended with my unfinished tasks... and they are equaly fucked as me...
This is just the tip of the iceberg. I am not a pro, I am not a full stack developer and still need to learn a lot, but this is just not normal, eight months like this...3 -
My favourite side project that I built solo is called Chat Journal, it's a simple and elegant, one-of-a-kind chat-based journal/notes application for android, built with flutter.
Almost spent around 3 months building and improving the app (and still publishing updates every 2 weeks). It literally defines what I've done outside of work for the past few months.
Do check it out and let me know what you think about it ☺️
Playstore url:
https://play.google.com/store/apps/...17 -
Docker with nginx-proxy and nginx-proxy-le (Lets Encrypt) is fucking awesome!
I only have to specify environment variables with email and host name when starting new containers with web servers, and the proxy containers will automatically make a proxy to the new container, and generate lets encrypt ssl certificates. I don’t have to lift a fucking finger, it is so ducking genius2 -
Not ++’ing a rant because double tapping / dragging the finger all the way to the side of the screen to the ++ button required too much effort.3
-
Sometimes I want to fuck customers with 30 samurai methods ! A few minutes ago, some one called me and asked me to make a website like Google for him with 500$ 😑14
-
Her: Who are you texting over there?
Me: Texting my new girlfriend.
Her: 😒
Me: Jk, it's devrant.
Her: I knew it, you're texting that girl Devranta.2