Short Story:
Working on a project for about 3 weeks. Started with some fun like "ohh, by the way, did you bring a notebook? Because we have neither chair, table nor hardware for you. Ahh - and no we do not have VPN. You must sit here in a very low table all day with your hardware"
First time in this project i though about getting out as fast as possible.
Then I saw the code. I almost literally puked. Here is a best of what I found so far:
several methods with > 100 required parameter. Current record I found is about 180 Parameter.
- Funfact: these methods encapsulate perfectly fine classes (really, they wrap classes!) like phpmailer into a single blob of a method.
The existing classes are more or less collections of methods. No class contains data, only logic. Which means all methods of the user-"class" start with ->($user_id, ...) which is very annoying. Ahh and of course none of the objects buffers any database calls. You need name, address, city and country of the users? - That will be 5 DB calls to the same table / key.
Includes are random used. There are single files with about 15.000 lines of code, containing about 300 methods with totaly different scope. Extra Candy: This file includes nearly everything else in the project, because there are so many different methods in there. WTF do they wonder the (PHP) Compiler needs 2-4sec for these files? (They load and parse about 20MB of Code every time...