- 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
Yeah, I was a military brat and I know first hand that when learning a new language, the first thing you learn is the curse words. They are more interesting, and memorable, no matter what language you speak.
captcha = howdy (Dur, how'd they know I am in Texas?)
Admin
It is merely to indicate that English isn't his first language.
And when you are told to maintain bad code, no matter how many languages you speak, they will all fail you.
Admin
And yes, I sympathized with poor Huang, felt sorry for him, laughed with him - but make no mistake, I did, in fact, laugh at him, too.
Admin
Making fun of accents != racism... just ask a Southerner or a Texan. Accents are far more varied than races. Sure, some accents are undeniably linked to race, but it's only one minor component. Finding minor (and unimportant) differences amusing is perfectly natural and harmless behavior... not even remotely akin to actual discrimination...
Admin
If I had mod points I'll mod you insightful.
I'm, sorry, CAPTCHA: (I did say sorry!) xevious. fuck xevious damn no is stupid word in the English!
Admin
"Whites rarely realize when they are being racist." - That's a very racist thing to say, even if you didn't realise it.
Admin
Definition of funny: "2. Strangely or suspiciously odd; curious."
Hmmm. How racist are you if a particular accent seems odd (ie, out of the norm) to you? God forbid, you may be the next Hitler.
Admin
Speaking as a half-Korean (1) from Texas (2), this is absolutely on the mark. Complaining about this sort of thing is crying wolf, causing the criticism of actual discrimination to be taken less seriously.
(1) Not that I know much about the language or culture, so I'm sure some humorless git would reply "but you don't count!".
(2) Up until 1995.
Admin
OK, here's a question for you all : Why do we never push back hard enough? We've all been in situations where we're asked to do a job which we know is a complete waste of time and resources, and which will most likely make the overall situation worse than it currently is. And yet, at the end of the day, we sit down and do it. We'll generally put in an argument to try to explain to the PTBs that this isn't the right way forwards, but upon hitting that brick wall of manager ignorance/stubborness, we sit down and do the work. Why is it that we don't have a structure in IT organisations to be able to say "You don't know sh!t about this, I'm taking over"? God dammit, WE are the ones who know what we're talking about, so why do we so rarely get listened to?
Admin
Admin
GUYS, IF YOU HEAR ME!
Do it now.
Admin
Can't put it in the landfill, it's hazardous waste.
Admin
Just to clarify. Poking fun at people that have a bad command of a programming language is okay. Poking fun at people that have a bad command of the English language is not. I believe this is called "selective prejudice".
Admin
It's always sad to know a man who's not well Hung.
Admin
As someone who has been in a similar situation from the management prospective, I think many developers miss the business side of the equation. It isn’t always about “saving face” or “being blind.” Sometimes ripping on management is justified, but sometimes people just don’t see the “whole business” beyond their interests.
In this case, you’re right. Starting from scratch probably would have been the best option. No useable code, unknown libraries, and poor documentation make it a recipe for disaster. However, from a manager’s position the story may have been different. We just don’t know from what the article tells us. Though, as someone in IT Management, a lot of times we’re called idiots or fools for making unpopular decisions that may have to conform to poor (or good) enterprise wide requirements. Sometimes decisions are made that suck for IT, but benefit other departments (again, unlikely in this case). Without additional information, it’s hard to say what this business was responding to.
How could this mistake have been made? I’m going to make some leaps here to fill in some blanks, but this is a possible way things could have gone sour for the development team. Admittedly, these are some pretty big leaps, but I’m just trying to give an example.
You (as IT management) have hired an “expert” which informs you that you need to update your software and the best choice is to rewrite an application in a “modern” language. You accept his premise (for whatever reason or reasons) and begin a project hiring him to create a new software package. He’s sold you on a bill of goods that translating the existing application just isn’t a good idea. Recycling code, porting the application, or (insert alternative) just isn’t a good idea.
Yes, the program works but as an IT Manager you’re reliant on the expert to telling you whether it’s a good idea to expand on it, port it, and recycle the code in some way. Perhaps the functions and libraries are a kludge. The trick is discerning whether or not you’re being told the right story. I’m not going to get into discussing consulting groups but they have their place. If you’ve accepted their story, you’re going to move forward with the rewrite rather than a modification.
As the program rewrite progresses let’s assume that Edward has missed all of his deadlines. IT management is trying to do the “right thing” by allowing Edward to get it right instead of pushing the deadline. However, coming up on two years, now we’re starting to get nervous. Edward’s program isn’t working, missed deadlines are stacking up, and we’ve still got nothing to show for our investment. Edward sees the writing on the wall and BAM, he leaves.
So – now IT management has to make a decision. A new group of “experts” has come in telling them that surprise all their new code is unusable and that it would be easier to start from scratch. They get the same song and dance from the new group of experts as the last.
See where I’m going with this? You’ve got a significant investment in this new application that you MUST be prepared to throw away. You have to trust that your new experts will not pull another Edward and you’re going to have to explain to the VP why you abandoned his code and started over. Again, perhaps in this case it was fully justified. However, you’d be surprised how many developers just don’t want to work on someone else’s code. Sometimes you have to do a little arm twisting and when they get into really doing it, it isn’t so bad and you’ll recoup your investment.
It’s smart to establish realistic benchmarks and have decent oversight. It’s easy to place the blame on bad management and rotten Edward, but in all fairness, when you’re in those situations the scenario can be quite different. It’s not always easy to know when it’s time to dump your investment and start over. The trick is figuring out when to do it and having the courage to do it. It’s not always about being a moron, saving face, or being hard headed. Sometimes it’s just a tough business decision that the development staff isn’t going to like.
Admin
...
The name Hung is not even remotely close to a Korean name.
If you had to change the names to hide the identities, why don't you change the name Tim to ChingChangChong?
Don't get me wrong, the name does sound "Asian" as you might have wanted to, but it is definitely not Korean.
As a matter of fact, are you even sure that this "Hung" screamed his frustration in Korean? You sure it's not Chinese, Japanese, or even German? Would you even have the ability to distinguish between German and Korean? Obviously not.
Ignorance...
Admin
Actually, he was screaming his frustration in (broken) English. We're trusting that he was Korean because (I'm assuming) the submitter said so, and since the submitter was the one who actually KNEW "Hung", he might know where he came from. It's one of those pieces of information you tend to pick up when working with somebody who came from another country.
The fact that the name he chose wasn't a Korean name...yeah, it's a bit of an oversight. Jake could probably have found a better name to use. That doesn't, however, mean that he can "obviously" not figure out the difference between Korean and German. It's not like he re-named the guy Wilhelm or some such.
Admin
I never said the article was racist. That is, I don't believe the article tries to imply that Hung is inferior in character or ability because of his race. I did say it was offensive. I believe it promotes ethnic stereotyping. You may not be offended, even if you are Korean. That is your right--just as it is mine to object.
Admin
Ok picky delicate sensible people.. Hung isn't a Korean name right? What if Hung was korean but his mom dad wanted to name him a chinese name? See were I'm going? No? well nevermind then.
Admin
I agree 100%...
Admin
If Korean wasn't the guy's real nationality, why pick it? My guess is that Koreans are a "funny" stereotype in the US, like people from the Indian subcontinent are here in Britain. This kind of anecdote is much funnier told by a "Korean" at their own expense. Why not say he was a Jew who swears in broken Yiddish ? Yeah,right... (Bigotry test: If you substitute Jew for the race in question, does it sound anti-semitic?)
Admin
Interesting; I don't find people from India funny as a race.
I also don't find a Jew swearing in broken Yiddish offensive. Although to be true to the original story, s/he'd have to be swearing in broken English... still not offensive, by any means.
Admin
For all we know, in the original Hung was Isaac and, while fluent in Yiddish, was swearing and ranting in broken English; but that went the way of anonymisation.
But still, no matter what the guy's home language was, and however fractured the guy's English was, we still understood his problem exactly.
But anyway, since someone has already cited Hitler, I want to invoke Godwin's Law (even though it won't work).
Admin
Poor Hung ... I feel really sorry for him. But as an employee one should not get emotionally attached to work stuff. Emotional attachments are for one's personal life, not work.
Poor Tim ... I know how he feels.
Two solutions to the problem:
1.) Translate the pascal with P2C (that was available back then). Use the UI library and the printer library directly from the translated C code. Ditch Edward's code alltogether and lie to management about not using Edward's code.
2.) Wait until the list of errors discovered in Edward's code is truly monumental, then list them all together with the amount of time required to fix them and issue a detailed report (with a summary - we all know our PHBs) to management and request a management decision whether the continuation of the huuuuuuuuuuuuuge effort to fix the issues should be continued (again in writing) to cover your ass.
Remark: Yes, I work in a large (government) organization and therefore am maybe morally jilted.
Admin
Hmmm ... let me tell you how the legal situation is here in Germany on issues like this: if there are no clear specifications then the customer has the better legal leverage and the supplier has to jump through hoops until the customer is happy and signs off. Therefore scoping the work/system to be done/implemented as exact as humanly possible is very, very much in the interest of the supplier. If this is not so and it comes to a lawsuit then the supplier will be holding the short end of the stick at court - case closed.
The interpretation you suggest has been rejected in german courts when these issues first came up on the grounds that customers (at that time) were usually not IT-"literate" and are therefore at the mercy of the IT-suppliers otherwise.
Now I do not know how it is in the US or Canada - anything, anybody ?
Admin
That's what Rap and HipHop lyrics are for ....
Admin
Maybe because that is racist and derogatory ...
Admin
Yeah, management never gets it about not reinforcing failure ...
Admin
I just hope for you that your resume is up-to-date. Look for other jobs internally or externally. Learn another programming language/paradigm. Just don't waste your time.
Ask for everything you need in writing and keep a paper trail "in order to pass the buck" so they can not get at you for non-performance.
Admin
What's a "honkie" ? Never heard that one before.
Addendum (2007-04-15 02:18): Oh, never mind - got it from urbandictionary.com:
Word HONKIE or HONKEY originated in Chicago in the 1940s when repeatedly White men would drive to predominately black areas honking their vehicle horns looking for prostitutes. The annoyance caused the black community to refer to them as Honkies. Still today this term is still widely used to describe White people.
Admin
Yeah, make Edward's live in a separate lib and just do not use it in your code at all. Link into the executable and then ditch it in the first maintenance release. Case closed.
Admin
That's great ... I nearly pissed myself.
Admin
First of all, thank you: I found your submission very insightful.
Now for my nit-picking:
A.) Why was Edward not bound in a cast-iron contract ?
B.) Edward was working two years without results missing his deadlines. What do you think how many deadlines must he have missed ? Four, five, six or even more ? Unless Edward was working in org limbo or had a PHB to report to that should have escalated further sooner quicker.
C.) The company had Hung available as a technical AND subject matter expert to conduct code reviews after the first few missed deadlines (unless getting rid of Hung was the initial objective of bringing Edward in). Oh, sorry, I forgot the first rule of consultants: management thinks consultants are always right since you pay them more than salaried employees (I recall one Dilbert strip where it is indicated that the word "consultant" is a merger of the phrases "con man" and "insult"). And you can not let the code of a consultant having been reviewed by an employee since that includes the risk of the consultant's management sponsor losing face.
It does matter what your intentions were: if a manager behaves like a PHB, he is a PHB.
Admin
I think the "sunken cost" fallacy might be at work here. It's perfectly understandable to me that people in management would have a hard time believing that 2 years worth of "work" are of no value. To a manager, that must sound like the equivalent of bulldozing a factory and building a new one; I would really really want to see if something in that factory could be salvaged. Unfortunately, software development doesn't look like that.
The thing is, outside of IT, management would want to keep an eye on how things are progressing. SOMEBODY would take a trip out to the factory being built to see that, yeah, something's there, people are hard at work. This is a strong argument for small iterations of development, where everybody can see that something's taking shape. It's also why every project I've ever worked on has an independent testing team to ensure functionality is actually being implemented.
Admin
Thanks, you've made me spill my drink on my screen, through my nose.
I believe you have a point, though. But the way you put it... lol :D
Admin
Straight from Wikipedia: Hyung-Tae Kim (김형태) (born February, 1978, Seoul) is a Korean artist...
Are you sure "Hung" and "Hyung" are not even remotely close to each other? They look similar to me...