Slashdot Mirror


Ask Slashdot: Has Your Team Ever Succumbed To Hype Driven Development? (daftcode.pl)

marekkirejczyk, the VP of Engineering at development shop Daftcode, shares a warning about hype-driven development: Someone reads a blog post, it's trending on Twitter, and we just came back from a conference where there was a great talk about it. Soon after, the team starts using this new shiny technology (or software architecture design paradigm), but instead of going faster (as promised) and building a better product, they get into trouble. They slow down, get demotivated, have problems delivering the next working version to production.
Describing behind-schedule teams that "just need a few more days to sort it all out," he blames all the hype surrounding React.js, microservices, NoSQL, and that "Test-Driven Development Is Dead" blog post by Ruby on Rails creator David Heinemeier Hansson. ("The list goes on and on... The root of all evil seems to be social media.") Does all this sound familiar to any Slashdot readers? Has your team ever succumbed to hype-driven development?

332 comments

  1. Has the lord and savior told you by 0100010001010011 · · Score: 1, Insightful

    about Black Belt training?

    1. Re:Has the lord and savior told you by Greyfox · · Score: 2

      I did a contract with Sun, just before they went under. The employees were quick to tell stories about how they used to hire magicians to come and entertain on the campus. There was this one guy, sat a cube over from me. Near as I could tell, his job was to sit on the phone all day boasting about whatever next conference he was going to and how he was a certified black belt. That was the only time I'd ever heard anyone talking about it. At Sun. Just before they went under.

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    2. Re:Has the lord and savior told you by Big+Hairy+Ian · · Score: 1

      I can assure you TDD is not dead but don't expect to master it if you still have difficulty grasping the concept of Unit Tests. Learn to walk then learn to run

      --

      Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    3. Re: Has the lord and savior told you by Anonymous Coward · · Score: 1

      My ex-wife is a Sun/Oracle employee (used to pronounce it 'snorkel'), and while she did tell me about the time she saw Penn and Teller at Sun in Milpitas during the late 90s, she has also always busted her ass here in the Midwest working for them.

    4. Re:Has the lord and savior told you by Big+Hairy+Ian · · Score: 1

      I just looked around my team I didn't realize apathy was a new trend

      --

      Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    5. Re:Has the lord and savior told you by alvinrod · · Score: 1

      The problem with TDD is that it's not a tool you can apply to all problems. Some things are sufficiently complex and not well understood enough that trying to build them to incrementally pass more tests is just asking for headaches. There's a famous example of Ron Jeffries trying to use TDD to implement a Sudoku solver that didn't turn out well.

      It's good in that it ensures some unit tests get developed and those can be a great asset if it's software that's going to stick around and will probably be enhanced, refactored, or reused later on because it makes it a lot easier to do regression testing if you've already got a good set of tests. Some developers can be trusted to write those after they've written the code and others just rush off to the next thing.

      Like a lot of other things TDD probably fails mostly because people can't use it properly or try to treat every problem like a nail that can be pounded in with their shiny new TDD hammer.

    6. Re:Has the lord and savior told you by Jawnn · · Score: 1

      about Black Belt training?

      LOL. Touche'.
      Better question might be whose teams do not suffer from this madness?

    7. Re:Has the lord and savior told you by Bengie · · Score: 1

      TDD stands for Test Driven Development, not Test Driven Design. Architecture and design happens before development. Don't start writing code until you know WTF you're doing. Build some prototypes, but just throw them away once you understand the problem. Same thing with agile. It is not an architecture or design methodology, it is a development methodology.

    8. Re: Has the lord and savior told you by Anonymous Coward · · Score: 0

      Oh god this. I just asked our product management for our future mockups or plans for various features. They told me we were agile and therefore didn't have any. I stopped supporting the product that day.

    9. Re:Has the lord and savior told you by my-bondan · · Score: 1
    10. Re:Has the lord and savior told you by david_thornley · · Score: 1

      At one point, we had someone in to demonstrate TDD. At the end of an hour, he'd showed us how to build a class that exposed far too much of its internals but satisfied all the tests. I could have written it in ten minutes, it would have been at least as correct, and it would have been better code. I know that lots of people advocate TDD, but I'd like to have some experience with someone who can do better than write a crappy solution for a toy problem at snail speed.

      There's also a whole lot of the code I work on that can't be unit-tested by any system I know of. A lot of what it does draws complicated things on the screen or writes long and complicated gcode that can't really be tested except by running it through a CNC mill. A lot of the code was written before anyone decided it would be a good idea to get a unit test framework.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    11. Re:Has the lord and savior told you by Big+Hairy+Ian · · Score: 1

      Clearly you demo guy had an inadequate understanding of unit testing because you shouldn't have to expose anything because a unit test should be able to access private properties & methods (Not necessarily directly but using techniques that won't work outside of a unit test).

      --

      Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    12. Re:Has the lord and savior told you by david_thornley · · Score: 1

      Could well be. I'd like to see a competently run demo sometime.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  2. He sounds like an idiot by Anonymous Coward · · Score: 0

    ... not because I like any of the technologies mentioned. Because if anyone in his position is so fucking stupid to feel the need to say something so obvious, they don't deserve that position.

    He's just trying to get attention by hyping up "hype driven development." Maybe he shouldn't be hiring junior devs into roles well beyond their skill set.

    Also, some things, are actually, worth the hype. Like Redis (compared to memcache)... many things aren't... And actually it depends on your use case.

    Right tool for the fucking job. That's all he had to say... I'm tired of bullshit wanna be self-marketing tech assholes running off at the mouth.

    1. Re: He sounds like an idiot by WarJolt · · Score: 4, Insightful

      The problem is that experience can do one of two things to developers. Open your mind or close your mind. Many programmers refuse to open the Pandora's box and they stick to a tool, paradigm or coding style they know even though its not the best thing to solve the problem at hand. It's like a carpenter trying to cut down a tree with a circular saw because that's what he spends 99% of his time using.

    2. Re: He sounds like an idiot by echnaton192 · · Score: 1

      Reaf TFA. These are exactly his points. So you are the idiot.

    3. Re: He sounds like an idiot by AcerbusNoir · · Score: 2

      Many programmers refuse to open the Pandora's box and they stick to a tool, paradigm or coding style they know even though its not the best thing to solve the problem at hand.

      Precisely the OP's point.

      That's a typical trait of a junior developer, or an experienced developer who has worked solo for most of they're career.

    4. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      Most of they are career?

    5. Re:He sounds like an idiot by Anonymous Coward · · Score: 0

      > Right tool for the fucking job.

      How do you know which is which without doing?

    6. Re: He sounds like an idiot by umghhh · · Score: 1

      That may be correct. The problem is widespread.

    7. Re: He sounds like an idiot by locofungus · · Score: 4, Insightful

      Many programmers refuse to open the Pandora's box and they stick to a tool, paradigm or coding style they know even though its not the best thing to solve the problem at hand.

      Precisely the OP's point.

      That's a typical trait of a junior developer, or an experienced developer who has worked solo for most of they're career.

      I disagree.

      The experienced developer has been chopping down trees for years with an axe. He's been putting up shelves with a drill. he's been cutting floorboards with a circular saw. And occasionally he's been cursing because he's having to make do with the wrong tool because although he knows what the right tool is, paying $lots for a tool he will use just once can't be justified.

      Alongside that there are countless (less experienced) developers suggesting that he uses the circular saw to cut down the tree, the axe to put up the shelf, the drill to cut the floorboard and the experienced developer isn't particularly impressed.

      But in the back of his mind he's always got that thought "what if that next tool is the chainsaw. " Just think how many trees I could cut down then. But even when the chainsaw comes along, he continues to use the circular saw on the floorboards, the drill for the shelves and, indeed, he may even still use the axe from time to time.

      --
      God said, "div D = rho, div B = 0, curl E = -@B/@t, curl H = J + @D/@t," and there was light.
    8. Re:He sounds like an idiot by Hognoxious · · Score: 2

      You ask on stackoverflow, of course. *eyeroll*

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    9. Re: He sounds like an idiot by dbIII · · Score: 2

      It depends on if it really matters. A little script to pop up a box and let the user choose from a list of environment variables before running an application could be done properly with python or it could be done in a couple of lines using zenity in the bash shell. Sometimes using that circular saw is pretty damn quick if the tree is small enough that it doesn't matter.
      That's why planning is important and choosing the technique before taking a major step is the way to get that experience. Solving toy problems or making small changes can be done with just about anything so that's not the way to start using the right tool for the job.

    10. Re: He sounds like an idiot by fisted · · Score: 1

      Well said.

    11. Re: He sounds like an idiot by Anonymous Coward · · Score: 1

      There are golden tools which appear valuable but bend and break. There are bronze tools which make for lots of work and reflect poorly. There are also steel tools which work well and do the job. Unfortunately, there is no scientific deliberation in our community towards which tools are made of which alloy.

    12. Re: He sounds like an idiot by AmiMoJo · · Score: 3, Insightful

      Reading Slashdot comments it seems that many seasoned developers are dismissive of some pretty good new tech, even after it's been around for much longer than 5 years.

      C# is a great example. I'm a hard core C coder who mostly works on embedded systems, but when I need to do anything desktop I always consider C#. It might not be the most efficient language, but it's performance is perfectly adequate for a huge number of tasks, it has libraries that simplify most day-to-day stuff greatly and lets you concentrate on structure and architecture instead of details.

      People around here often dismiss it because of the association with .NET (which itself is far from terrible) and the fact that it hides a lot of the "real CS" stuff, but that's the point of it.

      Save the hate for stuff that deserves it, like Javascript.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    13. Re: He sounds like an idiot by Dog-Cow · · Score: 3, Insightful

      People around here hate C# (those that do) because it's from MS. When it comes to MS, there are no technical merits that can redeem the technology. They are not rational people. Most of them probably don't even program for a living.

    14. Re: He sounds like an idiot by AmiMoJo · · Score: 2

      FWIW I often compile with Mono because I like my tools to be cross-platform. I find that compatibility between .NET and Mono is excellent anyway.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    15. Re: He sounds like an idiot by Anonymous Coward · · Score: 1

      I loved C# when I used it. We even used open source tools to build, test and deploy. It is/was a strong language. My issues were with being locked into the gac, IIS, etc.

    16. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      C# 6 asynchrony transforms programming ITSELF.

    17. Re: He sounds like an idiot by 110010001000 · · Score: 2

      There is a reason to hate C#. It is effectively controlled by a single corporation. Don't give us bullshit about it is "standard" or "open". It isn't. It is Microsoft. It doesn't matter if it is Microsoft or Google or Sun or Apple or whatever, it is still controlled by a single corporation. C++ is open and standard.

    18. Re: He sounds like an idiot by locofungus · · Score: 1

      Reading Slashdot comments it seems that many seasoned developers are dismissive of some pretty good new tech, even after it's been around for much longer than 5 years.

      C# is a great example.

      Lets assume that C# is, indeed, better than sliced bread.

      However, in a linux shop with no C# development at all, no infrastructure to support it (mono?) and nobody who is knowledgeable in the tools, config, support, failure modes or problems, is it wise to "jump ship" from whatever technology is working currently?

      I'm not saying it's definitely wrong but, changing to use C# isn't an "agile" thing. One developer who knows about it and can support it on his own desktop, can probably make it work - but can he make it work across the company more cost effectively than not adopting it? It's a business case that needs to be made.

      And if that evangelist decides to leave after nine months because getting a company to adopt a "new improved" language turns out to be bloody hard work, will the company be able to continue with the investment so far or will it decide to go back to the tried and tested?

      --
      God said, "div D = rho, div B = 0, curl E = -@B/@t, curl H = J + @D/@t," and there was light.
    19. Re: He sounds like an idiot by Gr8Apes · · Score: 2

      People that don't like C# (like me) don't like it for a number of reasons starting with lock-in, sub-standard libraries if you're wanting to be cross-platform, etc. C# was a reworked clone of Java after MS-Java was found infringing. The CLR is interesting, but is a fundamentally different solution than the VM approach used by the JVM. It solves the many languages running on Windows problem, not the run language X consistently across multiple architectures and OS problem. Hence the lock-in issue, because if I'm going to run on Linux, I'll use Java, not C#, as C# offers me nothing compelling to use it on various flavors of Linux, BSD, OSX, OS400, etc. And no, Mono isn't good enough and EF (ORM) isn't a reason either.

      --
      The cesspool just got a check and balance.
    20. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      And which C++ variant is that?

    21. Re: He sounds like an idiot by AmiMoJo · · Score: 1

      I'm more pragmatic. It gets the job done, if it compiles with Mono today it will compile with Mono tomorrow even if Microsoft decides to change something and make it proprietary.

      If I'm writing a tool to do X today, how exactly do you think Microsoft will use their control of the language to cause me problems later? I can only imagine fairly outlandish scenarios.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    22. Re: He sounds like an idiot by Gr8Apes · · Score: 2

      I dislike C#. I have programmed with it, C++, and C as well, even relatively recently. For my particular purposes, C/C++ wound up being far better languages to code the system I needed (on Server 2012) than C#. I needed system calls that required calls into the Win32 subsystem directly, and if I need to write a library in C anyways and call it via a lightweight PInvoke wrapper, why not just write the entire thing in C and skip the extra complexity, overhead, and debugging headaches?

      --
      The cesspool just got a check and balance.
    23. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      While I agree, if i could get a true EF equivalent in node I'd be all set, though it has been good for keeping my sql skillz up.

    24. Re: He sounds like an idiot by nine-times · · Score: 2

      People around here hate C# (those that do) because it's from MS. When it comes to MS, there are no technical merits that can redeem the technology. They are not rational people.

      The complaints I've heard didn't generally sound so irrational. I thought the consensus was "It seems like a good language, but still most useful in building things for Windows. Maybe that will change as the cross-platform stuff improves, but for now, I'll stick with [whatever language they're using]." Admittedly, I'm not a real programmer and only get a sense for what programmers think from this site.

    25. Re: He sounds like an idiot by plopez · · Score: 1

      In my experience most developers seem to be emotional and illogical. They have deeply ingrained beliefs; sometimes that the legacy tech is the best and sometimes that the latest new thing is the best, and they will not reassess their position regardless of real world evidence. Personally I try to keep an open mind and use the tools I am given.

      --
      putting the 'B' in LGBTQ+
    26. Re: He sounds like an idiot by Anonymous Coward · · Score: 1

      Millenials are worthless programmers. Your IDE's are for girls. You don't know how any of your tools work. Now get off of my lawn!

    27. Re: He sounds like an idiot by __aaclcg7560 · · Score: 1

      And which C++ variant is that?

      Java.

    28. Re: He sounds like an idiot by Lemmeoutada+Collecti · · Score: 1

      You may not borrow my circular saw, ever. The problem with that assumption is that all of the reasons for using the right tools (axe, chainsaw) are gone; no sap, the tree is all dry wood, there are no fibrous sections in the bark, etc. That is the same problem I see all the time with evangelists for any tool. In order to make a rational, evaluated decision, all facts must be looked at as objectively as possible. Or to use an old quote "the right tool for the right job".

      --

      You can have it fast, accurate, or pretty. Pick any 2.
    29. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      In C# 6, the program writes you.

    30. Re: He sounds like an idiot by Shane_Optima · · Score: 1

      The problem is that experience can do one of two things to developers. Open your mind or close your mind. Many programmers refuse to open the Pandora's box and they stick to a tool, paradigm or coding style they know even though its not the best thing to solve the problem at hand. It's like a carpenter trying to cut down a tree with a circular saw because that's what he spends 99% of his time using.

      That is true enough, although if we got into specifics I think everyone would be guilty of this to some degree. C++ / Java style OO, for instance, appears to have irreversibly poisoned the minds of at least two generations of coders because it's "good enough" and very familiar. They even celebrate the fact that they have to repeat certain familiar patterns of code over and over in a noninuitive way to accomplish some commonplace task, calling such kludges "design patterns."

      On another note entirely, I simply can't resist mentioning that when I was three years old I actually saw my father cutting down a small dead tree in our back yard with a hacksaw... and I asked him why he wasn't using his portable circular saw. He paused, muttered "that's actually not a half bad...", went to the garage and used his circular saw to finish the job. (He didn't have a chainsaw.)

      I'm not sure what that tends to argue for except, perhaps, for the fact that I was apparently a hacker from a fairly early age.

    31. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      if it compiles with Mono today it will compile with Mono tomorrow

      And get taken to court for patent infringement the day after. Never trust Microsoft.

    32. Re: He sounds like an idiot by ADRA · · Score: 1

      You forgot to mention two developers, but only roast one. You know know those guy that learns about a new technology that the team has never heard of, convinces the boss through their evangelical zeal, writes the feature, then proceeds to bail / quit because the company is just too passe. Now the team's left with a half-broken feature and a new core dependency boat-anchor left for someone else to eventually remove in a future release.

      The sad thing is, I'm far more of this guy than the stale one, but years of dealing with other people's research f-up's have tempered my zeal to much more realistic ends.

      --
      Bye!
    33. Re: He sounds like an idiot by tigersha · · Score: 1

      I know someone like you. He thinks henis the worlds greatest programmer but he is as dumb as a brock. His problem is that he uses very inefficient tools.

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
    34. Re: He sounds like an idiot by lordlod · · Score: 1

      People around here hate C# (those that do) because it's from MS. When it comes to MS, there are no technical merits that can redeem the technology. They are not rational people. Most of them probably don't even program for a living.

      As a former Visual Basic programmer I will not base my livelihood on a MS programming language. Who knows when MS announces the next shiny programming language, declares my companies existing code base obsolete and expects everyone to repeat the same mistake.

      I do not view this as irrational in the least.

    35. Re: He sounds like an idiot by dbIII · · Score: 1

      You misunderstand.
      Sometimes the task is such that there are a vast number of right tools to choose from.
      At other times there is not.

    36. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      Have you ever used a cell phone before?

    37. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      no shit, how many luddites are still using vim or emacs and the git command line when there are a bunch of IDEs now that reduce work and improve debugging considerably.

    38. Re: He sounds like an idiot by godefroi · · Score: 1

      Python's open and standard too, that's why Python 2 is still the most common variant.

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    39. Re: He sounds like an idiot by Bengie · · Score: 1

      Experience counts for naught. Most developers with 10 years of experience just experience the first year ten times over. Many big tech companies confirm this with their talent search issues. Statistically there is virtually zero difference in skill between someone who has 6 months experience or 20 years. Most people quickly reach their limits.

      In my many dealings with world grade technology consulting firms, they are horrible at consulting, but they do make for great human interfacable reference books. Most of the time I spend about 5 minutes reading a Wiki article about a given technology before jumping into a meeting with a specialist, then I poke holes in their logic until their ego is bruised enough to get them to be quiet, then I start asking my questions and finally get somewhere. Their logic and understanding is almost always horribly flawed, but they do know a lot. Their opinions are pretty much useless.

      They may know more facts than I do and have dealt with more issues that I have, but I will have vastly more understanding of the domain than they will ever have. Cargo-cult, that is all.

    40. Re: He sounds like an idiot by david_thornley · · Score: 1

      You don't have to use your imagination, and what you appear to think fairly outlandish scenarios have happened. I don't expect C# to go the way of VB (not VB.NET) or Silverlight any time soon, but despite cross-platform efforts it's still pretty well connected to Microsoft. C++ and Java, to name two, have strong communities not tied to their originating companies.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    41. Re: He sounds like an idiot by AmiMoJo · · Score: 1

      Remind me, what were the open source implementations of VB and Silverlight? Where was the open spec for those languages? And why did all the software written in them suddenly stop working when Microsoft ended support?

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    42. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      What nonsense. Just the kind of thing I hear at conferences where people can't wait to throw away today's barely-adopted technology for tomorrow's untested mess.

      A huge amount of real, working, dependable software is based on MS technology. Your "don't use C# because MS are idiots hahaha!" comment shows your utter ignorance of real software development.

    43. Re: He sounds like an idiot by david_thornley · · Score: 1

      If you don't care about future language development, you're probably OK.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    44. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      Main problem with C# is that doesn't do really to well on the dominant O/S - Linux!

    45. Re: He sounds like an idiot by Anonymous Coward · · Score: 0

      Hmm...

      I started programming on minicomputers & Mighty MainFrames using FORTRAN & COBOL back in the 1980's (today's low end smart phone has more than a thousand times the processor power of 'my' mainframe!), long before Microsoft appeared on the scene.

      I've had the misfortune of having to use Microsoft for several years.

      Now I much prefer Linux, much easier to use than anything Microsoft has to offer - and a lot more secure. Also Linux runs on more platforms than all other O/S's combined.

      What percentage of super computers run Microsoft? What percentage of mobile phones run Microsoft? Linux is dominant on both!

      Microsoft has some good stuff, but the downsides outweigh the benefits.

  3. Infinite web pages by qzzpjs · · Score: 5, Insightful

    I think infinite web pages was the worst idea that every site just had to copy to be part of the fad. I liked page number buttons. I can bookmark a page where I left off instead of scrolling a hundred times from the top again. It also doesn't use up all my computer's memory in Firefox or Chrome.

    1. Re: Infinite web pages by Anonymous Coward · · Score: 1

      That is to get more page views, duh.

    2. Re: Infinite web pages by qzzpjs · · Score: 1

      An infinite web page is one that scrolls forever and would only get you one page view. I hate them because you always have to start scrolling from the top. Try finding a YouTuber's 500th video by scrolling. With page buttons, I could calculate which page in seconds.

    3. Re:Infinite web pages by dave420 · · Score: 1

      None of that is mutually exclusive with infinite scrolling websites.

    4. Re:Infinite web pages by houghi · · Score: 2

      I hate that stuff, especially if the sneaky bastards have the info and legal part at the end of the page.
      To me that should be illegal.

      --
      Don't fight for your country, if your country does not fight for you.
    5. Re:Infinite web pages by JaredOfEuropa · · Score: 1

      Also, on infinite web pages it's scroll scroll scroll and YOINK, you have lost your place.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    6. Re:Infinite web pages by CanadianMacFan · · Score: 2

      I wanted to get in contact with one place who used an infinite page but they put the link to the contact information at the bottom of the page. So every time I scrolled to the bottom it would load the next section before I could click on the link.

    7. Re:Infinite web pages by Solandri · · Score: 4, Insightful

      More precisely, it's scroll, scroll, scroll. Ctrl-click to open a link in a new tab. Except you didn't hold down ctrl enough and the link opened up in the current tab. You hit back on your browser, and now you have to start scrolling from the top all over again. Whoever came up with the idea for infinite scroll web pages should be forced to go home and start his trip all over again every time his GPS tells him to make a turn and he misses it.

    8. Re:Infinite web pages by Anonymous Coward · · Score: 0

      Please convert this guy from infinite scrolling.

      On slide 43 you can also see that keyset pagination has some limitations: most notably that you cannot directly navigate to arbitrary pages. However, this is not a problem when using infinite scrolling. Showing page number to click on is a poor navigation interface anyway—IMHO.

      I think his method for avoiding sql's OFFSET keyword is fascinating though.

    9. Re:Infinite web pages by Hognoxious · · Score: 1

      Horizontal scrolling's got to be a close second.

      I sort of wonder if they can be combined, but I'm afraid to look in case it breaks the universe or something..

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    10. Re:Infinite web pages by justthinkit · · Score: 1

      When I become interested in a new podcast, I try to get the older MP3s. But I also like to know how long all of that will take. With infinite pages? No idea. Run out of time? Come back later and wait for a server 100 times to load a relatively small web page.

      If ten more of us weighed in, we could post ten more reasons why infinite web pages suck.

      --
      I come here for the love
    11. Re:Infinite web pages by Anonymous Coward · · Score: 0

      Single page sites in general too. They were part of an attempt to "adapt" sites to mobile (where scrolling is somehow more intuitive than tapping, apparently). Infinite pages are related to them, because how dare you make people follow a link.

    12. Re: Infinite web pages by Luthair · · Score: 1

      He might be referring to the fact many news sites load some random next article when you hit the bottom of the one you were actually interested in.

    13. Re:Infinite web pages by Anonymous Coward · · Score: 0

      There's got to be a way for a botnet like Mirai to take down an infinite web page site.

    14. Re:Infinite web pages by MareLooke · · Score: 1

      Bing does something similar with it's search settings, at least on mobile and when using image search. The settings link is in the footer and the damn thing just keeps loading more and more search results...

    15. Re:Infinite web pages by Anonymous Coward · · Score: 0

      Horizontal scrolling's got to be a close second.

      I sort of wonder if they can be combined, but I'm afraid to look in case it breaks the universe or something..

      Infinite pan! :)

    16. Re:Infinite web pages by Tablizer · · Score: 1

      You hit back on your browser, and now you have to start scrolling from the top all over again. Whoever came up with the idea for infinite scroll web pages should be forced to go home and start his trip all over again every time his GPS tells him to make a turn and he misses it.

      Maybe the inventor had Alzheimers: they wouldn't know the difference or care.

    17. Re:Infinite web pages by Anonymous Coward · · Score: 0

      It's to make it harder to scrape not to add a useful feature.

    18. Re:Infinite web pages by doom · · Score: 1

      I think infinite web pages was the worst idea that every site just had to copy to be part of the fad.

      Well, like I keep saying these days: In a world where vinyl LPs can make a comeback, there may still be some hope for web standards.

    19. Re:Infinite web pages by qzzpjs · · Score: 1

      Yes, horizontal scrolling is definitely the second worst thing. You could actually find stuff on Netflix before they started scrolling thing horizontally. And since they can't put too many on there, you get to see maybe 50 titles out of the thousands in the category. I'd rather see a nice 5x10 grid and a next page button.

      Then, every other video or book site copied the bad idea so they could have the same look.

    20. Re:Infinite web pages by Anonymous Coward · · Score: 0

      Or even worse, the link isn't really a link, and they use some fancy JS nonsense to load the new page in the same window. I hate when they unnecessarily defeat "open in a new window" or "open in a new tab"!

      dom

    21. Re:Infinite web pages by Anonymous Coward · · Score: 0

      with it's search settings

      "its".

  4. NewEra by No+Longer+an+AC · · Score: 1

    Many years ago I was working at a small company with about a half-dozen other programmers. We were all doing Informix 4GL and ESQL/C except for this one guy that kept to himself and never talked to anyone.

    He was working on their next big thing - converting all the code to Informix NewEra or as some of us mockingly called it "New Error".

    I left that place like a rat leaving a sinking ship so I'm not sure what ever became of them, but I'm pretty sure the NewEra product was never installed at any client site.

    1. Re:NewEra by deKernel · · Score: 1

      Then he did a job well done. Think about it: he was paid to develop something that never hit the light day which translates to not having to support customers.

    2. Re:NewEra by No+Longer+an+AC · · Score: 1

      You've got a point there.

      At that same place I mentioned I pointed out to my boss that any of our customers could just go into the administrative menus and turn on access to modules of our software which they hadn't paid for.

      I can't remember his exact words, but it was something like good luck making that work for them because it was fairly bug-ridden territory (and we both knew that).

      No client could possibly use the base code anyway, because not only did they require their own customizations, they also expected us to fix the bugs in the parts they did use.

  5. Happens a lot by Anonymous Coward · · Score: 5, Insightful

    Main issue isn't "following the hype" -- it's not understanding why something worked for someone, or even why what you're currently doing is or isn't working before making sweeping changes.

    PHBs making stupid and declarations based on trade magazines that sinks the project? Probably never understood what his subordinates were actually doing in the first place.

    Developers changing languages mid-project? Forgot to add the time to master the language to the estimate, most likely.

    1. Re:Happens a lot by dcollins · · Score: 2

      "We are smarter than other shops, so we will cut all the developer estimates by half" -- actual thing said to me by an actual head of engineering.

      --
      We know where leadership by an anti-intellectual "strongman" who scapegoats minorities and likes boisterous rallies goes
    2. Re:Happens a lot by dbIII · · Score: 1

      Main issue isn't "following the hype" -- it's not understanding why something worked for someone, or even why what you're currently doing is or isn't working before making sweeping changes.

      Indeed - such as implementing the Toyota method without the feedback steps that made it work for Toyota (and Ford before that). That is a very common failure. Just about anything with "quality" in it's name outside of production line testing seems to make that sort of mistake too and diverge far from reality. A former boss who seemed to work "quality" into every sentence later went on in the next job to black out the largest city in New Zealand for a month. His cutbacks on maintenance were apparently "quality" cutbacks and redundant systems were apparently wasteful.

    3. Re:Happens a lot by Chatterton · · Score: 2

      That's why in my previous job I always tripled my estimates and made sure that my colleagues make so too.

    4. Re:Happens a lot by JaredOfEuropa · · Score: 2

      Exactly, and that's why the author of the article advocates testing and research: understand the nature of the beast before attempting to tame it. This is classic innovation management. What I missed from his article is another important aspect of innovation: knowing when to quit (and planning for an exit). Define success criteria, have regular evaluations, keep room for changing tack when your insight changes, and stop when your goals aren't being met. And of course to define those success criteria, you have to understand what your current challenges are to begin with. Basic stuff...

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    5. Re:Happens a lot by HornWumpus · · Score: 1

      Double the number and move to the next larger unit.

      Five minutes = Ten hours

      Ten hours = Twenty days

      Twenty days = Forty weeks

      One week = Two months

      Three months = Six years

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    6. Re:Happens a lot by Anonymous Coward · · Score: 0

      JavaScript *cough* CoffeScript *cough* TypeScript *cough* Go.... please stop...

  6. Agile by zm · · Score: 3, Informative

    Although, it was due to a sustained level of hype, rather than an epiphany by the powers that be.

    --
    Sig ?
    1. Re:Agile by Tony+Isaac · · Score: 2

      When Agile fails, it is almost always due to the implementation NOT actually being agile. There is such a deep belief by many old-timers that Waterfall is the only way to get things done, that many simply cannot make the transition.

      I worked for a company that uses Agile (Scrum), but then acquired a Waterfall shop. By all accounts, the Agile team ran circles around the Waterfall team. The Waterfall team struggled to switch to agile, but not yet successfully. It's not easy to do, and the transition is often done poorly. Then, the Waterfall believers point to the failed transition and use it as evidence that Agile does not work.

      If you're looking for evidence that Agile doesn't work, you'll find it. But meanwhile, agile shops like LinkedIn and Amazon, along with many others, keep getting things done.

    2. Re:Agile by Anonymous Coward · · Score: 0

      Agile defenders. LOL. These same people would blame you for the fact that a dull knife doesn't cut things.

    3. Re:Agile by WaffleMonster · · Score: 4, Insightful

      When Agile fails, it is almost always due to the implementation NOT actually being agile. There is such a deep belief by many old-timers that Waterfall is the only way to get things done, that many simply cannot make the transition.

      This is all proponents of Agile ever say. A noun a verb and "Your doing it wrong".

    4. Re:Agile by Tony+Isaac · · Score: 1

      Yes, I agree with you. I have seen it done right, and I've seen it done wrong, numerous times. It's a religious war, I know, and I know I won't convince you. But that's OK, I'm quite happy to let the market decide. As for me, I will always choose to work in an Agile shop. I'll take on your Waterfall shop any day.

    5. Re: Agile by Anonymous Coward · · Score: 0

      Agile does work - look at the soviet/russian space program. The Soyuz, the unmanned progress, Salyuts, mir, and mir-2 (rechristened to IIS). All of the vehicles and stations are small minute improvements over the previous one, fixing/improving one thing at a time. It works perfectly and is agile, in the grand scheme of things, it does not matter if your iteration is 2 weeks or 6 months. It is still delivered on time and within parameters.

    6. Re:Agile by Anonymous Coward · · Score: 4, Insightful

      It's not a religious war. It can be and has been a disastrous waste of time, money, and life for many, many people. While Agile works well for certain types of projects, it does not work well for others. Choose what you like, I suppose, but all the market can reveal is that people who become enraptured by process rather than product are building castles on sand.

    7. Re:Agile by Anonymous Coward · · Score: 0

      Agile is a tool and not every tool is the right tool for the job.
      When agile fails it is always the fault of the one who tried to cram it in there, not that of those who tried to do the best of the situation.
      Don't blame the waterfall-developers here. Someone clearly pushed agile in a way it shouldn't have.
      It could have been that the waterfall-developers needed training before switching to agile. In that case the situation is o different from forcing a programming language down their throat that they had no experience working with.
      It could also be that the training they got was sub-par. That is also not the fault of the developers.

      I've seen individuals fail because of their own mistakes. When a team fails you can't pin that in the individuals in consists of. It is always the result of leadership/management problems.

    8. Re:Agile by Anonymous Coward · · Score: 0

      This has certain unpleasant analogies.

      When teachers succeed, it is due to their excellent guidance, well thought lesson plans, and skillful execution. When they fail, it's the parent's fault.

      When agile succeeds, it is due to the excellent guidance, well thought out implementations, and skillful execution. When it fails, it's because someone was doing it wrong.

      Shops like LinkedIn and Amazon have enough revenue that they could do it wrong and still succeed, so I don't see that as proof that Agile was the winning factor. Sure, Agile compares favorably to Waterfall, but that's only because Waterfall is known to fail. How does Agile compare to Extreme Programming (XP)? Seems like it's a tight race. RUP (Rational Unified Process) does pretty well compared to Agile too. Basically, any Modern (not-Waterfall) process compares well with Agile, both having not-enough advantage to have a clear winner.

      I've done quite a few Agile and non-Agile projects. I've never seen a true Waterfall project, in fact, I'm of the opinion that Waterfall is a strawman that exists only to make all other processes seem viable. Agile has it's benefits, but I couldn't say with a straight face that Agile is the same in every company that's claimed to use it, or that it was superior to anything other than badly broken processes.

      Currently, I'm in an Agile shop that hasn't discovered test driven development. I'm running circles around my team mates in the long game (I finish first) but they release first, so guess who's getting the glory (there's a reason why TDD isn't popular, it's a first to finish gets the glory, even when the bugs aren't closed for weeks).

    9. Re:Agile by SpaghettiPattern · · Score: 1

      Ever tried Agile development of a software library or of infrastructural systems? Stuff that needs to be thought out before publishing? Where experience counts? Where you don't have a team of 10 people dedicated to sprints of two weeks? Where produced software actually has to be maintained? In short, where you have a small shop that needs to make a difference.

      Agile is good to let badly planned projects die soon. Perhaps good enough to develop applications. Not so good if you have a team of experienced workers that actually know what they do and what they do directly affects the bottom line in a market where competition is strong.

      --

      I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
    10. Re:Agile by umghhh · · Score: 1

      When a team fails a project, it is almost always because of the team's approach&organisation. What you are trying to say that your agile team being so flexible were still not able to overcome difficulties the real world presented to you. Is this a problem of the world or yours?

    11. Re:Agile by ckatko · · Score: 5, Funny

      The No True Agile fallacy.

    12. Re:Agile by Puff_Of_Hot_Air · · Score: 1

      Ever tried Agile development of a software library or of infrastructural systems? Stuff that needs to be thought out before publishing? Where experience counts? Where you don't have a team of 10 people dedicated to sprints of two weeks? Where produced software actually has to be maintained? In short, where you have a small shop that needs to make a difference.

      Yes I have, SCRUM was the process used, and it all worked vastly better than the three failed projects before it (in our extreme waterfall shop). There is nothing magical about SCRUM, or any other process, it's mostly about letting good people do good work. The thing that SCRUM et al, gives you is a tight feedback loop, and that is a very useful thing if you have it all going nicely. I've worked in all kinds of setups, from super heavy process (which I just can't stand, who wants to sit around for 6 months just writing documentation and attending meetings?), to extreme isolation (here are the requirements, give us the result in 6 months), to agile of all different variations. I like SCRUM the best because I like working with other people, I like that the work is chunked, and I like that it deliberately only describes a tiny tiny part of the process. There are so many ways to do anything wrong, so many things that end up working despite human screw-ups, so little hard science around anything people oriented, and so much implied in vague terms like "agile" that these discussions are meaningless. Give me a couple of Devs of at least medium ability, a tester or two that know the product domain, and someone on the business side that is willing to talk product, and I can deliver you a successful project every damn time. Call it what you like.

    13. Re:Agile by Tablizer · · Score: 1

      This is all proponents of Agile ever say..."Your doing it wrong".

      Perhaps under the right conditions it can work, but it's difficult to get and maintain those right conditions.

      Most organizations are a chaos of re-orgs, management re-shuffling, mergers, splits, etc. such that a "clean" environment is hard to come by.

      It's like threading a needle riding a roller coaster. Stability may be asking too much. Come up with methodologies that can tolerate some grit in the gears.

    14. Re:Agile by umghhh · · Score: 3, Interesting

      market has hardly anything to say about it. The fact is that projects being difficult to compare are also difficult to draw conclusions upon. I actually have made a comparison of two projects running on two different platforms and using two different (*) paradigms - my corp just bought another corp where exact same thing has been done already but as said on other platform. The one had 300% higher cost than the other. The thing is - when I proposed to have a look at the reasons and do root cause analysis I was ignored. I took from this experience that this is a religion not a management practice.
      * - It is often proposed that there are two approaches: waterfall and agile. I have not seen a fully waterfall project in my long working life and I took part in projects of 10k people lasting up to 2 years. The fact is you need some rigid planning and the planning and deadlines many months or years in advance because somebody has to budget the project and needs some sort of idea of what is feasible. Even agile teams do that or they overrun the available budget and then fail. These big projects had what appeared waterfall - they set deadline 2y in advance. Yet the project planners were flexible and the planning allowed to build a huge robust, flexible and powerful system that was delivered within an accepted deviation of budget and time. the actual development teams working on particular items were doing their iterative design & test and acting in an agile way if (from their perspective) external part necessary for test was delayed. I have seen similar in much smaller but in agile term massive (~100 people, run for a year) teams/projects.
      After all these years I have made following observation: the development paradigm and chosen technology have less to say about possible success than the qualifications of the team. Good team with good leaders can achieve a lot. Not even best practice and good conditions to execute a project will help if team does not know how to make, deploy, revise and if need be modify decisions. Whether they do it during grooming meetings smoking joints or there is an uniformed drill instructor shouting on them is relevant because wrong are to the team and project what the tools are for the job - you just need the one you can work with.

    15. Re:Agile by Anonymous Coward · · Score: 0

      When Agile fails, it is almost always due to the implementation NOT actually being agile. There is such a deep belief by many old-timers that Waterfall is the only way to get things done, that many simply cannot make the transition.

      This is all proponents of Agile ever say. A noun a verb and "Your doing it wrong".

      its not a religious war. and you have seen done this right. you can see more about this by click this link below
      http://www.investasiemas.id/

    16. Re: Agile by Anonymous Coward · · Score: 0

      The thing about Agile is that it depends on the quality of people and culture.

      I'm over simplifying here, but typically if you have a group of people with the quality and culture it's awesome. It's can turn out really badly if you don't and try to force it.

      That is not to say if you can't do agile you're shit. I know very good people who don't fit into the agile culture and forcing them to be agile is asking for a failed project.

      If you can't be agile in your thoughts to understand that we are all human and force agile on everyone and everything then you are not being agile enough. Yes lookin at the situation and deciding to do waterfall can be an agile decision. Agile is not a methodology but a Paradigm.

    17. Re:Agile by ray-auch · · Score: 1

      Ever tried Agile development of a software library or of infrastructural systems? Stuff that needs to be thought out before publishing? Where experience counts? Where you don't have a team of 10 people dedicated to sprints of two weeks? Where produced software actually has to be maintained? In short, where you have a small shop that needs to make a difference.

      Yes on all counts. At the same time.

      I ran the dev team, already had experience of very early agile predecessors (DSDM), I was told to "do" agile with my team and went into it as a confirmed sceptic trying hard to keep an open mind, and f*** me it worked. Well. Really well. Several people (inc me) thought we couldn't do product development agile, couldn't do support and maintenance agile, couldn't support pre-sales agile, well we did, and it worked better than anything else we did in a whole lot of ways.

      I have also since seen the same agile process (SCRUM) used so badly it drowned a project in treacle, it would have been hilarious if it wasn't for the amount of money you were watching being pissed up against a wall.

      Agile is a tool, it is a better lathe, used properly it can produce things of great beauty and precision, but it is still just a better lathe - if you are trying to use it to drill a hole or cut a straight line you will still fail, if you leave the chuck key in you will still get hit in the nuts (if you're lucky) when you start it. Know your tools.

    18. Re: Agile by Entrope · · Score: 1

      It's a problem with agile and its proponents, who claim that agile is this wonderful process, but you need an awesome team with good management to make it work. If you have an awesome team with good management, your process needs are usually only defined by the total size of the team.

    19. Re:Agile by Big+Hairy+Ian · · Score: 2
      Agile is simply about detecting potential project failures as early as possible and responding to requirement changes as they change. Rather than doing a 2 year development cycle only to discover that not only has the clients needs changed and the software now doesn't do what they need anymore but the project wont work anyway because of X.

      I mean why lose two years work when a months or better still two weeks would have done just as well

      --

      Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    20. Re:Agile by SpaghettiPattern · · Score: 1

      That's actually pretty impressive. Good that it works out that well for you!

      We invariably struggle with resources; We never get enough of them assigned to our projects. We simply have to make do with what we have. Failing to meet a client's target is never an option, so we need our systems to be easy to configure and we need a methodology that works with people that commit themselves.
      Smaller projects typically have emphasis on configuration, testing and release management. Relatively little activity from our side and a client with SCRUM typically requires much more of our time than we can sell them.
      OTOH, larger projects to produce deliverables that improve our business proposition, have much longer conception phases and may be interrupted from time to time, only to be picked up again at an opportune time. That doesn't go well with SCRUM.
      In both cases SCRUM doesn't work well for us. We tried and just couldn't adapt to it.

      In the end it boils down to having a team of proficient people in the required disciplines. Once you have that you can do almost anything using any methodology. (With a good team you can even pretend to use a methodology when in reality you're circumnavigating it to reach targets.)

      And no, I'm not a maverick. Just a guy that developed an immune system against hypes. (Which I experienced since early 90s.)

      --

      I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
    21. Re:Agile by Anonymous Coward · · Score: 0

      Sounds like how people always say communism hasn't failed, because no one has ever tried true communism.

    22. Re:Agile by Anonymous Coward · · Score: 0

      Agile fails because Agile doesn't work.
      It's a way to micromanage developers by forcing them to use horrible tools to describe the work that needs to be done.
      It provides no benefit to the developer.

    23. Re:Agile by wyHunter · · Score: 2

      You're the first person I've ever seen that says 'it works great for some but not for others' and that's absolutely true. It depends on the domain in which you're working.

    24. Re:Agile by rickb928 · · Score: 1

      How many Agile programmers does it take to complete a sprint on time?

      One, if you commit few enough points.

      --
      deleting the extra space after periods so i can stay relevant, yeah.
    25. Re:Agile by rickb928 · · Score: 1

      When my Agile team keeps putting work into backlog because it takes to many points, they are pretending I will believe them - when they merely intend to re prioritize the work requested.

      The scrum master(s) will blame resource constraints, ignoring business demands for backlogged work to be completed.

      The Product Owner will then report they have insufficient resources and cannot deliver required, 'must have' features.

      Then we get the work done, spread across three sprints (!), and it is flawed. Not merely poor quality, but both defective in key functionality which renders the feature unusable, but also breaks other features. Module programming and testing is obviously not done, but the team blames the test environment, then the development environment, both of which are now entirely under their control.

      Mind you, this differs from our Waterfall process in that:

      - We now are denied work on a weekly basis instead of waiting months to be told features are delayed further, usually more months.
      - Failures in installation result in either a fast follower in 3-10 days, rather than retraction and months waiting for repeating the work.
      - Our requests are denied weekly instead of quarterly.
      - The Product Owner is now plainly in league with development to ensure the work never exceeds the resources permitted to be made available, which have no direct or observable relationship to the budget.

      Yes, our Agile implementation is not optimal. But it delivers failure in a MUCH shorter time frame than Waterfall did.

      --
      deleting the extra space after periods so i can stay relevant, yeah.
    26. Re:Agile by 110010001000 · · Score: 1

      Linux is probably the most successful project of all time. It doesn't use Agile. Neither does any other successful major Open Source project. Agile is for corporate programming teams who aren't very good.

    27. Re:Agile by Z00L00K · · Score: 1

      Agile is a method, but too many people tries to formalize it into a tool instead of seeing it as a high level method that shouldn't be formalized.

      As soon as you formalize Agile it stops being agile. It's like you are now thinking of how you breathe - as soon as you think about it you waste energy thinking about it.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    28. Re: Agile by rickb928 · · Score: 1

      Something like the Mercury/Gemini development process.

      Of course the Russians never had to go past LEO, so they avoided the paradigm shift needed to make a Lunar capable vessel.

      --
      deleting the extra space after periods so i can stay relevant, yeah.
    29. Re:Agile by Anonymous Coward · · Score: 0

      I hate to fall into the "no true Scotsman" hole but that's Scrum more than Agile (insofar as I understand Waterfall vs Agile). From where I sit, as a competent programmer, all project management is micromanagement. It's all designed to keep retarded H1Bs and diversity/patronage hires on something resembling a schedule and it just fucks the daylights out of anybody who knows what they're doing.

      The best job I ever had did Agile but I was left alone to design and publish features at my own pace with minimal interference. That was the key, for little time squandered on begging a know-nothing for permission to speed up workflow 50%.

      The worst jobs I ever had were also Agile. The derpy leads deemed almost everything too hard to try and fucking guessed (wrongly over and over and over) at the rest. Complete basket cases that went absolutely nowhere. When you work somewhere for 6 months and don't see a single line of even semi-clever code...

    30. Re:Agile by HornWumpus · · Score: 1

      Agile is a manifesto, full of truisms.

      The vast majority of Scrum shops are _not_ Agile.

      It says right in the Agile manifesto: 'People over process'. It also says to hire: 'Competent enthusiastic professionals'.

      How many 'scrum masters' have you met that you would describe as 'competent enthusiastic professionals'? None? One, but (s)he was forced into the role?

      The problem, as always, is PHBs hear only the parts they want to hear. From Agile they heard: 'No planning, Constant customer interaction with devs, Ship often'

      If you are interviewing with an Agile shop one question you need to work into the conversation is 'how does your pay scale compare to local industry averages?' The answer you don't want to hear is: 'Our pay is about standard for the area'. It's a tell that, they are _not_ agile. 'Competent enthusiastic professionals' are in fact uncommon in the industry and don't work for peanuts. What you want to hear is something along the lines of 'Our team is made up of mostly experienced to very experienced professionals, who make senior dev pay scale?'

      One thing that's flat impossible: To be agile and to employ only recent college grads.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    31. Re:Agile by ranton · · Score: 2

      It's not a religious war. It can be and has been a disastrous waste of time, money, and life for many, many people.

      Wait a minute, are you implying that religious wars are not a disastrous waste of time, money, and life?

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    32. Re:Agile by LynnwoodRooster · · Score: 1

      IMHO, Agile should be avoided for one simple reason: it lets the product manager/customer get off the hook easily without actually DEFINING what they want. It enforces a mindset where the customer doesn't have to really figure out what he wants, and ensures a team will run around redoing work because of that failure. It's a structured way of responding to a poorly defined (or, in more extreme cases, undefined) goal. And that is the problem itself - not know WHAT you want at the end, but believing you'll reach it by ending up with a million monkeys pounding on a million keyboards. But rather than pounding for a million years, they'll do a million 2 week sprints instead.

      --
      Browsing at +1 - no ACs, I ignore their posts. So refreshing!
    33. Re:Agile by Anonymous Coward · · Score: 0

      *You're

    34. Re:Agile by Tony+Isaac · · Score: 1

      Open source projects are not ideally suited to Agile, because one of the core features of most Agile processes is having teams that are physically located together. For most open source projects, this is not practical.

      Agile is not the ONLY methodology that works, so I'm not surprised that Linux succeeds without Agile. However, many large corporations use Agile methodologies in a big way: Cisco, Phillips, Intuit, Honeywell, Ericsson, Amazon, Google, LinkedIn, SalesForce, just to name a few. At least some of these corporations produce software that is "very good."

    35. Re:Agile by Tony+Isaac · · Score: 1

      I have worked in a number of Agile shops with competent, enthusiastic professionals. I'm sorry that you have had a less positive experience.

      To be competent, it is not a requirement that you also be "senior." I sit next to a kid just one year out of college, who definitely meets the definition of "competent." Inexperienced, yes, but also competent.

    36. Re:Agile by Tony+Isaac · · Score: 1

      If your agile shop lets the product manager / customer get off the hook without defining what they want, they are doing it wrong. Agile does not remove the need for requirements, it only changes how and when they are created. Up front, only the big outline is created, and the individual points are fleshed out as you get to them. This is NOT the same thing as getting off the hook.

    37. Re:Agile by Tony+Isaac · · Score: 1

      Yes, yes, yes, yes, and yes. Most of my career has been in small shops, ranging from 1 to 14 developers. All of them used agile, and succeeded because of it.

      There are badly planned agile projects, but this is not a feature of agile. There are also badly planned waterfall projects, but this is not a feature of waterfall. The notion that agile means "lack of planning" stems from a lack of understanding of what agile really is. Agile is a different way of organizing priorities, and it does so in a different sequence than waterfall. It does not eliminate organizing or planning or priorities.

      Toyota, SalesForce, Amazon, Google, Intuit, and many other major corporations use agile successfully, against stiff competition.

    38. Re:Agile by Tony+Isaac · · Score: 1

      I completely agree with your final observation.

    39. Re:Agile by Anonymous Coward · · Score: 0

      It depends.. are you building web apps, or are you doing embedded code? We're doing the latter and my shop would clean your clock via waterfall.

    40. Re:Agile by Anonymous Coward · · Score: 0

      Maybe it is. But in the real world, Agile is used as an excuse to never nail anything down ever, including what the product is.

    41. Re:Agile by Actually,+I+do+RTFA · · Score: 1

      When Agile fails, it is almost always due to the implementation NOT actually being agile

      When Waterfall fails, it is almost always due to the implementation NOT actually being waterfall.

      It's a process. A process should be judged based on its expected outcome in a typical use case. Give me brilliant programmers, and you can use any* methodology. Give me horrible programmers and you cannot use any methodology. The case that Agile needs to make is given average programmers (of whatever subset based on skill Agile claims to apply to), Agile produces better results. Cherry-picking in either direction is retarded.

      Ironically, after railing against cherry-picking as something used by Agile's detractors, you cherry picked LinkedIn and Amazon.

      --
      Your ad here. Ask me how!
    42. Re:Agile by Anonymous Coward · · Score: 1

      Note that one of the main items in the Agile Manifesto is; "People over Process". This means that if your specific agile process is getting in the way of getting things done then you aren't doing it right. Most people who are trying to do Scrum and having issues turn out to be doing Scrum-but, which is "yes we are doing Scrum... but we do this differently." This usually leads to trouble. Note that I am fairly agnostic about the specific methodology applied to the development process, but to criticize a methodology while not following one of the main ideas is self-defeating.

    43. Re:Agile by Tony+Isaac · · Score: 1

      You are certainly correct that the people are more important than the process. Funny, that's the #1 value on the Agile Manifesto!

      Well, I don't want to cherry pick too much. So here are some more shops that use Agile:

      Toyota, Cisco, Phillips, Intuit, Honeywell, Ericsson, Amazon, Google, LinkedIn, SalesForce.

      Still not enough? This HP survey found that 69% of development shops now are pure agile or "leaning" agile.
      http://techbeacon.com/survey-a...

    44. Re:Agile by Anonymous Coward · · Score: 2, Informative

      I don't know about the domain, but the size of the software is a major factor. Large projects (1000+ FPs) should avoid agile like the plague. According to Capers Jones, industry data shows clearly that those who attempted to do this failed consistently.

    45. Re:Agile by HornWumpus · · Score: 1

      The question was 'how many SCRUM MASTERS are competent enthusiastic professionals'. Scrum is almost always not agile.

      Do you realize how fast a competent kid makes it to senior level?

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    46. Re:Agile by LynnwoodRooster · · Score: 1

      IMHO - it is letting them off the hook. The devil is always in the details. Coming up with a big idea and "fleshing out as you go" is a sure way to guarantee, IMHO, a lot of rework, redesign, and rebuilding. It also invites continual tinkering with the product spec - and that breeds more churn. Lock down the inputs and the outputs and the required relationships between the two and you can go forward predictably, reliably, and swiftly. Leaving any part of that open and you just beg for churn. Is it responsive? I'd say no - it's better to have the hard discussions and put the time up front planning rather than wasting time and effort down the road.

      --
      Browsing at +1 - no ACs, I ignore their posts. So refreshing!
    47. Re:Agile by Actually,+I+do+RTFA · · Score: 1

      Funny, that's the #1 value on the Agile Manifesto!

      That's not interesting. People are important. Agile recognizing that isn't a benefit of Agile. Unless it's the only methodology that did. (Hint, it's not)

      Still not enough? This HP survey found that 69% of development shops now are pure agile or "leaning" agile.

      See, "shops using Agile" is irrelevant. Absolutely irrelevant.

      Science isn't that hard. If you wanna talk about why X is good, and Y exists, you have to compare the results of X and Y. If you showed that 80% of places had an increase in productivity after switching from Y to X, that makes sense. If you talk about a controlled study where people are randomly assigned X and Y, and the group assigned X improves, that makes sense. Even if you somehow account for which groups choose X over Y, you can let individuals chose (but that's harder).

      Bottom line, there may be arguments for Agile development, but you have yet to make any.

      --
      Your ad here. Ask me how!
    48. Re:Agile by wyHunter · · Score: 1

      That's fascinating. I guess it's also not surprising, there are too many moving parts to assume 'it all just works out' which is really what agile does.

    49. Re:Agile by godefroi · · Score: 1

      Agile is specifically designed to remove all choice and creativity from programmers. It is designed to give the power to the product and marketing department. When agile fails, it's because programmers don't like being held down, and product people don't concentrate on the important fundamentals, only the shiny surface.

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    50. Re:Agile by godefroi · · Score: 1

      So wait; the agile manifesto specifically says you should do "scrum-but", but if you do "scrum-but" you'll fail, and it's because you weren't doing pure scrum the way your expensive trainer taught you?

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    51. Re:Agile by Tony+Isaac · · Score: 1

      This makes no sense at all to me. I've observed in Scrum and Kanban shops that often, developers are often asked to make decisions that SHOULD be made by product people, who often have only a vague idea of what they want. I've certainly never felt limited in my ability to be creative!

    52. Re:Agile by SpaghettiPattern · · Score: 1

      Not all gloom and doom ;) Will reconsider my sceptic position.

      --

      I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
    53. Re:Agile by david_thornley · · Score: 1

      About all I can say is that when I've been in Scrum projects it's generally worked well, and I can see how it wouldn't work in other situations. If we were to follow one of my less serious suggestions and rewrite our code base in Common Lisp, I would not want to use Scrum as an overall methodology, although it would be possible to design the project so that Scrum could be used on many sections.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    54. Re:Agile by david_thornley · · Score: 1

      Waterfall can work on projects with clear and unchanging specifications. I've seen a few such come out of accounting departments. (My wife liked working on accounting applications at one time, as they told her what they wanted and were happy when she delivered that.)

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    55. Re:Agile by godefroi · · Score: 1

      Ah, but then that's not Scrum, then, is it?

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    56. Re:Agile by Tony+Isaac · · Score: 1

      There is nothing in Agile that restricts creativity and choice by programmers. What it does is allow programmers to make technical design choices, and product owners to make business-facing choices. The business people decide what they want it to do, programmers decide how to get it done.

      If anything, it's the waterfall process that allows "architects" to make all the design choices for the programmers, who are expected to just follow the requirements like a code monkey.

    57. Re:Agile by Comrade+Ogilvy · · Score: 1

      This is all proponents of Agile ever say. A noun a verb and "Your doing it wrong".

      Well, to be fair, isn't that equally true about Waterfall? "Plan went wrong due to unexpected problems? You did not plan enough!" Every kind of hindsight, like a more robust POC, can be swept under the rug of "better planning" after the fact.

      Both Waterfall and evolutionary/Agile methods are prone to myriad kinds of failure. The more common kinds of failure are somewhat different between the two. Waterfall can encourage dangerous blindness to changing requirements, and tends to shift certain kinds of risk later into the game than is usually absolutely necessary. Agile can fool you into not realizing that important architectural decisions were made early, without full consideration.

  7. Yep by Anonymous Coward · · Score: 0

    Stupidly followed the Ruby on Rails hype.

  8. Not just development by hcs_$reboot · · Score: 2

    It happens all the time. Everywhere. As soon as a trend arises on the horizon many companies jump on it to get their share of the cake. And it's even not unprofitable.

    --
    Slashdot, fix the reply notifications... You won't get away with it...
    1. Re:Not just development by tomhath · · Score: 1

      Yup. Functional Decomposition is the silver bullet. No wait, it's Data Flow Diagrams. No wait, it's Rapid Application Development. No wait, it's Object Oriented Analysis/Object Oriented Design. No wait, it's Waterfall. No wait, it's Superprogrammer/Team Programming. No wait, it's Agile.

      In the end a small group of good programmers will make a project succeed. Anything else will make it fail; it all boils down to whether the tech leads are competent or were promoted because they were someone's pets.

    2. Re:Not just development by Z00L00K · · Score: 1

      Keep every piece small, too many problems are created by attempting to build a solution out of too complex modules. Some people may complain about too many source files and similar, but if each component is small and distinct it's a lot easier to rearrange them.

      And even seasoned programmers makes mistakes, but they are often not in a single module but rather in a system-wide perspective caused by misunderstanding of the larger picture. This just highlights that to make a good system you need to know the need of the customer.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
  9. Management by magazine by wasted · · Score: 1

    I agree, this isn't an IT-specific issue. PHBs frequently make executive decisions base on what is promoted in trade magazines, which is a bummer for the workers who have to follow policy influenced by a marketing major.

    1. Re:Management by magazine by Anonymous Coward · · Score: 1

      Haha, this is so true. I once worked in a company which technology strategy changed whenever something was told to be trendy on trade magazine. Whenever there was an article about html5 or something similarly vague tech, it was certainly to be our next mandatory choice of technology, no matter what was the problem area. The dumb CTO did single handedly ruin project after project until he left. Of course the higher management did not blame him, as he was using the trendy technologies, which were the only ones other PHB's were also heard of.

  10. Avoid the silver bullet that is Sencha ExtJS by EmperorOfCanada · · Score: 4, Insightful

    Wow, ExtJS brought all development to a complete multi year halt. In the first few months ExtJS development is way way way faster than any other framework out there. But after about 6 months all you are doing is fighting with the framework. Just an endless knifefight. Any single problem could be solved against the base instlall of ExtJS but what happens is that you have to develop workaround after workaround to make the system snap into place for any given need. Those workarounds then make future "easy" changes impossibly hard.

    So you might have something as simple as wanting to put the focus on a login username. If you had just done the page as your first round and thought of that then, like everything with ExtJS, a little weird but fairly easy. If you already have fought with sencha to make other things happen on the login page (say a filtered twitter feed) then ExtJS is probably broken 8 ways from sunday and you can't set a focus worth a damn.

    Save yourself a world of pain and just use basic javascript combined with either simple single function libraries, or worst case scenario use a framework that won't blow up your company like react or polymer. Yes, you won't be a showoff in the first few weeks of development like you could with ExtJS, but you won't blow up your company when you can't finish the project until you realize that it can only be done by throwing out ExtJS.And if you get 5 or 6 people in the company who get training by ExtJS, good luck cutting through her bullshit about how ExtJS is the best thing ever even though the project is now 18 months late.

  11. Trendy UIs by Anonymous Coward · · Score: 0

    Rewriting half the application in mid development because the UX guy managed to convince the project lead/owner that "material design is the future of user interfaces!"

    Lunch debates occasionally revolved around the plausibility of convincing a judge that this situation would fall under the category of "justifiable homicide."

  12. Well, if it's got any javascript in it by RightwingNutjob · · Score: 1

    it must be good.

    Or is it SOA? Or Java? Or Windows?

    If all you've got is a buzzword, you ain't got a business.

  13. Yep. Quite recently. by Hylandr · · Score: 1

    Yep. Quite recently.

    https://github.com/cloudtools/...

    --
    ~ People that think they are better than anyone else for any reason are the cause of all the strife in the world.
  14. Agile is good for some teams & projects, horri by raymorris · · Score: 5, Interesting

    For some projects and some teams, Agile is the best they can be expected to do. For other types of projects and other types of teams, it's a really horrible idea.

    Central to Agile is the proposition that the company is unable or unwilling to figure out what the requirements are before they develop the system. As Yogi Beara said, "if you don't know where you're going, you not get there." On small projects it might not hurt too much to figure it out as you go along, to backtrack and throw away code that has to be replaced. On large projects, and systems that need to integrate with other systems, you REALLY do need to figure out the requirements ahead of time and plan the architecture.

    If your team consists solely of programmers of medium competence, Agile may be the best choice. If you have even one excellent systems architect, you're far better off letting therm do their job, planning the system out first. If your team includes junior programmers (or veterans who haven't expanded their skill set over the years), Agile can leave them floundering, going one direction for a few weeks, then another direction for a few weeks, then completely backtracking for a few weeks.

    In summary, Agile is sometimes the best choice for your team, and when it is, you've done a poor job of hiring.

  15. Been there, done that. by Zarjazz · · Score: 5, Interesting

    Several years ago my Pointy-haired Boss was reading technology articles (bad idea) and caught the "Big Data" bug. It spread to our CTO, CIO and all department heads like wildfire. This led to our Development team being turned into NoSQL zombies who said words like "Hadoop", "Shark", "Spark" in response to any new product requirement. It was a glorious vision of a magical backend system that would take all our data from every platform, that would scale up and out forever, and could be asked any question and give us exactly the results we wanted all instantly. The fact no one in the entire company had ever used any of the technology before or the fact we didn't even have any Java experience to setup even the base Hadoop installation were just minor points not worth discussing. I would like to say I was the lone dissenting voice, well I was and said lets just stick to SQL, but even I got caught up in the hype eventually.

    18 months later and a sickening amount of man-years wasted and contractor money spent with no usable products or services the conclusion was NoSQL isn't a good fit for our data or platform use case. So they all went back to standard MySQL and completed 90% of the delayed projects in under 4 weeks.

    On the plus side management heads did roll. I have a new My Pointy-haired Boss and CTO. However they have now started to drop in the words "Microservices" and "Docker" into all discussions. I can see a new hype-train arriving shortly ...

    1. Re:Been there, done that. by Hylandr · · Score: 1

      I swear you sit in the same pod as I do...

      --
      ~ People that think they are better than anyone else for any reason are the cause of all the strife in the world.
    2. Re:Been there, done that. by Anonymous Coward · · Score: 0

      "My Pointy-Haired Boss" fits with the MLP theme. Anyone care to do the whole opening title scene with MPHB?

  16. No by Anonymous Coward · · Score: 1

    My development team isn't that particular flavor of retarded.

    1. Re:No by hcs_$reboot · · Score: 1

      My development team isn't that particular flavor of retarded.

      and your team is not interest in profit.

      --
      Slashdot, fix the reply notifications... You won't get away with it...
  17. Re:Agile is good for some teams & projects, ho by Tony+Isaac · · Score: 0

    Agile doesn't say you can't have big goals, only that the details can't be fully known up front.

    I wager that on every single waterfall project you have worked on, there have been numerous change requests after the project was supposed to be "done." If it was a big project, I wager there were many change requests. In other words, the original requirements turned out to be fiction. The true requirements were not really known when the project started. The product owners thought they knew the requirements, but when the gears started to turn in production, they found that their original design was flawed, and had to be revised.

    Agile accepts this reality up front, and does not attempt to fill in every detail at the beginning. It therefore eliminates a lot of work that would otherwise be thrown away during the waterfall revision process. Agile recognizes that fixing flaws becomes much more costly, when they are found later in the process. Waterfall does not do this, resulting in expensive change requests at the end of the process.

  18. Re:Agile is good for some teams & projects, ho by Zmobie · · Score: 1

    I disagree. Working at a primarily waterfall based company we have lots of change orders after systems go into production and as long as the code was designed well there really isn't an issue with adding new features. Sure, there are occasionally the huge changes that some customer decided they couldn't live without, but those types of changes hurt agile shops too. The problem you describe and "solve" is designing overly rigid code, not "agile is better than waterfall."

  19. Google by nastyphil · · Score: 1

    Wave.

    --
    Dialectician. Archology.
  20. I used to work for an "Idea Man" and it sucked by Lord+Kano · · Score: 2

    I used to work for a (bigger than small but smaller than medium) family owned business doing web development.

    The CEO and President were brothers, they were the sons of the owner.

    One of the two was the idea man. He'd see something on a competitor's website or he'd read about it somewhere and call a meeting to find out what would be needed for us to do it too. We'd discus it, start developing a plan and get to it and three days later, there'd be another newer, shinier thing that he wanted us to work on. It was soul-crushing because we never got to follow through on anything. I was very happy to leave that place.

    LK

    --
    "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
    1. Re:I used to work for an "Idea Man" and it sucked by Yvan256 · · Score: 1
    2. Re:I used to work for an "Idea Man" and it sucked by Lord+Kano · · Score: 1

      Something like that but the only way to get away from his idiocy was to get a new job.

      The worst part is that he was a really good guy. I personally liked and still do like him but working for him was terrible.

      LK

      --
      "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
  21. There are no magic solutions by chipschap · · Score: 5, Insightful

    The problem is that people want magic solutions, and they keep chasing the latest fad in the hopes of finding the secret alchemy that will make average developers turn into gold stars, produce perfect systems in a tenth the time, and meet all requirements without the bother of knowing them.

    Anyone who's ever done any system of significance that actually worked will know that the "best" tools and methods are situational. Need a bash script to list a few files? The approach is different than it would be if you're hired to redo everything used by the IRS.

    We can go all the way back to the "shelf full of binders" methodologies. In their day, they were supposed to be the magic cure-all. Today, it's Agile, or it's XYZZY or whatever is the latest and greatest. Still haven't found that secret sauce.

    One size doesn't fit all. There is no magic. Successful development projects require skill, experience, good judgment, hard work, and competent leadership.

  22. Re:Agile is good for some teams & projects, ho by Required+Snark · · Score: 1

    Agile doesn't say you can't have big goals, only that the details can't be fully known up front.

    The devil is in the details.

    --
    Why is Snark Required?
  23. Re:Agile is good for some teams & projects, ho by jaminJay · · Score: 1

    There's nothing preventing you from running an agile project with a robust and complete design. Agility allows you to pivot if and when required.

    The easiest way to think of agile projects is a series of really small waterfall-like mini-projects that deliver a working product at the end. As you complete each mini-project, your product comprises a larger set of features. When your feature set reaches MVP, you can release or continue iterating to complete more features, but you can feasibly release at the end of any mini-project.

    All of the arguments I've seen around [Aa]gile have shown that both sides are unwilling to concede that they don't actually understand the others' points of view.

    There is no project that can't benefit from the ideas agile project management introduces, and there's no rule that says you should throw away your working model to implement agile (although it is generally easier to start with a single team that does start from scratch).

    ALL projects benefit from measuring the outcomes of small, incremental changes and continually finding and limiting waste.

    --
    Leela: "Is all the work done by children?" Alien: "No, not the whipping."
  24. Re:Agile is good for some teams & projects, ho by Kjella · · Score: 5, Interesting

    Central to Agile is the proposition that the company is unable or unwilling to figure out what the requirements are before they develop the system.

    The problem is that waterfall is presented as making extreme effort to try figuring it all out up front, while Agile then becomes to the exact opposite where you make no effort and just prioritize what's right in front of your nose. Reality is that you need some flexibility in waterfall projects and some structure in agile projects. In my opinion it's fine as a development method, it's all the people making requirements who don't even try anymore because agile. We're so dynamic, as long as we can spin in place it doesn't matter that we're not going anywhere.

    --
    Live today, because you never know what tomorrow brings
  25. Re:Agile is good for some teams & projects, ho by Anonymous Coward · · Score: 0

    Then you did waterfall wrong.

    Proper waterfall development involves actually talking with the customer regularly so that they know what is going on.
    It's just so much easier to sort out what the extra costs created because of project scope changes are.

    Learn how to do waterfall proper before you bash it.

  26. NoSQL all the way down by anchovy_chekov · · Score: 2

    Once upon a time I worked on an app that had 4 databases - MySQL, Redis, Neo4J and Influx. Each of these were to solve a specific problem (searching, time-series data, etc) even though the scale of the application (a handful of users per day) never warranted any kind of "big data" solution. And the fundamental problem remained - many of the developers didn't know how to write decent SQL.

    Postgres / HSTORE could have probably solved pretty much the entire set of persistence use cases. But that's a solid, proven and ultimately boring technology. Where's the fun in that?

    It's not just PHB driving the madness. Plenty of it comes from resume-driven development.

    1. Re: NoSQL all the way down by mattpalmer1086 · · Score: 1

      This.

    2. Re:NoSQL all the way down by itsdapead · · Score: 1

      Postgres / HSTORE could have probably solved pretty much the entire set of persistence use cases

      Hey, but PostgreSQL is buzzword compliant with the new hipness... you want a JSON-based document store?
      CREATE TABLE docstore (
      docid SERIAL PRIMARY KEY,
      userid INTEGER REFERENCES users,
      document JSON
      );

      OK, don't code-review that off-the-cuff doodle too seriously, but implementing NoSQL features in a decent RDBMS is easy, implementing RDBMS features in NoSQL is hard...

      --
      In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
    3. Re:NoSQL all the way down by Tablizer · · Score: 1

      PHB: "About this new NoSql database I had you set up. Um, I wish to do some SQL on it; could you add SQL to it by Wednesday?"

    4. Re:NoSQL all the way down by TemporalBeing · · Score: 1

      Postgres / HSTORE could have probably solved pretty much the entire set of persistence use cases

      Hey, but PostgreSQL is buzzword compliant with the new hipness... you want a JSON-based document store? CREATE TABLE docstore ( docid SERIAL PRIMARY KEY, userid INTEGER REFERENCES users, document JSON );

      OK, don't code-review that off-the-cuff doodle too seriously, but implementing NoSQL features in a decent RDBMS is easy, implementing RDBMS features in NoSQL is hard...

      Yep. I've worked two projects now that include Cassandra. Why? Replication. All the queries are SQL/Relational oriented. The one project supported Sqlite (for dev testing), Mongo, and Cassandra but they wanted to deploy with Cassandra; the project got canned after it was nearly complete and they started looking at the operational costs to meet our required throughput (requests/second) because of how massive the Cassandra cluster needed to be (in terms of node count and the type of server needed to support it); though we were officially told it was canned for other reasons, the timing was just too close to not have been a major factor in the decision.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
  27. Thats why by kolomanschaft · · Score: 1

    Thats why we develop our products in good ol' MFC/C++. It is still supported and that is not a coincidence. Who needs fancy things like reactive event streams when one can have the delights of MFC message pumps. Good old hardened, bare metal technology. Mobile plattforms, the Web and this thing called "Internet" are technologies we are happy to sit out and so should you. Trust me and thank me later.

    1. Re:Thats why by Anonymous Coward · · Score: 0

      Old is new. Docker is like BSD Jails. JavaScript's concurrency model is like Cooperative multitasking. Distributed systems makes functional programming popular again (haskell anyone?).

  28. Ten easy steps to HDD by roesti · · Score: 2

    Here are ten easy steps that you can take to implement Hype-Driven Development for your project.

    1. First, choose a new tool. Find somewhere that the tool is being used by a company everyone has heard of. Don't be too concerned about what they're using it for, or whether it relates to your work in any way.
    2. When you start using the tool, don't mention it to anyone until you've already decided to base your finished product on it.
    3. Don't bother finding out if the tools you have can already do the job you're doing now.
    4. Expensive tools are automatically better than cheap tools. This makes it easy to measure fitness-for-purpose.
    5. Even if you only use the tool to simplify very mildly half a line of code that's only used once, incorporating a new tool is still worth it.
    6. Compare the tool by re-implementing some of your existing tasks. Only test the simplest and most trivial scenarios: if it works in a simple case, it's bound to work just as easily in a complex case.
    7. Any inconsistencies with existing standards can be readily overcome by creating a new standard that the new tool fits exactly. Try not to be disheartened by the idea that you've previously been doing everything wrong for years.
    8. Have some like-minded suckers re-implement everything even vaguely related to the new tool from the ground up. The more suddenly you can implement this, the more of an impact it will have - and impact is always cool.
    9. If the re-implemented product turns out to be awful, or if it doesn't do what users want or need it to do, you'll be committed to the new tool by then, so it won't matter. Tell anyone who is critical of the product that it's too late to change it and that they should have raised their concerns earlier - especially if they did.
    10. Stride confidently into your next performance review, knowing that even though you wasted a lot of time and resources to build a product that does slightly less than it used to, you've certainly achieved a lot.

    1. Re:Ten easy steps to HDD by Yvan256 · · Score: 1

      (Score: 5, Sickening)

    2. Re:Ten easy steps to HDD by Anonymous Coward · · Score: 0

      Sounds like systemd to me!

    3. Re:Ten easy steps to HDD by Anonymous Coward · · Score: 0

      Sigh, sounds like most places I've worked at!

    4. Re:Ten easy steps to HDD by Anonymous Coward · · Score: 0

      Are you my old boss?

  29. It depends by Dave+Emami · · Score: 1

    Does "whatever our Microsoft rep wants to sell us" count as "the latest thing"? If so, yeah, been there.

    --

    "The Greens lynched a hacker in Chicago. Last month, but I think the body's still hanging from the old Water Tower."
    1. Re: It depends by cyber-vandal · · Score: 1

      Ha ha that was the first thing I thought when I read the article.

  30. Counterpoint by SuperKendall · · Score: 1

    When Agile works, might it not be because the implementation was NOT actually being agile...

    It's easy enough to build a personal filter that claims all (currently) working projects as "correct" implementations of Agile and claim victory.

    After a lot of experience I personally think that success revolves a lot more around teams than process. Successful teams can usually succeed under a number of different process models, while no amount of "correct" process can save a team that simply doesn't work well together (or with the rest of the company).

    A recent quote I saw on social media sums it up really well for me:

    "Every software methodology attempts to fix the same problem: how to balance the urgent with the important."

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re: Counterpoint by mattpalmer1086 · · Score: 1

      Ironically, saying people matter more than process is pretty much what the Agile manifesto says.

    2. Re: Counterpoint by Entrope · · Score: 1

      Ironically, the Communist Manifesto also says it values the working class people over the elites. In both cases, the hypocritical hyperbole fails in practice.

    3. Re:Counterpoint by Tony+Isaac · · Score: 1

      I completely agree that good teams are key. My experience has been that in waterfall shops, the teams that get things done actually have an agile mindset.

    4. Re:Counterpoint by SuperKendall · · Score: 1

      I also agree with that, which makes me wonder - has there ever been a successful development team that did not deviate from the company standard process - agile or otherwise?

      I would submit that all successful teams do so because they come up with a process that works for them, either discarding bits of the company one that do not work, or going their own way entirely. Perhaps what drags many teams down is the weight of absolute compliance.

      --
      "There is more worth loving than we have strength to love." - Brian Jay Stanley
  31. Re:Agile is good for some teams & projects, ho by Anonymous Coward · · Score: 0

    I think a combination works best (waterfall/agile). There are some details you really, really need to know during the design as those details have a major impact. There is always some key pieces defining information which impact on everything. Like the key dimensions,entities or attributes in the database design. Get them and a few key relationships incorrect early on and you are in for a lot of re-work.

    But after that, once you have that core worked out, you get get more agile and build around.

    Just my $.5

  32. Two issues: methodologies and technology by bradley13 · · Score: 1

    There are two issues here, that need to be separated: Hype about development methodologies and hype about technologies.

    If you have a good team, it doesn't matter what development methodology you use. It doesn't matter whether you have a scrum meeting every morning, or if you coordinate on a napkin over lunch - it's the team quality that matters. The rest is just formality, and provides a useful framework.

    Technologies are more critical. Taking No SQL as an example: there are some very limited use cases where NoSQL makes sense, but there is a reason why 99% of the databases are still relational. Technical folks enjoy learning new technologies, but it doesn't take long to realize that there is no magic cure-all. It's the non-technical managers who get snowed by the marketing crap, and then try to dictate technology to their developers.

    I worked at one mid-sized company that had put invested around 10 person-years in a new SOA application. Everything was looking good, and pretty much on schedule, but we had spent most of those first two years building foundation services that weren't terribly visible; the first GUI components were just emerging. Then the big boss got a visit from some Microsoft marketing weenie: "Wow, look at our new SharePoint - you can do anything with SharePoint". Next day comes a directive from the boss: Throw it all out, we're going with Microsoft. I dunno what planet he was living on, or what the marketing weenie offered him, but it took resignation letters on his desk to make him see sense.

    --
    Enjoy life! This is not a dress rehearsal.
  33. NOT using TDD is "Hype-Driven-Development"?!? by Anonymous Coward · · Score: 0

    The TDD Kool-aid has apparently been drunk so deeply that NOT buying into an extreme test-driven development paradigm is "hype driven development", even though TDD is probably the best example of hype driven development there is.

  34. No! by stooo · · Score: 1

    ^Question in the title ?

    The answer is No.

    --
    aaaaaaa
    1. Re:No! by freeze128 · · Score: 1

      ^Incorrect assumption in the title ?

      I'm not a developer, you insensitive clod!

    2. Re: No! by Anonymous Coward · · Score: 0

      Does your CxO rain "cloud" every third word or more? Then YES!

    3. Re: No! by stooo · · Score: 1

      Yes ! There's cloudy and rainy weather ahead !

      --
      aaaaaaa
  35. As a rule of thumb, wait until a new idea by Tablizer · · Score: 4, Interesting

    ...has proven itself for five years. The hard part is convincing executives of the five year rule. Often the benefits only appear in narrow niches or under specific conditions, but it takes a while for the industry to learn when and where.

    Also, a lot "fads" are not directly technology fads, but rather obsessions. About 2 years ago our CIO became obsessed with SEO - Search Engine Optimization (Google hits, more or less), and so all kinds of silly games were played with our Internet content and CMS's, including mass repetition.

    After a while people realized there was too much content to manage and clean up. That CIO moved on and the new CIO is a minimalist. Big change. SEO did nothing but make a mess.

    We were suspicious of it all, but there was nothing we could do at the time but go with the flow. At least bullshit = jobs.

    1. Re:As a rule of thumb, wait until a new idea by stooo · · Score: 1

      >> bullshit = jobs.
      more precisely :
      bullshit -> bullshit jobs.

      --
      aaaaaaa
    2. Re:As a rule of thumb, wait until a new idea by Yvan256 · · Score: 1

      If someone's feeding the bulls, somebody has to clean up the mess.

    3. Re:As a rule of thumb, wait until a new idea by Anonymous Coward · · Score: 0

      About 2 years ago our CIO became obsessed with SEO - Search Engine Optimization...

      Ten years after the idea's sell-by date. Sounds about right for a C* level exec...

    4. Re:As a rule of thumb, wait until a new idea by Anonymous Coward · · Score: 0

      I agree 100% with the 5 year rule unless it's absolutely necessary (full team agreement).
      Plus, with the 5 year rule, you'll get a lot more sleep at night while you code "just runs".

    5. Re:As a rule of thumb, wait until a new idea by Tablizer · · Score: 1

      Here's some advice, kid: Most jobs are BS jobs. Humans are highly illogical and don't care to factor the world to be efficient, simple, and stable. Dilbert is the Bible of the work world.

      (Begin Rant) Example: I was 4x more efficient with desktop tools of the 90's, and then the web came along which bleeped up the normal flow of applications, and even later when the flow improved somewhat, the "in style" UI's kept changing, and with all the different browser brands and versions, one has to test on roughly 50 different devices or equivalent to make sure it works, and it will still break 2 years later when a new browser version comes out.

      I bet 2/3 of all programmers would be fired if UI standards were done logically and didn't chase fads. Fat clients have failed unless measured as job security. Move the render and layout engines onto servers and let clients be dumb vector plotters so that one is dealing with ONE render engine instead of FIFTY for pete's sake.

      It felt GOOD being productive back in the days: I focused on business (domain) logic and the UI was a minor concern. Now the UI wastes all my time in Fiddleville. It pays the bills but playing UI whack-a-mole gets old. It was more enjoyable to solve real problems instead problems invented by F'd up standards and eye candy fads because the stupid kids have to be re-hip differently every year.

      The GUI standards of the mid 90's were perfectly fine. You fixed what wasn't broke. Familiar menus are gone, replaced with screwy slidy icons that are placed seemingly randomly. If there is a logic to them, one has to take LSD to "see" it. Consistency was shot in the head point blank.

      F U Humans! Give cockroaches a turn, they can't do worse. One should vote Trump to start the world over, not because he's good.

      You don't have to get off my lawn, for it will be raptured soon. The plants will wind up in heaven and the humans in hell because the 11th commandment is Thou Shalt Be Logical; Moses just skipped it because 10 sounded like a nicer number: marketers.

  36. Re: by Anonymous Coward · · Score: 0

    Ignorance makes idiots embrace magical thinking as a religious experience, instead of pursuing computers with science. The decisions can often be driven due to politics and management, but developers pursue hype due to the positive influence the technology name can have on their resume for their next gig. If the project fails, it often doesn't matter when no technology positions last beyond a few years, at least for anything considered competitive.

  37. It might be agile, but it's not Agile by raymorris · · Score: 3, Insightful

    > There's nothing preventing you from running an agile project with a robust and complete design.

    A large project with a complete design, an actual plan, may be agile (the adjective), but it's very much not Agile (the development methodology). A core tenet of Agile is that design, planning ahead to the end of a project, is impossible. In fairness, it probably IS impossible, for the people who believe that.

    If they haven't been taught one particular trick, they probably never will be able to know the requirements before they write the code - trial and error really is the only option, if nobody ever told you the method to find out the real requirements.

    If you want to know what the actual requirements are, there's one way to find out (and maybe ONLY one way). Sit down with the user and watch them work. Ask questions as needed to understand their workflow while they actually do it, and take notes. Ask the actual user, not their manager's manager, what they need to do their actual daily tasks. That way, (and probably only that way), your User Stories aren't fictional stories imagined by some manager, they are real descriptions of real users doing real work. Requirements flow directly from there.

    1. Re:It might be agile, but it's not Agile by Puff_Of_Hot_Air · · Score: 1

      A core tenet of Agile is that design, planning ahead to the end of a project, is impossible. In fairness, it probably IS impossible, for the people who believe that.

      I'm so glad you're here as an obvious expert on all things software development process to explain Agile in such detail. It's so comforting to have a real professional help all us struggling dolts see why we've been getting it so wrong! I don't give two shits how you like to run your projects, but maybe you should stick to talking about things you know something about eh?

    2. Re:It might be agile, but it's not Agile by Anonymous Coward · · Score: 0

      Waterfall is flawed because it takes 6 months of requirements gathering stage until you know wether the project should be shut down or not.
      Scrum is flawed because it takes 1-2 weeks for you to see wether something will work or not, and often the product owner is not represented at all in the team.
      Gold standard: If you can deliver in 1 day or faster.

    3. Re:It might be agile, but it's not Agile by rickb928 · · Score: 1

      We use the Big Room method to gather and settle on project requirements. This is the basis for the design.

      Appropriate review to re prioritize into the simplistic 'must have', 'ought to have', 'would like to have' takes less time than you might expect.

      Then the estimates, systems analysts, and dev team members start estimating the work. Of course, this is where 'would like to have' dies. Those should never get out of Big Room, but hope springs eternal.

      Then the project is timelined, a word never spoken, but that's the process. Dependencies identified, order of development decided, and rough deadlines declared.

      Now it gets sliced into sprints. It is here the sausage gets made, and it's ugly, when 'must have' gets re-ordered to accommodate the available resources...

      And it's already gone to hell at this point.

      We were sold on the agile concept of not planning too far ahead. Sadly, this is sort of like filling your car's gas tank with just enough fuel to get to the next station. Any delay, unexpected conditions, or just a heavy foot leaves you just that short of the next pump. What this means is of course dependent on whether it's a few hundred yards short on a cloudless summer day or a few miles short in the midst of a snowstorm. And whether AAA comes out that far. No, they do not go everywhere there is paved road.

      --
      deleting the extra space after periods so i can stay relevant, yeah.
    4. Re:It might be agile, but it's not Agile by rickb928 · · Score: 1

      You may be able to delver the copyright statement in a day.

      The user login process? Maybe the CHA button.

      --
      deleting the extra space after periods so i can stay relevant, yeah.
    5. Re:It might be agile, but it's not Agile by ranton · · Score: 1

      A large project with a complete design, an actual plan, may be agile (the adjective), but it's very much not Agile (the development methodology). A core tenet of Agile is that design, planning ahead to the end of a project, is impossible.

      Absolutely false. Agile project management still allows for and encourages product road maps and release planning, even if more granular tasks are only planned one sprint at a time. The only core tenant is that you cannot know all of your requirements up front, and that you should manage a project so that ongoing changes to requirements are expected and embraced.

      If you want to know what the actual requirements are, there's one way to find out (and maybe ONLY one way). Sit down with the user and watch them work. Ask questions as needed to understand their workflow while they actually do it, and take notes. Ask the actual user, not their manager's manager, what they need to do their actual daily tasks. That way, (and probably only that way), your User Stories aren't fictional stories imagined by some manager, they are real descriptions of real users doing real work. Requirements flow directly from there.

      This only works when the user knows exactly what they want. And what users' want is usually very constrained by their current environment. Try asking a salesman using spreadsheets and Outlook what he wants out of a new CRM implementation and see how far that goes. If you think that is sufficient to get good requirements, you have likely never played a large role in releasing a high quality software product in your life.

      Showing users working demos or better yet working software which is not 100% complete blows your method of gathering requirements out of the water. It is an order of magnitude better. Your method is still good and should be done as well, but it is only a rudimentary early step in gathering requirements.

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    6. Re:It might be agile, but it's not Agile by Schnapple · · Score: 1

      You're doing it again - when someone points out the flaws in Agile, you say no that's not really Agile. I reckon Ray Morris has taken courses, read books, and comes to these conclusions.

      I have to say, if Agile is so brittle that not even books and training courses can get it right, then why is anyone using it?

    7. Re:It might be agile, but it's not Agile by Puff_Of_Hot_Air · · Score: 1

      The way you describe what you are doing it sounds like you know what you want at the end of a fairly long time frame, and your doing one set of pretty basic planning and then acting surprised when that plan doesn't give you what you want at the end of the project. This is pretty typical when groups try to transition to an agile development process, and fail as a result. All you've done is throw away your detailed planning and chunked your work up into sprints.

      Try Scaled Agile.

      It's what we currently use and is the best tool-box that I've yet come across. Things like SCRUM etc don't define process at the business level (intentionally), nor do they describe how you plan out a project that's going to take a year or so to deliver. Scaled Agile does, and it's a very useful toolbox for getting the whole show to be agile (which is the end goal for a business as it allows the entire business/activity to adapt quickly to changing conditions, both internal and external). At the very least, it's useful to read (all online), as it demonstrates all the extra bits that you would need to transition fully.

  38. DHH article by BlackPignouf · · Score: 1

    That article from David Heinemeier Hansson wasn't that bad, actually. The title was truncated in the summary to make it more trollish.
    He just said that he doesn't seek 100% unit tests coverage any more, and uses a mixture of unit and system tests.
    It works fine in my experience.

    1. Re:DHH article by Anonymous Coward · · Score: 0

      If you're not seeking 100% test coverage by your unit tests then what's the point to even bother writing any? The usefulness of (near-)100% coverage is that you can refactor without being afraid that you will break things. With half-ass coverage you won't be confident enough to refactor, leading your code to gradually become an unmaintainable mess.

  39. Functional and Lambda's by Tablizer · · Score: 0

    are currently in the over-hype cycle. We've been around and round on this on slashdot before, but most of the "justifications" for common usage are due to poor languages in my opinion, especially bad OOP design, and not to an inherent benefit of lambda's.

    If you wish to say lambda's provide some decent work-arounds to poor language design, I'll accept that. But to say heavy lambda usage provides significant inherent benefits, I'll challenge it and ask for evidence and use-cases.

    I won't dispute there are niches where functional may shine, but that's the case with a lot of IT tools.

    1. Re:Functional and Lambda's by Anonymous Coward · · Score: 0

      The shit arises because <del>FatwaScript</del> JavaScript wants to be Java wanting to be C++xx wanting to be Java (again) wanting to be Python wanting to be Python3 wanting to be Haskell wanting to be Common Lisp wanting to be Clojure wanting to be JavaScript. In other words everyone wanna be each other's wannabe. There's probably an algebraic theory capturing this kind of relation, though, so everyone's gonna abstract the hell out of this, reflexively, and implement it in JavaScript with features from Java with features from C++xx ...

  40. Microservices are not hype. by neoshroom · · Score: 1

    Microservices are not hype. Anything that lets you scale your code without having to rethink how you write code and while reducing cost is pretty amazing. If anything, I'd say microservices are underutilized these days, because it is often easier to start a new holistic system and architecture it for microservices than to convert aging systems to use a new model.

    Look at their example:
    Example 3: Microservices
    Step 1: Big monolith application scales hard. There is a point when we can break them down into services. It will be easier to scale in terms of req/sec and easier to scale across multiple teams.
    Step 2: Hype keywords: scalability, loose coupling, monolith.


    Okay...sure. Req/sec and infinite scalability are a great reason to use microservices. Definitely worth having your brand new codebase use a microservice architecture. Whether your older codebase could benefit requires a cost/benefit analysis.

    Step 3: Let’s rewrite all to services! We have a ‘spaghetti code’ because we have a monolith architecture! We need to rewrite everything to microservices!

    You need a Step 2.5 with a cost/benefit analysis. How much time will it take to convert the code base? Do we really care about scaling to infinity? Where do we think we actually need to scale to in practice and how much benefit will we see from the architecture change? Etc...

    Step 4: Shit! It is now way slower to develop the app, difficult to deploy and we spend a lot of time tracking bugs across multiple systems.

    This step is kind of just wrong. Once converted most microarchitectures are actually faster to develop for if you've done things right, because you don't have to worry as much about scaling. The first question they ask you as a developer in your first job interview as a developer is probably about Big-O and time complexity. However, this has always mattered more for server-side operations than for client-side operations. If a server does something 1000 times slightly inefficiently, that inefficiency ads up. If an iPhone does something 1 times slightly inefficiently, it likely matters a lot less. In a microarchitecture model, the server is more like the client in the previous example, as each individual instance spawns and does its thing 1 time. Big-O still matters, but not as much.

    Beyond this, problems deploying and problems tracking bugs across multiple systems likely have little to do with the microarchitecture itself. In my experience, microarchitectures can be as easy and are often easier to deploy than existing physical-hardware-based systems. For example, if you have many servers or many shards to deploy to, you may only have one deploy point in a microarchitecture or one production and one integration deploy point instead of a system of many servers. It's often easier!

    Step 5: Microservices require a lot of devops skills in the team and with right investment might pay off as a way to scale the system and team. Before you reach serious scale issues it’s an overinvestment. Microservices are extracted not written. You must be this tall to use microservices.

    Any new thing requires some learning or skill.

    "Before you reach serious scale issues it’s an overinvestment." That sentence is wrong though. When you have no code yet it is often a great choice to use a microservice-based architecture, requires very little investment and can both save money and allow easy scaling. When you have existing code, but scaling and cost are huge priorities, it often is a smart investment of time. It's only in the middle stages where you have a large code-base you have to convert and don't actually need the scaling where it could be an overinvestment.

    --
    Big apple, new Yorik, undig it, something's unrotting in Edenmark.
    1. Re:Microservices are not hype. by Anonymous Coward · · Score: 0

      You need a Step 2.5 with a cost/benefit analysis.

      Of course this step is missed. The whole point of the article is to show exactly that.

    2. Re:Microservices are not hype. by Anonymous Coward · · Score: 0

      At first I was skeptical of this "microservices", thinking it some silly buzzword. Then I looked it up and it saw that it describes the aspect of the architecture of my software that makes it better than any of my competitors.

      In other words, it's a legitimately good idea. Of course you can do a bad job of implementation, but the idea is sound. There's an art to determining where the service boundaries are, and I think I'm good at it only because I've been doing it for 10 years.

      dom

    3. Re:Microservices are not hype. by Anonymous Coward · · Score: 0

      Service-Oriented Architecture is the term for the architectural paradigm. As you said, it can be a good idea. "Microservices" is the semi-recent re-branding name for its hype train.

    4. Re:Microservices are not hype. by Anonymous Coward · · Score: 0

      I like to use flat files cached by a CDN for my micro services ;) or... sometimes I REALLY like to piss off the NoSQL AND the MySQL crowd and put my data in a hard coded Array or Hash...

    5. Re:Microservices are not hype. by Anonymous Coward · · Score: 0

      Short answer: It depends.

      Microservices is untenable if you already have problems with your monoliths.
      Solve your existing problems first, because microservices will make'm exponential.

    6. Re:Microservices are not hype. by Anonymous Coward · · Score: 0

      Microservices are not hype.

      [Giant explanation snipped]

      This is what hype looks like.

    7. Re:Microservices are not hype. by WaffleMonster · · Score: 1

      Microservices are not hype. Anything that lets you scale your code without having to rethink how you write code and while reducing cost is pretty amazing.

      It's fucking magic is what it is. It isn't a real concept and only works for trivially scalable problems that could easily be addressed in any number of ways.

      If anything, I'd say microservices are underutilized these days, because it is often easier to start a new holistic system and architecture it for microservices than to convert aging systems to use a new model.

      Fundamentally "service" approach is ass-backwards. The only thing that actually matters is structure of underlying data. All of these "services" build on top of data are worthless and expendable from a systems perspective. Data is almost always the controlling factor not services on top.

      This step is kind of just wrong. Once converted most microarchitectures are actually faster to develop for if you've done things right, because you don't have to worry as much about scaling. The first question they ask you as a developer in your first job interview as a developer is probably about Big-O and time complexity. However, this has always mattered more for server-side operations than for client-side operations. If a server does something 1000 times slightly inefficiently, that inefficiency ads up. If an iPhone does something

      If you have a CPU bound "Service" you just spin up more cores or machines and your trivial scaling problem is trivially solved big whoop. In the real world many people don't have this luxury because their systems are NOT CPU BOUND. The only way to scale non-trivially scaled problems is through hard work and superior design... NOT more buzzword bingo.

    8. Re:Microservices are not hype. by Anonymous Coward · · Score: 0

      It (microservices) almost certainly is hype. It reminds me of the worst of SAAS, object orientation, web API systems and a hundred others.

      1). It only works "if you do it right", and "doing it right" turns out to be unachievable for most adopters;
      2). The proponents usually want you to adopt their ideas, and only their ideas. By definition if you do anything that isn't microservices oriented, "you are doing it wrong";
      3). There never seems to be a sanity checking phase. What can this concept really do for us? Does it solve any problem we have? What will it cost to get it up and running? Do we have the right experience, the right resources, a strong information source to avoid common problems and go directly to productive methods?

      The worst attribute though, bar none, is the idea that you have to go all-in for microservices/SAAS/object orientation/buzz buzzy buzzier buzziest, and no other methods must intrude or contaminate your environment. My standard evaluation of new technology ideas is:

      1). Can it coexist with pre-existing technologies and methodologies? Can it do so smoothly, with incremental adoption? Will it be successful even if it only ever forms a small part of the existing environment? Does it have the potential to grow far beyond that?
      2). GoTo Step 1!

      If the answers to Step 1 are all Yes, then you have a potential winner on your hands. Still not a sure success story but at least the potential is there.

    9. Re:Microservices are not hype. by neoshroom · · Score: 1

      Microservices are not hype.

      [Giant explanation snipped]

      This is what hype looks like.

      So hype looks like logically explained belief-justification? Or maybe you have it reversed and hype is represented by unjustified, unexplained statements, such as "This is what hype looks like"?

      --
      Big apple, new Yorik, undig it, something's unrotting in Edenmark.
    10. Re:Microservices are not hype. by neoshroom · · Score: 1

      It (microservices) almost certainly is hype. It reminds me of the worst of SAAS, object orientation, web API systems and a hundred others.

      1). It only works "if you do it right", and "doing it right" turns out to be unachievable for most adopters;

      Doing it right really isn't that difficult. These days for some architectures there are only 10 or so lines of code difference between a microservice model and a locally hosted model. The problems the person in the article hit were because they were trying to convert an existing system. It is very achievable for new adopters.

      --
      Big apple, new Yorik, undig it, something's unrotting in Edenmark.
    11. Re:Microservices are not hype. by neoshroom · · Score: 1

      I agree, it's fucking magic. :)

      --
      Big apple, new Yorik, undig it, something's unrotting in Edenmark.
  41. And flat look [Re:Infinite web pages] by Tablizer · · Score: 5, Insightful

    I agree. I cannot wait for that fad to die an ugly painful death. Make the pages longer, that's fine. But not infinity.

    I hear it causes ADA lawsuits. I hope so, sue 'em hard!

    Similar annoyance points for the "flat" look. You cannot even tell a button is a button, and entry box boundaries are washed out. Shade the fsckers, people! It's not 1989.

    1. Re:And flat look [Re:Infinite web pages] by justthinkit · · Score: 1

      When Microsoft switched to web-based navigation for Windows, I thought "Idiots! But luckily no one else will be this stupid".

      At that time I was working with SBT accounting systems, that ran Foxbase or FoxPro on dBase files. We already had the joy of different runtimes for different clients but then came web-navigation-based installers. Even better, the installers only worked on certain version of Internet Explorer/Windows. Fortunately I forget the details, but finding a way to make your latest product UNinstallable was a pretty spectacular example of the lunacy of jumping on the latest fad.

      --
      I come here for the love
    2. Re:And flat look [Re:Infinite web pages] by mrchaotica · · Score: 1

      Similar annoyance points for the "flat" look. You cannot even tell a button is a button, and entry box boundaries are washed out. Shade the fsckers, people! It's not 1989.

      Well that's the problem, isn't it? In 1989, UIs were designed so that it was easy to tell which controls were what.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    3. Re:And flat look [Re:Infinite web pages] by Luthair · · Score: 1

      Do you have trouble with the buttons on your microwave? ;) I think you're confusing flat which just means no illusions of raised edges with some bullshit styling.

    4. Re:And flat look [Re:Infinite web pages] by Tablizer · · Score: 1

      In 1989, UIs were designed so that it was easy to tell which controls were what.

      They were standardized in that every button looked a certain way, every input box looked a certain way, etc. Even without shading, that's good enough to indicate to the eye what is what after a short learning curve.

      I suppose IF the flat look were standardized, then it wouldn't be as annoying, but every web "designer" has to be a Picasso and make theirs "special". It's all flat and all differently flat.

      Aesthetically, all-flat is also boring, in my opinion. I bet in a year or two everyone will get tired of it also and shading will come back; but in what shape or style, who knows. Maybe buttons will look like plush pillows with fabric; that hasn't been used before en-mass. Should I pre-patent the Cushion UI to profit off it?

    5. Re:And flat look [Re:Infinite web pages] by mrchaotica · · Score: 1

      Maybe the post I was replying to was. Flat isn't necessarily a problem, but having no borders at all could be. This goes double for the computer-illiterate: without the borders and shading mimicking physical controls, buttons are becoming increasingly abstract and thus ever more difficult to recognize as being clickable, especially for people who didn't learn the analogy back in the "beveled-edge pseudo-3D" day.

      My only point was that (contrary to the previous poster's implication that 1989 was some kind of primitive age), UIs from back then were actually pretty usable because they were designed by UX engineers instead of graphic artists. Sure, they were ugly, but at least you could tell what was a button and what wasn't.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    6. Re:And flat look [Re:Infinite web pages] by Anonymous Coward · · Score: 0

      Similar annoyance points for the "flat" look.

      A consultant on my project was tasked with designing the UI for our app. Windows 8 tiles and "metro" was the big thing, so his design is all about big tile buttons and big text and coloured circles with numbers in them and chevrons... for a website that will be accessed via standard desktops monitors with no touch interface.

    7. Re:And flat look [Re:Infinite web pages] by doom · · Score: 1

      Flat isn't necessarily a problem, but having no borders at all could be.

      I'm not gonna argue about that one. I insist on using a light-on-dark color scheme myself, and half of the time those clevely designed buttons are literally invisible. I often make a guess that there's something to click on in a blank space that I see, and just try it experimentally.

    8. Re:And flat look [Re:Infinite web pages] by Anonymous Coward · · Score: 0

      Similar annoyance points for the "flat" look. You cannot even tell a button is a button, and entry box boundaries are washed out. Shade the fsckers, people! It's not 1989.

      Amen! Just today I was thinking that the loss of helpful cues like detail and shading in these "modern, uncluttered" designs could itself be a challenge to accessibility.

    9. Re:And flat look [Re:Infinite web pages] by Tablizer · · Score: 1

      I think the tile look is cool myself. However, it's often not practical. For one, you have to play Tetris-like games to shift stuff around as things change.

      It's probably one of the few times I may not care if it's a maintenance headache JUST to get eye candy. I'm human also: eye-candy sometimes snags me up just like anybody else.

      However, I would try to point that out the maintenance "tax" to the customer/management. If they want form over function, it's their call.

    10. Re:And flat look [Re:Infinite web pages] by Hognoxious · · Score: 1

      Back in the dial-up days you could access the web (or some of it) through AOL's own app. It looked like an upholstered cushion to me.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  42. Only until I was told the secret by raymorris · · Score: 1

    > I wager that on every single waterfall project you have worked on, there have been numerous change requests after the project was supposed to be "done." If it was a big project, I wager there were many change requests. In other words, the original requirements turned out to be fiction

    That was true until someone told me the secret to finding out what the REAL requirements are. Once someone told me the secret, I learned the requirements ahead of time and took notes of what they were.

    If you want to know what the actual requirements are, there's one way to find out (and maybe ONLY one way). Sit down with the user and watch them work. Ask questions as needed to understand their workflow while they actually do it, and take notes. Ask the actual user, not their manager's manager, about what they need to do their actual daily tasks - while you watch them actually do it.

    > only that the details can't be fully known up front.

    If you're putting the details into your foundational core, if the design of the system as a whole is based on on the detail of some task, you're doing it wrong. Yes details change. It's best to do the details last, as much as possible, because even if you did know them, they'd change. And you know what? The finest level of detail that exists is executable code. Agile does code (detail) first, with the big picture (the design) as an accidental artificact seen only in retrospect. If you really recognize that details, things will change, wtf would you do the details, the code, FIRST?

    The opposite idea is that because details change, you design an overall system, and architecture, then sketch the major modules within the system and when the plans for the major modules are validated, THEN you do the details, the executable code, LAST, after multiple rounds of validation. That way you not only have a better chance of getting the details right the first time, but as details change modules can be changed - the overall system, the architecture, isn't dependent on the details of any particular function. When some function needs to change, you just swap it out, plugging in the new version.

    On the other hand, with the Agile concept of releasing executables within a few weeks, and releasing the bare minimum viable product, you start with code for important functions, then spend three years piling stuff on top of the *functional* code, rather than building the *system* first and plugging functuonal modules into the (designed) system. When the functions of your early Agile code needs to be changed, you're fucked because you've piled years of work on top of the feature.

    1. Re:Only until I was told the secret by unimacs · · Score: 1

      I run a small IT department but spent most of my years as a programmer. We have two major development projects in progress right now. Believe it or not, one is a mostly agile project and another is mostly waterfall. The agile project is targeted to be completed at the beginning of the year and the waterfall by end of 1st quarter.

      Right now, I expect that both will be successful. Oh, and the agile project is adding significant new functionality for an organization we are merging with. It's being built on an 8 year old codebase that started its life as an agile project and has always been run that way. The business function it supports is constantly changing and evolving. Using the waterfall method to build that software simply wouldn't have worked. We were launching a brand new service. The users were as brand new to the service as we were. We worked with them closely. They certainly had ideas about what the software should do and how it should support them. But they were ideas that needed to be validated.

      The system that resulted has supported the business well, but yes parts have needed to be redesigned. Not sure that could have been avoided with the waterfall method.

      Good practice is good practice and no methodology should be used as an excuse to avoid doing them. That's where things go wrong. "Agile" doesn't mean there's no design, and "waterfall" doesn't mean you disappear for two years while you build the software.

      My personal belief is that certain projects and teams lend themselves more to one approach than the other. "Agile" is only hype in the sense that it's sometimes used where it's not a good fit. But to deny that lots of organizations have had success with it is just sticking your head in the sand.

  43. It is a long list by LordHighExecutioner · · Score: 1

    Windows, Linux, C++, python, agile, scrum, ....
    Every new technology raises hopes, PHBs make plans, and then technical people are left into the mud, and have to help themselves.
    Strangely, this did not happen when we coded in FORTRAN IV, but for sure it wasn't the language that was up to expectations, we just had few PHBs, all of them had a *sound* technical background, and there was no internet trumpeting every minute a new technology that solves everything real now, soon.

    1. Re:It is a long list by Anonymous Coward · · Score: 0

      Ah, the good old days, back when computers could barely do shit.

    2. Re:It is a long list by david_thornley · · Score: 1

      All of the new technologies you mention are useful, some very useful. None are panaceas.

      Also, I've seen what happens when physicists write FORTRAN IV. It isn't pretty. Or robust or maintainable. It tended to be scalable in that the physicists could ask for more computrons.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  44. Re:Agile is good for some teams & projects, ho by Puff_Of_Hot_Air · · Score: 1

    Central to Agile is the proposition that the company is unable or unwilling to figure out what the requirements are before they develop the system.

    Garbage, you simply show your ignorance. You know what? Agile is a meaningless term, you have some kind of image in your head of what it is (maybe informed by some group of idiots claiming to do it), and hence you can build this lovely strawman to set fire to. Here is the agile manifesto:

    - Individuals and interactions over processes and tools

    - Working software over comprehensive documentation

    - Customer collaboration over contract negotiation

    - Responding to change over following a plan

    That is, while there is value in the items on the right, we value the items on the left more.

    No mention of not bothering with requirements, only that the emphasis when creating your processes is on the ability to respond to change. On any project that lasts more than a few months, that just sounds like damned smart idea. "No no! We must continue to follow this plan from a year ago, even though it no longer makes any sense in the current market!" Been there, done that, have the t-shirt. (You always get a t-shirt, no matter how big a balls-up it was).

  45. Iphone app by econnor · · Score: 1

    I was once instructed to make an iphone app that would display content from an existing website.

    1. Re:Iphone app by Anonymous Coward · · Score: 0

      ... make an iphone app ...

      The correct response is:
          1) Make a schedule with the usual needs analysis, product specification, coding, testing, integrating(?), demonstrating, document writing, product distribution.
          2) Then stretch the schedule with those tasks taking 1.5 or 2 times longer. The PHB never sees this.
          3) Start your pet project, catch-up tasks, goof-off, whatever.
          4) Give progress reports to the PHB including work not done because the task was more time-consuming than scheduled in step (1).
          5) At the 'demonstrating' stage, show PHB how the 'app' allows Safari to surf the intranet/internet.
          6) At the end of the schedule, tell the PHB all code and documentation was lost in a failed backup recovery event

    2. Re:Iphone app by Yvan256 · · Score: 1

      Step 1. Make sure your have the proper "apple favicons" and metas. Use http://realfavicongenerator.ne... to complete 99% of the job.
      Step 2. Show the employees how to "bookmark" a website.
      Step 3. Profit!

    3. Re:Iphone app by Anonymous Coward · · Score: 0

      You sir could have been a billionaire... I would love to have been on your team of 200 that you hired for the 5 year project... we would have killed it... and we would have all told stories to management of your awesome website content displaying powers... BUT you probably did something stupid like show him where the icon was ...

    4. Re:Iphone app by econnor · · Score: 1

      I did show them how to make a bookmarky launcher. And explained that a niche, geographically localised product that nobody was prepared to pay more than £2.99 for wasn't really going to wash its face. "Just do it." But hey, at least they allowed themselves to be persuaded that storing the content on the device and syncing every 6 months wasn't the way to go. Which was pretty much what the big ticket developers who had jumped from Palm etc were trying to sell. If I'd had my wits about me I'd have spouted some magical words ("responsive design" would have done it) instead to waffling on about stylesheets and web servers.

  46. No. by Anonymous Coward · · Score: 0

    But the company owner was the lead programmer.
    So no hype-driven development, but the HR and "middle management" person did suddenly begin to send motivational emails,
    and talk a LOT about the "team"....
    He has become a proponent of the 'have you found Jesus Christ, our Lord and Savior' in the last 2 years, so the hype has become a little spooky....

  47. Python? Zenity? by Anonymous Coward · · Score: 0

    Complexity went dramatically down and usability up once I returned from my roundabout back to Tcl/Tk. IMO *nobody* has got script/GUI integration as slick and unobtrusive as this gem.

    1. Re:Python? Zenity? by dbIII · · Score: 2

      Tcl/Tk

      Yes it's as good as you would Expect and is the proper way to do an involved script GUI interface.
      However sometimes a couple of lines of bash using zenity does the job and is pretty obvious to anyone who has to alter it later.

  48. Boss's mistress + Agile by thesjaakspoiler · · Score: 1

    The boss's mistress was on our dev team of our +120 employee Japanese company. And then can Agile around. She didn't like it because it became so clear she was totally incapable and the team was always covering for her. But all it took was 1 complaint from her to have our boss storm into the office, yelling that his mistress would from now on would have to approve such changes. Needless to say, that wasn't a success either because suddenly everything needed her approval. We lost all our clients and most our top engineers within months. Within 7 months the company went bankrupt. That was after the mistress was quickly reassigned a new position somewhere else in the holding company.

  49. All this has happened before, and it will (etc) by itsdapead · · Score: 2

    Wow, ExtJS brought all development to a complete multi year halt. In the first few months ExtJS development is way way way faster than any other framework out there. But after about 6 months all you are doing is fighting with the framework

    This is the good old "Rapid Application Development" myth that has been doing the rounds since before many of today's trendy agile NoSQL programmers and the PHBs who encourage them were born. Even with things like Microsoft Foundation Classes and Borland's OWL that were used to create substantial apps, the initial drag-n-drool honeymoon didn't last very long. Then when Multimedia came along there were more "authoring systems" than applications created using authoring systems, and they were all great until you hit the brick wall that the designers had never anticipated, and ended up re-writing from scratch.

    "Ooh look, I can create a fully-functioning GUI app by clicking 3 buttons and writing 1 line of code... this is going to save weeks of development"

    Six months later: "Ooh, look - I'm wading through the sparsely-commented source code of the framework trying to figure out why I can't get the 'print' method to do anything beyond the trivial case given in the sample project... what's this? '/// TODO - implement print function'...?" (Its too long ago for me to remember the details so I won't name the application framework in question).

    Turns out that a couple of days writing the "boilerplate" code for your application paid dividends further down the line...

    First example I remember was this: The Last One - yes folks, the last computer program that would ever need to be written, heralded by magazine articles predicting mass unemployment of programmers... but I'll bet you an internet that Ada Lovelace had some brilliant ideas for making the Analytical Engine take all the hard work out of programming...

    Put simply: we all know that the last 10% of development takes 90% of the time. RAD tools eliminate the first 10% of the development thus ensuring that the last 10% takes 100% of the time.

    --
    In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
    1. Re:All this has happened before, and it will (etc) by Z00L00K · · Score: 1

      Another thing - don't let someone go crazy with Enterprise Architect, it never ends well. It's good if you have a small solution but when stuff grows to a large system you waste too much time maintaining your model and too little on trying to solve the problems you have.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    2. Re:All this has happened before, and it will (etc) by Anonymous Coward · · Score: 0

      Are you talking about Sparx Systems' EA? You (your architect) could use roundtrip engineering to sync the model with the code without having to play with the diagrams much. Haven't done it myself but I know it's possible and one of the EA features that make me want to try it out.

  50. Java EE 6 by Craig+Ringer · · Score: 1

    I tried to use Java EE 6. When it was new. Using CDI and JSF2 and JPA2.

    So. Buggy.

    It was (is?) a pile of half-broken components that talked to each other over mostly-broken interfaces. Work around a bug, hit another bug. Work around that, hit a design oversight. All those portable APIs you're supposed to implement stuff against only actually work if you only use one implementation, if you try to actually run on both Glassfish and JBoss AS 7 for example, you're going to suffer unless your app is a toy or you do LOTS of testing.

    For example... criteria queries? Kaboom, Hibernate and EclipseLink disagree on a lot of details. Subtly. Also, you have to drill down into the provider layer to get any influence over fetch control, so I hope you like N+1 SELECTs or monstrously inefficient chained left joins of data you didn't want anyway.

    It was so awful I'm glad to be coding in C instead now.

  51. Because..consulting by Anonymous Coward · · Score: 0

    Hype sells consulting. Consulting sells hype. Ever done a project with toilet and douche? How about ass-enter? How about Wipro/Infosys? All of them. They sell you on "this is the new way"..."you don't have the skills in house but we do". PHB's live for this shit. Its all they learned in MBA school. Wash, rinse, repeat.

  52. Re: Agile is good for some teams & projects, h by Entrope · · Score: 1

    Meanwhile, those of us who have more than a year of experience know that "waterfall" and "agile" are not the only process choices in the universe, we know how to plan for unknowns, and -- unlike agile -- we actually deliver reasonably finished products.

    Trying to fit everything into single sprints is a recipe for code bugs and architectural rework. Making a toy version a higher priority than an appropriate amount of analysis and high-level design is a recipe for design errors and technical debt.

  53. Re: Agile is good for some teams & projects, h by Entrope · · Score: 1

    Zed A. Shaw pithily translated what Agilistas really mean when they claim to value those things.

    Not that I endorse the idea of just "doing programming" as an alternative to understanding the project's needs, the team's capabilities, and using a process that fits both.

  54. Re:Agile is good for some teams & projects, ho by gatkinso · · Score: 1

    "pivot" == "we fucked up, start over"

    --
    I am very small, utmostly microscopic.
  55. First off, its not Engineering by Anonymous Coward · · Score: 0

    That's the first scam, to call s/w development Engineering with an E. The 2nd scam is Agile. The third is java.

    Remove those three, and watch your productivity and quality soar.

    1. Re:First off, its not Engineering by Anonymous Coward · · Score: 0

      Watch my productivity soar using PHP, XML and javascript!

  56. Hypsters by tigersha · · Score: 1

    That is why we old-timers call them hypsters

    --
    The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
  57. I see this all the time... by Anonymous Coward · · Score: 1

    I see developers using tons of third party libraries for no real reason. For example, one guy at a previous job wasn't liking the ability to use Oracle, which was the core database, so he had an instance of another RDBMS running as part of his codebase. Of course, this fucked things up royally come production and why some container files in a directory used for config files kept filling up.

    Then, there is the fact that the more libraries you have, the more stuff breaks when a prerequisite gets updated. So the developer's crap who has a ton of garbage as a dependency is the stuff that breaks.

    Want to know prerequisite hell? Run Katello. That is a program that is at best a house of cards.

    1. Re: I see this all the time... by Anonymous Coward · · Score: 0

      Anyone that simply ignores the system architecture should be fired immediately for failing to do their job.

  58. Silver Bullets by CanadianMacFan · · Score: 1

    I was in a shop that loved silver bullets. The fact that none of them worked should have clued management into the fact that silver bullets don't work. But they tried kept adding different things to their development environment such as new tools and methodologies such as Agile. And everything had to be Java. Doesn't matter that the existing application was working fine, and had been for years, it was going to get converted. They were even going to convert formmail.pl (it's been a while but I think that's the executable's name for Form Mail) into Java because they were a Java shop. They drank the Kool-Aid deep there.

  59. Rust by Anonymous Coward · · Score: 0

    solves the same problems as C++, only worse.

  60. They can all suck, but some can be good by Anonymous Coward · · Score: 0

    Jack Welch got a lot of milage out of six sigma, because it was a pragmatic thing he was inventing as he went along, like agile. SOA works if every one is on board. A lot of "methods" do. But when some C_O gets on a plane and reads an article by some other C_O and gets all horny for the shiny new X method... he should just go to the little bathroom with the porn and not force it on an entire company. It took a lot of apathy for your company to turn to shit... it will take a lot of care to make it not suck again... no quick fixes.

  61. Team? No. Me? Yes, but I have also avoided hype. by Qbertino · · Score: 1

    Good teams usually mitigate the hype effect, because they are diverse in setup and bring along multiple perspectives.

    I myself have fallen for hype a few times, as I guess we all have. I remember using Cake 1.2 beta, because "New Features!". ... Bad idea. Blew up in our face twice a week and delayed the project way too much. even discouraged from the core team. Typo3 was more of a local hype of German-speaking countries, but following that a little bit was more of a neccesity than hype.

    I clearly remember consciously avoiding Ruby on Rails and smelling the hype from 10 miles away. Looking at how things turned out I'm glad I did. I have the habit of pondering for years about some new tool or toolkit. By then what to expect and what not has usually played out. Roughly once every 5 years I make a larger technology decision, and then only after having weighed the odds for and against it.

    I'm currently doing this for Node & serverside JS vis-a-vis LAMP, my current breadmaker technology. I'm toying with the thought of moving to NodeJS and ditching LAMP, but I'm still not sure about it. ... We'll see.

    --
    We suffer more in our imagination than in reality. - Seneca
  62. Re:Agile is good for some teams & projects, ho by Tony+Isaac · · Score: 1

    We agree about the importance of well-designed code. Poorly designed code hampers agile development as much as it does waterfall development.

    My comments were about the requirements. Waterfall pretends to know the requirements up front, but then has to follow the project with a series of change orders. This happens because users often don't really know what they want until they see something in action. "Yes, this is good, but..." Because the change requests can't happen until the project is complete, they are relatively expensive to implement, especially if the changes affect the underlying architecture.

    Agile assumes that these change requests will happen, and focuses on reducing the cost of the change requests. By getting software into the hands of "customers" very early in the process, these changes are found much earlier in the process, when it's relatively cheap to change the architecture, if needed.

    There is a reason that waterfall timelines are measured in quarters or years, while agile timelines are typically measured in terms of days or weeks.

    There is no inherent quality difference between Agile and Waterfall, in my experience. The difference is in how the project is broken down into small pieces, and in what order those pieces are carried out.

  63. Re:Agile is good for some teams & projects, ho by Tony+Isaac · · Score: 2

    Exactly! So when waterfall tries to nail down the details up front, it does itself a disservice. Users find out months later that those nailed-down details don't quite work for them, and now you have to go back and re-engineer your project. With Agile, you find out much earlier in the process that the details weren't right.

  64. the opposite is even worse by Anonymous Coward · · Score: 0

    a few years ago I was hired as a contractor on a big government project. They had a large budget and hired about 100 medium to senior java programmers, juniors were not accepted. Instead of consulting the combined experience of these 100 people to make decisions about tools and technology, they let consultants and sales teams of big software vendors advice them to buy all kinds of expensive and bloated software packages. When I arrived at the beginning of the project it was in a horrible state. The productivity was near zero. People had spent most of the time with support calls, trying to install software packages or trying to figure out even the most basic features the customer wanted. As more and more developers got hired we had endless fights with the customer to convince them to ditch all this unnecessary packages. Also, the customer or his consultant had no clue about software development methodology: there was no version control, no continuous integration, not a single unit test. So we organized ourselves and introduced some tools. We made very conservative choices, like svn instead of git. We showcased to the customer how this improved productivity and quality and tried to convince him to also listen to us about the choice of tools and packages. After a year of stand-still the customer ditched all products and bloated consultant "advice" and we started over with a standard open source stack. Productivity skyrocketed. Finally we started to deliver, at an ever increasing pace. Then after half a year there was a management reorg: they created a java project committee to standarise on java methodology and tools . The leader of the committee had decided on some standards, separate from the project team, with the help of some consultants. Turns out a lot of our conservative choices were not conservative enough, we had to retrofit our code to older standards, no discussion. Productivity went down again. The technical choices imposed on us we made it impossible to use unit tests. Quality went down. At that point senior developers started to give up on the customer and left. They got replaced by the java committee with 'standards complient' profiles, clueless stubborn people you could not reason with. One of my co-workers got a depression. After one more year I resigned.

    1. Re:the opposite is even worse by Anonymous Coward · · Score: 0

      We made very conservative choices, like svn instead of git.

      Why did you choose svn over git?

    2. Re:the opposite is even worse by doom · · Score: 1

      Presumably, they were working on a code base smaller than a linux kernel, and saw no technical advantage in subjecting themselves to git's incoherent user interface. We're talking about hype driven choices here, git is a fine example of the software industry going crazy with a fad and dropping a productivity bomb on itself for six months while trying to figure out how to make the fad work.

  65. yes by buddyglass · · Score: 1

    I work for a company that makes apps. We rushed to release an Apple Watch extension as quickly as possible after the Watch's release, for the sole reason that we wanted to be able to issue press releases about how we support Apple Watch and are super-innovative while our competitors are not. Nobody thought it would drive sales from a feature perspective, except insofar as it could create the perception that we're "cutting edge" and "innovative". Never mind the fact that our Watch implementation was extremely crappy; we got mentioned in a NYT article for being "first".

  66. Re:Agile is good for some teams & projects, ho by Anonymous Coward · · Score: 0

    How about the problem of the design team "wanting to move on to something else" and/or "has already booked a new project"?

  67. Re:Agile is good for some teams & projects, ho by arth1 · · Score: 1

    ALL projects benefit from measuring the outcomes of small, incremental changes

    Not all. You can't jump a chasm in several small jumps.

    and continually finding and limiting waste

    No process I can think of accumulates more waste than Agile, with half-written features that went nowhere, hooks for removed features, and features that belong together chopped up into ineffective pieces with extra interfacing in order to get one piece done in a sprint. It begets bloat, but that isn't necessarily a problem that dooms it. It may still be preferable to having nothing that works as release nears.

    But a good example of where Agile just doesn't work are projects with outside limits in the specs. They could be IO limits, CPU limits, response time limits, or otherwise. As a project starts, everything is comfortably within all limits, and they aren't given full attention, because whatever else comes down the line isn't fully known. But as the project moves on, the limits no longer are far off uncertainties, and reality hits hard. Good portions of code already written has to be scrapped and new algorithms made, because if you have already used up 100% of the available IO and response time when the project is half-done, tweaking isn't going to solve it. What management sees is that the Agile team committed to doing a job within the constraints, and can't deliver.

    Yes, continually finding and eliminating waste is important. But refactoring code isn't the major part.
    Waste is often personified, and being able to get rid of people (including ineffective managers) can be far more fruitful than trimming unused elements from a struct.

  68. All the time, pal by OneHundredAndTen · · Score: 1

    This industry is nothing but a succession of fads.

  69. All I can say is! by Anonymous Coward · · Score: 0
  70. Uhhhhhhhh by Anonymous Coward · · Score: 0

    3D printing. End of story.

  71. Re:Agile is good for some teams & projects, ho by Anonymous Coward · · Score: 0

    Not all. You can't jump a chasm in several small jumps.

    That's a terrible analogy. A better one would be this:

    You're faced with a chasm that *might* be too long to jump across:

    Waterfall design: you make the calculations and decide that you can just barely make it. You prep your takeoff area and sleep soundly that night, knowing your calculations were re-checked by a crack team of engineers. On the day of the jump there's a 20 mph headwind. You proceed to jump only to miss the other edge of the chasm by four inches.

    Agile design: You make the calculations and decided that you might not be able to make it. You prep your takeoff area as the happy path, but you also add scaffolding stubs to the near end of the chasm just in case something goes awry with your plans. You don't get as much sleep, but the next day, seeing the 20 mph headwind, you spend a few hours adding scaffolding and a cantilevered takeoff surface that extends 6 feet over the chasm. You proceed to jump and easily stick the landing on the other side of the chasm.

  72. *cough* Scala *Cough* by Foofoobar · · Score: 1

    Um... Ruby? Scala? Swift? No... never happens. Never.

    --
    This is my sig. There are many like it but this one is mine.
  73. Re:Agile is good for some teams & projects, ho by mrchaotica · · Score: 1

    Sure, there are occasionally the huge changes that some customer decided they couldn't live without, but those types of changes hurt agile shops too.

    But usually not as much, because with shorter development cycles the customer has the opportunity to realize they need the changes earlier.

    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  74. Re:Agile is good for some teams & projects, ho by Chris+Mattern · · Score: 1

    As Yogi Beara said, "if you don't know where you're going, you not get there."

    Sounds a lot like something Yogi Berra said, "If you don't know where you're going, you'll probably end up somewhere else"

  75. THE CLOUD. by Anonymous Coward · · Score: 0

    yes, accountants thinking the cloud is a good idea.

    great for storing an encrypted copy of your backup with a zero knowledge provider.

    stupid for everything else if you have access to competent IT.

  76. Ever since the 1970s by hughbar · · Score: 1

    I started in the industry in about 1976, can't remember exactly, too old.

    However, ever since my entry (and probably before) the whole industry has been trend and hype driven. Death of goto and spaghetti (haha alive and well), thin clients (no alternative when there were just VT100s), then thick clients (PC), then thinnish clients (PCs without a lot of power), HIPO (instead of flowcharts), various design methods (Jackson, structured etc), waterfall , spiral, pair, agile, peer, client-server, objects-bad (things that modelled data and code in the same 'space' considered bad), objects-good, object-Stalinism (everything is an object, if you really push on it), functional and we're about up to 'now'.

    Then, of course, succession of languages, Cobol, PL/1, Filetab, C, C++, Python, Perl, Ruby, Javascript and now frameworks, Ruby on Rails being the frothiest in living memory. Not forgetting Codasyl, Relational, NoSQL and Graph (Neo4j etc.) until the next thing.

    An optimistic view would be that all this is 'progress', but (call me old and cynical, I am) one can make a mess with any methodology, architecture, framework, and language, however ancient, however modern. That said, I'm against most of the agile school because I constantly see quickly added, ill-considered, unnecessary, architecture challenging, and undocumented features being added because "we're in a sprint", this is the current version of 'make a mess faster'.

    --
    On y va, qui mal y pense!
    1. Re:Ever since the 1970s by plopez · · Score: 1

      I was going to post that I have never seen a project that wasn't fad driven.

      --
      putting the 'B' in LGBTQ+
  77. Yes. Android MVP by cloud.pt · · Score: 1

    As I once stated in a comment around here, I have seen loads of over-engineering hours wasted by Android dev teams trying to fit a square peg to a round hole: many a times MVP/MVC or other "responsibility containment" patterns refactoring hours are applied to existing, super complex activities that will never be reused; other times applied to super sort activities that need no testing. This cuts 2 of the more relevant benefits of refactoring (testing and reuse). I see technical debt tasks so often, just for the sake of "patternizing" things, without a clear long-term goal (or even a problem to begin with), save for cargo cult programming - 10-file activity modules with 10 LOCs each, when the same could be achieved with 2 or 3 class/interface files providing readable and conceptualizable code still keeping the same testability and re-usability. Even starting something from scratch is no excuse to make it "standardized" - you start with the basics, and when you find reuse/testing/containment problems, you decide to change to a complex approach.

    And this is for Android: an already complex, well engineered API that intrinsically forces you to separate responsibilities, and is a reuse/testing heaven. I like most of the SDK and it does look clean. This is so because it provides thousands of official and community documentation pages. You don't see that code and doc quality from small teams that define set standards and work on a fraction of Google's budget (read: more man-month AND more punch per "man"). All in all, most benefits of advanced software engineering are lost, in practice, when applied by small software houses. This is why I believe that even though patterns have a purpose, its benefits are tightly coupled with good judgement of its usage. Over-engineering is a serious disease in the industry.

    1. Re:Yes. Android MVP by JustAnotherOldGuy · · Score: 1

      many a times MVP/MVC or other "responsibility containment" patterns refactoring hours are applied to existing, super complex activities that will never be reused;/quote>

      I've always thought MVC to be one of the most inefficient and impractical ways to do nearly anything. Yeah, there are probably cases where it makes sense, I've just never seen one in the real world. Everything is spread out over multiple files and code blocks and controllers. Echhh. Making a minor change seems to involve a lot of work, and larger changes are ugly, time-consuming, and frustrating.

      Years ago I worked with a group that was doing a simple calendar and booking application using the MVC paradigm...it was a multi-month long goat fuck. Changes rippled back and forth and broke stuff on a regular basis. These were competent programmers and they were told by the Powers That Be that the MVC framework would provide all sorts of advantages. In reality, it didn't.

      The programmers finally said "screw it" and developed it using more traditional methods...it was done in a few weeks, and it worked.

      Like I said, there are almost certainly cases where MVC makes perfect sense, I've just never seen one myself.

      --
      Just cruising through this digital world at 33 1/3 rpm...
  78. the one true roundness by epine · · Score: 1

    By all accounts Donald Knuth—almost all by himself—ran circles around the Agile team (this was a full two decades before the first glint in eye of the Agile Manifesto) and yet the world has not adopted Literate Programming.

    Suppose I were to acquire an Agile development shop, one with a track record of making their chosen process work. Then, surely, a year later, I could write the following:

    The Agile team struggled to switch to Literate, but not yet successfully. It's not easy to do, and the transition is often done poorly. Then, the Agile believers point to the failed transition and use it as evidence that Literate does not work.

    Literate definitely works better than Agile in the 0.001% of the programmer population—to offer up a perhaps hopelessly optimistic estimate—who are a) brilliant mathematicians, and b) semi-brilliant architects, and c) brilliant expositors, and d) know the algorithmic literature inside out.

    Agile works well when the glove fits the talent (it would not have worked well for Knuth).

    This is not new. Many other gloves have demonstrated the same success model. What every workable model has in common: hire the best people, and then create a culture where the best people can most effectively drag the rest along.

    The other way this plays out is that a sub-group of programmers who are a little better at politics (and a lot noisier) agitate toward their particular approach to life being flattered by the best-fitting glove. Then, instead of people being judged by where their talents are the best fit, the story becomes square programmer fails to fit round hole.

    Agile is far from the roundest hole. Literate is a hole so round it unbreaks broken symmetry. What's great about Literate is that it's so obviously too round for the human species to endure, it's almost never forced upon anyone unsuited to its strictures. Instead, Lisp and Haskell (and APL within a smaller niche) take the crown of being the roundest holes into which any programmer has been forced against his or her aptitude and self-interest.

    Agile is good at managing specification risk. If managing specification risk is the top of your risk pyramid, it's proper to ask whether forcing people (whose natural fit lies elsewhere) into a rounder hole is the right business method. What drives specification risk? 50% of this is driven by ambitious yet curiously clueless customers. These are never in short supply, so Agile is rarely in short supply.

    What drove Literate? The case of a curiously over-competent customer (Knuth wrote TeX first and foremost for himself, to typeset a sophisticated manuscript he had already authored). These have never been in large supply, hence Literate has never been in large supply.

    Even with top talent, the fractal repeats. PHK hates Literate, and he's neither second rate nor inarticulate. What happened there?

    Move my rants into their own sandbox

    ==Why Sphinx and reStructuredText?==

    The first school of thought on documentation, is the one we subscribe to in Varnish right now: "Documentation schmocumentation ..." It does not work for anybody.

    The second school is the "Write a {La}TeX document" school, where the documentation is seen as a stand alone product, which is produced independently. This works great for PDF output, and sucks royally for HTML and TXT output.

    The third school is the "Literate programming" school, which abandons readability of *both* the program source code *and* the documentation source, which seems to be one of the best access protections one can put on the source code of either.

    The fourth school is the "DoxyGen" school, which lets a program collect a mindless list of hyperlinked variable, procedure, class and filenames, and call tha

  79. WAP by Anonymous Coward · · Score: 0

    Anyone do anything with WAP? I did :-(

    We worked out a laptop setup where you could run a WAP app on the laptop, by dialling into it's built-in modem. You could use the demo (banking!) app using a Nokia 7110 phone (the one out of The Matrix). We had a hair-brained plan to sell the laptop + phone + demo app to people as a sort of marketing tool. Oddly, we didn't sell any, and never really did any major WAP implementations beyond maybe one closed beta. Even more shocking, the company more or less died shortly thereafter.

  80. The root of all evil is careerism. by hey! · · Score: 2

    Too often developers choose to use a technology because it will look good on their resumes, not because it serves the interests of the system's users or the people paying for it. It's what economists call "agency costs".

    Every time a new golden hammer comes up, developers rush to use it before they get left behind. And you can see the corrupted focus right in the code. I remember when Model-View-Controller was the buzzword du jour, and people without any sense of irony whatsoever would bake MVC framework dependencies into practically every single file. Ugh.

    But here's the rub: part of taking care of user and customer needs is considering the impact of future brainshare. Sure, COBOL may be just perfect for this app (OK, probably not), but should you really saddle them with having to find someone with COBOL expertise? It's possible to be too puritanical about avoiding technology fads.

    So part of your job as a developer is to track the emergence of new golden hammers, to study good and bad examples of their use, and to truly understand each of them as much as possible. Where possible you should try the latest thing; if you're a team manager assign slack personnel to do spikes that evaluate it (this is a great perk to hand out). It's part of your job to stay on top of where things are going, without committing customers to something that might not meet their needs.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  81. Re:Agile is good for some teams & projects, ho by ranton · · Score: 1

    What almost everyone gets wrong about agile is confusing the agile methodology with specific implementations of agile project management. Scrum, Kanban, Extreme Programming, Pair Programming, or any other agile techniques do not define the methodology itself. One of the reasons there are so many different agile methods and practices is the realization that no one method could work for any project or company. But the core tenants of agile development, just like the core tenants of the SDLC, PMBOK, Six Sigma, etc, could be applied to any project to great success.

    Central to Agile is the proposition that the company is unable or unwilling to figure out what the requirements are before they develop the system. As Yogi Beara said, "if you don't know where you're going, you not get there." On small projects it might not hurt too much to figure it out as you go along, to backtrack and throw away code that has to be replaced. On large projects, and systems that need to integrate with other systems, you REALLY do need to figure out the requirements ahead of time and plan the architecture.

    The core tenant of agile you are referring to is the realization that business needs will change or be further realized at every point in the project life cycle. This is not something which is up for serious debate for any project management methodology. You cannot know every requirement up front, changing or unknown requirements are far less unavoidable than death and taxes. Even a tightly managed project like sending the Curiousity rover to Mars required code modifications even as the craft prepared for its descent to the planet.

    There are plenty of ways to manage changing requirements. Various agile methods are among those strategies. I happen to agree with the agile tenant that changing requirements should be embraced as a way to create better software, instead of something to be ignored so you can follow a pre-determined plan. This is a mindset I have even had on my "non-agile" projects (which includes the vast majority of them). The two main barriers to successfully maintaining this mindset is architecting software well enough to handle change and managing business expectations to accommodate change (which usually includes modified scope of impending releases). Every project can be handled this way, but not every company or development team is managed well enough to accomplish this. Managing business expectations is usually the most difficult part and where most agile teams end up failing.

    If your team consists solely of programmers of medium competence, Agile may be the best choice. If you have even one excellent systems architect, you're far better off letting therm do their job, planning the system out first. If your team includes junior programmers (or veterans who haven't expanded their skill set over the years), Agile can leave them floundering, going one direction for a few weeks, then another direction for a few weeks, then completely backtracking for a few weeks. In summary, Agile is sometimes the best choice for your team, and when it is, you've done a poor job of hiring.

    This seems very inconsistent. You say agile is the best choice if you have done a poor job of hiring, but then admit that agile is hard to do right with a junior or otherwise poor team. I do agree it is difficult to run a software development team in a highly efficient way with a poor team, regardless of what project management methodology you use. But I disagree that agile is less useful for very experience staff members. I think this is where it shines. Architects can focus their design at different levels of abstraction and in different contexts as it suits their current tasks. Nothing in agile stops designers from doing up front design and architecture, just from doing more than is necessary. It is very hard for inexperienced staff to know what is necessary, however, but this is much less of a problem for highly skilled employees.

    --
    -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
  82. Re:Agile is good for some teams & projects, ho by Anonymous Coward · · Score: 0

    No, that's also a terrible analogy. Remember, resources are always limited, and in your two examples the resources expended on the two example "projects" are not commensurate.

  83. The Atari Strategy... by __aaclcg7560 · · Score: 1

    I worked at Accolade when it got bought out by Infogrames, which later changed its name to Atari after buying Hasbro Interactive, which owned the Atari intellectual property rights. The CEO pushed for every game title to be available for every platform (Microsoft Xbox, Nintendo GameCube/GameBoy Advanced, Sony Playstation 2). That worked well for some titles. But not all titles were suitable for all platforms. The multiplatform strategy fell apart when Nintendo rejected the PS2 ports to the GameCube and demanded that each game take advantage of the GameCube features. The dot com bust didn't help. The company sold studios for pennies on the dollar after paying two to four times more than what each studio was worth during the buying spree. Bankruptcy came and went again.

  84. whole company impacted by Anonymous Coward · · Score: 0

    At my previous employer, one of the bigwigs came under the spell of a big name design firm (which had been brought in to modernize and harmonize the UI for the company's various applications). All of a sudden the company decided to go all-in on a SAS solution which the design firm had mocked up. Which might have been a good idea except:
    1. The company had zero experience with application hosting, end user management, i.e. 90% of the solution.
    2. While the mockup looked pretty, turning it into a functional application required whole chunks of new technology.
    3. Because of all of the new technology, developers were pulled from existing products - delaying new releases of existing products (including the one I supported) indefinitely.
    4. The business case was unproven and would require taking losses until a sufficient user base had been recruited - and the company wasn't in the best financial health.
    5. Some of the SAS product functionality duplicated well known offerings by well established competitors - and the unique functionality could be duplicated by the same.

    I smelled the woodchuck early on in the process and made my exit on my terms.

  85. WATCH what he does with the spreadsheet. A hybrid by raymorris · · Score: 1

    In your other post you said:

    > What almost everyone gets wrong about agile is confusing the agile methodology with specific implementations of agile project management. Scrum, Kanban

    I'll admit I'm doing this a bit, specifically thinking of SCRUM, as the main example of the most popular Agile methodology.

    > Try asking a salesman using spreadsheets and Outlook what he wants out of a new CRM implementation and see how far that goes. If you think that is sufficient to get good requirements

    If rather than asking, you do as I suggest and WATCH what he actually does, taking notes and asking questions, then you know exactly what his *requirements* are, what the system must do in order to allow him to do his job. While watching, I like to listen for not only him but people in nearby cubes/offices making exasperated grunts or cussing under their breath, and ask them what most frustrates them as they work. Those are probably likely requirements for a better system!

    > Showing users working demos

    In my experience (20 years), that's useful, but very much not sufficient. They a) focus on how pretty the interface is, not on the needed functionality, and therefore b) assume that all needed functionality will be there, implemented how they need it.

    A great hybrid of the two approaches might be to WATCH the user (rather than show the user) using a mockup / demo. Say "show me how you'd do your morning routine using this mockup instead of your old tool". You might tend to get a lot of "okay how do I find foo?", where foo is something critical to them, that was never mentioned is requirements discussions.

  86. Microsoft [Re: He sounds like an idiot] by Tablizer · · Score: 1

    People around here hate C#... because it's from MS.

    MS has been burning people for decades. After being burnt 4 times in the past, do you blame somebody for not wanting to risk being burned 5?

    Silverlight, Active-X, VB-Classic code, FoxPro, IE bugs, most of their mobile crap, etc. etc.

    Maybe MS sometimes is accidentally nice and won't pull the rug out from under you in the future. But, how does one know THIS time is such a case?

    Look what Oracle has done to Java "standards". C# could be Oracletized if MS gets desperate enough for cash one of these days.

    (The one possible upside of MS is that it's easier to find developers for. Even if their tricks and flops force you to re-write, at least the rewrite team is fairly easy to put together. Their ubiquity makes reinventing the wheel a bit easier. )

  87. Re:Agile is good for some teams & projects, ho by Zmobie · · Score: 1

    This also depends strongly on the project management style and customer demonstrations. Generally I get change orders for plenty of things before the software ever hits site. This is because we do design reviews throughout the project, we have a live Factory Acceptance Test with customer in a simulated and emulated environment, and we specifically structure things so that we can get requests for change earlier. Now, granted the type of system I am installing can't be piece mealed out therefore we are somewhat pigeon-holed into waterfall, but with better transparency and avoiding developers all working in silos this isn't such a problem.

    Some of our core development is done more in agile style with feature specs, sprints, and such, but if a common sense approach is used waterfall does not have to be so back loaded and so much more expensive. I would argue a lot of those problems come from large organizations that allow their gears to grind much too slowly and they isolate people so that they don't actually look at the overall business problem they are trying to solve (so that they can predict what parts of the code need to be more flexible).

    Granted in some scenarios I do feel agile is more well suited, because it is a good thing to allow the user to get more hands on time with the end features so things can be tested and retooled if it isn't what they want, but a project can still be managed in waterfall style as long as proper measures are taken throughout the process, at least in my opinion. I know some people are married to one style or the other, but I can't help that.

  88. Re:Agile is good for some teams & projects, ho by Zmobie · · Score: 1

    As I stated in my other post, if design reviews and early on demonstrations are done a lot of that can be mitigated in a waterfall project. I concede (and wouldn't really ever say otherwise) that some things will fall through the cracks, but my statement was that can happen in an agile environment too even though it probably happens less. I mean hell, sometimes even customers can be pushed by hyped up posts about new technologies (see: the cloud when it first got popular...) that they really don't need but someone wrote an impassioned article and they get convinced that it just has to happen right now.

  89. Re: Agile is good for some teams & projects, h by Tony+Isaac · · Score: 1

    In my 27 years in software development, I've never worked on an Agile project that failed to deliver finished products. In agile, the initial coding becomes part of the analysis and design phase. Agile does not mean less (or inferior) design and analysis. It just changes the method and sequence.

    Every waterfall project also has technical debt and design errors. That is not specific to agile. In fact, because waterfall attempts to complete the design without anything concrete (i.e., working) for customers to see, it becomes much easier for bad designs to become buried in the reams of documentation.

  90. Re:Agile is good for some teams & projects, ho by Tony+Isaac · · Score: 1

    I'm glad you can see the need for a spectrum of different methods, to suit different needs. This is key. No single methodology works for everything, or everywhere.

  91. Re:What is a team? by Anonymous Coward · · Score: 0

    I'd give almost anything to work as a solo developer again. Being on a team is absolutely crippling to productivity. Invariably I end up working with retards (who slow me down), being directed by retards (who slow me down), or both. And then, having handcuffed me, they can't figure out why the project never goes anywhere.

  92. Job Creator by NotFamous · · Score: 1

    Actually, this is what keeps so many developers employed. When software becomes overwhelmingly difficult to maintain due to sloppy development and project management practices, managers come to believe that the solution is switching to the latest cool technology, and a rewrite begins. Eventually, since the underlying sloppy methodologies remain in place, the cycle repeats. What drives this cycle? Managers, team leaders, customers, stakeholders never want to admit that they are the problem. It's human nature. So, c'mon Micro-services, heal us!

    --
    Some settling may occur during posting.
  93. Re:Agile is good for some teams & projects, ho by Anonymous Coward · · Score: 0

    You're right. I still can't work with agile methods (I'm a contractor) so I might modify only my requirements gathering phase to use half-functioning prototypes that will allow the users to click here and there and see mock results. After getting feedback from the prototypes, I can be certain that requirements are as close to complete as possible. But at that point I probably need to stop, provide an schedule and cost estimate, and fall back to non-agile processes for the rest. What do you think?

  94. YES OMFG YES by deadweight · · Score: 1

    We are in the depths of OSD hell. MDT>OSD is frying pan to fire!

  95. perl programmers are (mostly) immune to hype by doom · · Score: 2

    I'm a perl programmer, almost by definition I don't get hired by places that insist on chasing the new shiney.

    The tendency of programmers in general to be as trendy as a bunch of teenagers has not been lost on me, however (like I said, I'm a perl programmer).

    Somewhat more disturbing is a tendency of perl-culture in general to be a bit faddish... one year it's inside-out objects, the next year it's the Moose family, one year Module::Build is the greatest, the next Extutils::Makemaker has made a comeback and no one wants to hear about anything else, one year ORM are the bees-knees, the next it's the NoSQL fad, then it suddenly dawns on people you don't really want to try to do schemaless data...

  96. Re:Agile is good for some teams & projects, ho by Zmobie · · Score: 1

    Absolutely. I actually get sideways with people that think one specific method, language, or tool is so good that it should always be used no matter what. Flexibility is key not only in code but on the business side of software development. Getting good with more common languages/methods/tools/etc. is great in the sense that they will be used more often, but anyone that has an almost religious devotion to these one thing may succeed with it in short term (and there are still too many that believe this) but eventually a problem will come along that needs something else and they are will try to force the proverbial squares into circle holes.

  97. "Stop planning and start doing" by mfearby · · Score: 1

    "Stop planning and start doing" was the greatest piece of wisdom I got from my American boss many years ago. I suppose you'd call it "agile" these days (is that old hat now? I dunno). You can over-plan something, and whilst my reply probably has little to do with "hype" as such, you can focus too much on the latest buzzwords and frameworks. Just stop planning or thinking too much and dive right in. At the time when I heard "Stop planning and start doing" most of us thought the guy was crazy, but years of development have shown he was right.

    1. Re:"Stop planning and start doing" by Anonymous Coward · · Score: 0

      We spend so much time and money drinking the agile kool-aid that we have no time for development, and no money to keep the productive developers.

  98. I've been using Ext JS for 5 years and it's great by mfearby · · Score: 1

    I could only have delivered half of what I've done over the past 5+ years if I had to use something other than Ext JS. I chose it mainly for the superior grid and its excellent data package, which are still at the top of their game today. I don't know why something like setting focus eluded you so much, so perhaps something else was going on and getting in the way (I've painted myself into a corner countless times and wanted to blame the framework, but in most cases, it turned out to be my own fault). And as for workarounds, occasionally you might need to put one in place to solve a bug ahead of the next release, but that's not often (no framework is immune to the odd bug).

    The great thing about Ext JS is that it gives me pretty much everything I'll ever need. Now I doubt I'll impress the "hype" crowd with that statement but I don't have to manage all those project dependencies and includes and various build systems. But at the end of the day, I don't care too much about the inner-workings of Ext JS because my finished products are so darn and good looking functional, and this continues to be one of its strongest selling points (albeit with a much heftier price tag these days, but it's still worth paying, IMHO).

  99. order by nten · · Score: 1

    I have never created a correct design without prototyping it first in the same language it will be developed in. I am possibly just really bad at design and architecture but I see people sticking with bad architecture all the time when the language forces them to be completely unambiguous about there thoughts. I see this a lot. My preference is to brainstorm then jump straight to coding a prototype. When the prototype passes the prototype passes my prototype tests I take credit for finishing the design. If they knew it worked they would want to ship. Then I write it again with lessons learned and call the code 25% complete. Then I write the design with lessons learned and call the code 50% complete. Finally I write the code a third time with further lessons leaned and declare code complete and move on to formal test. I deliver on time because even though this seems backwards and excessive it is faster (for me at least) than trying to think it out in advance without prototyping and then being stuck with a bad architecture that has to be updated (if they let me).

    --
    refactor the law, its bloated, confusing and unmaintainable.
    1. Re:order by Bengie · · Score: 1

      One of my co-workers prototypes all the time. He likes empirical evidence. I am the polar opposite. Not that I hate empirical evidence, but empirical evidence lies too much for me. I mostly just prototype in my head, but I seem to have very accurate mental models.

      Empirical evidence will find local minimums, but not global.

  100. Absolutely by Anonymous Coward · · Score: 0

    Our company bought a vendor's software package (4 Million) and spent two years (with big $$ consulting services) trying to implement. The project leads went to a User's conference and were told, "The key to success is configuration, not customization", so they scrapped all of the previous development work, did a reboot on the project, and then spent another year and a half discovering that the core product did not work without customization, then spent another year recreating the customizations that made the product functional. Now the vendor is selling our customizations (redeveloped by them) as core functionality in their upgrades... Long story short, never run a development project based on a Powerpoint presentation.

  101. Javascript by rhyous · · Score: 1

    JavaScript. Do I really need to say anything else?

  102. Resisting pressure for shinies by leedsj · · Score: 0

    Programming should use the simplest possible solution (and no simpler) for the task in hand - not whatever answer Google currently returns for the question "what is the best new programming language". Devs love technical challenge, and they love being able to speak with a highly technical (preferably new) set of words that lets everyone know how 1337 they are. No different really to music hipsters listen exclusively to obscure indie bands, most of whom are shit. If mgmt is not technically proficient enough to understand x,y,z hipster code and elucidate why moving everything to it isn't helpful in their specific application they can bow to technical "judgement" and end up with NoSQL where relationships are required, Angular js for flat web pages, etc etc.

  103. Duh! by Anonymous Coward · · Score: 0

    Ever since the .com v1.0 era, tech has been driven by hype.

    When was the last time you developed an engineering solution to address a problem, rather than to chase a fad? That's the whole reason Agile was developed -- because you don't know what you want to build until after it's built. It's the solution in search of the problem mentality. It's the difference between science and engineering.

  104. We're in the middle of that now... by PontifexMaximus · · Score: 1

    Actually, this has been a problem where I work for almost two years now. It's the ADHD approach to development or as I like to call it 'the Ooooh something shiny' paradigm. It's kill productivity, run off several very good developers and has murdered our customer base to the point where we're losing customers, not gaining them.

    Of course, management blames everyone/everything but themselves for this debacle. Personally, I'm glad I'm leaving here the end of January.

    --
    Pax Vobiscum
  105. Re:Agile is good for some teams & projects, ho by sribe · · Score: 1

    If your team consists solely of programmers of medium competence, Agile may be the best choice. If you have even one excellent systems architect...

    What you're ignoring, is that for a hell of a lot of real-world projects, there's already a pretty good architecture in the form of one of several appropriate frameworks--and in many cases the team is already using one.

    There's really a small portion of software development that is cutting-edge.

  106. Programming frameworks != systems architecture by raymorris · · Score: 1

    Sometimes the larger system is already built, and all that remains is to add small modules which conform to the well-defined, well-documented, and enforced rules of the system. In that case, you have a number of small projects, and most any methodology will manage.

    If you're designing a new system - well then the SYSTEM should be DESIGNED. The architecture of the overall system shouldn't be the accidental result of however different people shoehorned different things in during different sprints. Programming frameworks, as the term is normally used, are not at all the same thing as systems architecture. To be frank, this sentence:

    > There's already a pretty good architecture in the form of one of several appropriate frameworks

    Makes about as much sense as this sentence:
    You don't need a map; there's already a pretty good route in the form of several appropriate vehicles.

    Sometimes a framework can be useful, but it's no more an architecture than a car is a route.

  107. Re:I've been using Ext JS for 5 years and it's gre by EmperorOfCanada · · Score: 1

    Good looking? Maybe to someone who was in a coma since windows 95 was fresh.