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
Search - "wk292"
My worst dev experience in 2021 has been a PHP-based CMS developped by lobotomized, single-celled organisms incapable of coherent thoughts.
A CMS even worse than WorstPress.
200k lines of "code", no use of packages, multiple entrypoints, no namespacing, all dependencies loaded by "include" at random places and everything is dependent of every thing else... a complete mess.
One could call it the butterfly effect CMS. Adding a space could completely crash the application.
At this point I've almost developped terminal eye cancer...5
- the work from my past company
- the salary from my current company
- the work from my current company
- the salary from my past company9
- got sick of computers, lost all my passion for this field
- got sick of computers, lost all my passion for this field
I hope I'm just tired.3
Forgot to secure my mongo db instance, found half the data gone, and a new db holding me at ransom , learn_how_to_recover_your_data , good thing offline backups are a thing.
Recovered in no time, never will I ever repeat this mistake3
2year project got cancelled, not because of covid, not because of budget reason, but because a new politician got elected that is against our company industry.7
I'd say it was when I did a Codereview and the dev said that he doesn't really know how the code works and he doesn't quite know what it's purpose is supposed to be.
We are talking about less then 200 lines, all written by himself, this is not copied code.1
Every year, the worst dev experience comes right at the holidays, when website owners with big egos want to launch right on (U.S.) Thanksgiving Day, Christmas Eve, or New Year’s Eve/Day because they think they’re that popular and important. It never occurs to them that this is the WORST time because any third party support you need for hosting, APIs, plugins, etc. is either backlogged or out of office. And because NOBODY is eagerly awaiting the redesign of ANY website on those particular dates since they are stuffing their faces and getting s&&&faced at bars and parties. Nobody will even notice that your website has changed until January 15th at the earliest.1
Worst: Realizing there were crippling and horrible bugs in software that got shipped to customers. Also realizing that we truly don't know the amount of technical debt that contributed to these bugs. My most terrifying comment from a colleague: That software was written on a weekend and the dev was getting 3 hours a sleep a night. One of the bugs I found I was fighting for almost a year to even find what was causing the bug.
Best: Finding those bugs and eradicating them. Having confidence that the bugs we know about are truly dead and gone. Til we meet again...next...3
-- Best --
> Submitted my notice of termination for my current job
> Found a new job starting next year
> Can switch from Windows to Linux/MacOS in new job
> Got more time to work on personal projects due to the pandemic
-- Worst --
> Huge amount of software restrictions (current job) almost got several projects at work canceled. Maybe its important to say that the core business of my current workplace is auditing so there are a lot of law regulations which then apply in the softwaredevelopment process.
> New managers that do not have the slightest clue of what they're doing
> Online Teambuilding events
> Absurd amount of segmentation of tools and also different coding guidelines that are used at work. E.g. one team uses jira, another trello, another github issue tracker and so on.
worst - not finding a job/internship for months
best - I now have my first dev job, and I will be graduating college and getting married this month!
A legacy custom made WordPress Theme.
Old developer made main styling sheet with 8000+ lines of code with no component separation.
Worst: being forced back into the loud distracting office, to add on to the badness the covid restrictions were not taken very seriously
Best: getting a new full time remote job and an awesome company with some awesome team mates
Bonus is I now work from home fully but can still hang out with my great former coworkers
Worst: forced to work for 9 months on a shitty wp theme:
- colleague with no clue trying to make me do their work… check
- incompetent manager doing shit about it… check
- idiotic pipeline requiring to redeploy for every asset update… check
- micromanaging cto which for some fucking reason didn’t want to allow access to the writers, forcing the role of content editor on the devs… ducking check! Quack!!
Best: automated lots of processes in my free time, all stuff which I can reuse!
- I built a good automation mechanism with a decent UI [slackbot]
- used as few frameworks and ext libs as I could. Mostly based on bare java
- client wanted to migrate it to Spring
- got 3 peeps assigned for the migration
- 2 months later their effort failed.
- win: my project has not been molested with Spring
- i had an idea to develop smth on top of jmeter, using jmeter as a lib
- I downloaded and imported jmeter's src code
- static contexts, singletons, jmx/rmi everywhere [java is deprecating rmi support]
- not gonna happen... Not gonna build a new project on top of a legacy codebase.5
Worst dev experience of the year:
So, I went to my folks' for the holidays. My old man is a hospital practitian and is still resentful because I did not want to be a doctor too.
So he made me fix the whole fucking wiring at his place over this last couple days, because "well, you choose to be a glorified electrician!"
BTW, I have three kids and am still WFH during this time. I haven't slept in a week.6
My best experience this year was to be the project manager of a software project and my worst experience was to work alone on this project.
My best and worst dev experience this year was getting a new job.
The bad parts: I’m inheriting a code base that was maintained by an outside agency, so there’s very little documentation. There’s a lot of systems maintenance and upgrades that have to be done because it was never done. I’m working at a larger organization, so tracking down who I need for info can be tricky. I’m the only person maintaining my code base.
Now the good parts: Better pay and benefits. My co workers, dev and non-dev, are always helpful. Since the dev team is small, we are very discerning when we pick up work for the websites. I have more independence to self-learn. I’m not at a blame culture. My role is permanently remote.
So far I think the good outweighs the bad.2
docker, Dockerfiles - devops tools - amount of shell commands inside them and mangled && to make everything running in one file layer makes those unreadable mess that you need to think twice to understand, there is no debugger for it, you do everything with try and see what happens, there is actually no real dev toolset for devops and that sucks, since you got builder images that makes things more mangled than before, it’s clearly missing some external officially approved scripting language or at least
WITH LAYER and indentation / parentheses syntax and they still trying to make it flat, why are you doing that ?
as a result next to Dockerfile cause you can’t import multiple ones you get bunch bash scripts with mangled syntax and other crap that is glued together to make a monster - and this runs most of current software on this planet2
Worst was getting head hunted into my current role at this terrific company.
Three months later I’m done with it.
It’s not shit shitty codebase, or the lack of direction that self governing teams have. It’s not the megalomaniac company owner. It’s the bullshit team mobbing and 8 hours of video calls a day.
The best part.
Come he’ll or high water I’m getting myself out before the end of the year.
I’d rather be busy and have f’k all chance of promotion than any more of this. At least the day will fly by.
Just hope I don’t make the same mistake twice, that’s become my biggest worry now.
Worst: Not landing a decent job
Best: dev-wise, none really.
It has been a rather shit year, really.15
Dev goals for 2022? Best and worst DX in the past?
Wish to prioritize customers with useful business goals who are open to sustainable web dev, usability and accessibility.
Want to use even more CSS and find a way to use new features like parent selectors without sacrificing compatibility.
Continue learning and using Symfony, but also continue with my full-stack side project using JS or even better TypeScript for the backend also for the backend.
Best developer experience: getting new customers for my own business after leaving a company last winter.
Worst developer experiences:
Corporate customers with large budgets and design agencies seem to fancy all the antipatterns I thought bad and obsolete, like carousel content, animations everywhere, and autoplay videos on the home page. Poorly written, poorly thought, and sometimes contradictory, requirements. Customers and agencies changing their mind halfway through a project.
"Agile" daily meetings, not giving devops necessary repository permissions, and making Webpack mandatory for no real reason.2
I had a pretty good year! I've gone from being a totally unknown passionate web dev to a respected full stack dev. This will be a bit lengthy rant...
- Got my first full time employment dev role at a company after being self-taught for 8+ years at the start of the year. Finally got someone to take the risk of hiring someone who's "untested" and only done small and odd jobs professionally. This kickstarted my career, super grateful for that!
- Started my own programming consulting company.
- Gained enough confidence to apply to other jobs, snatched a few consulting jobs, nailed the interviews even though I never practiced any leet code.
- Currently work as a 99% remote dev (only meet up in person during the initialization of some projects.) I never thought working remotely could actually work this well. I am able to stay productive and actually focus on the work instead of living up to the 9-5 standard. If I want to go for a walk to think I can do that, I can be as social and asocial as I want. I like to sleep in and work during the night with a cup of tea in the dark and it's not an issue! I really like the freedom and I feel like I've never been more productive.
- Ended up with very happy customers and now got a steady amount of jobs rolling in and contracts are being extended.
- I learned a lot, specialized in graph databases, no more db modelling hell. Loving it!
- Got a job where I can use my favorite tools and actually create something from scratch which includes a lot of different fields. I am really happy I can use all my skills and learn new things along the way, like data analysis, databricks, hadoop, data ingesting, centralised auth like promerium and centralised logging.
- I also learned how important softskills are, I've learned to understand my clients needs and how to both communicate both as a developer and an entrepeneur.
- First job had a manager which just gave me the specifications solo project and didn't check in or meet me for 8 weeks with vague specifications. Turns out the manager was super biased on how to write code and wanted to micromanage every aspect while still being totally absent. They got mad that I had used AJAX for requests as that was a "waste of time".
- I learned the harsh reality of working as a contractor in the US from a foreign country. Worked on an "indefinite" contract, suddenly got a 2 day notification to sum up my work (not related to my performance) after being there for 7+ months.
- I really don't like the current industry standard when it comes to developing websites (I mostly work in node.js), I like working with static websites (with static website generators like what the Svelte.js driver) and use a REST API for dynamic content. When working on the backend there's a library for everything and I've wasted so many hours this year to fix bugs and create workarounds related to dependencies. You need to dive into a rabbit hole for every tool and do something which may work or break something later. I've had so many issues with CICD and deployment to the cloud. There's a library for everything but there's so many that it's impossible to learn about the edge cases of everything. Doesn't help that everything is abstracted away, which works 90% of the time but I use 15 times the time to debug things when a bug appears. I work against a black box which may or may not have an up to date documentation and it's so complex that it will require you to yell incantations from the F#$K
era and sacrifice a goat for it to work properly.
- Learned that a lot of companies call their complex services "microservices". Ah yes, the microservice with 20 endpoints which all do completely unrelated tasks?
- Guiding few junior engineers.
- Figured out the root cause for an issue which would hampered the productivity of some folks.
- Not being able to work on a proper dev ticket
- Not even being able to identify a proper fix for the issue mentioned above. (It is still in the works, but only after 2021)
Why can't everyone just say which libraries they use, would make it a lot easier to search for log4j vulnerabilities.
And yes, I'm guilty of this myself too4
Best: Getting fired from a shitty company that regularly lied to middle-management after standing up for my team.
Worst: Losing a team of fantastic direct-reports that went to bat for each other, helped each other out, and help me be a better engineer.
(Spoiler alert: same job)
- Started a blog, networking and public learning
- Got an Internship
- DSA and CP fcuked me hard and I started questioning my ability to write code
- Wasted first six months in academics and uni stuff
- Thought about quitting programming and start UI/UX at one point