4 ms·
> Avoid configurable functions I used to work at a place where they had a substantial amount of legacy, they kept two systems up to date, a current one and a n
by FriedrichN 6y ago
> Avoid configurable functions
I used to work at a place where they had a substantial amount of legacy, they kept two systems up to date, a current one and a new one. In my time working there they still didn't phase out the old system and the new one was already a system full of legacy and they were planning a new system (I wonder if they're running three systems now).
Many of their functions had +10 arguments which were poorly documented so they had to be deciphered from the function bodies who were sometimes thousands of lines. I was fortunate enough to be granted my own project so I didn't spend too much time working with it, but when I did I had no idea what I was doing.
I was very happy when I left, they practically begged me to stay but I just simply couldn't deal with it (and there were plenty of other issues as well). It was very effective at teaching me ways of how you can bungle up every aspect of your IT.
- jspash 6y agoJust curious..and I don't want to turn this into a language war, but which language was it?
- ragnese 6y agoAnd, probably more importantly, what kind of application was it and was it using a popular major framework (e.g., a web backend in Spring)?
- FriedrichN 6y agoIt was a totally custom ERP application in PHP, no frameworks. The style was very idiosyncratic to the original creator. And to top it off we did not have a versioning system or test environment, we did everything live, right there and then.
- ragnese 6y agoYikes. You weren't kidding about doing everything wrong. Just out of more curiosity, can you comment on the idiosyncratic code style? I saw in your other post that it was written in PHP 4. So that means it did have access to classes and whatnot, right?
- dr0n3 6y agoNot the same guy but I work for a company that has a similar code base. The project originally started 20 years ago as a C++ application. Parts have then been migrated to a C#/ASP.NET web app. But since migration never completed and the original C++ application is still in use, the web app ends up calling those C++ assemblies on the back end. Now, newer components are being started/migrated to .NET 5 and some of the C# code ends up being duplicated and we are basically maintaining C++, .NET Framework and .NET 5. Would not recommend.
- FriedrichN 6y agoIt was a PHP 4. And this was in the time PHP 5.3 was already available for production.
- bryanrasmussen 6y agoA friend of mine once enticed me to work at a place that had their own in house developed language written in XML that did databinding, ui, and event handling for their application. Their main problem was that most of the people they hired took 6 months to become proficient in the language and then they quit because they hated it so much. I actually managed to last a couple years without ever learning the language, by bouncing into a newly created research division and then getting put on a big deathmarch project that did not use the language to implement a governmental specification - but I did write a critique of some of the of the security issues / validation issues about the language in my first month there. It was awful.