2.π: Hiring Spree
by in Mandatory Fun Day on 2009-12-31This comic never ended up getting used in Mandatory Fun Day Series 2, and I figured what better time than classics week '09 to bring it out! Enjoy.
This comic never ended up getting used in Mandatory Fun Day Series 2, and I figured what better time than classics week '09 to bring it out! Enjoy.
The Storray Engine was originally published on November 23, 2006
As an independent .NET consultant, Steve gets called in to help smaller development teams to transition to the platform. Several weeks ago, a client had asked him to help rebuild some of their "core technologies" in .NET so they could offer it as a service to their clients. The first "technology" they wanted to upgrade was something called the Storray Engine.
The Chief Development Manager was originally published on April 4, 2007.
"Wait a sec," whispered Chris’s coworker David, "he can’t possibly think this will solve the Build Problem? His idea is completely absurd!"
There are a few interesting things in software development that you’ll generally only learn about by working on “certain” types of applications. Take, for example, the HTTP 414 “Way Too F#%&ing Long” response: there’s no standardized upper limit and many web servers don’t even document how long GET requests may be.
While working with his company's service desk application, Ben noticed a similar type of error message come from SQL Server.
Merry Christmas! It Doubles as a Saw Horse was originally published on November 3, 2006.
A little more than a decade ago, John Rudd was a Computer Science student at the Georgia Institute of Technology. He worked closely with the university's IT department and played a vital role in the creation of a new state-of-the-art data center: he unplugged and labeled cables before the movers relocated the servers and plugged them back in at their new location. There was one thing that struck John as being a bit different: the data center wasn't fully built yet.
“My company has an enormous, in-house built network management application that has every conceivable feature,” Matthew E wrote. “It has everything and does anything that you can imagine... including nothing. And it accomplishes the latter feature with a small-but-conspicuous button labeled Do Not Click.”
“Following is an excerpt from the several-thousand-line include-file that forms the bulk of each page load.”
You get what you pay for. Ondra M didn’t use those exact words, but that’s effectively what told his friend and colleague, Derrick. “There’s a reason it costs one tenth as much to build in Kerbleckistan,” were Ondra’s exact words, “there’s not only the language barrier, but time zone differences, cultural diff—”
“It’s just code, which is just a bunch a bytes!” Derrick shot back, “who cares if it’s built here, there, or on the moon. I’ll just take the cost savings and put them towards advertising. ”
"At one end of the system," Steve A writes "we have a fairly simple HTML-form that displayed a handful of shipping-related fields. At that the other end, there's a database table that pretty much matches those fields one-to-one. But in the middle.... there's a lot more."
"It's so hard to even begin describing our systems architectural problems, let alone using code to illustrate them. So instead, I'll just share this single line — a function definition — from a VB6 .dll that's called a as a plug-in by another VB6 .dll, which is in-turn called by a VB6 .exe that runs as a service. This function calls a single stored procedure, which in turn calls another stored procedure that call other stored procedures. But eventually, a row gets inserted."
Ever since the first Free Sticker Week ended back in February '07, I've been sending out WTF Stickers to anyone that mailed me a SASE or a small souvenir. More recently, I've been sending out the coveted TDWTF Mugs for truly awesome souvenirs. Nothing specific; per the instructions page, "anything will do." Well, here goes anything, yet again! (previous: The Cookout).
Leave it to Lennart Jütte (Germany) to remind me how awesome German treats can be. He sent over this delightful assortment which I almost immediately dug into.
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 a steel mill, we're talking about a 150 ton cake made of red-hot molten iron that's worth millions of dollars. Obviously, the risk of messing things up is a little bit higher. So, to help keep potential financial disaster at bay, the plants remove part of the human error factor and rely upon automated systems to keep things humming along smoothly. Systems much like the ones made by the company where Robert M. was a development manager.
"Our database has a table called Year, and below are its contents" notes Suzy T "Want to guess which column is the primary key? You said 'ReferenceId', right? Bzzt, wrong! It's YearValue, of course. I feel like populating ReferenceId with dates from the 1970's just to see what happens. And lord help us in 2013... "
Between The Alliance / Bad Code Offsets, helping out the advertising team for Stack Overflow, the day job, and a new special project that Mark and I have taken on (to be announced soon), I have once again fallen behind on today's The Daily WTF article. But that's where I was hoping you might be able to help out.
The wonderfully bad stories and stupendously awful code shared on The Daily WTF comes from you, the consummate IT professionals who live them first hand. So please, share your stories. It can not only fun and cathartic, but other people actually learn from reading about these mistakes. And if you enjoy writing and would like to help Mark and I tell these stories, then let me know. I'd love to hear from you!
When it comes to clever coding, there’s a fine line between amazingly brilliant and incredibly stupid. Take DocumentDotWrite.js, for example. It's a single-line JavaScript file that’s served (http://rmd.atdmt.com/tl/DocumentDotWrite.js) seemingly all the time by Microsoft’s Atlas advertising platform.
function DocumentDotWrite(s){document.write(s);}
The Denny's Interview (from Bruce W)
Not too long ago, "TaxQuik" announced major layoffs at the company, and I found myself to be one of the unfortunate few to be without a job. Nervous about being out of work, I found myself responding to just about every job posting that was remotely related to technology. Including a Monster job ad for a "Web site developer".
Shortly after applying for that position, I received an email requesting a demonstration of my programming skills. They wanted me to put together a web page that did some simple addition using JavaScript. I took the eight seconds required to build the page and emailed it right back.
Clean data makes me smile.
No really! When I have a finite number of brain cycles to dedicate to some process that receives user data, it makes me quite the happy guy knowing that it has been pre-scrubbed for such nasties as newline characters, the occasional ☺, or worse, the dreaded ಠ_ಠ.
There was something that seemed a bit off kilter about Victor C’s new boss. He was a nice guy and all, but his social skills seemed to be somewhat lacking. There weren’t any glaring red flags, but Victor noticed a few things in the interview – nervous leg bouncing, awkward small talk, and a way-too-frequent throat-clearing – that weren’t exactly typical. Then again, it was Victor’s first real job, so he hardly had a frame of reference. Maybe all programmer-turned-CEO’s had a few quirks like that?
Although the company was relatively small (about twenty people in total), the pay was very reasonable and it was exactly the position that Victor was looking for a web developer with a tiny bit of network administration on the side. His first day was pretty normal as far as first days go — paperwork, acclimation, source code setup, etc — and he even got a friendly text message from John on his way home from work.
Like most of his past jobs, Don R started at a new company with high hopes and low expectations. And also like many of his past jobs, his dreams were quickly whisked away. This time, it happened on his first support ticket.
"This'll be an easy one," his programmer-turned-manager boss said, "this used to happen quite a bit, and I've fixed it a few times. Sometimes we'll get descriptions with extra spaces, and when we send a datafeed to the processing company, it can mess up their systems. But I'm sure you'll be able to figure it out, it's in the clean-up routines."
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
Microsoft WebsiteSpark - a great program for web shops and freelance web developers and designers where you get some great software (Visual Studio Pro, SQL Server, Server 2008, etc), at no upfront cost for three years; it also provides support and resources to help grow business Rackspace Cloud - massively scalable hosting for .NET (2,3,3.5) PHP, Ruby, etc., with unlimited sites & mailboxes, simple online provisioning, and an enterprise clustered platform that's supported by real people. Peer 1 - provides award-winning Managed Hosting, Dedicated Hosting, Co-location, and Network services offered through 15 data center across North America. With over 10,000 businesses hosted on their legendary SuperNetwork™backbone, PEER 1 delivers one of the highest server performance and network outputs in the industry. MindFusion - a great source for flow-charting and diagramming components for a variety of platforms including .NET, WPF, ActiveX and Swing 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 - 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 - 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 - 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.
Two weeks ago, I announced the Bad Code Offsets project. It's a way to undo the bad code you other people have written without actually replacing the bad code. Much like carbon offsets, money used to buy Bad Code Offsets goes towards open-source projects which not only produce good code, but produce software that helps developers build good software.
And when I say the money goes towards these projects, I mean all of it. 100%. We pay for all expenses — PayPal fees, material costs, postage, etc. — out of pocket. But speaking of money, I’m happy to announce that we’ve raised $3,630.50 and are mailing out checks to the appropriate projects today.
When Vladimir first received his orders, the blood drained from his face. He was to take the legacy VB5 application, a system used daily by scores of users daily, and uplift it to C++.
After reviewing a few parts of the application, things began looking hopeless, however there was some good news! Vladimir had a department full of developers at his disposal and most of them had a hand in the creating and maintenance of the application.
Brad’s phone rang with the telltale tone of an inner-office call. “Yeah,” he briskly blurted out as he picked up the phone, “what’cha ya need?” That was actually his nice way of answering the phone. As the senior trader at Æxecor, one of the world’s largest energy trading companies, Brad didn’t need to impress anyone and, in his mind, displaying anything less than vicious hubris would be a sign of weakness.
“Err,” the receptionist nervously answered, “there’s a… err, delivery for you, sir. They—”