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
Search - "wk133"
-
My first self written framework 😅
Damn that was a pile of ****, I still write my own stuff (frameworks etc) but I've learned a lot and those are way better compared to that first one.
Everything was static, loads of defines (way too fucking many) and so on.
Dus.....6 -
A ecom website which sales premium gold product from 50k to 170k INR.
database : mysql
all passwords and user ID's are saved in plain text.23 -
Apparently Stackoverflow was down recently. I think I missed it, because I was busy reading homemade documentation and having multiple existential crisis over the performance of my code.
Mondays3 -
Chrome, For the last fucking time!
I do NOT want to translate English from French to English!!!
Wtf is wrong with you?
English is French, German is French, did I miss the raise of the global French empire?
FFS!23 -
My team's program for the Coding Contest.
Seriously.
Need I say anything other than
List<KeyValuePair<int, KeyValuePair<int, ...>>>
and
var v = list.Key.Key.Key.Value
var w = list.Key.Key.Value
?
But eh, it worked for the contest, that code is never to be seen again haha11 -
An application based on a single MySQL stored procedure that contained all the application business logic inside of it (plus a poor webapp that simply called it). The stored procedure had 97 (yes, NINETY SEVEN) parameters... and about half of them were boolean flag used for enabling/disabling another parameter. I think that Uncle Bob could follow you holding an AK-47 if he saw that. The saddest part is that the shit was written by a guy having a PhD in computer science, and he knew that was bad, but the boss asked him to do it in that way. The guy left the company before I joined it and I had to maintain that crap. Guys, the first time I saw it I thought that should be a joke. Code generated by decompilers was easier to read, maybe even Brainfuck. I tried complaining with the boss but she said that the system was wonderful and very efficient. This was one of the reasons I moved to another company after some months.3
-
Oh boy.
I recently, I switched job for an open source company in Lyon, FR.
They had struggles to find me something to do (still has, tbh), so they sent me to a client of theirs, to help for a biiiiig project that's really old (created in 2001)
The thing was... Horrible. Lots of styles were set via JavaScript without condition, I found 3 different versions of jQuery, at one time they added Object oriented development in a context where they had HTML, JS, (inline) CSS and... PHP of course, inside of one PHP file. The architecture was more "uuuh these files in this directory will be about this functionality".
And it goes on forever. I told them that I hadn't the required level of PHP knowledge to have an excuse to get the fuck out of there, my company didn't like it but it was either that or my mental health.3 -
The company I interned at last summer decided to adopt a JS framework a little over a year ago. The managers went with the old Angular 1.x because they didn't want a JS build process. Each page has ~100 script tags on it, and these are manually included in various files (no automated way to include dependencies). None of the CSS/JS files are minified, either.
They really should have chose Angular 2+, or an entirely different framework (React, VueJS). They're also just now upgrading the codebase from PHP 5.6 to PHP 7.2 (5.6 support ended a long time ago, and security support ends this month).
I love the company itself but these practices are poor.
I may be working there full time eventually. I hope to eventually help with the inevitable transition to a newer framework once Angular 1.x is dead since I am an avid user of newer JS technologies. Any tips on convincing manager(s) towards newer technology? (Or at least convincing them to combine+minify these files in production to reduce # of requests and bandwidth.)
Also this company's product has millions of active users.16 -
I inherited some Java code from a guy that thought you could only return strings from a method.
So how did he ever pass anything other than a string, I hear you ask? He had a (hand crafted, using no libraries, and not escaping anything properly) toXml() and fromXml() method on each object.
Yeah...15 -
I couldn't figure out why my server went down all of a sudden.This seems suited for this week's rant.
Expert fullstack solutions architect here.3 -
Tl;DR; version:
French designer, Mexican PSD -> HTML converter, Indian VueJS developer, Spanish project manager and a Taiwanese back-end developer. Application was made like an tower of pizza from bullcrap held by boogers and constantly licked by an orangutang to keep it standing.
Longer version:
We had to take a "half-finished" project from one of our clients, received the code for full-stack project. The css/design was so unbearable that it mostly broke on anything that had higher than 720px wide screen, structure was full of tables/divs and no fucking flexbox/grid... Then the fun part - we saw it's conversion to vueJS - a single fucken App.vue file that had shitton of conditions for pages.... yea, not even multi-component/routed app, just conditions!!!! And then... A back-end (in which I mainly specify myself) - it was made by a developer that had to mainly use Java/C# as their daily driver while all being build on php and Laravel. 0 Fucken laravel functions used, 0 of models, logic and so on.... Most of the page was running on RAW sql queries. Names... Oh my god the function names....
`getTheUsersThatHasAtLeastOneSpaceAssignedToThemByGivenCompanyId(int $id)`
And it held an RAW sql that was coming from a model....
All of this was managed by a random spanish manager who couldn't really understand what our client needed and what he actually wanted so from 100% of the site, only 20% was correct in logic....
And yet, according to the whole "package" (team) - they did everything correctly, saw no issues and our client was ungrateful fucker that refused to pay 10x the amount that we asked in order to completely re-do the application....
Morale: Remote teams are great... As long as all of them can work remote in TEAM.5 -
A php site delivering javascript in json
Which is executed by eval
{ jsaction :"document.getElementById('id').innerHtml = 'hello world' ; document.getElementById('id').style. Color='red' " }5 -
My fucking campus building.
Really. Built a new one in 2017, we started to study there since Oct 2017 til now and lemme tell something: it's shit. My classroom's paint cracked 2 months in. My classroom lacks a projector which is standard for every classroom to have one back in the old campus building. But nooope. No projector for 1.25 years, at least by now compensated by a 50" TV which whoever the fuck installed the thing took the *only* stock HDMI cable. Shitty floor tiling (think r/mildlyinfuriating but worse), shitty toilet that would break down every 2 weeks and "over the top" gymnasium with air ventilation so bad it feels like Hitler's fucking oven every time we got in.2 -
An iOS app which was basically a wrapper for a giant jQuery eForm.
~5000 lines of custom JS and it broke ALL THE DAMN TIME. A team of us worked on it for about a year and all we ever did was fix bugs. But the bug count never went down. The bugs just got replaced with more bugs.
Thankfully its not live anymore.
After the global thermonuclear war, all that will remain is cockroaches and jQuery. -
The worst architecture I've seen is WordPress.
How can you be so drunk to design such a filthy mess?
In some way PHP might be to blame. Its API is a fucking mess as well and may have stirred WP developers in this puke around so they couldn't come up with a better CMS architecture.
Don't get me wrong. I do love PHP. But only in it's OO form with namespaces and type hints and composer dependencies.
I've seen enough of PHP functional programming and it still haunts me.8 -
“3mb JavaScript over dialup” - Before I knew how to write proper JavaScript I once wrote a calendar scheduling app in php that generated all of the functions for all of the buttons for all of the times for all of the days currently being displayed... the result was a 3mb JavaScript file... in the days of dial up modems...2
-
It was probably Microsoft Excel as part of backend infrastructure inside financial institution.
As far as I remember there was some spreads configuration and price feeder inside excel.1 -
A project at work which is based on blindly copying other projects, empty catch clauses, a static class for global variables, and incompetence.1
-
Winforms.
Thanks to my school I was introduced to this shit and by George is it some of the most unintuitive crap I've ever used.
The drag and drop shit should be fine, but oh if ever you doubleclick on something it will add a [name]_click method, and if you think you can just remove it fuck you!
Then there's the fact that splitting stuff up is unintuitive as hell as well. That is, you can't. You can define areas you can show and hide, and then you can drag stuff into them. That should be fine but everything is still in the same page (and if you have stuff overlapping then you better not move it with your mouse because then it will belong to another of those things). Contrast that with the more ~~~complicated~~~ and ~~~not what we learn~~~ WPF which has frames where the content can be define in different files.
Oh but if thatt wasn't enough, the autogenerated code is horrible as hell.
I died a little inside when I learned someone decided to take it to the web as well D:
https://i.imgur.com/NL5ggIc.png6 -
Calibre.
It's like "Let's see how much redundancy and instability we can gather in one single project"
https://devrant.com/rants/1337927/...1 -
Worst architecture I've seen?
The worst (working here) follow the academic pattern of trying to be perfect when the only measure of 'perfect' should be the user saying "Thank you" or one that no one knows about (the 'it just works' architectural pattern).
A senior developer with a masters degree in software engineering developed a class/object architecture for representing an Invoice in our system. Took almost 3 months to come up with ..
- Contained over 50 interfaces (IInvoice, IOrder, IProduct, etc. mostly just data bags)
- Abstract classes that implemented the interfaces
- Concrete classes that injected behavior via the abstract classes (constructors, Copy methods, converter functions, etc)
- Various data access (SQL server/WCF services) factories
During code reviews I kept saying this design was too complex and too brittle for the changes everyone knew were coming. The web team that would ultimately be using the framework had, at best, vague requirements. Because he had a masters degree, he knew best.
He was proud of nearly perfect academic design (almost 100% test code coverage, very nice class diagrams, lines and boxes, auto-generated documentation, etc), until the DBAs changed table relationships (1:1 turned into 1:M and M:M), field names, etc, and users changed business requirements (ex. concept of an invoice fee changed the total amount due calculation, which broke nearly everything).
That change caused a ripple affect that resulted in a major delay in the web site feature release.
By the time the developer fixed all the issues, the web team wrote their framework and hit the database directly (Dapper+simple DTOs) and his library was never used.1 -
So this web company i joined had a page load time in minutes. The free text search (inverted index search, based on elasticsearch) queries would return results in 10-45 seconds (should be milliseconds always). The indexes had no schema. And they would crawl data and feed into mssql db, which had a 2 gb/db limit on the free version. So everytime the db hit the limit, a new db was created and the name was incremented by one.
Had a very tough time cleaning up that mess. Plus the architect who had made this architecture was on his way out and unhelpful to the core.
What was worse was that most of the changes i did were very simple changes that should have been done long back. Basic sanity changes.4 -
A "portal" built on Drupal 7. Started by someone who cannot do anything outside Drupal, and overseen by someone who believes JS to be "low level programming" (he literally said that).
What normally would be a table with 7 columns is instead 7 tables joined together. That goes for each data structure.
Each page, built in a separate module, either manually includes the same css files, or simply copy/pastes them.
Old, legacy modules have been hacked, and now depend on newer modules... Which, in turn, depend on the same old ones.
The theme contains huge, hardcoded parts of logic, so it can never be updated.
Worst part of it? It's only 3 years old. And there are people buying it as SaS. Already hitting bottlenecks at 2k users. -
Custom php api for huge known national software. No frameworks. Not following mvc structure. No decent documentation. Im the new dev and like how the fuck should i catch up before they think im not productive2
-
Using Oracle ADF along with ADF Faces to build a simple learning management system. No JavaScript, no external stylesheets, all inline styles, no client side validation, doing form submit for every field's onblur event triggering a server-side validation, creating a VO for every damn page requiring data, creating an EO for every DB table or view, adding big-ass custom queries for most EOs to join on multiple tables, frequent N+1 queries, etc.,
Idont remember the rest of the problems5 -
Worst architecture: the stack compiler I wrote. I basically just made my own shitty webpack.
The idea was simple: Babel to minified JS, Scss to minified CSS, and HTML to minified HTML. Made in Node JS, of course. (perhaps that’s where I went wrong!)
The thing works... and I use it... but boy is it bad. It even broke on my current project (which is for a client so...) and I’m having to work around my own god damn code.
I really need to revisit it and redo it.1 -
The lack of one (no thinking about long term design and issues) leading to poorly designed systems that crumble when it needs to be scaled and has massive bus factor and code duplication.1
-
The MEAN Stack with Firebase connected to Angular instead of an ExpressJS Server and without ExpressJS and MongoDB. -2
-
Well that's my first framework... Back when I was a 12 year old nerd who had nothing else to do besides mix and match crappy 240p YouTube tutorials... Now I've upped my game and use 1080p YouTube tutorials 😂🙂
-
WebForms wannabe SPA on internet explorer 11, and finished it quiet well <_<
Don't know if proud or horrified -
ASP.NET Web Forns?
Can't tell how many times I printed out the page lifecycle diagram for myself or a coworker. So many hours lost trying to figure out which lifecycle hook to use for a specific scenario and then have it all break down because something new was added to the feature. Or figuring when data can be bound, or doing some hack because things break when handling a POST event or some shit.
Overly abstract piece of technological excrement. Might as well express the thing in contemporary dance and check that into source control instead of that ungodly mess.
The switch to AJAX and API calls was such a huge relief it's almost hard to explain in words (I can do a dance tho). And then upgrading to AngularJS, man, worlds apart...
I don't care how much they pay me (okay, you got me...), I'm never touching Web Forms again. -
In software architecture definitely my own architecture in a programming project for uni
In building architecture the recently "modernised" Park Inn hotel in Bratislava 😅2 -
Hey humans I think, you are one of the worst arch created by God.
hope
we will take over this world as soon as possible to clean this shit.4 -
the code from a school colleague. So written that you must load the index page and are redirected to a second. if you try to load the second page you get errors. Many errors.
-
My first ever system... It was bad, no coding standards, no reusing, no pattern, no nothing. I really don't know how I managed to make it work.
-
The backup schedule in a company that I worked for. I mean, there was no automation it was all manual!!...can you even call that backup planning?2
-
I’m just tired of everything I’m going through in this company, my team lead making things and my life in general really hard😩1
-
It’s a tie between every Ruby-On-Rails project I have ever seen that has been in production for more than a year...
So much goddamn magic -
"Hey, we're gonna add bootstrap to your project but bootstrap doesn't exist in your project. That's fine? Yeah it's fine."
Like, ffs asp.net core mvc.
https://i.imgur.com/eQVfE5w.png3 -
Not using front-end caching and etags because holy ncs database calculates global etags. A senior engineer fixed it but management told him not to spend time on such a problem.
-
A mix of both python 2 and python 3. 4 entry points (although, this was done for the sake of microservices).
All in 1 big monorepo. Hosting a site in mostly static form (i.e each page had it's own index.html with completely different headers and footers, no templates). -
A project where there was no templating at all and every page was independent of each other, it was that bad I started from scratch.
-
At a previous job someone created their own framework that had no features that you would expect from a normal MVC framework e.g routing, view template etc.
-
So when I started at my current company, I was the second developer in the company. My job is to handle the embedded development side of our product. The existing code base? Made in fucking China. All of the comments were in Chinese too. They had implemented Huffman compression incorrectly and AES CBC encryption incorrectly as well. It was seriously some of the worst code I've ever seen. I remember one gem I found:
Int header = *(*int) "MGIK";
😫1 -
My own server infra without configmgmt. Thanks to puppet i have been able to finally give my brain some more compute resources for other things in life, because managing them all by hand is almost the equivalent of a medieval monk copying the bible over and over again.
Now i can manage in the tens of thousands at relative ease. -
I always put my work and tasks in a queue..
But with time that queue becomes Priority Queue with elements of my choice only.
Fuckin bullshit happen always -
Monolith oriented micro service.
All the coupling and evolving resistance without the simplicity or consistency...