OR 

CodeSOD: Is Num? I‘m Numb

The hurrider I go, the behinder I get, is one of the phrases I like to trot out any time a project schedule slips and a PHB or PM decides the solution is either crunch or throwing more bodies at the project. Karl had one of those bosses, and ended up in the deep end of crunch. Of course, when that happens, mistakes happen, and everything gets further behind, or youre left with a mountain of technical debt because you forgot that Integer.TryParse

favicon of http://thedailywtf.com

Representative Line: It Only Crashes When It Works

We already know that Kara‘s office has a problem with strings. Kara‘s back again, with more string related troubles. These troubles are a bit worse, once we add in some history. You see, some of their software does machine control. That is to say, it sends commands to some bit of machinery, which then moves or extrudes or does whatever the machine does. Kara wasn‘t specific, only granted that this machine was neither large enou

favicon of http://thedailywtf.com

CodeSOD: Switch the Dropdown

Bogdan Olteanu picked up a simple-sounding bug. There was a drop-down list in the application which was missing a few entries. Since this section of the app wasnt data-driven, that meant someone messed up when hard-coding the entries into the dropdown. Bogdan was correct. Someone messed up, alright. Destinatii = new ListDestinatii(4); for (int i = 0; i Destinatii.Capacity; i++) { switch (i) { case 0: Destinatii.Add(new Destinatii { code

favicon of http://thedailywtf.com

Representative Line: Innumerable Enum

Ah, the enumerated type. At its core, its really just a compile-time check to ensure that this constant containing 1 isnt getting confused with this other constant, also containing 1. We usually ignore the actual numbers in our enums, though not always. Perhaps, though, we should just pay more attention to them in general, that way we dont end up with code like Andrew found. public enum AddressPointerTable { Default, Two } This is C#, bu

favicon of http://thedailywtf.com

CSS (Under)Performance

Ah, WordPress. If you hadnt heard of it by reputation, it sounds pretty good: one platform where you can build a blog, an e-commerce site, an app, or some combination of all of the above. Their site is slick, and their marketing copy sounds impressive: Beautiful designs, powerful features, and the freedom to build anything you want. WordPress is both free and priceless at the same time. With WordPress, the hype insists, anyone can build a websi

favicon of http://thedailywtf.com

Announcements: TheDailyWtf.com Server Migration Complete

If youre reading this message, then it means that I managed to successfully migrate TheDailyWTf.com and the related settings from our old server (74.50.110.120) to the new server (162.252.83.113). Shameless plug: I did all of this by setting up a configuration role in our internally-hosted Otter instance for both old and new servers (to make sure configuration was identical), deploying the last successful build to the new server using our intern

favicon of http://thedailywtf.com

Crushing Performance

Many years ago, Sebastian worked for a company which sold self-assembled workstations and servers. One of the companys top clients ordered a server as a replacement for their ancient IBM PS/2 Model 70. The new machine ran Windows NT Server 4.0 and boasted an IPC RAID controller, along with other period-appropriate bells and whistles. Sebastian took a trip out to the client site and installed the new server in the requested place: a table in fro

favicon of http://thedailywtf.com

Best of: 2018: Another Bitmask Fail

To wrap up our best-of year in review, heres yet another case where a simple problem is solved using simple tools, and everything still turns out entirely wrong. Original. And a happy New Year to you all! -- Remy As weve seen previously, not all government jobs are splashy. Someone has to maintain, for example, the database that keeps track of every legal additive to food so that paranoid hippies can call them liars and insist they all cause c

favicon of http://thedailywtf.com

CodeSOD: Without Compare

Operator overloading is a messy prospect. In theory, it means that you can naturally extend a language so that you can operate on objects naturally. An introductory CS class might have students implement a Ratio or Fraction class, then overload arithmetic operators so you can (a + b).reduce(). In practice, it means you use the bitshift operator also as the stream insertion operator. Thanks C++. Java decided to chuck the baby out with the bathwate

favicon of http://thedailywtf.com

Error‘d: An Internet of Crap

One can only assume the CEO of Fecebook is named Mark Zuckerturd, writes Eric G.. Crucials website is all about consumer choice and I just cant decide! writes Charles. Countdown started? I had better get a move on! Only 364.97 days left on this auction, Wesley F. wrote. Pascal wrote, The connected device table lists 9 devices total, but when my router counts them -3 times each? Looking forward to round 2s deal, which Im guessing will offe

favicon of http://thedailywtf.com

Best of: 2018: The Wizard Algorithm

NIH syndrome causes untold suffering in the world, but for just a few pennies a day, you can help. Or maybe not, but not-invented-here meets password requirements in this story from June. --Remy Password requirements can be complicated. Some minimum and maximum number of characters, alpha and numeric characters, special characters, upper and lower case, change frequency, uniqueness over the last n passwords and different rules for different sys

favicon of http://thedailywtf.com

CodeSOD: The Pair of All Sums

Learning about data structures- when to use them, how to use them, and why- is a make-or-break moment for a lot of programmers. Some programmers master this. Some just get as far as hash maps and call it a day, and some get inventive. Let‘s say, for example, that you‘re Jim J‘s coworker. You have an object called a Closing. A Closing links two Entrys. This link is directed, so entry 1-2 is one Closing, while 2-1 is another. In

favicon of http://thedailywtf.com

Error‘d: Next Stop...Errortown

Rather than tell me when the next train is supposed to arrive, this electronic sign is helpfully informing me that somethings IP address is...disabled? Ashley A. writes. I think that fonehouse may need to apologize for their apology, writes Paul B. Brian C. wrote, Many new riders dont expect it, but my commuter train goes through several dimensions where time is kept quite differently. When your email about keeping messages out of the spam

favicon of http://thedailywtf.com

CodeSOD: Ternt Up GUID

UUIDs and GUIDs aren‘t as hard as dates, but boy, do they get hard, don‘t they. Just look at how many times they come up. It‘s hard to generate a value that‘s guaranteed to be unique. And there‘s a lot of ways to do it- depending on your needs, there are some UUIDs that can be sorted sequentially, some which can be fully random, some which rely on hash algorithms, and so on. Of course, that means, for example, your

favicon of http://thedailywtf.com

Error‘d: All Aboard the System Bus

The classic If transportation had evolved at the same pace as computers... comparison is no longer merely academic as this TTC streetcar proudly displays its nearing 32K RAM, Carlos writes. I guess if its good enough for the people of {city:capatilized}... writes Philip J. Greg wrote, Id consider amending to my birth certificate if itd appease this form. Either this preview image is a mistake, or I have a serious misunderstanding of how sou

favicon of http://thedailywtf.com

CodeSOD: Certifiable Success

‘Hey, apparently, the SSL cert on our web-service expired in 2013.‘ Laura‘s company had a web-service that provided most of their business logic, and managed a suite of clients for interacting with that service. Those clients definitely used SSL to make calls to that web-service. And Laura knew that there were a bunch of calls to ValidateServerCertificate as part of the handshaking process, so they were definitely validating it

favicon of http://thedailywtf.com