- 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 wonder what
means.ed: fixed
Addendum (2009-03-28 17:04): Thanks. (Pim)
Admin
Anything... except good coding practices.
Admin
I'm guessing:
Unfortunately, FIELD42 was overwritten by a hard-coded string and... well you get the picture.
Admin
...And thus government was born?
Admin
Legacy system grows in size and complexity, losing standardization and common sense along the way. Developers realize they alone have the knowledge to maintain said system and make themselves irreplaceable, accepting the job security and perks that come with entrenching yourself in a system. New developer comes to management with grand ideas without a business case and is shot down.
TRWTF is that Barb is getting married. Really, who would shackle themselves to that miserable excuse for a human being?
Admin
And we re-learn a lesson: In the eyes of management, a slick GUI potemkin will always trump whatever steaming pile backs it.
Admin
You're thinking of Barb in Accounts. Barb in HR is foxy.
Admin
Wait, which one was caught snogging behind the liquid nitrogen tank?
Admin
Sounds like a great job!! Who wants to sit around worrying about this column name and that column name when you have free food! I have to maintain a horrible system equally as bad as that one and I have to bring in my own damn food!
P.S. are you guys hiring?
Admin
That was Barbara, the plant engineer. She hates being called Barb.
Admin
...and if we upset that boat, production will come to awe'll all be eating...
OMG WTF!?!?!
Admin
I learned this the hard way. We were being asked about charts and graphs and as a joke I created a dashboard that over used Flash charts to the point of being ridiculous.
... I am now support that application and it is forward facing to our company.
Admin
Like they say: Software development is like sex. One mistake and you support it for life.
Admin
I like this better: production will come to awe'll all be making shoes with awls for a living, get it?
Admin
That's just awl-ful!
Admin
Anyone else chuckle and think about how this story correlates to Wall Street these days? They do horrible things and get rewarded for it. Would they take the initiative to fix things before it's to late, they might loose those rewards, so they keep doing questionable things just so they make out.
Admin
It sounds to me like the usual story of the new developer that comes in and wants to start over from scratch because they know better.
It seems like if he just improves the app through small, consistent improvements, refactoring, and developing new code with a standard methodology, eventually, over time, it will turn around and be a much better app without "upsetting the boat"
Admin
Everybody say it with me in unison:
"Loose" -- rhymes with goose "Lose" -- rhymes with news "Looser" -- what my shoes are when they come untied "Loser" -- what I am when I can't spell
P.S. I work for PEDANT
Admin
To be honest, it seems more like the usual story of the older developers who are resistant to change.
Admin
PEDANT seems like it could use to be a bit more pedantic.
How's that for a five dolar word?
Admin
He laid out a 3-part "app revamp" and database redesign plan to improve the system on his first day after working on his first task.
Seems a bit presumptuous to me, rather than being stuck with older devs who won't change their ways, as the article would like you to believe.
Admin
I think it was supposed to be:
Admin
This steaming pile seemed to work pretty well, though. Some developers never learn the lesson that if it ain't broke, don't fix it.
Admin
Plus they're both wicked fun and involve the messy transfer of fluids.
Admin
Admin
In my experience, usually the fresh face IS the one who knows what's what because they haven't had to support legacy shit for years and become complacent.
You wouldn't believe the number of times I've been like this guy, and brought ideas to fix what kind of sort of works by chugging along, and get it shot down because the more 'senior' guys think they know better. They might, but their vision is clouded by having to see and work with garbage code. It poisons their mind and taints their ability to do what's right.
Admin
UPDATE tbl_newsfeed0010aa12 SET FIELD32 = 'Barb is a miserable excuse for a human being' GO
Wait-- was "private gossip only seen in IT department feeds" FIELD32 or FIELD23?
Admin
While what you say might be true, it is of course partly your fault.
There's an old saying you'd do well to learn - "Nobody likes a smartass".
You may have all the technical ability in the world, but if (as is so often the case) you are completely lacking in diplomatic/interpersonal skills, you're going to find all your great ideas being shot down. As long as the other people you are working with are humans, you need to realise this is your problem and you need to work to solve it; seething with impotent rage that other humans keep behaving like, well, humans isn't going to get you very far.
Admin
Admin
That's so sad, but extremely normal in most IT organizations.
Admin
Admin
And where does one find this "Advisor-Type" person? I could use one about now. I mean, it's great to code and actually see what I write help someone, but I keep getting this sinking feeling that no one is actually looking at what I'm coding.
Admin
HeHeHe. I'll bet you want to be a fireman when you grow up.
Admin
This is a nice companion article to yesterday's article. In both, we have a "simple fix" that is actually complicated.
Also, what program is that in the image for this article? The one on the right monitor looks like it might be Norton Commander.
Admin
That's my take on this whole situation. Clearly he doesn't have buy-in to rebuild the entire system. However, he does have authority over his own assigned parts of the system. It's a lot easier to refactor a single code module that you're in the middle of enhancing. Just don't take too long or they'll question why a simple code change is taking so long.
The problem however lies in the scope of his improvements. Sometimes you can only improve the code, othertimes you KNOW it has to go hand in hand with renaming the fields in the underlying tables. Improve just the code and you still have the same crap in the background.
Oh well. At the very least he can fix and update all the comments.
Admin
There's nothing worse than having someone think that a simple change request should be quick and easy to do. When in reality it's very time consuming and complicated.
Being on the shit-end of that situation so many times has taught me something. When you're not the one implementing the change, and don't understand how it's done, then don't presume that your minor request is actually going to be easy and quick to make. Ask the person for a time/cost estimate. Don't tell them "What? It's a tiny change...". Those people are douchebags.
Admin
Hah! Is funny because first letters of company name spell "pedant"!
Admin
I have a suspicion that the story is a little overstated...
So, chances are they probably would agree to changing things gradually over time if they can do so without bucking the system too much.
Not much of a WTF there... just fix it over time without taking the system down in the process.
Admin
No, in the eyes of ANYONE except programmers, a slick GUI is what matters, because it's what's visible. An application can have the best code structure, the fastest algorithms, whatever, but if the front end is horrible people aren't going to like it.
Admin
Admin
Arguably, that's why a lot of applications that programmers like don't do well in the wider market. It doesn't matter that our favorite apps are technically superior, because their UI is such that it puts off everyone who isn't dedicated to really learning the application. I see this especially with editors and design tools.
Admin
... messy transfer of fluids ...
Well, for programming, maybe in YOUR case, but for me, I type my code. With my hands.
Admin
Steven's proposal is the real WTF. A young developer who just came on board, proposing a broad redesign of a system that works despite what he thinks of his aesthetics? Come on, what did he think the senior devs would say? I wouldn't be surprised if he made up the whole bit about job security to make himself look better.
Welcome to the industry, kid. You're working for the end-user, not for yourself.
Admin
When many naive writers first wander their way from the classroom into the working world, invariably they will produce some lousy WTF articles. Usually though, there is an advisor-type person who will review the article, point out "you're doing it wrong", and turn the failure into a learning experience.
[The premise of the article wasn't bad, if "copy and pasted" from previous articles, but the writing lacked "punch."]
Admin
I've worked in places like this. The elite team are lionized heroes, fighting the technical fires that break out not infrequently in the critical systems. They are admired, praised, rewarded. Slack is cut for them--we don't stop for red lights, we have our sirens and flashers going!
Of course, any crisis which is prevented is a lost opportunity for glory. So, in theory, the best qualified to prevent fires--the "fire fighters"--have the least incentive to actually prevent fires, as long as they can just knock the fires quickly and cheaply (and heroically) down.
Many organizations are captive to their heroes. It's sad, but it works.
Admin
Note: I'm a BSD user, if you were about to brand me as a linux zealot or a mac fanboy, shove off :P
Admin
Well kid we can put changes on hold for several months, re-write that system, risk breaking who knows what and spend several thousand hours of developer time to bring it up to your high standards. Or someone could spend 3 or 4 hours doing copy paste programming and have it working by tomorrow. Let me think about it.
captcha: penis
Admin
I don't know where you have been working, while sounding good in theory, what you describe fails to work in reality. Very, very seldom can design changes at the exterior (i.e. small chunks of code at a time) improve a crappy architectural design. Until you can hit those core pieces (which likely involves major changes) the system is going to remain a piece of crap. Sure, there may now be pieces that are decently designed and coded, but they will still have a hacky smell to them because they had to be bastardized to fit in with the lousy architecture.
The best route for any newbie is to first learn how and why the existing team does what it does. Bide your time doing a good job and earning your respect. Maybe work on your ideas in your spare time. Then after becoming part of the team, your chances of initiating more sweeping changes rises dramatically. Especially if you have working prototypes to demonstrate. If you come in shooting, you will be shot down even if your ideas are good.
Admin
I don't really see a WTF here. This is common business practice. Not good common business practice, but common.
Admin
Dolorous.