Bob worked at a small company. There’s a messy history in its founding. The owner, Aaron, worked for another company making basically the same software, until he finally got fed up with their coding style and practices. So he quit to found his own company, with his own rules about things, like how many blank lines there should be before a for loop (exactly 1), how to order variable declarations (alphabetically, with “::” coming after “z”), and how source control should be organized (about as organized as organized crime).
Way back when Java first came out, if you wanted to split a string into tokens, you had to roll
your own mechanism to do so. Of course, even as far back as Java 1.2, there were some built-in secrets
to help you tokenize your string so you could iterate over the tokens.
Fred S. never much cared for zebra striping, the UI pattern than was all the rage after Mac OS X launched in 2001. It found its way into other Mac applications, web pages, even onto Linux. Like a tsunami of alternating grey-and-white waves, it overtook everything in its path.
Correct now, optimize later. is one of the most important developer mantras and Scott K. followed it to a fault. He was on a team of programmers debugging a C# package management application, which used Microsoft SQL for revision tracking. Make sure it works right the first time; you can always tease out more performance after launch.
Mark was upset. You didn't have to sit next to him to know it, either. Even though his cubicle was at the far end of the farm, his frequent tirades were always audible to the rest of the office. Mark wasn't the most skilled or the most careful developer on the team, but what he lacked in ability he made up for in volume: a lot of his poorer decisions stood simply because his colleagues wanted to avoid a barrage.
A client of Jim's with a WordPress site had been having performance issues that were off the scale bad. Slower then a snail on Valium. Slower than a herd of turtles rampaging through a molasses factory. Worse than that, the actual in-browser rendering was taking significantly longer than any benchmarking tests would lead you to believe. Even massively loaded benchmark tests had a better rendering time. And the client's browser's weren't massively loaded.