3 ms·
10 years ago I was working at a European telco, they needed a way to monitor traffic flow on customer connections but the tools that existed didn't work for hal
by bobdvb 13y ago
10 years ago I was working at a European telco, they needed a way to monitor traffic flow on customer connections but the tools that existed didn't work for half the population. So, given that I had paid my way through college programming the bosses gave the task of scoping the project to me (a communications engineer).
I looked at the available tools, got a price for a very expensive commercial tool, and got a price from an independent programmer to use rrdtool and build a custom tool. I wrote a paper which set out the options in a paper for management, explicitly saying it should be a fixed price contract with only supervision from our team, no effort.
The Engineering Director came to me and said he had a contact at another company, they already had a solution that would be suitable and they would be paid (by the hour) to adapt it to our needs. A month later they arrived with a Cisco PIX firewall, two HP Xeon servers and a pile of PHP and Perl code.
There was supposed to be two days of training and some integration. It didn't work. They had done nearly nothing and we had two weeks before the system had to be ready. So I knuckled down, rewrote the entire thing virtually from scratch and while learning PHP and Perl (I had exposure before but you could see my evolution of understanding in different parts of the code).
Two weeks later we had an undocumented mess that actually worked. I left shortly afterwards because I realised I might actually have to support this spawn of bile. I think it was two years later that I got a call asking me why it had slowed to a crawl. Given that my mind had blanked everything to save my sanity I couldn't help. But I suggested they look to see if the filesystem was full and to check the database. Apparently after a database and file system clean-up everything worked fine. I don't know how long it remained in service, but I fear it might still be functioning.
I know you wanted to opinions on different methodologies, but this is really just me sharing my scars and explaining why I shouldn't be let near code. ;-)