Recent Articles

Oct 2009

Sewing with Calculus

by in Error'd on

"My girlfriend offered to sew me curtains for my house," Scott wrote, "I've never sewn before, but I didn't think calculus and electrical resistance would be involved."


Choose Your Own IP

by in Feature Articles on

external ftw!SuperbNet was by no means a bad ISP. Opening during the 90’s, they offered a nice alternative to the 15 hours of "free" disks that arrived in the mailboxes of local residents. Their prices were competitive and service was very reliable. That is until one day, out of the blue, Jonathan’s Linux box would not connect to the Internet.

After firing up a terminal session, some troubleshooting revealed the culprit.


letter_array

by in Representative Line on

"My company sells access to a massive PHP application that was built a few years ago by The Originals," writes Magnus Bergmark. "The application has everything: slow interface, quirks-mode invalid HTML4, hidden POST forms for every link, you name it."

"The code consists of a few files arranged in a proper developmestuction environment, with thousands of lines in each file. Comments are mostly devoid, but I found a line with a comment about one-and-a-half thousand lines down."


The Automated Curse Generator

by in Feature Articles on

It was 1999, and Brian's company's new online marketing venture was finally off the ground and making a profit using an off-the-shelf conglomeration of bits and pieces of various content management, affiliate program, and ad servers. Brian's team had hit all of the goals for the first funding tranche, and the next step was to use those millions of dollars to grow the staff from twelve to fifty, half of whom would be software developers working directly for Brian.

The project was an $8 million, nine-month development effort to build, from the ground up, the best 21st-century marketing/e-commerce/community/ad network/reporting system mousetrap possible. Leading a team of twenty people was a big step up for Brian, so he buckled down, read management theory books, re-read The Mythical Man Month, learned the ins-and-outs of project management software, invested in UML and process training, and carefully pored over resumes to find the best candidates.


"PHP has an eval function like perl"

by in CodeSOD on

One of the sysadmins at Stuart Caie's company — Jim, as we'll call him — wanted to scratch his itch. Because he spent a whole lot of time logging into different systems just to gather operational data, he figured that a simple web application could automate the data collection process. "This way," he persuadingly said to management, "I can be much more efficient when doing my job."

The brass agreed and allowed him to dedicate some time to building a monitoring application. Jim was excited and ready to overcome his first obstacle: he didn't know anything about programming. Fortunately, Learn Perl in 21 Days and Learn PHP in 21 Days showed him the way and, in no time, Jim had a nice little web app built. His co-workers congratulated him on it and asked him to build in some more features. Management was also pleased with the tool and allowed him to spend some more time in development. And so Jim kept adding to it and adding to it. Again and again.


Misconstrued

by in Error'd on

"What, precisely, is being misconstrued here?" writes Seth H.


Classic WTF: The Fully Automated Manual System

by in Feature Articles on

The Fully Automated Manual System was originally published on September 22, 2006


It was to be the perfect system: requested by an IT-friendly internal client, managed by a competent project manager, described by insightful business analysts, designed by an experienced architect, built by intelligent programmers, and perfected by thorough testers. Its goal was hefty but noble: replace the current manual billing system with a fully automated process that tracks jobs, hours, accounting, and payroll. It was to save employees across the organization a lot of time and save the company a lot of money by bringing payroll processing in-house. But alas, it was confronted by an obstacle it just could not overcome: the Chief Technology Officer.


Is the Mainframe On?

by in CodeSOD on

The asset management application used Alex R.'s company isn't exactly bad, but sometimes it can be a little bit of a pain.

For example, some time ago, some deveoper implemented a feature that would check if the mainframe was up and running. This was done by simply querying a column in some database table. But shortly thereafter, users noticed that there was a brief pause after entering their password. Nothing earth shattering, it was just annoying.


CompuMart Support, Part 1: Windows 96½ & More

by in Feature Articles on

Back in the late 1990's, Lyfe R worked as a tech support manager for CompuMart (as I'll call them), which was the largest retailer of consumer PC's in the region. They had a store in almost every town and used world-class marketing along with an extremely aggressive sales team to sell at extremely low prices. I mean, surprisingly low; as in, lowest-bidder low. Because the salespeople were rather "generous" with claims of what their low-end computers could do, the cost of support eventually became greater than the sales margin, and the whole company collapsed. But it sure was fun while it lasted.

The Windows 96½ Upgrade

A customer was having a problem with some recent software he purchased: it required Windows 98, yet he only had Windows 95. The first-line technicians started out with a simple reboot, then a reboot with a "two minute wait" before turning on. The tech then moved on to a complete factor-state restore using the restore CD. The logic behind that was apparently to "refresh the installer executable". When that didn't work, the first-line tech suggested that the customer buy a Windows 98 upgrade at his local CompuMart store.


Ask Rumen

by in CodeSOD on

"We recently inherited an ancient ASP.NET application," Misho D writes, "well, ancient as in .NET. The development started around 2002 and the maintenance never seems to end." "Given that it was probably the original team's first .NET (or one of the first) .NET applications, the WTF-to-line ratio is pretty high. But there's one recurring theme throughout the code that is baffling: some guy named Rumen. His name and comments are all throughout the code."

protected PostControlMode GetMode()
    // this is set from code because of 
    // mehtod call flow - binding is before loading 
    // and problem appear - ask Rumen for details
    return PostControlMode.Blurb;
}

REGISTER_NOT_FOUND

by in Error'd on

"It's a wonder I was able to pay for this drink after looking high and low for the register," notes Jon Baker.


Security Index out of Bounds

by in Feature Articles on

Knock Knock.It was nearly impossible to find an available and fully-functioning PC in the large campus labs at West Thomson-Friedman University. It's not like the student lab administrators were lazy. Oh no, in fact the clueless-users-who-were-far-too-dangerous-for-their-own-good and the malicious-users-who-were-far-too-bored-for-their-own-good made the student admins really earn their minimum wage.

This dog's breakfast was tough to swallow for any serious users of the labs, and even more so for the poor CompSci students who just wanted to test their programming assignment before it was due. So in response to their students' pleas, the powers-that-be set up special labs in the CompSci building. These machines were configured with more RAM, more hard drive space, and bigger monitors than their utilitarian counterparts in the large labs. Since the computers had special software installed just for the CompSci students, getting access to the labs was controlled by a key card. If a CompSci student needed a card, all he needed to do was go down to the dungeon basement in the main admin buildings and pay a $10 deposit to get a card.


Encryption Misinformation

by in CodeSOD on

Ages ago, one of the business units at the corporation that Rick P. works at contracted a 3rd party vendor (in truth it was some guy in the UK) to write an inventory management system.  It was written in VB6 and talked to an Access database in the back end and it worked.

Skip ahead to recently when an edict has come down from the powers-that-be declared that any VB6 apps should be brought up to date in VB.NET.  The 3rd party dev was happy to make the updates and rollout the now conforming application.  Unfortunately, the availability and quality of support had gone downhill as of late and in order to save on costs, the application's source code was recalled to be maintained in-house.


Small But Rapidly Growing

by in Feature Articles on

The job listing seemed pretty normal — small-but-rapidly-growing software company needs top-notch developers to help expand flagship product — but there was one little detail that seemed a little... off. Near the bottom of the ad, it read note that we do not make custom-made software. David didn't think much of it at the time, especially since the company's website also reiterated that same point. He figured it must have been some sort of industry thing.

David sent in his résumé and was fortunate enough to get an in-person interview with Frank, the company's CEO. The receptionist smiled and replied in a perky voice, "great! I'll let Frank know; just take a seat and he should be here soon."


Walter Logged

by in CodeSOD on

"You've gotta help us out," Thomas's client pleaded, "you know, work some of your Java magic or something. We've tried everything: double the RAM, upgrade the pipe, and add in more servers. But nothing seems to help: it's still slow as molasses."

Of course, had they listened to Thomas in the first place and not had Walter, their in-house developer, architect the transaction-processing system, they wouldn't be in this mess in the first place. As tempted as he was to say "I told you so," Thomas simply agreed to come in the next day and see what he could do.


Mind Your Q's and Z's

by in Error'd on

"I received this message when trying to change the admin password on the Nortel CallPilot," Chip L. wrote, "I can kinda understand not starting with a zero... but Q and Z?"


Peripheral Maven

by in Feature Articles on

I prefer the usage 'meeses'.Michael L. felt the buzz of his phone go off. He ignored it.

Seconds later, he felt a hand on his shoulder.


The Clever Coder

by in CodeSOD on

Jan's coworker had come to be known around the office as The Clever Coder. Not quite the clever we've come to expect on The Daily WTF, but more the unfunny-uncle-who-thinks-he's-funny sort of clever.

His code wasn't all that great, and his cleverness wasn't all that... well, clever. One of his more frequently used methods was the following.


Classic WTF: Symbolic Installation

by in Feature Articles on

Symbolic Installation was originally published on August 16, 2006.


Mark Mooney works in a fairly standard internal application development environment. His group writes code, packages it up, and sends it off the Infrastructure Group for deployment to the QA servers. Like many organizations, Mark's group has virtually no access to these servers. If they're lucky, they can use the application as an end-user would. If they're really lucky, they can directly access the server log files.


RegExp From Down Under

by in CodeSOD on

"The company I work for sells vacation packages for Australia," writes Nathan, "and for whatever reason, they're marketed under different two different brands — redacted-travel.com.au and redacted-travel.com — depending on whether you live Down Under or somewhere else in the world."

Nathan continues, "one of the requirements for the international website (redacted-travel.com) is to disallow people from within Australia and New Zealand to make bookings. But the way this is done from the front end... well, it's a real gem."


Sponsor Appreciation, Candid Feedback, Untrust, & More

by in Feature Articles on

Please show your support for The Daily WTF by checking out the companies that have been kind enough to sponsor us. And, in doing so, I’m sure you’ll find some pretty cool products and services built by like-minded developers and IT professionals.

 

The Daily WTF Sponsors

Backstop Solutions   Backstop Solutions - if you're in Chicago (or would consider relocating), and are a Java Developer or Software Tester Breaker, then Backstop is certainly worth checking out. They build web-apps with an Agile approach, embrace open-source solutions, and work with the latest technology whenever they can. And they're hiring!
Square Space   Square Space - a fully hosted, completely managed environment for creating and maintaining your website. I took advantage of the no-hassle fee trial and was pretty impressed with the UI and ease of creating websites; it's got some developer support as well, if needed.
MaximumASP   MaxESP - Elastic Shared Platform, the first highly available Microsoft ASP.NET shared web hosting platform, designed to cater to all aspects of the application life cycle. Introductory accounts are available in October FREE of charge for 30 days and just $49 a month after that.
InformIT   InformIT - if you read tech books, then you're probably already familiar with InformIT. They publish all sorts of different books and occasionally give away free eBooks, like this one.
Software Verification   Software Verification - software engineering tools for memory leak detection, code coverage, performance profiling, thread lock contention analysis and thread deadlock detection, flow tracing and application replay on the Windows Vista, 2003, XP, 2000 and NT platforms.
Atlassian   Atlassian - the folks behind JIRA (which, in turn inspired Manual JIRA) wanted to let you know that they're not a "follow the rules" software company who realizes that there is no single recipe for practicing agile development. They were once hungry for practical tips, so they thought they should share their agile story.
SoftLayer   SoftLayer - serious hosting provider with datacenters in three cities (Dallas, Seattle, DC) that has plans designed to scale from a single, dedicated server to your own virtual data center (complete with racks and all)
SlickEdit   SlickEdit - makers of that very-impressive code editor and some pretty neat Eclipse and VisualStudio.NET tools and add-ins, some of which (Gadgets) are free. Check out this short video highlighting just one of SlickEdit's Visual Studio integration features.

The Senior System Administrators

by in Feature Articles on

It was his first job, so Kenneth couldn't really complain. His official title was Senior System Administrator and, in his role, he was responsible for such glamorous things like setting up new desktops and cleaning spyware off the administrative assistant's PC. The people were nice, they appreciated the work he did, and the commute was fine. But whenever payday would come around, he'd be reminded that he was doing entry-level work for entry-level pay, all with a big-boy title. Not too long after he started, it was time for a change.

When Kenneth tendered his resignation, his boss was legitimately happy for him and glad that he was moving up in his career. As a parting tasked, he asked Kenneth to train John, the soon-to-be Senior System Administrator, on all of their systems. As it turned out, it was John's first job, too.