The Most Obnoxious Requests Received by Software Developers: A Collection of Tales
As a software developer, you're likely to encounter a myriad of requests from clients and managers during your career. While many of these requests are understandable and can lead to successful projects, there are certainly instances where the requests can be particularly obnoxious, frustrating, and even detrimental to the development process. In this article, we will dive into some of the oddest and most frustrating requests faced by software developers, offering insights and advice on how to handle them.
Requesting CRTs to Look Like 80 Column Punch Cards
One of the more memorable requests came from a federal government organization during the transition from punch card systems to video terminals. The task was to convert a punch card based system for data entry to video terminals, which (gasp) were becoming quite popular at that time. The main users of this system, who were part of a union, opposed the project, leading to unfortunate concessions from sales and management. The final requirement was to make the CRTs look exactly like 80-column punch cards. This request was both unquestionable and peculiar, yet it remained a sign of an inflexibility that was both frustrating and unfortunate.
Writing Accounting Software When It Exists
Another instance of an unusual request was from a brand-new company where I was tasked with developing the software for products that would be used by the company's customers. The founder of the company referred to developers as "software writers" rather than "software engineers." When he asked me to write accounting software for the company, which was merely a $25K piece of commercial software that he could purchase, I tried to explain that it would take over a year to develop, involving extensive learning and testing. I declined the request. Later, it became clear that the founder was not always straightforward, and his intentions were quite suspicious.
Redirecting 404 Errors on Image Requests
In one project, my client wanted to handle mistyped domain names by providing search results. They had a process to determine how much traffic a domain would generate. One domain, which seemed to generate a lot of traffic, was using it for hosting images, only generating image requests. I explained that if the request was within an image, it wouldn't redirect as desired. They insisted on hiring someone to write an ISAPI filter for IIS to redirect 404s to the main site, despite the code behaving as I predicted and not working. This request led to a costly misunderstanding, ultimately pricing their client incorrectly.
Tackling Browser Plugins and Error Logging
Another client requested me to write a browser plugin to redirect all search traffic to them, which was a major task that involved diving deep into low-level coding. I explained that it was possible to do it but it would be extremely difficult and unethical to bypass the security measures Microsoft had put in place with Internet Explorer 6. I was not willing to undertake such a project. Another client even asked me to remove all error logging from the code, believing that code should never encounter errors. These kinds of requests can lead to serious issues and are often hard to argue against.
While most clients can be persuaded to modify their requests, some are more persistent and even misleading. It's important for developers to set clear boundaries and communicate the realities of development projects to their clients. In the end, standing your ground and explaining the reasoning behind certain choices is key to maintaining professional ethics and ensuring the success of the project.