Recent Articles

May 2008

Stupid Secretary WTF

by in Best of the Sidebar on

Originally posted to the sidebar by "snoofle"...

This morning, I had to deal with one of our HR secretaries, and it was déjà vu.


Completing the Circle

by in Feature Articles on

Sergio couldn't have woken up in a better mood. When his radio turned on at 6:00AM, the weatherman predicted nothing but sunshine, warmth, happiness, smiles, and hugs. He shaved, dressed up, and got ready for the drive to the Federal Department of Government. Sergio's company had just scored a major contract after a long negotiation process, barely passing the obstacle course phase of the Federal Department of Government's rigid requirements for a bid to even be considered.

Sergio was so happy because he was, to a large degree, in charge. He'd determine the architecture, the database design, and he was in charge of gathering requirements for the six-month contract.


2.0 Yet? A Preview (Part 2)

by in Mandatory Fun Day on


Superencryptalisticexpialidocious

by in CodeSOD on

Andreas C stumbled upon what might possibly be the most secure code ever written. At least, according to its original author.

Following is the contents of just one of many similarly coded PHP pages...


Overdue Retirement

by in Feature Articles on

"I started work in my new job as Technical Manager full of enthusiasm, only to be thwarted by a flabbergasting array of absurd working practices imposed by the despotic dinosaur of a Development Manager I have to report to," Amanda L. writes.

"What makes this more fascinating is that:

  1. "this list is not a collection of experiences or anecdotes picked up from different sources.
  2. "this list is not an embellishment of any existing practices at this company.
  3. "this list is a genuine and accurate description of the real working practices currently being practiced at this company — nothing here is invented, it is all true.

Recommended Upgrade

by in Error'd on

This is what my dad drives, and while he loves his truck, he's glad he paid extra for a steering wheel.


(submitted by Scott)


Productivity 2.0

by in Feature Articles on

We've all heard of ridiculous metrics used to measure job performance, often with disastrous results. When productivity is incentivized, employees figure out how to game the system.

Milo's boss, "Greg," familiar with other failed performance metrics, abandoned traditional methods and invented his own — gauging productivity by SVN Checkins per Week.


2.0 Yet? A Preview (Part 1)

by in Mandatory Fun Day on


TalesFromTheLongMethodNameGenerator(int maxLength)

by in CodeSOD on

"I recently started a new job," writes D.Z., "and one of my tasks is to maintain a $DEITY-forsaken piece of software, written originally in VB.NET, then mutated and mutilated into C#."

"Generally speaking, I don't mind working on badly designed and poorly written applications. In fact, I've found it to be a fun challenge to dive head-first into spaghetti code and straighten it out as best as I can. It's like being an archeologist who tries to extract knowledge from a bunch of incoherent paintings on a cave wall... just without the adventures and, of course, the fedoras.


The Wrong Thing to Say

by in Best of the Sidebar on

Originally posted to the sidebar by "snoofle"...

Some time back, I worked for a large company (now defunct). It was your basic IT department of about 150 people organized into groups of ~10, all on a big open cubicle farm on one floor. Every barrel has it's bad apple. Ours would routinely view kiddie porn - during work hours. He would occasionally leave the images up on the screen when he walked away. Finally, someone got offended enough to say something to HR. HR had "the talk" with him. A few weeks later, he did it again. The same person was offended, again, and complained to HR, again. The same person from HR had "the next talk" with him. A few weeks later he did it yet again. The same person made a much more formal complaint to HR. The head of HR told his #1 to sit down with everyone in IT, 5 at a time, with their immediate boss and their boss, and lay down the law.


The Upgrade Treadmill

by in Best of the Sidebar on

Originally posted by "Weng" as a response to Book shop WTF...

Among my other pursuits, I'm logistics manager at a non-profit that does electronics recycling. One of my favorite customers is an IT manager for a large banking chain.


Skills.Equals(null)

by in Feature Articles on

All eyes were on Darrell as he swaggered past the rows of cubicles. Darrell was different than the other developers -- sharply dressed in an expensive suit with designer sunglasses dangling from his breast pocket. He left shortly after arriving with a huge smile on his face.

The interview had gone well. The company -- a midsize logistics software provider out of New England -- had been falling behind schedule and delivering their custom reporting tools with more and more bugs. Darrell had successfully sold himself as the company's savior who could improve code quality and deliver faster than the others.


Some one is trying to Hack the Site

by in CodeSOD on

When it comes to SQL injection detection, we at The Daily WTF could be doing better. It's not that I don't trust Alex's modifications to our CMS system to be injection-proof, I'm just saying that I'd prefer that you people didn't post comments like "') DELETE FROM Articles --". Or, if you must, at least "') DELETE FROM Articles WHERE Author_Name <> 'Jake Vinson' --".

But I'm getting ahead of myself. The point here is that we should've employed a strategy that B. V. tipped us off to so we could learn when "Some one [was] trying to Hack the Site."


Anything You Can Do Lyle Can Do Better

by in Feature Articles on

If Lyle could be summed up in one word, it'd be "competitive." If he could be summed up in three words, it'd be "ultra-competitive jackass." If you had $21.00 on you, Lyle would make it a point to have $21.50. If you estimated that a task would take you twelve hours, it'd take Lyle eleven hours and 45 minutes. If a distant relative died, somehow two of Lyle's distant relatives died. He was the kind of guy that would play basketball against a nine year old to win, then he'd make fun of the kid for losing, then he'd make fun of the kid for crying. If a stranger asked Lyle what time it was, he treated it as a challenge.

Lyle was two levels above James W. in the company hierarchy (or, as Lyle would probably call it, "winning"). James reported to Rob, who reported to Lyle. Another team of the same size reported to Lyle as well. James and one of his colleagues knew about Lyle's obsession with winning and exploited it at every opportunity, usually teasing him to the point that he'd leave them alone. As is the case with most bullies being called out on their bullpucky, Lyle got defensive and eventually stopped visiting James during the day.


Faster than the Speed of Light

by in Error'd on

Adrian spotted this interesting fact in his newspaper. At 670 miles per hour, light is almost as fast as the land speed record!


The Incredible Shrinking Applicant and More

by in Tales from the Interview on

Today's tale comes from Evan Wade...

I had the unique treat of interviewing for my replacement after accepting a promotion in the state agency for which I worked.


That's... Helpful

by in CodeSOD on

Ben Siemon was pleasantly surprised to find comments in some code he came across...


Security Downupgrades

by in Best of the Sidebar on

Originally posted by an anonymous reader...

I work at a smallish startup with about 40 people. It's generally been WTF-free, as the management is usually competent. Unfortunately, things have been sailing towards WTF-land with the arrival of a new CEO a few months ago. He has already built up a steady stream of WTFs, but his latest one just takes the cake.


The Opposite of Specific

by in Error'd on

Chris wanted me to show you this urgent message. I hope you're sitting down for this.


The Quick Meal (Off Topic)

by in Feature Articles on

As you probably have guessed, I spend a whole lot of time running The Daily WTF when going through submissions, writing articles, and sending out free stickers. While I do this primarily for fun and hobby, it does tend to interfere with my day job at Inedo and, as a result, I tend to earn much less than I could otherwise. But I don’t mind. All I have to do is sacrifice a few, small things. Things like a decent lunch.

Normally for me, lunch is all about getting as much nutritional value for the least amount of money possible. This means my lunch-time staples include things like sticks of butter ($0.23/ea), discarded military MREs (free… if you know where to look), and grocery store free-sample binges (free… if you have no dignity). Today, however, I decided to treat myself, so I scrounged up a dollar and headed on over to the Dollar Tree. After an exhaustive search through bins of expired food items, I stumbled across a wonderful treasure: the Chow Mein “Quick Meal”.


Unhappy Hour

by in Feature Articles on

Everything was lined up for some seasonal specials at Chotchkie's (as we'll call it), a mid-size chain of family restaurants. Starting just in time for the weekend on Friday, there would be specials on Pizza Shooters, Shrimp Poppers, and Extreme Fajitas.

The special had been promoted, ads circulated, table cards and menus updated — everything was ready to go. That is, aside from setting up the discount in the PoS system on their antiquated Panasonic 7000-series cash registers. Because of the old architecture and a confusing interface, what should be a simple change for restaurant staff to update item pricing actually required the involvement of a developer; in this case, Mike L.


Schrödinger's Submenu

by in Error'd on

"I wonder if it's possible to change the text of the sensibility of the message," pondered Adam, "if the message having sensibility cannot have text... or something like that."


Dead Man's Switch

by in Feature Articles on

"This is how you set up the monitoring?" Shawn G. looked down at the system in disbelief. There was a watchdog connected to a power relay to ensure that it was always running. The power relay sat right next to the power switch in a sealed environmental enclosure.

Oh well, Shawn thought, this is what I'm here to work on. I'll get this set up right. He reached into the dark enclosure for the power switch to reboot the system. And missed the switch.


The Long Road to Uppercase

by in CodeSOD on

"Some years ago I was looking for a job and did a lot of online résumé form filling," Gustavo S. writes.

"One of those many sites had a form that took about a second to uppercase my name when I hit Tab, before putting the focus on the next field.


Thinking Machines

by in Tales from the Interview on

Through the much of the 1980’s and early 1990’s, Cambridge-based Thinking Machines was ahead of its time. As innovators in parallel computing, they developed a massive, 65,536 processor supercomputer known the Connection Machine. Visually, it made Cray’s distinctive look seem like a piece of outdated furniture, and was even stunning enough to star as the “impressive blinky-light server” in Jurassic Park.

Of course, that’s just about all it was good for. The Connection Machine was an AI researcher’s dream that no AI research lab could afford. Its inability to run FORTRAN – and every other programming language aside from a specialized Lisp dialect – made it pretty much useless for business and scientific purposes. Its baffling inability to even do floating-point operations mostly guaranteed that no one would buy it. But, hey – who needs customers when there’s lots of money from daddy!


From Drought to Flood

by in Error'd on

"Between 11AM and 2PM tomorrow, we have a -93% chance of rain, followed by 113% chance later in the day," Matt writes. "Quite a shift over 6 hours."


Nuns and Regexes Do Not Mix

by in Best of the Sidebar on

Originally posted by "Corona688"...

We run an old text game built on an ancient and mysterious codebase. It occasionally does strange things for reasons that've been lost to the mists of time.


A Rather Curious Pattern

by in CodeSOD on

"While exploring a rather large PHP codebase at my new job," Anthony C writes, "I kept coming across a rather curious pattern from the previous developers:

src="content.php?NoCache=<?php $random = make_random_code(); echo("$random"); ?>"

Where Does the Line End?

by in Error'd on

Jacob S. apparently wandered away from the line and wasn't even in the right city anymore.


Two Weeks Notice

by in Feature Articles on

"Welcome aboard, Colin!" Colin P. gave his boss a firm handshake, excited about his first day on the job. He'd be a member of the team that worked on an application that ran on a managed information appliance. "I'll set you up with Mike, who can show you the ropes."

Colin's boss turned him over to Mike, who started describing the system architecture immediately. "So here's what we've got," he began. "The core is the email processing module. It takes in an email, logs a little information, and stores attachments in the file system. Easy, right?" Mike gave him a little more background, but reasoned that Colin should be able to figure it out.


Very Specific Generics

by in Representative Line on

"I'm as much a fan of Java Generics as the next guy," writes Jim Bethancourt, "why bother with writing all that type-specific code for common collections (or - gasp - losing type safety) when one can simply go  HashMap<String, SomeObject>."

"However, after working on several of my predecessor's projects, I think it's pretty clear that liked generics, too. But I'm gonna go ahead and say that he liked them juuuuuust a bit too much. This was one of way-too-many lines in the variable definition section of some (you guessed it) generic class...


Let's All Reinvent the Wheel... Again, and More

by in Tales from the Interview on

Let's All Reinvent the Wheel... Again (from K.D.)

I was interviewing candidates for a junior web application development position. The candidate had, so far, seemed very knowledgeable and more than met the requirements of the position. I had, in fact, almost made my decision that I would make Joe an offer, but I had to ask just one more question.


Worst. Preview. Ever.

by in Error'd on

"I have this feeling most of the day while I'm on support," writes M, "but I've never thought to try telling people."


The Webcam DoS Attack

by in Feature Articles on

Where are my keys? Cam S. had checked under every couch cushion, in every jacket pocket, under every bed, everywhere for his keys. While checking the kitchen counter for the third time, he glanced at the oven clock. 8:35. Even if the skies had opened up right that minute and his keys descended on a golden platter, he'd still be at least ten minutes late for work.

It was then that he peeked in the garage and beheld a beautiful sight — his keys sitting on the drivers' seat of his truck. If he drove unreasonably, dangerously fast, he might still be able to get to work on time! Cam breathed a sigh of relief when he saw the keys in his truck. His locked truck. Damn it! The only other key was with his wife, who had left for work a while ago. It was clear that it just wasn't in the stars for Cam to go to work that day.


A Rather Minor Change

by in CodeSOD on

"Not too long ago," Jess writes, "I adopted an application that needed 'a rather minor change' to its functionality. Naturally, when I started, the project owner had no idea what file or directory the functionality was in, so he gave me access to the server and sent me off. After wading through a number of oddly named directories trying to find where the site was even located, I finally found the index file I had hoped would set me in the right direction."

"Of course, it didn't. After twenty minutes of jumping from page to page to page, I realized that I'd simply have to grep the entire application: a gig or so of content with tens of thousands of files within hundreds of directories. After nothing turned up, I quickly realized that most of the files had completely meaningless extensions: .html files had lots of PHP, .php4 files had PHP5, and .php files rarely had any PHP.


Code examples and interviews

by in Best of the Sidebar on

Tsk, tsk. After all the requests to plz email me teh codez, and the Daily WTF community's failure to recognize student initiative, "MonkeyCode" posted a similar story in the sidebar...

We're looking for some new developers on our team here at our online travel reservation startup. London being London at the moment, it's proving hard to get good quality candidates to actually show up for an interview. Little did we know how bad the quality can be at times.


Please yo-yo the rrm

by in Error'd on

"Ummm," Matt wrote, "if you say so..."


The Problem Child

by in Best of the Sidebar on

Originally posted by "DrillSgtK"...

In the late 90’s, I worked for a small, “start-up/spin-off” dot com company. We were originally The University’s distant learning department, but had been re-constituted as a for-profit company, owned by The University to service The University. A year and a half old, the company had grown from six people working out of a trailer on campus to a seventy-five person operation with three offices and large co-location site in a data center. The IT staff, however, remained the same size: three of us.


The Annual Reboot

by in Feature Articles on

According to Wikipedia, caching is a method of storing a collection of data for which the time it takes to compute said data is longer than the time it takes to retrieve from the cache. Also, the concept of caching was invented by Mr. T. I suspect that last part may have been added by Wikipedia vandals, though...

One of Eli A.'s predecessors took Mr. T.'s concept and ran with it. He cached everything he could get his hands on — configuration values, event dates, phone numbers, everything. Why tax the hardware with an expensive lookup when everything's right at your fingertips in a giant, hideous blob of a cache?


792 Octiiiiiiilion Dollars

by in Error'd on

François captured this brief video of his answering machine bug for our first-ever video Error'd.


(or download as avi)