• T (unregistered) in reply to Ana
    Ana:
    Mandatory related comic: [image]
    Related advice: if you don't speak a language, don't try to translate sentences into that language.
  • David (unregistered) in reply to Paul Neumann
    Paul Neumann:
    Third, your employer may have chosen the software however, you chose your employer. You were paid for your time according to the agreements you entered into at the beginning of your employment. You have no right to complain.

    What you seem to be saying here is that nobody ever has a right to complain about their job.

    Good luck with that.

  • Anon (unregistered) in reply to ubersoldat

    I will have you know they were actually potions of cure light wounds (with a dash of tequila).

  • Dave (unregistered) in reply to Zemm
    Zemm:
    csrster:
    The real WTF is putting anything into production on a Friday.

    Indeed, it is policy at my place to never deploy anything large on a Friday. We even avoid Thursday if we can help it.

    At the place I work it's policy to deploy any major changes at 4:50pm on a Friday, which gives the admins ten minutes to get out the door and on their way home before the first thing breaks.

    (I wish I was joking about this).

  • Kasper (unregistered) in reply to dkf
    dkf:
    TRWTF is using threads to handle IO-bound problems, but many programmers have been making that one for a long time.
    If the kernel has a clever I/O scheduling algorithm, using too many threads isn't going to hurt in that case. And an I/O bound task still need some CPU time. Too few threads will lead to storage sitting idle while the CPU is busy.

    And if you have multiple physical disks you want them all to be busy to utilize them as efficiently as possible. You also want to ensure that as soon as the disk finish one request it can start on the next one without waiting to be told which one to work on. Additionally the I/O scheduling algorithm need to minimize the number of seeks, for some workloads the best way to do that is to have lots of requests in the queue in the kernel.

    But if you only have a single disk and you can arrange for data to be accessed linearly, then you don't need threads. Simply run through the data and let read-ahead and write-behind deal with the I/O.

    So though it is not always a mistake to do what you describe, sometimes it is. And I have experienced interviewing a candidate making such mistake.

    He was faced with the task of sorting data that was too large to fit in memory, on a computer with a single disk and plenty of free disk space. His first question was "can I use multiple CPUs", and I said "sure, but you are not getting any more memory, you'll have to share it among the CPUs". I was assuming this was hint enough that he'd realize adding CPUs would do no good. But it wasn't hint enough. He said "I'll need 10 CPUs". He jumped to that conclusion without doing even the slightest calculation on why exactly 10 CPUs would be needed.

    That candidate did not receive a job offer.

  • chris (unregistered)

    "Ten shall be the number thou shalt count, and the number of the counting shall be ten. Eleven shalt thou not count, neither count thou nine, excepting that thou then proceed to ten."

  • foo (unregistered) in reply to Kasper
    Kasper:
    dkf:
    TRWTF is using threads to handle IO-bound problems, but many programmers have been making that one for a long time.
    If the kernel has a clever I/O scheduling algorithm, using too many threads isn't going to hurt in that case. And an I/O bound task still need some CPU time. Too few threads will lead to storage sitting idle while the CPU is busy.

    And if you have multiple physical disks you want them all to be busy to utilize them as efficiently as possible. You also want to ensure that as soon as the disk finish one request it can start on the next one without waiting to be told which one to work on. Additionally the I/O scheduling algorithm need to minimize the number of seeks, for some workloads the best way to do that is to have lots of requests in the queue in the kernel.

    But if you only have a single disk and you can arrange for data to be accessed linearly, then you don't need threads. Simply run through the data and let read-ahead and write-behind deal with the I/O.

    So though it is not always a mistake to do what you describe, sometimes it is. And I have experienced interviewing a candidate making such mistake.

    He was faced with the task of sorting data that was too large to fit in memory, on a computer with a single disk and plenty of free disk space. His first question was "can I use multiple CPUs", and I said "sure, but you are not getting any more memory, you'll have to share it among the CPUs". I was assuming this was hint enough that he'd realize adding CPUs would do no good. But it wasn't hint enough. He said "I'll need 10 CPUs". He jumped to that conclusion without doing even the slightest calculation on why exactly 10 CPUs would be needed.

    That candidate did not receive a job offer.

    I wouldn't have offered him the job either. Now if he'd said 500 CPUs, we'd be talking.

  • (cs)

    More threads will not necessarily do that as there is a shortage of resources.

    Therefore you have a connection pool and each thread can request a connection to perform. If there number of threads exceeds the number of connections, there are bound to be some threads waiting for a connection. When they are waiting they are idle and not using up any CPU.

    Note incidentally (and we had this once actually happen) that a thread must never be allowed to hold more than one connection from the pool. The issue is that if they can you can get philosopher's deadlock, where each thread is holding one connection and waiting for a second one.

  • (cs) in reply to chris
    chris:
    "Ten shall be the number thou shalt count, and the number of the counting shall be ten. Eleven shalt thou not count, neither count thou nine, excepting that thou then proceed to ten."

    500 is right out.

  • IN-HOUSE-CHAMP (unregistered) in reply to bgodot
    bgodot:
    IN-HOUSE-CHAMP:
    chubertdev:
    You have a problem. You use threading, and now you have 500 problems.

    Stop quoting guys who thought they were smarter.

    There's nothing wrong with regex. Nothing.

    I used to have nothing, then I used a regex so now I have 2 nothings.

    Hey bigot, That's 2 strings. Not 2 nothings!

  • Paul Neumann (unregistered) in reply to Darth Paul
    Darth Paul:
    Paul Neumann:
    Seriously, if you can't be bothered to upstream improvements just fucking die. Write your own shit, from scratch, in ASM. If your project or employer won't allow for upstream patching, go with a commercial solution. You don't get to complain that you refactored if not almost completely re-written something you got for FREE.
    While seeing the point being made, I think we also need to get away from the crap reasoning that's out there that giving away something for free absolves you from responsibility for doing a good job and not wasting everyone's time and money (unless you admit up front that your code is poor quality). If it eats away your resources to make it work, it is not free.
    My point being that taking something for free and putting forth effort to improve it for your benefit, then not sharing those changes is theft.
  • anonymous (unregistered)

    vote: eject Paul Neumann vote: ban Paul Neumann ip address

  • Anonymous Paranoiac (unregistered) in reply to Paul Neumann
    Paul Neumann:
    Darth Paul:
    Paul Neumann:
    Seriously, if you can't be bothered to upstream improvements just fucking die. Write your own shit, from scratch, in ASM. If your project or employer won't allow for upstream patching, go with a commercial solution. You don't get to complain that you refactored if not almost completely re-written something you got for FREE.
    While seeing the point being made, I think we also need to get away from the crap reasoning that's out there that giving away something for free absolves you from responsibility for doing a good job and not wasting everyone's time and money (unless you admit up front that your code is poor quality). If it eats away your resources to make it work, it is not free.
    My point being that taking something for free and putting forth effort to improve it for your benefit, then not sharing those changes is theft.

    You're awesome.

  • Pock Suppet (unregistered) in reply to Paul Neumann
    Paul Neumann:
    Darth Paul:
    Paul Neumann:
    Seriously, if you can't be bothered to upstream improvements just fucking die. Write your own shit, from scratch, in ASM. If your project or employer won't allow for upstream patching, go with a commercial solution. You don't get to complain that you refactored if not almost completely re-written something you got for FREE.
    While seeing the point being made, I think we also need to get away from the crap reasoning that's out there that giving away something for free absolves you from responsibility for doing a good job and not wasting everyone's time and money (unless you admit up front that your code is poor quality). If it eats away your resources to make it work, it is not free.
    My point being that taking something for free and putting forth effort to improve it for your benefit, then not sharing those changes is theft.
    Me: Here, have a free birdhouse! You: Great, thanks! Me: No problem! You: You know, this birdhouse really could use some sanding - see, I have five splinters already! These nails aren't quite pounded in, and a coat of paint would really make it look good. Here, let me show you... Me: No! You don't get it! I don't need paint! Splinters are good! You no touch my birdhouses! You: Okaaaaaaay... *fixes own birdhouse* Paul Neumann: Thief!!!!!!!!!!!!!!!!!!! /sigh
  • jay (unregistered) in reply to Paul Neumann
    Paul Neumann:
    Darth Paul:
    Paul Neumann:
    Seriously, if you can't be bothered to upstream improvements just fucking die. Write your own shit, from scratch, in ASM. If your project or employer won't allow for upstream patching, go with a commercial solution. You don't get to complain that you refactored if not almost completely re-written something you got for FREE.
    While seeing the point being made, I think we also need to get away from the crap reasoning that's out there that giving away something for free absolves you from responsibility for doing a good job and not wasting everyone's time and money (unless you admit up front that your code is poor quality). If it eats away your resources to make it work, it is not free.
    My point being that taking something for free and putting forth effort to improve it for your benefit, then not sharing those changes is theft.

    If someone gives you something for free, and then says that any work you do using this thing must also be given away for free, then they are setting a price on the thing they gave you: If I give you this, then you must do that in return. At that point it is not free. The definition of free is that the price is zero.

  • Pock Suppet (unregistered) in reply to jay
    jay:
    If someone gives you something for free, and then says that any work you do using this thing must also be given away for free, then they are setting a price on the thing they gave you: If I give you this, then you must do that in return. At that point it is not free. The definition of free is that the price is zero.
    It's also freedom, not just free beer. Don't forget that.

    CAPTCHA: vindico - No matter how much sense we make, Paul Neumann will always feel vindico.

  • Paul Neumann (unregistered) in reply to David
    David:
    Paul Neumann:
    Third, your employer may have chosen the software however, you chose your employer. You were paid for your time according to the agreements you entered into at the beginning of your employment. You have no right to complain.
    What you seem to be saying here is that nobody ever has a right to complain about their job.

    Good luck with that.

    Precisely. If you don't like your job find another. At least here in America, this hasn't been prevented for going on 80 years now.

  • Paul Neumann (unregistered) in reply to jay
    jay:
    Paul Neumann:
    My point being that taking something for free and putting forth effort to improve it for your benefit, then not sharing those changes is theft.
    If someone gives you something for free, and then says that any work you do using this thing must also be given away for free, then they are setting a price on the thing they gave you: If I give you this, then you must do that in return. At that point it is not free. The definition of free is that the price is zero.
    Thank you for relating what I meant rather than what I said. At least someone here is beyond sheep think.
  • anonymous (unregistered)

    @jay:

    That is one definition of free. From dictionary.com...

    free [free] adjective, fre·er, fre·est, adverb, verb, freed, free·ing. adjective 1. enjoying personal rights or liberty, as a person who is not in slavery: a land of free people. 2. pertaining to or reserved for those who enjoy personal liberty: They were thankful to be living on free soil. 3. existing under, characterized by, or possessing civil and political liberties that are, as a rule, constitutionally guaranteed by representative government: the free nations of the world. 4. enjoying political autonomy, as a people or country not under foreign rule; independent. 5. exempt from external authority, interference, restriction, etc., as a person or one's will, thought, choice, action, etc.; independent; unrestricted.

    adverb 37. in a free manner; freely. 38. Nautical. away from the wind, so that a sailing vessel need not be close-hauled: running free.

    free   Use Free in a sentence Ads Free File Zip for Windows www.jzip.com/ 100% Fast, Safe and Easy to Use. Download Now for Free! Free Stuff by Mail www.getitfree.us/ 100% Free Samples in the Mail. Sign Up Now for Free! free [free] adjective, fre·er, fre·est, adverb, verb, freed, free·ing. adjective 1. enjoying personal rights or liberty, as a person who is not in slavery: a land of free people. 2. pertaining to or reserved for those who enjoy personal liberty: They were thankful to be living on free soil. 3. existing under, characterized by, or possessing civil and political liberties that are, as a rule, constitutionally guaranteed by representative government: the free nations of the world. 4. enjoying political autonomy, as a people or country not under foreign rule; independent. 5. exempt from external authority, interference, restriction, etc., as a person or one's will, thought, choice, action, etc.; independent; unrestricted. Relevant Questions What Is Free Will? When Is Tax Free Weekend... How To Download Music Fr... Where To Get Free Music? adverb 37. in a free manner; freely. 38. Nautical. away from the wind, so that a sailing vessel need not be close-hauled: running free. 00:10 Free is always a great word to know. So is broad. Does it mean: using one basic symbol to represent each phoneme to change a speech sound to an articulation requiring less effort, as from geminate to nongeminate or from stop to fricative LEARN MORE UNUSUAL WORDS WITH WORD DYNAMO... verb (used with object) 39. to make free; set at liberty; release from bondage, imprisonment, or restraint. 40. to exempt or deliver (usually followed by from ). 41. to relieve or rid (usually followed by of ): to free oneself of responsibility. 42. to disengage; clear (usually followed by from or of ). Verb phrases 43. free up, a. to release, as from restrictions: Congress voted to free up funds for the new highway system. b. to disentangle: It took an hour to free up the traffic jam. Idioms 44. for free, Informal. without charge: The tailor mended my jacket for free. 45. free and clear, Law. without any encumbrance, as a lien or mortgage: They owned their house free and clear. 46. free and easy, a. unrestrained; casual; informal. b. excessively or inappropriately casual; presumptuous. 47. make free with, a. to use as one's own; help oneself to: If you make free with their liquor, you won't be invited again. b. to treat with too much familiarity; take liberties with. 48. set free, to release; liberate; free: The prisoners were set free.

    before 900; Middle English fre, Old English frēo; cognate with Gothic freis, Old High German frī (German frei), Dutch vrij, Sanskrit priyá- dear. Cf. friend, Friday

    free (friː) [Click for IPA pronunciation guide]

    —adj (and foll by from) , freer, freest

    1.  able to act at will; not under compulsion or restraint
      
    2.  a.  having personal rights or liberty; not enslaved or confined
      
      b. (as noun): land of the free
    3.  not subject (to) or restricted (by some regulation, constraint, etc); exempt: a free market; free from pain
      
    4.  (of a country, etc) autonomous or independent
      
    5.  exempt from external direction or restriction; not forced or induced: free will
      
    6.  not subject to conventional constraints: free verse
      
    7.  (of jazz) totally improvised, with no preset melodic, harmonic, or rhythmic basis
      
    8.  not exact or literal: a free translation
      
    9.  costing nothing; provided without charge: free entertainment
      
    10. of property law
      
      a. not subject to payment of rent or performance of services; freehold b. not subject to any burden or charge, such as a mortgage or lien; unencumbered
    11. (postpositive; often foll by of or with) ready or generous in using or giving; liberal; lavish: free with advice
      
    12. unrestrained by propriety or good manners; licentious
      
    13. not occupied or in use; available: a free cubicle
      
    14. not occupied or busy; without previous engagements: I'm not free until Wednesday
      
    15. open or available to all; public
      
    16. without charge to the subscriber or user: freepost; freephone
      
    17. not fixed or joined; loose: the free end of a chain
      
    18. without obstruction or impediment: free passage
      
    19. chem chemically uncombined: free nitrogen
      
    20. phonetics denoting a vowel that can occur in an open syllable, such as the vowel in see as opposed to the vowel in cat
      
    21. grammar Compare bound denoting a morpheme that can occur as a separate word
      
    22. logic Compare bound denoting an occurrence of a variable not bound by a quantifier
      
    23. (of some materials, such as certain kinds of stone) easily worked
      
    24. nautical (of the wind) blowing from the quarter
      
    25. (usually imperative) feel free to regard oneself as having permission to perform a specified action
      
    26. not standard for free without charge or cost
      
    27. free and easy casual or tolerant; easy-going
      
    28. make free with to take liberties with; behave too familiarly towards
      

    —adv 29. in a free manner; freely 30. without charge or cost 31. nautical with the wind blowing from the quarter: a yacht sailing free

    —vb (often foll by of or from) , freer, freest, frees, freeing, freed 32. (sometimes foll by up) to set at liberty; release 33. to remove obstructions, attachments, or impediments from; disengage 34. to relieve or rid (of obstacles, pain, etc)

    —n 35. informal a freesheet

    [Old English frēo; related to Old Saxon, Old High German frī, Gothic freis free, Sanskrit priya dear]

    'freer

    —n

    'freely

    —adv

    'freeness

    —n

    Collins English Dictionary - Complete & Unabridged 10th Edition 2009 © William Collins Sons & Co. Ltd. 1979, 1986 © HarperCollins Publishers 1998, 2000, 2003, 2005, 2006, 2007, 2009 Cite This Source Etymonline Word Origin & History

    free O.E. freo "free, exempt from, not in bondage," also "noble, joyful," from P.Gmc. *frijaz (cf. M.H.G. vri, Ger. frei, Du. vrij, Goth. freis "free"), from PIE *prijos "dear, beloved" (cf. Skt. priyah "own, dear, beloved," priyate "loves;" O.C.S. prijati "to help," prijatelji "friend;" Welsh rhydd "free"). Online Etymology Dictionary, © 2010 Douglas Harper Cite This Source

  • jay (unregistered) in reply to Mark
    Mark:
    Luke: How do I do this?

    Matthew: 1. Understand the tool. 2. Understand the problem. 3. Figure it out.

    Luke: That sounds too much like thinking. Just give me the answer.

    Matthew: Nobody gave me the answer.

    Exactly! I think every new IT person should be given a stone knife and a club, dropped on a desert island, and told to figure out how to build and program a computer for himself.

    The idea that we might share knowledge and build on the experience of others is just cheating.

  • Paul Neumann (unregistered) in reply to anonymous
    anonymous:
    @jay: ... Cite This Source
    Pro-tip: see the last link in your buffer. Also, it was previously established that I using "free" as defined by the terms of F/OSS
  • jay (unregistered) in reply to Jazz
    Jazz:
    Paul Neumann:
    Mark:
    ... This is closely related to:

    Luke: How do I do this? Matthew: 1. Understand the tool. 2. Understand the problem. 3. Figure it out. Luke: That sounds too much like thinking. Just give me the answer. Matthew: Nobody gave me the answer.

    Jesus Christ! Now we are quoting the bible here?

    No, no, in the bible the story goes like this:

    Luke: How do I do this? Matthew: 1. Understand the tool. 2. Understand the problem. 3. Figure it out. Luke: That sounds too much like thinking. Just give me the answer. Paul: Good point, Luke. I think I'll write a bunch of letters to everyone telling them what to think and what answers to come to, so that they don't have to apply critical thought to the social ills of their time. But how will I get everyone, everywhere, to read my letters for the next few thousand years? Peter: I think I can help you with that last part...

    Yes, writing books and sharing your ideas with others is evil and the opposite of critical thinking. "Critical thinking" means that each person must figure out everything for himself from scratch. Reading what thoughts someone else went through and what conclusions he arrived at, trying to benefit from other's mistakes, etc, is at best lazy and cheating and at worst a campaign against freedom of thought.

    There's a little irony here in that the poster has apparently not read Paul's letters before criticizing them. Paul is FOR critical thinking. He routinely warns against trying to follow a bunch of rules: Gal 5:1,3 "Stand fast therefore in the liberty by which Christ has made us free ... you who attempt to be justified by law; you have fallen from grace." He warns against letting others do your thinking for you: 1 Cor 10:29b "For why is my liberty judged by another man’s conscience?" Etc.

  • jay (unregistered) in reply to anonymous
    anonymous:
    @jay:

    That is one definition of free. From dictionary.com...

    ...

    Yes yes, would you have preferred if I had said, "... the RELEVANT definition of free ..."?

    I'm pretty sure that when people talk about "free software", they are not generally referring to software which, like "free nitrogen", is not chemically bound to another atom, nor are they likely referring to political freedom. Though the latter might work as a pun in a newspaper headline about government restrictions on Internet access or something of the sort.

  • Pock Suppet (unregistered) in reply to jay
    jay:
    I'm pretty sure that when people talk about "free software", they are not generally referring to software which, like "free nitrogen", is not chemically bound to another atom, nor are they likely referring to political freedom. Though the latter might work as a pun in a newspaper headline about government restrictions on Internet access or something of the sort.

    https://www.gnu.org/philosophy/free-sw.html

    You'd think that maybe they might be consider subject matter experts of a sort, and they appear to take the opposite PoV:

    GNU:
    Thus, “free software” is a matter of liberty, not price. To understand the concept, you should think of “free” as in “free speech,” not as in “free beer”.
    Also, "Hitler".
  • Your Name (unregistered) in reply to Zemm

    We only deploy large things on Friday. Since our customers primarily only work during the week, it gives us all weekend to fix any problems.

    However the policy sucks for any one that has a social life. :(

  • Anonymous Paranoiac (unregistered)

    All software should be free as in jazz.

  • Pock Suppet (unregistered) in reply to Your Name
    Your Name:
    We only deploy large things on Friday. Since our customers primarily only work during the week, it gives us all weekend to fix any problems.

    However the policy sucks for any one that has a social life. :(

    If your customers only work on the weekdays and you release on Friday, how do you know what you need to fix? Your unit tests must be a lot better at predicting what users will break than ours are. :/ Of course, we have Company Policy(tm) that states that all releases are on Tuesday! Obviously the unwritten exception is that anything may be pushed live after 4:45p on Friday.

  • Pock Suppet (unregistered) in reply to Anonymous Paranoiac
    Anonymous Paranoiac:
    All software should be free as in jazz.
    Like Louis and Ella, or like the 15-minute drum solos you get at 3am on NPR?
  • Z (unregistered) in reply to Matt Westwood
    Matt Westwood:
    Michael (no:
    Jazz:
    Paul Neumann:
    Mark:
    ... This is closely related to:

    Luke: How do I do this? Matthew: 1. Understand the tool. 2. Understand the problem. 3. Figure it out. Luke: That sounds too much like thinking. Just give me the answer. Matthew: Nobody gave me the answer.

    Jesus Christ! Now we are quoting the bible here?

    No, no, in the bible the story goes like this:

    Luke: How do I do this? Matthew: 1. Understand the tool. 2. Understand the problem. 3. Figure it out. Luke: That sounds too much like thinking. Just give me the answer. Paul: Good point, Luke. I think I'll write a bunch of letters to everyone telling them what to think and what answers to come to, so that they don't have to apply critical thought to the social ills of their time. But how will I get everyone, everywhere, to read my letters for the next few thousand years? Peter: I think I can help you with that last part...

    ...proving once again that you can count on highly-logical programmers to poke fun at and openly mock religion.

    Sure thing. Do you have one that needs mocking? Given a long enough run-up it can be comprehensively torn to pieces as it deserves.

    Sure, we have several tech religions that we should start Mocking. Cobol is too easy of a target, and only the cave-programmers still worship at that altar, but Fortran is ripe for the plucking. PHP and Visual Basic deserve a good thrashing.

    Don't leave out indentation styles (doesn't matter which one you like, just pick one and bash the other; nothing is closer to religion to programmers than indentation style.) And above all else let us mock the Cult of Jobs (Steve, that is.)

  • (cs) in reply to T
    T:
    Ana:
    Mandatory related comic:
    Related advice: if you don't speak a language, don't try to translate sentences into that language.

    Had a job once where I had to translate a website into Arabic for a demo that we had support for right-to-left. I used Google Translate throughout ... although when it came to the "marital status" field: "single, married, cohabiting" I pointed out that it would be wise to remove the "cohabiting" field because the target customer was from a nation where such arrangements are punished by the death penalty.

    The understanding was that I could do the translations and implementation of the website in question, but that (despite the years I spent over there) my grasp on Arabic was rudimentary and it would be wise to pass it by someone who was fluent in case I had produced something rude. Of course, that last piece of advice was not taken up on, and the customer was shown the website as I produced it.

    I confess to having felt a little nervous ...

  • Norman Diamond (unregistered) in reply to Kasper
    Kasper:
    And if you have multiple physical disks you want them all to be busy to utilize them as efficiently as possible.
    Bugs kill RAID dead.
  • Norman Diamond (unregistered) in reply to Matt Westwood
    Matt Westwood:
    T:
    Related advice: if you don't speak a language, don't try to translate sentences into that language.
    Had a job once where I had to translate a website into Arabic for a demo that we had support for right-to-left. I used Google Translate throughout ... although when it came to the "marital status" field: "single, married, cohabiting" I pointed out that it would be wise to remove the "cohabiting" field because the target customer was from a nation where such arrangements are punished by the death penalty.
    But your audience was all male, right? Cohabiting gets the death penalty for females, not for males.

    Anyway, marital status is more complicated than you think it is (just like sex is more than male, female, gay, transgendered bisexual, eunuch, etc.).

    One time I read part of a Canadian tax regulation for decedents with two surviving spouses, which was possible when one spouse was married under a marriage law and the other was cohabiting under some other law. I wondered how they could know that no one had more than two surviving spouses under that rule.

    The US passed a special law posthumously changing one couple's marriage status into a boolean "true": http://www.marinecorpstimes.com/news/2010/11/military-proxy-marriages-immigration-111610w/ I wasn't involved in that special law so my status remained "filenotfound".

  • katastrofa (unregistered) in reply to ubersoldat
    ubersoldat:
    Drinking tequila on a MMORPG is not considered as "partying" you nerd.

    +1

  • katastrofa (unregistered) in reply to Mark
    Mark:
    Some people always ask "what's the right setting for this config?"

    If there were one right setting, it wouldn't be a config, now would it?

    Similarly, if code can arrive at the right value every time, you wouldn't need a config.

    This is closely related to:

    Luke: How do I do this?

    Matthew: 1. Understand the tool. 2. Understand the problem. 3. Figure it out.

    Luke: That sounds too much like thinking. Just give me the answer.

    Matthew: Nobody gave me the answer.

    Luke: But you're the guy paid to understand this shit, not me.

  • katastrofa (unregistered) in reply to Michael (no, not that one, the other one...)
    Michael (no:

    ...proving once again that you can count on highly-logical programmers to poke fun at and openly mock religion.

    Heretics!! Burn them!!!

  • Fails in understanding (unregistered) in reply to KSG

    What I fail to understand is why the dev team isn't given a complete copy of the production database to test against? I've seen this antipattern over and over and I simply don't understand it.

    You do back up your production database, right? Why not run that backup copy by an actual database server and test against that? That way you have developers who can develop in something approximating the real world, and you ALSO get a chance to verify that your backups actually are working as expected.... ?

    (shrug)

  • Gruntled (unregistered) in reply to PseudoBovine
    PseudoBovine:
    "Nobody gave me the answer" is just crap. If you can't be bothered to pass on hard-won knowledge to make the lives of the people around you easier, than just die.
    I'm sure that attitude will have people falling over themselves to help you.

    Listen, kid - when you hear the same people ask for the same kind of 'help' time and time again, you realise that they're not trying to learn, or even capable of learning; they're using you as a crutch for their flaccid, impotent brain.

    The answer is clear - if you're too lazy or incompetent to be able to do the job you were hired to do, which is to think; resign right now and we can get someone in who can. You'll be doing everyone a favour.

    Find yourself another line of work, possibly one involving inverting the orientation of bovine sourced patties and sautéing starchy tuberous shavings. It sounds like a good fit for you.

    There's enough bad people in good jobs and good people out of work - isn't it about time they changed places?

  • AN AMAZING CODER (unregistered) in reply to Valued Service
    Valued Service:
    Nagesh:
    OzPeter:
    Stupid Pratik .. you start partying once the customer is happy .. not when you think that you are done.

    Agree completely. one of our in-house memo state this, do not drink and party immediately after release.

    To which I replied. Pay me overtime.

    Business should learn to stop butting into my personal life unless they at least acknowledge that they are doing so.

    If the owner thinks that it's ok because he's 24/7, then maybe he should consider handing out part-ownership.

    You can't expect to take up my entire life without offering anything more than a salary. At least a 24/7 daycare!!!

    The problem with that is, often it IS part of your salary assuming you're exempt. Why do you need to be explicitly paid more? Would you take a pay cutt in exchange for being hourly?

  • AN AMAZING CODER (unregistered) in reply to Fails in understanding
    Fails in understanding:
    What I fail to understand is why the dev team isn't given a complete copy of the production database to test against? I've seen this antipattern over and over and I simply don't understand it.

    You do back up your production database, right? Why not run that backup copy by an actual database server and test against that? That way you have developers who can develop in something approximating the real world, and you ALSO get a chance to verify that your backups actually are working as expected.... ?

    (shrug)

    Because giving development statff full access to real customer data is against compliance in many industries, and just plain isn't a good idea if you're storing important (read: personally identifiable) information about people and/or businesses. The data needs to be scrubbed first.

  • AN AMAZING CODER (unregistered) in reply to Manni_reloaded
    Manni_reloaded:
    csrster:
    The real WTF is putting anything into production on a Friday.

    And the better option would be...? You'd rather deploy on a Monday and then have to explain why all production stopped for two days while you isolated the bugs?

    IT work is a thankless job. You do your major overhauls at night or on weekends to keep the rest of the world turning during core business hours.

    The issue isn't really thing being down, it's people being available and on hand when they do. I'd much rather the system go down for a few hours when I have my whole team available and ready than a few hours when I can't get ahold of him.

    You might say TRWTF is not being able to get my team assembled on the weekend, but that's exactly the point. TRWTF would be forcing them to be sober and attentive after a long week of work, when I could save that work for monday.

    If you're going to do Friday, you do it in the AM. If you can't do it during business hours, Early monday morning is infinitely better than Late friday evening. Just let them go home early on Monday once the all clear is given.

  • i can has string concat (unregistered)
    PseudoBovine:
    If you can't be bothered to pass on hard-won knowledge to make the lives of the people around you easier, than just die.
    I am always ready to pass on hard-won knowledge, but not to the people who are expecting a step-by-step walk-through, which they can just follow indefinitely to keep receiving paychecks.

    If things are so simple that a walk-through is possible, then I can just automate their jobs away. As it is, things are not so simple, and I would just end up doing their jobs for them.

  • Peter Michael Green (unregistered) in reply to Kasper
    Kasper:
    He was faced with the task of sorting data that was too large to fit in memory, on a computer with a single disk and plenty of free disk space. His first question was "can I use multiple CPUs", and I said "sure, but you are not getting any more memory, you'll have to share it among the CPUs". I was assuming this was hint enough that he'd realize adding CPUs would do no good. But it wasn't hint enough. He said "I'll need 10 CPUs". He jumped to that conclusion without doing even the slightest calculation on why exactly 10 CPUs would be needed.
    Afaict the way you sort data that is too large to fit in memory is to split it into sections, sort each saection seperately and then merge the sections together. This method lets you sort datsets that are many times too big to fit in memory while only reading it from and writing it to the disk twice.

    It would not at all surprise me if paralellising the first stage either by using a paralell sort algorithm of by having smaller sections and then having each core sort a section could reduce the overall time taken.

  • PeterL (unregistered) in reply to csrster
    csrster:
    The real WTF is putting anything into production on a Friday.
    We only do Friday night pushes into production because we need all weekend to fix it. We can't get production data to test in QA, so we are like the folks in the story: unable to test with realistic data. When we do get sanitized data, we get a tiny fraction of 1% of the data. By making the weekend as miserable for the DBAs as possible, we hope to get real data in the future. Half of out conference calls have the line "well, if we had real data, we could have caught this in testing" repeated a couple times per hour.
  • Optimizer (unregistered) in reply to wcwedin
    wcwedin:
    Paul Neumann:
    Mark:
    ... This is closely related to:

    Luke: How do I do this? Matthew: 1. Understand the tool. 2. Understand the problem. 3. Figure it out. Luke: That sounds too much like thinking. Just give me the answer. Matthew: Nobody gave me the answer.

    Jesus Christ! Now we are quoting the bible here?

    And Knuth said unto the people, "Premature optimization is the root of all evil." And the people did not listen, and loops were unrolled and code was obfuscated and the number of threads was too many.

    And lo, the wise man said unto the developers, "Premature optimization is the root of all evil." And lesser men did heed, so the code was not optimized and threads multiplied with abandon and the data was bloated. And then when the system beeps tolled and the alarms rang, it was known. Now is the time for optimization. So the developers gathered and went forth into the mountain of code, and discovered the code was too big, their methods too elaborate, their reliances too deep, and the changes needed too dramatic. Thus a decision was sent forth: "This system needs to be rewritten. In the meantime, upgrade the hardware and cap the connections so it doesn't choke."

    No amount of coding adages will be an acceptable substitute for knowing wtf you're doing.

  • csrster (unregistered) in reply to Manni_reloaded
    Manni_reloaded:
    csrster:
    The real WTF is putting anything into production on a Friday.

    And the better option would be...? You'd rather deploy on a Monday and then have to explain why all production stopped for two days while you isolated the bugs?

    IT work is a thankless job. You do your major overhauls at night or on weekends to keep the rest of the world turning during core business hours.

    I'm not paid to work evenings and weekends! The rest of the world can damn well wait :-)

  • IN-HOUSE-CHAMP (unregistered) in reply to csrster
    csrster:
    Manni_reloaded:
    csrster:
    The real WTF is putting anything into production on a Friday.

    And the better option would be...? You'd rather deploy on a Monday and then have to explain why all production stopped for two days while you isolated the bugs?

    IT work is a thankless job. You do your major overhauls at night or on weekends to keep the rest of the world turning during core business hours.

    I'm not paid to work evenings and weekends! The rest of the world can damn well wait :-)

    Be thankful, you have a job!

  • Buddy (unregistered) in reply to csrster
    csrster:
    The real WTF is putting anything into production on a Friday.

    Oh yeah, agree 100%, don't do anything on a Friday or before a Holiday if it mean you need to come in if/when it f**ks up!

  • jimmykhidge (unregistered) in reply to Optimizer
    Comment held for moderation.

Leave a comment on “Less is More”

Log In or post as a guest

Replying to comment #:

« Return to Article