- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
I don't think teller = teller + 1 produces the same amount of instructions as teller = teller
Admin
Ah, you mean FORTIS. Well, I'm not surprised - they certainly managed to make a mess of my mortgage. Oh, and they "accidentally" (and without telling me!) stole about 20,000 euro of my money.
The IT-fuckups I've seen come out of that particular outfit have been staggering over the years. Matched only by the malice of its management, really...
Admin
Admin
You mean the three of clubs.
Admin
If you want to write C, just write in C.
Admin
This is deliberate, though...
Admin
http://www.python.org/doc/faq/programming/#is-it-possible-to-write-obfuscated-one-liners-in-python
Even official Python FAQ says it is possible.
Admin
I'm a huge fan of and advocate for Python. However, I have seen what happens when a huge organization (of engineers with just enough programming experience to be dangerous) is forced over to Python. The result makes me weep. There are volumes of bad code. Most of the code is just for short test scripts, but every once in a while someone gets the idea to completely rewrite a framework. The best you can say is that the WTFs don't tend to be front page worthy, though I haven't had the time to really dig.
Admin
Portage. http://www.gentoo.org
Give me your paypal login/password and I'll just send the money to myself.
Admin
god damn we see this all the time in code reviews... bool returnVal; if (expression == true) { returnVal = true; } else { returnVal = false; } return returnVal;
can we all just agree that return (expression == true); does the same thing and stop fucking around?
Admin
Admin
This pretty much says all that needs to be said. It is a what the fuck but so what? It did probably solve a large problem with minimal efforts.
In all honesty if they hired a team of programmers to create the system it probably would have cost the company an absurd amount of money to get something with a bunch of worthless features they didn't need.
Admin
The real WTF is that the story allows you to deduce which bank it is. Dutch words are used in the code, and there is only one Dutch bank with over 50.000 employees and over a hundred daughter companies (they are not really daughter companies BTW, they are 'member banks').
This must be quite an old story. That bank has switched to SAP HR some years ago.
Admin
Sorry, can't agree to that. Why not just say:
return expression;
Of course maybe you expect expression to return FileNotFound, in which case you really want to return false?
Admin
Read up: Belgian bank.
And this is about HR reporting consolidated on the whole "holding". The systems that manage the actual payrolls are managed locally (and the big one in Belgium is indeed SAP). This story is less than 6 months old.
As for the blame game... well, this is really an issue of communication and cooperation between HR and IT. HR dudes did what they could and hired one consultant (at a time ^ ^) for maintenance and managing the occasional crisis, thinking that they couldn't rely on IT since they had to do it themselves in the first place. IT was happy to not have to bother with it.
And this is indeed a drop in the ocean in comparison of the what the upper management did to the clients and shareholders.
Admin
I'm thinking he was afraid of items (numbers) that would right Justify......
<for the idiot(s): this is not serious......seriously, it isn't.....>
Admin
That language isn't exclusive to the Netherlands...
And considering that the original poster has pointed out the country of origin....well, needless to say... Flemish!= Dutch
(Although it's not as if it weren't easy to mix em up in this setting...)
Admin
Could not be put more eloquently!
Admin
Ok, even if we were to accept your wild assumptions up to this point…
If Rob's code worked that great, why are there dozens of versions of the spreadsheet each containing different ad hoc fixes? If Rob was such a wise man, why wouldn't he document his code before leaving the company? (Or why would the company let a genious (speling intentional) like him go?)
You're right. Over 90% of the people don't know the first thing about programming. Nor do they need to. There's nothing to be ashamed of. However, of those 90%, most are wise enough to realize this fact and either refrain from writing computer programs or learn something first. It's unfortunate that Rob was not among this majority. You think it's arrogant of us to laugh about the WTF code written by clueless non-programmers? It's more arrogant to start writing code for professional purposes (and a multi-billion dollar company) without even getting a grip of the basics first (such as how to return values from a function or the lifetime of variables).
Every CS student would have written better code for a tenth of the money, though. And if Rob had really been worth his money, he would have given that student an internship.
Again, it's not the fact that he didn't know about the latest and greatest in information technology. It's that he didn't know an assignment from his ass. This is elementary stuff. It's like building a house when you don't know the direction of gravity, or fixing an electrical device when you don't know the difference between AC and DC. I dare to claim that if a person were to display similar ineptitude in any other endeavor, you would call him an idiot yourself. (You aren't working in HR, are you?)
By the way, reading Hans' comment was really entertaining after reading yours.
Admin
...."Enter your six digit pin, and then pound the hash key...." (or was that "hash the pound key" ???
Admin
That's "Octothorpe."
Here's a little article about the term: http://www.worldwidewords.org/weirdwords/ww-oct1.htm
Admin
Very well put...
I dunno about all other programmers, but I put a lot of time and money into my brain to get it where it is. I continue to spend time and money on professional development.
As such, I get a little miffed when I see a non-pro messing around with code. They have about as much business looking at code as I do hanging out in an Operating room.
Programmers who are passionate about their job get pissed when someone tries to play programmer...because they get to clean it up. Just like a doctor would probably be irritated cleaning up after me if I decided to play surgeon.
Hobby programmers are allowed to screw things up, so long as they are doing it as a hobby. Once you write start writing production code in a professional environment...well, I'm an advocate for programmers to have a license to practice just as much as doctors are.
Admin
You mean making people accountable for their actions?
Surely soceity is going in the opposite direction...Allowing people to blame someone else for all their f*&%-ups.....
Admin
Admin
If you'd spent even a minute in large European corporations you'd know that these hobby programmers are the rebellious few that force management into eventually building a full IT staff. Without them, a lot of things will still be done manually, and a lot of managers will not take the calls of your consulting outfit. Do they create great reliable code ? Very rarely (only the insane would defend that). Do they bring things forward for us all to eventually work on and improve a set of business processes ? Absolutely. They often create work that we would only have seen with a change in management (that tends to come late).
Give them the credit they are due.
Admin
Fortis eh? They just got split up ... they still exist. :P
Admin
(but seriously, what you just wrote was one of the most ignorant things I've ever read on this website)
Admin
But they're not a Belgo-Ducth bankinsurer anymore. IIRC, they're now
Admin
Someone, post link to xkcd comic!
Admin
I'd like to see a real assembler WTF.
Admin
But if you really want an exception, you could keep chainin' those evaluations and hope for an OutOfMemoryException.
Admin
I don't remember what version, but early on, there was a push operation but no pop, or shift but no unshift, one of the two... I've never really gotten past that, even though they did eventually add it.
Admin
This is somewhat off-topic (and personal), but what do you guys think of employed students who write wtf-ery code? I worked at a small company when I was 16 for a few years, and I am quite ashamed of what I produced when I look back now. There wasn't any senior guidance and I didn't know any better.
Admin
Well if we have to give them the credit they are due, we can surely laugh at the bad code they write.
Especially when they put things like "teller = tellher" into an interpreted language.
Admin
Admin
Python 3 could have fixed it by disallowing tabs. [/serious]
Admin
Admin
That's because MS tried (and note that I did say try) to be intelligent. It is actuallly C-Sharp. The # symbol in music means that a note is raised by a semi-tone so transposed to computer languages, C# would rate "higher" than C.
Admin
Python itself is a WTF. Invisible characters as a major component of your syntax? EPIC FAIL!
Admin
Perhaps Guido was just trying to avoid holy wars about which brace style to use.
Try this: Open your Python interpreter and type:
Then you don't have to worry about whitespace anymore.
Admin
First of all, loading data is not mission critical, so comparing it to surgery is dumb.
Secondly, there are loads of processes in the business world that require hours and hours of tedious, repetitive work. Usually, these processes involve Excel. In an ideal world, a "real" programmer would be brought in, but for various reasons this does not happen, usually because management is reluctant to spend the money to expedite a process that is already in place, even if the existing process involves repetetive, error-prone data entry by overworked clerks who have to give up their nights and weekends to get done. In this case, if some one can patch together some macros to help out, they will be seen as a savior, and the fact that a query takes 8 minutes is irrelevant and so is the quality of the code.
Admin
Loading data can be mission critical...
Noone is arguing that management is reluctant to spend money, or that people do hack things together, the problem is that this SHOULD NOT happen.
If you owned a transport company and you found one of your trucks was regularly breaking down, would you want your staff to attempt a fix, or would you hire a mechanic? Oddly enough many would allow a truckie to have a look at it (BAD MOVE), but few would allow their HR staff (even if they mess with cars as a hobby) to have a look.... A truckie will probably fix it (short term).
A hobbyist may fix it (possibly slightly longer term (ignoring for a second the likelihood that a hobbyist knows petrol engine cars, and the truck in all likelihood is diesel)). A mechanic will fix it (hopefully longest term - and if not is ACCOUNTABLE for his mistake). This, methinks, is the key. A professional doing what they're qualified to do is ACCOUNTABLE for what they do. A fiddler messing around with something is not. Sure, a lot of the time things may (seem to) work. Sure, management is happy 'cause they save money. Does this make it a good idea to do so? Probably not.
Admin
Perhaps more to the point, in fixing it short term, the truckie may make it quite costly to fix long term in the future. The problem with a backyard-hacker putting together code such as this, is that it ends up costing more to fix than it would have. Sure, we could just start from scratch, but you'll find that if people are already used to using the hackers bits and pieces, they may be used to all sorts of little idio-syncracies (can't think of one in this particular example, I'll admit). The point is, that unless you can guarantee that you replicate IDENTICAL behaviour to what the backyarder has created, there is little point starting from scratch without more planning than would have been necessary had no system been implemented...
Must say, I quite agree with the sentiment...If you're not a (qualified) Cook, get the F&%$ out of my Kitchen!!!
Admin
Not sure what you mean by that high accountability horse here... do you personally owe the company you work for money if your code has bugs in it ? Face the firing squad at dawn ? Or is your whole argument the fact that you can be reprimanded because you have a diploma ?
Here's how it looks from management's point of view: the HR staff has highly cyclical waves of work thrown its way. When the company is growing they hire and interview; when it is shrinking they provide paperwork and follow-through; the rest of the year they help management with intervention, policy and guidance, help accounting with payroll and benefits, and help marketing by showing up in nifty suits at job fairs, universities and cocktails. IOW, there can be a lot of slack time. So I can get one guy to code up something useful but not really mission-critical (there are still a few eyes looking at a process that was already established but has changed) for no extra money ? If he fails I spend money that wouldn't have been spent on anything productive anyway (keeping the guy around). If he succeeds I can push off hiring an expensive IT guy for a quarter or two, and perhaps more. Sounds like a sweet deal to me. That may piss off a few certified developers, but we haven't built that firing squad wall yet anyway (HR thinks it might be illegal.)
Admin
Hmm...that's management material....I always thought managers have a unique (usually unrealistic) perspective of the world.
The reality is that there are always tasks that HR people can do, and allowing one an undetermined amount of time to work on a little project that at best costs you his salary for however long it takes him (or her, of course) to figure it out seems a rather silly thing to do. I'm not a manager, so perhaps I see things from a totally different direction.
You have to assume (especially given by the quality of code in the WTF), that there is little reason for management/supervisor to think that our friend Rob would be capable of such a task (other than he may one day have mentioned it in the coffee room). Though management wouldn't admit it, they would probably have little idea of how simple (or not) this task actually is (especially given that presumably the person authorising this is a fairly direct manager, who's required skills should be similar to those of his underlings (plus a few more, I guess)). Admittedly, it's probably higher management that deals with authorising monies to go places, but even so....
I suspect the more likely scenario, is that little Rob came up with this code at home (that is unpaid, and without authorization), and his coworkers simply adopted it. Aside from all else, this is more likely - this was written not as a piece of software with proper process to consider possible risks etc, but rather hacked together as a sparetime project.
I doubt management would ever authorise such a task, and your justifications above have certainly failed to convince me.
If you actually are a manager and think like that, then I'm a little bit disturbed. You have managed to give me quite an insight into why we actually need a million layers of management (so that the blame for such decisions can be nicely hidden somewhere in the middle layers).
Companies go broke with that sort of attitude - 'We'll try to hack something together using anyone we find in the street that won't cost a penny, and only worry about consequences as they appear'.
I often wonder how much more certain companies could make by
Admin
Also, your counting skills would suit you for that role, because you missed the bit where the hero of this particular story was, in fact, not the first guy bought in, and apparantly there had been enough work to keep a whole bunch of people busy for quite a bit more than half an hour.
You honestly believe that he saved the employer so much money that having four consultants take turns fixing the code (at least one taking an entire year on the project) was still more cost effective than having hired someone competent to write it in the first place?What's that saying about being penny-wise and pound foolish? Fine, they saved cash for the first while by getting an idiot to write it, then a few years later they lost the salary of 4 consultants.
And your claim doesn't work, either - even if he was being paid a "baseline" salary and doing it in spare time, when not busy with the duties he was hired for, that would just prove that a competent developer would not have taken a team of people an entire decade to write it. Penny wise, pound foolish. Again.
Sorry, the most cheerfully optimistic interpretation here is that Rob was a competent amateur and management were morons for wasting money on all the incompetent consultants.
Rob, I know you feel bad, but your self defense just doesn't seem quite right to me.
But, if it helps, the fact that they had a large number of installed copies of the alleged "application" (I can't bring myself to call it an actual application) and bugs were fixed for individual users (when the users sent complained) but users who didn't notice got to keep their copy of the bugs is a hell of a bigger WTF than the fact that the code was crappy, anyway. For all Rob's faults, management wasn't too sharp either.
Admin
Well, your world view presumes that:
There is plenty of experienced available labour (usually false, a bit less now but not by much)
The IT department is not one of those microcomputer high priesthoods that couldn't be bothered to write tools that people can actually use on their desktops, or makes people wait so long that even a clunky process now would be better than a perfect process 5 years from now. I've seen shops like that where the early engineers made such career-protecting moves that they ensconced the company in technologies that a minuscule few could handle; good for them, sucks for everybody else. Good luck finding experienced RPG labour these days.
That the task described here is actually significant and mission-critical.
The thing is, I understand that from the peaceful confines of a University or recliner chair that these theories make sense: there's always perfect labour available at just the right moment at a budgetary-sound cost to perform the required task up to rigorously defined standards. It would be great if it worked that way. Instead IT is overburdened, under-staffed, has a hard time recruiting competent seniors, and gets barely-coherent task descriptions dumped on them that need to be hammered out again and again into clear specs, taking more of the devs' time in the process and making the waiting list longer and longer. Other departments (production, marketing, finance, accounting, etc.) do react as they can: they cobble some code contraptions together that somewhat relieve the burden. Perfection be damned: pragmatism wins the day. And when an HR guy pulls a solution that (I will assume) IT couldn't perform in a useful amount of time (for whatever reason, including understaffing), I think he deserves praise, not scorn, even if he doesn't return his booleans in just the perfect and tidy way (how often would you have to run that code for that inefficiency to take as much time as has been spent on this discussion today ?) Nobody says it is a perfect job (far from it, obviously), but it beats having absolutely nothing to replace a manual clerical process (which I still believe this was meant to replace; what else could have predated it that actually was less efficient ?).
Admin
Can I join the Essay contest too?????
Admin
To me, the analogy is that there is no truck, but a bunch of people having to carry the freight on their back. An enterprising person comes along and cobbles together a cart, which makes things a lot easier. Then you come along, see the cart, and starts nitpicking that the cart squeaks when it moves and doesn't turn very well.
Admin
Lots of Creative people here today!
One comes up with the worlds greatest analogy, the other shoots down with world's greatest response... And all over something that don't matter for naught.
love the four mile long posts too, people. Wish they actually said something, though.
Blah!