• (cs) in reply to brazzy
    brazzy:
    Matt Westwood:
    Jay:
    And they look at me like I'm an idiot. "Don't you understand why it's better to not have to make code changes?" they ask condescendingly.
    ... to which you look them in the eye with an open expression and say, politely, "No. Why?"

    And then they explain their change request process and their deployment process to you, and you start to see their point, at least a little.

    Of course, the correct solution would be to fix those processes, but good luck with that...

    Sort of my point. As they go through their description of the change process, your expression changes to baffled incredulity, and the enormity of what they are describing starts hitting home.

  • (cs) in reply to co
    co:
    dkf:
    big picture thinker:
    I disagree. Too much "soft-coding" (planning for extensibility that will never be useful) is a huge problem.
    But with too much hard coding, you've got something that's not just instantaneously obsolete, but also dangerously brittle (e.g., server software only works on one machine because of all the hard-coded paths to a developer's pen drive that was mounted in a strange location).

    Not that you're wrong as such. More that you're doomed either way. Sometimes even both at once…

    Conversely with too much soft coding you haven't actually got anything except a program written as a series of variables.

    Any concept can be misused (badly). Sometimes the effort to hard code now coupled with the effort to make a value configurable later is only just more than making something configurable now and never having to configure it....

    That said, most of it comes down to planning. Good planning hopefully sees the right decision being made on hard coded vs soft coded most of the time. The rest of the time (hopefully) it's a minor inconvenience... Something like a time zone might reasonably need to be configurable. Something like the length of a day (not the length of a workday, but 24hrs) can probably be hard coded because the likelihood of it changing in the life of your app is fairly small, and the effort to make it configurable outweighs the risk.

    Then again, using "24" whenever you need to use the number of hours in the day is a bad idea. Not because of the pain of changing it but because you won't be able to tell it by searching for instances of 24 from other instances of 24 (e.g from the 24 you'd hard-coded as the number of employees in the company).

  • (cs) in reply to Prashant
    Prashant:
    Matt Westwood:
    C-Octothorpe:
    Captcha: paratus:
    I'm not an xkcd-hater
    I am, and anybody sadistic enough to perpetuate the shit should die a painful death designed for pederasts and liberals...

    And Christians.

    Couldn't help but wonder the uproar if instead of Christian you'd said Muslims....

    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    So throw it away and become an atheist. You know it makes sense. You'll never regret it.
  • (cs) in reply to Prashant
    Prashant:
    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    Yeah, married, white, Christian, heterosexual males are really at a disadvantage in Western society. I mean, how many political and business leaders can you name that match all of those criteria?
  • peter (unregistered) in reply to Severity One
    Severity One:
    Prashant:
    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    Yeah, married, white, Christian, heterosexual males are really at a disadvantage in Western society. I mean, how many political and business leaders can you name that match all of those criteria?

    For a moment I thought that you implied that being a political or business leader does not suck profusely.

    CAPTCHA: nulla (is that between null and nullb?)

  • Gibbon1 (unregistered) in reply to dkf
    dkf:
    But with too much hard coding, you've got something that's not just instantaneously obsolete, but also dangerously brittle (e.g., server software only works on one machine because of all the hard-coded paths to a developer's pen drive that was mounted in a strange location).

    Not that you're wrong as such. More that you're doomed either way. Sometimes even both at once…

    Something like that is easy enough to fix if needed. Meaning that if you need a path a PathProviderFactoryFactory shouldn't be your first idea. Meaning adding complexity is often easier than removing it.

  • Darkstar (unregistered)

    Interesting all-nulls row there at the bottom...

  • MORAN (unregistered) in reply to Prashant
    Prashant:
    Matt Westwood:
    C-Octothorpe:
    Captcha: paratus:
    I'm not an xkcd-hater
    I am, and anybody sadistic enough to perpetuate the shit should die a painful death designed for pederasts and liberals...

    And Christians.

    Couldn't help but wonder the uproar if instead of Christian you'd said Muslims....

    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    [image].
  • Major DoucheBag (unregistered) in reply to Severity One
    Severity One:
    Prashant:
    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    Yeah, married, white, Christian, heterosexual males are really at a disadvantage in Western society. I mean, how many political and business leaders can you name that match all of those criteria?

    I hope you do realize that you just discriminated against him.

  • (cs) in reply to Prashant
    Prashant:
    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.
    Yeah, but don't you know how guilty you (or rather your ancestors) are? There's no way you could have recovered already.
  • (cs) in reply to brazzy
    brazzy:
    Matt Westwood:
    Jay:
    And they look at me like I'm an idiot. "Don't you understand why it's better to not have to make code changes?" they ask condescendingly.
    ... to which you look them in the eye with an open expression and say, politely, "No. Why?"

    And then they explain their change request process and their deployment process to you, and you start to see their point, at least a little.

    Of course, the correct solution would be to fix those processes, but good luck with that...

    Ah so basically having wrapped yourself up in change control red tape you stick a whacking great back door in the application allowing you to bodge anything you want without any record of it.

    Of course I'm in RAD/Tactical development where if it's wrong you fix it but at least if you fire me you'll find the logic in the code where it belongs.

  • blither (unregistered)

    If it works, is quick to write, is well documented, and is easy to maintain, then IMHO anything is acceptable :)

    Anything 'better' is just snobbery unless it really is generally agreed to be significantly more elegant.

  • (cs) in reply to Jay
    Jay:
    I've seen programmers do this time and again. I ask, "Wouldn't it be easier to just write the one line of Java or VB code?" And they start at me with incredulity and explain, "But this way you can change the logic without having to write code! We don't have to recompile when we make a change. Users who don't know anything about programming can make changes for themselves." Etc. I'll point out that, sure, you don't have to recompile, but you still have to run your XML preprocessor or whatever "non-computer language" processor you have for these instructions in, so you haven't gained anything. Or that your custom language is harder to read and understand than VB. And they look at me like I'm an idiot. "Don't you understand why it's better to not have to make code changes?" they ask condescendingly.
    You can solve this by making your own "config system": you copy each file (e.g. "main_code.py" to "main_code.config"), and then replace the original with something like:
    eval(open("main_code.config").read())
    
    And now you don't have to recompile, you are not technically editing the code files, and you can still write your functions in VB, Python or any language!

    (yes, you can do eval() in compiled languages, you just need a custom function that compiles the code on-the-fly, they exist).

  • Pedantic Dickweed (unregistered) in reply to Prashant
    Prashant:
    Matt Westwood:
    C-Octothorpe:
    Captcha: paratus:
    I'm not an xkcd-hater
    I am, and anybody sadistic enough to perpetuate the shit should die a painful death designed for pederasts and liberals...

    And Christians.

    Couldn't help but wonder the uproar if instead of Christian you'd said Muslims....

    And Muslims.

  • (cs) in reply to Prashant
    Prashant (unreg):
    Matt Westwood:
    C-Octothorpe:
    Captcha: paratus:
    I'm not an xkcd-hater
    I am, and anybody sadistic enough to perpetuate the shit should die a painful death designed for pederasts and liberals...

    And Christians.

    Couldn't help but wonder the uproar if instead of Christian you'd said Muslims....

    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    If you are pretend to be white, married, christmas, at least have courtesy to not use Indian name like Prashant, madarchod!

  • Foo (unregistered) in reply to dkf
    dkf:
    dangerously brittle (e.g., server software only works on one machine because of all the hard-coded paths to a developer's pen drive that was mounted in a strange location).

    your development environment lacking search-replace in solution?

    Just ported 20+ projects full of hard-coded paths to a mounted network drive from VS2005 to VS2010, and found 2010 wasn't keen on mounted drives (some permission thing, I guess), but happy with UNC ones. 2 minutes to do a search-replace on the whole solution. Hardly a disaster.

  • Foo (unregistered) in reply to Severity One
    Severity One:
    Prashant:
    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    Yeah, married, white, Christian, heterosexual males are really at a disadvantage in Western society. I mean, how many political and business leaders can you name that match all of those criteria?

    um... can't actually think of any... IIRC, the US doesn't have a white leader at the moment, don't think he practices any religion with any regularity, and his opponent is a Moron. Sorry, Mormon. There's a few political leaders who feign an interest in religion to get votes, perhaps, but those who do it for personal reasons not PR? Can't think of many.

    Outside of the US, very few political or business leaders even feign an interest in religion, and many are openly hostile to it. And lots are neither white or male, though probably most are hetrosexual and married.

  • (cs) in reply to Foo

    Gee thanks Foo, way to keep the white man down.

  • (cs) in reply to Severity One
    Severity One:
    Prashant:
    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    Yeah, married, white, Christian, heterosexual males are really at a disadvantage in Western society. I mean, how many political and business leaders can you name that match all of those criteria?
    10/10. The unabashed dis-ingenuousness of the argument puts it over the top. Well done, sir.
  • Peter (unregistered) in reply to Nagesh
    Nagesh:
    Always go with Agiel-Scrum, I think.
    "Agiel-Scrum"? What's that? Some sort of angel-demon hybrid?
  • Nik (unregistered) in reply to Severity One
    Severity One:
    Prashant:
    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    Yeah, married, white, Christian, heterosexual males are really at a disadvantage in Western society. I mean, how many political and business leaders can you name that match all of those criteria?

    But the most powerful man in the free world is none of those things!

    rimshot

    I'll be here all week folks, don't forget to tip your waitresses.

    (CAPTCHA: tristique, your waitress)

  • Jay (unregistered) in reply to brazzy
    brazzy:
    Matt Westwood:
    Jay:
    And they look at me like I'm an idiot. "Don't you understand why it's better to not have to make code changes?" they ask condescendingly.
    ... to which you look them in the eye with an open expression and say, politely, "No. Why?"

    And then they explain their change request process and their deployment process to you, and you start to see their point, at least a little.

    Of course, the correct solution would be to fix those processes, but good luck with that...

    Yes, there's truth in that. If the point is that it lets them circumvent the bureaucrats, I'll grumble about the rules rather than those trying to function within them. Of course, sooner or later the bureaucrats will figure this out, and they'll institute a change control process for your XML files.

  • Jay (unregistered) in reply to Severity One
    Severity One:
    Prashant:
    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    Yeah, married, white, Christian, heterosexual males are really at a disadvantage in Western society. I mean, how many political and business leaders can you name that match all of those criteria?

    Okay, I'll bite. Name some.

  • Jay (unregistered) in reply to Jay
    Jay:
    Severity One:
    Prashant:
    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    Yeah, married, white, Christian, heterosexual males are really at a disadvantage in Western society. I mean, how many political and business leaders can you name that match all of those criteria?

    Okay, I'll bite. Name some.

    Oh, let's agree that we'll accept Catholics, Protestants, and Eastern Orthodox as "Christians".

  • Jay (unregistered) in reply to Nagesh
    Nagesh:
    Prashant (unreg):
    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    If you are pretend to be white, married, christmas, at least have courtesy to not use Indian name like Prashant, madarchod!

    He's not pretending to be "christmas". He's pretending to be Easter.

  • dogmatic (unregistered) in reply to Prashant
    Prashant:
    Matt Westwood:
    C-Octothorpe:
    Captcha: paratus:
    I'm not an xkcd-hater
    I am, and anybody sadistic enough to perpetuate the shit should die a painful death designed for pederasts and liberals...

    And Christians.

    Couldn't help but wonder the uproar if instead of Christian you'd said Muslims....

    What a funny ol' world we live in where discrimination, predjudice and vilification only count only for certain groups. eg: Sexism is discrimination against females (not often you see it the other way) Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian Sexual Discrimination is only when someone is homeophobic etc...

    No wonder I don't enjoy being a married, Christian, white, heterosexual male anymore. People can bag me as much as they like, and as soon as I reply I'm discriminating against them based on some group (generally minority) that they choose to align themselves with.

    Reminds me of that old chestnut, the white guy says to the black guy "how come you have BET and we don't get a WET?" To which the black guy says "what do you mean?!? Every other fucking channel is WET!" (except for the Spanish channels of course) captcha 'tego' as in 'a mi me tego telemundo.'

  • (cs) in reply to big picture thinker
    big picture thinker:
    I disagree. Too much "soft-coding" (planning for extensibility that will never be useful) is a huge problem. Nobody is going to fiddle with a table like this to change words on a menu. Most likely, the only reason anyone would ever need to edit the menu would be to add a new option or change the way an existing option worked (which would require access to source code in either case).

    It depends on the software. The software I develop has a somewhat similar way of representing menu items (as database records). I will say a few things:

    1. In our area, it IS very common for our customers to edit and change our menus - usually customizing the menu contents for each type of user, but sometimes they alter names, too. For example, while we try to use industry-standard terminology for what our activities do, our customers often have subtle variations in vocabulary so they will want to change the names to reflect their organization's terminology.

    2. You don't necessarily need access to the source code in order to add new functionality, for example providing a plugin API for clients to write their own modules.

  • (cs) in reply to Matt Westwood
    Matt Westwood:
    C-Octothorpe:
    pederasts and liberals...

    And Christians.

    Twain: But I repeat myself.

  • (cs) in reply to brazzy
    brazzy:
    ... a quagmire of empty layers of indirection and inner platforms where any change needs to be done only once, but there's 25 different places where it could be done, all of which have been used for various changes in the past, and each of which requires hours of research to understand.

    You say that like it's a bad thing ...

  • Lazlo (unregistered)

    So I would think that doing things this way would make it fairly simple to fix little typos and spelling errors such as spelling separate as "seperate".

    Or maybe not.

  • senior moron (unregistered) in reply to Nagesh
    Nagesh:
    All VB6 programmer give programing a bad name. VB .NET slight better. that like saying central govt slight better then state govt.

    God saves us all in after-life.

    You're a fuckin idiot.

  • Robert B. (unregistered) in reply to Prashant
    Prashant:
    Racism is discrimination against Asians, Indians, Africans, Aborigines and generally anyone who isn't Caucasian

    You do know that Indians (both dots and feathers) are Caucasian, right? Of course not, otherwise you wouldn't have written that. I think you meant "white" instead of Caucasian. But that's even less politically correct.

  • nmn (unregistered) in reply to LANMind
    People who complain about "soft coding" are generally too stupid to recognize the subtle horror of hard coding. Sure you can go too far the other way, but the worst case soft code is far better than the worst case hard code.

    People that argue that "soft coding" is a solution are too stupid to design systems. It is trivial to design a factory which can instantiate a class based on a configuration value read from a database. This way the code can be added and removed any time - no hardcoding needed, can be properly compiled and can be included in test cases whitout loosing the flexibility. Not to mention the ability to create different handlers for different platfoms if you need it.

Leave a comment on “The Extensible Menu”

Log In or post as a guest

Replying to comment #:

« Return to Article