OR 

Classic WTF: The Proven Fix

It‘s a holiday weekend in the US, and I can‘t think of a better way to celebrate the history of the US than by having something go terribly wrong in a steel foundry. AMERICA! (original)--Remy There are lots of ways to ruin a batch of steel. Just like making a cake, add in too much of one ingredient, add an ingredient at the wrong time, or heat everything to the wrong temperature, and it could all end in disaster. But in the case of

favicon of http://thedailywtf.com

Rubbed Off

Early magnetic storage was simple in its construction. The earliest floppy disks and hard drives used an iron (III) oxide surface coating a plastic film or disk. Later media would use cobalt-based surfaces, providing a smaller data resolution than iron oxide, but wouldn‘t change much. Samuel H. never had think much about this until he met Micah. The Noisiest Algorithm In the fall of 1980, Samuel was a freshman at State U. The housing d

favicon of http://thedailywtf.com

Error‘d: No Thanks Necessary

"I guess we‘re not allowed to thank the postal carriers?!" Brian writes. "So, does the CPU time mean that Microsoft has been listening to every noise I have made since before I was born?" writes Shaun F. "No problem. I will not attempt to re-use your error message without permission," wrote Alex K. Mark B. writes, "Ah, if only we could have this in real life." "Good work Google! Another perfect translation into German," Kolja wrote.

favicon of http://thedailywtf.com

CodeSOD: Classic WTF: When the Query String is Just Not Enough

It‘s a holiday weekend in the US, as as we prepare for the 4th of July, we have some query strings that are worth understanding. (original)--Remy As Stephen A.‘s client was walking him through their ASP.NET site, Stephen noticed a rather odd URL scheme. Instead of using the standard Query String -- i.e., http://their.site/Products/?ID=2 -- theirs used some form of URL-rewriting utilizing the @ symbol in the request name: http://their.

favicon of http://thedailywtf.com

Finding the Lowest Value

Max‘s team moved into a new office, which brought with it the low-walled, bee-hive style cubicle partitions. Their project manager cheerfully explained that the new space would optimize collaboration, which in practice meant that every random conversation between any two developers turned into a work-stopping distraction for everyone else. That, of course, wasn‘t the only change their project manager instituted. The company had been

favicon of http://thedailywtf.com

Error‘d: Unfortunate Timing

"Apparently, I viewed the page during one of those special 31 seconds of the year," wrote Richard W. "Well, it looks like I‘ll be paying full price for this repair," wrote Ryan W. Marco writes, "So...that‘s like September 2nd?" "Office 365????? I guess so, but ONLY if you‘re sure, Microsoft..." writes Leonid T. Brandon writes, "Being someone who lives in ‘GMT +1‘, I have to wonder, is it the 6th, 11th, or 12

favicon of http://thedailywtf.com

CodeSOD: A Pre-Packaged Date

Microsoft‘s SQL Server Integration Services is an ETL tool that attempts to mix visual programming (for designing data flows) with the reality that at some point, you‘re just going to need to write some code. Your typical SSIS package starts as a straightforward process that quickly turns into a sprawling mix of spaghetti-fied .NET code, T-SQL stored procedures, and developer tears. TJ L. inherited an SSIS package. This particular p

favicon of http://thedailywtf.com

Error‘d: Unmapped Potential

"As an Australian, I demand that they replace one of the two Belgiums with something to represent the quarter of the Earth they missed!" writes John A. Andrew wrote, "{47}, {48}, and I would be {49} if {50} and {51}." "Apparently, DoorDash is listening to their drivers about low wages and they ‘fixed the glitch‘," write Mark H. "Advertising in Chicago‘s Ogilvie transportation center in need of recovery," writes Dave T.

favicon of http://thedailywtf.com

CodeSOD: Changing Requirements

Requirements change all the time. A lot of the ideology and holy wars that happen in the Git processes camps arise from different ideas about how source control should be used to represent these changes. Which commit changed which line of code, and to what end? But what if your source control history is messy, unclear, or you‘re just not using source control? For example, let‘s say you‘re our Anonymous submitter, and find the f

favicon of http://thedailywtf.com

The Little Red Button

Bryan T. had worked for decades to amass the skills, expertise and experience to be a true architect, but never quite made the leap. Finally, he got a huge opportunity in the form of an interview with a Silicon Valley semi-conductor firm project manager who was looking for a consultant to do just that. The discussions revolved around an application that three developers couldn‘t get functioning correctly in six months, and Bryan was to be

favicon of http://thedailywtf.com

Error‘d: Best Null I Ever Had

"Truly the best null I‘ve ever had. Definitely would purchase again," wrote Andrew R. "Apparently, the Department of Redundancy Department got a hold of the internet," writes Ken F. Berend writes, "So, if I enter ‘N‘ does that mean I‘ll be instantly hit by a death ray?" "Move over, fake news, Google News has this thing," wrote Jack. Evan C. writes, "I honestly wouldn‘t put it past parents in Canada to regist

favicon of http://thedailywtf.com

Open Sources

Here‘s how open-source is supposed to work: A goup releases a product, with the source code freely available. Someone finds a problem. They solve the problem, issue a pull request, and the creators merge that into the product, making it better for everyone. Here‘s another way open-source is supposed to work: A group releases a product, with the source code freely available. Someone finds a problem, but they can‘t fix it thems

favicon of http://thedailywtf.com

Announcements: Build Totally Non-WTF Products at Inedo

As our friends at HIRED will attest, finding a good workplace is tough, for both the employee and the employer. Fortunately, when it comes looking for developer talent, Inedo has a bit of an advantage: in addition to being a DevOps products company, we publish The Daily WTF. Not too long ago, I shared a Support Analyst role here and ended up hiring fellow TDWTF Ben Lubar to join the Inedo team. He‘s often on the front lines, supporting our

favicon of http://thedailywtf.com

The Defensive Contract

Working for a contractor within the defense industry can be an interesting experience. Sometimes you find yourself trying to debug an application from a stack trace which was handwritten and faxed out of a secured facility with all the relevant information redacted by overzealous security contractors who believe that you need a Secret clearance just to know that it was a System.NullReferenceException. After weeks of frustration when you are unabl

favicon of http://thedailywtf.com

CodeSOD: Impersonated Programming

Once upon a time, a long long time ago, I got contracted to show a government office how to build and deliver applications in Microsoft Access. I‘m sorry. I‘m so, so sorry. As horrifying and awful as it is, Access is actually built with some mechanisms to actually support that- you can break the UI and behavior off into one file, while keeping the data in another, and you can actually construct linked tables that connect to a real dat

favicon of http://thedailywtf.com

The Agreement

In addition to our bread and butter of bad code, bad bosses, worse co-workers and awful decision-making, we always love the chance to turn out occassional special events. This time around, our sponsors at Hired gave us the opportunity to build and film a sketch. I‘m super-excited for this one. It‘s a bit more ambitious than some of our previous projects, and pulled together some of the best talent in the Pittsburgh comedy community t

favicon of http://thedailywtf.com

CodeSOD: Swap the Workaround

Blane D is responsible for loading data into a Vertica 8.1 database for analysis. Vertica is a distributed, column-oriented store, for data-warehousing applications, and its driver has certain quirks. For example, a common task that you might need to perform is swapping storage partitions around between tables to facilitate bulk data-loading. Thus, there is a SWAP_PARTITIONS_BETWEEN_TABLES() stored procedure. Unfortunately, if you call this fun

favicon of http://thedailywtf.com

CodeSOD: Questioning Existence

Michael got a customer call, from a PHP system his company had put together four years ago. He pulled up the code, which thankfully was actually up to date in source control, and tried to get a grasp of what the system does. There, he discovered a unique way to define functions in PHP: if(!function_exists(GetFileAsString)){ function GetFileAsString(FileName){ Contents = ; if(file_exists(FileName)){

favicon of http://thedailywtf.com