Does Anyone Actually Want Good Software?


  • BINNED




  • BINNED

    I totally forgot about that.

    Anyway, back on r/programming, it appears TRWTF is redditors. The topvoted comment appears to have not even read the article:

    Everybody wants to use Good software.
    Few want to PAY for Good software to be written.


  • FoxDev

    It seems to me that we're all so obsessed with making cool stuff, we've forgotten how to make stuff that actually works.

    I'll admit, there's a lot of truth to that…
    I mean, we all know how normal people always go 'Ooh, shiny!', and don't actually pay attention to what they're buying/using. Of course, us lot, we do pay attention, but even then, we still have our magpie moments.



  • Apparently I'm the only human being left on planet earth who really, really doesn't like typing magical bullshit into his linux terminal just to get basic things working instead of having a GUI that wasn't designed by brain-dead monkeys.

    Is @blakeyrat using the the nom de plume Erik McClure now?


  • BINNED

    I'm not allowed to say that garbage collectors are bad for high performance software.

    Oh shit son! You didn't!

    I agree. Flame away.


  • β™Ώ (Parody)

    Did that guy take his onion off his belt before he sat down to type up that article?

    It's a fine rant, and good flamebait, but like that article about SHIPIT culture that blakey posted, I think it appears to be insightful more than actually being insightful.


  • BINNED

    @boomzilla said:

    I think it appears to be insightful more than actually being insightful.

    Welcome to the internet. Enjoy your stay.


  • β™Ώ (Parody)

    @antiquarian said:

    Enjoy your stay.

    ✨ 🍰 🍷



  • I think there are 2 fundamental problems that are the cause of pretty much every problem in the computer industry:

    000000000000000000000000000000000000000000000001. Strong network effects everywhere. A network effect is when the adoption of something increases its value. In other words, if everyone else uses HTTP/Windows/x86/C/Javascript/PDF/ACPI, I have to use the same thing too or my products will be useless, no matter how terribly shitty it is. Once something gains enough traction it's very very hard to change.

    11111111111111111111111111111111111111111111111111111110. Very fast evolution. Paradoxically to the previous point, everyone is changing everything all the time. Nobody bothers making good software or good hardware because in the time it takes to fix a bug, 25 new competitors pop out offering something better. Seriously, look at how many things have changed over the last 10 years. Vista wasn't even out.



  • I need to read this article but I haven't had time today.



  • @boomzilla said:

    @antiquarian said:
    Enjoy your stay.

    ✨ 🍰 🍷

    You forgot the πŸ‘―πŸ‘―πŸ’πŸ‘™



  • Article is meh. I get what he's saying, and I get why people would confuse it with what I'm saying, but it comes across as just whining. His complaint about garbage collection is not only ridiculous but counter-productive-- I bet most of those bugs in Skype he's bitching about are due to it not having garbage collection. Also the Visual Studio complaining-- yes 2013 is far more bloated than 2010, and 2010 was much more bloated than 2008. With all this added bloat, VS is now only 46 times faster than Eclipse and its other competitors. Whoop-de-shit.

    From the first comment:

    If eBay for example could get rid of their entire Java stack and still remain a marketplace then they would do it in a heartbeat. eBay is in the business of markets and not in the business of making Java frameworks and so it doesn't take a genius to figure out that their Java is going to be a terrible mess.

    Since when is eBay Java? Did they turn their Microsoft stack into Java at some point? Or is this guy an idiot?



  • @antiquarian said:

    TRWTF is redditors

    I'm not sure I've ever understood the appeal of reddit. I have friends who think it's the best thing evar, but whatever, it just seemed like a popularity contest masquerading as a serious news site AFAICT...



  • @tar said:

    masquerading as a serious news site

    What, reddit? Or did you mean slashdot?

    Reddit is many things, some of them worse than others... but a news site?



  • @Onyx said:

    >I'm not allowed to say that garbage collectors are bad for high performance software.

    I once wrote a GC where the intention was that every operation was O(1), or failing that O(log n).
    I think there were a couple of places where I had to settle for O(n), but I made the maximum value of n configurable up front.
    I should probably dig that code out again some time...



  • @tar said:

    I think there were a couple of places where I had to settle for O(n), but I made the maximum value of n configurable up front.

    var n = 1

    There, O(1) out of the box.


  • BINNED

    @tar said:

    I'm not sure I've ever understood the appeal of reddit.

    Some people like popularity contests, and aren't popular in real life, so reddit is a good alternative. I don't really spend much time on r/programming any more, but I originally signed up because all of the interesting questions on programmers.stackexchange were getting closed.



  • @Maciejasjmj said:

    Reddit is many things, some of them worse than others... but a news site?

    It always used to have news articles on the front page, didn't it? Have they changed that now?



  • @Maciejasjmj said:

    var n = 1

    There, O(1) out of the box.

    The downside being, that although the GC is wicked fast, it's leaving a lot of RAM on the table, which could be detrimental to other parts of the code...



  • @tar said:

    It always used to have news articles on the front page, didn't it? Have they changed that now?

    http://i.imgur.com/CfC69Lh.png

    Not... really? Unless you consider a guy going to a pub and taking a photo "news"...



  • Hmm, I guess it's changed since 2008, then.



  • Oh, actually, speaking of reddit, I found this the other day which was full of gems like this:

    Probably the first objection I'd expect in response is, if a person picked a shock name for their semi-permanent online moniker, are they really the kind of person we want in our community? The answer I have to give is yes, sometimes they are. One of the most continually amazing things about this site is how frequently you'll get insightful advice or feedback from someone named after a sex act (or similar offensiveness). How long was /u/POTATO-IN-MY-ANUS the queen of genuinely helpful relationship advice? Pretty dang long. So a shock name may be offensive, but should not disqualify someone from contributing, IMHO.


  • β™Ώ (Parody)

    @blakeyrat said:

    Article is meh. I get what he's saying, and I get why people would confuse it with what I'm saying, but it comes across as just whining.

    Yeah.

    @blakeyrat said:

    eBay Java

    I don't follow this stuff, but according to these guys:

    #Platform
    • Java
    • Oracle
    • WebSphere, servlets
    • Horizontal Scaling
    • Sharding
    • Mix of Windows and Unix

    Other stuff that google is throwing up talks about Java APIs.

    This says that eBay went all J2EE in 2002 and then went to some custom thing.



  • @boomzilla said:

    This says that eBay went all J2EE in 2002 and then went to some custom thing.

    I know for a fact they were using their Microsoft-based servers long after 2002, I believe I worked with them (as a web analytics consultant) in 2007 or 2008, and they were still using windows DLLs running in IIS over CGI or something very similar to that.

    I had no idea they moved on to Java though; at the time everybody knew how creaky their platform was and how it needed to be ported to something else quickly. I don't remember anybody there ever mentioning Java, though.



  • Some of the stuff he mentions is bad, some is good. Usually, it's a mix.

    Which makes this guy just cranky against new stuff.


  • Discourse touched me in a no-no place

    @blakeyrat said:

    I know for a fact they were using their Microsoft-based servers long after 2002, I believe I worked with them (as a web analytics consultant) in 2007 or 2008, and they were still using windows DLLs running in IIS over CGI or something very similar to that.

    I had no idea they moved on to Java though; at the time everybody knew how creaky their platform was and how it needed to be ported to something else quickly. I don't remember anybody there ever mentioning Java, though.

    The last I heard (5 or 6 years ago, to be fair) eBay's operations were very split up between different areas. Search was apparently different from all sorts of other areas (the guy I knew was talking mostly about the search side of things) and it wouldn't surprise me at all to learn that different parts were done using entirely different platforms behind the scenes.

    Also, eBay's URLs are no indication of anything. Their servers are configured to lie about all that sort of thing. Which is what I'd do too…


  • Discourse touched me in a no-no place

    @blakeyrat said:

    Article is meh. I get what he's saying, and I get why people would confuse it with what I'm saying, but it comes across as just whining.

    http://blackhole12.blogspot.co.uk/2014/11/how-not-to-sell-software.html comes across as a better article. Same style, but taking aim at something he knows better and is more able to point to as being shit.



  • I feel like this article is asking a tremendously subjective question to an audience full of opinionated assholes.

    Imagine for a moment that music was just recently invented. Maybe 50-60 years ago. And now all kinds of irresponsible assholes are going around just making music however the fuck they want. And some people like it, but some people don't. Most people don't care about how it's made, but a few people do, and they are walking around telling everyone how badly their music is made.

    Because this music isn't contrapuntal, it's bad. Or it's bad because it is. Or this music has no conceptual cohesiveness, so it's bad. Or it does, and therefore it's bad. Or this music has no directly relatable human story, so it's the worst thing in the world. Or it does have a directly relatable human story, so it is actually destroying the fabric of the universe.

    The question is stupid. No one is ever going to agree with anyone about what makes good software any more than they will agree about what makes good music. Which is to say that small clusters of people will agree for short periods of time. And after several cycles of these kinds of multi-century debates, people will coalesce around certain things.

    But right now? Come on. Software as a whole is far too young a field of study and practice to make any kinds of claims about what is good and what is bad. Things that we currently think of as good will eventually be seen as bad and vice versa.

    The only thing that's worth mentioning about an article like this is that it does get one thing sort-of correct: software is up there in the realm of things that people will study and take seriously for the rest of human time. Ideas will float back and forth between poles just like the pendulum of music, politics, religion, and morality.

    But right now, 50-60 years in (depending on how you want to call it, perhaps a little more) we are just in a highly localized loop where we are trying to figure out "the big" paradigms. Network or Local?
    We are children on a playground arguing about whether the swingset is better than the monkey bars.

    To get off my podium for a second and say something relevant to the article, no. No one wants good (by a certain definition) software. Just like no one wants good (by a certain definition) music.

    People want to do things. Sometimes software helps them do things. Sometimes music helps them do things. The things people want to do are the things people care about, not the tool they are using to get it done.

    Here's a really great example: Discourse. Do we want a better Discourse? What if Discourse were a piece of good (by someone's definition) software? Do we want that?

    A) it is good software by someone's definition, and
    B) we don't really want it, and
    C) we don't really care.

    What we--we of all the people who write and complain about and laugh at all the silly things about software development--really want is to communicate with each other. If Discourse were better in some ways but worse at the whole communicating thing, we wouldn't care if it were "good software." If Discourse were worse in every possible technical way but were better at letting us communicate, we wouldn't care.

    No one cares about good software. People care about getting shit done.


  • FoxDev

    @glathull said:

    People care about getting shit done.

    Q to the F to the motherfucking T



  • @glathull said:

    music

    music is art.
    SE should be based on scientific principles.

    apart from that, yes, our craft is in it's infant stages. most of the literature today sounds like alchemists searching for the philosopher's stone. ((TDD|MVC|AOP|YOMAMA) will make you build the perfect software!)

    ONT: http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=382191&url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel1%2F52%2F8661%2F00382191.pdf%3Farnumber%3D382191

    β€œYou can get it fast; you can have it cheap; you can get it right. Pick two”. That sign could be displayed on the wall of every software development organization; and yet most of our customers want all three. The author tackles this dilemma. He contends that we don't rationally establish a proper balance among the critical project parameters: cost, schedule, staffing, functionality and quality.

    belgium discourse won't let me upload the article.
    the thing is, as glathull said, no, everyone wants "Good Enough" software.(altough the parameters for enough vary)


  • FoxDev

    @Jarry said:

    everyone wants "Good Enough" software.(altough the parameters for enough vary)

    Normal person: "Is it shiny?"
    TDWTF person: "Does it work properly?"
    @blakeyrat: "Can I rant about it?"



  • Never a truer word spoken.



  • oooohh shiny

    <gif not inlined on purpose



  • @Jarry said:

    music is art.

    It hasn't always been thought of that way. When music the way we think of it now was in its infancy (kind of like software engineering is now) it was thought of and taught as a subset of Math. Pythagoras and Plato wrote a lot about music, but only ever in the sense that it was a study of proportions/ratios. And there were certain "scientific" ways to go about writing and performing music.

    Now, music has evolved into something we think of almost entirely differently. We think of it as an art--something almost entirely separate from a science. And we do this in spite of the fact that music is inextricably linked to the study of acoustics and biology and neurology. Music, in its basic form, is sound waves. And what we perceive is how those waves interact with our eardrums. and what it means to us is whatever kind of sense our brains make out of all of that noise.

    In the same way, software is in some ways inextricably linked to certain sciences. Computational complexity is a thing that we have to worry about. And there are other science-y elements to it. But there are also artistic and aesthetic elements to it as well. In the long run, 2500 years from now, my opinion is that software will be viewed much more like music is today than as a science.



  • Par for the course...



  • Perfect example: GIFs animate in all browsers.



  • Especially since the article kind of boils down to: β€œI don't like anything popular, why don't more people like what I like?”



  • "Stuff costs more than it used to! There are children on my lawn!"



  • @Jarry said:

    you can have it cheap; you can get it right. Pick two

    Pretty sure this combination doesn't actually work.



  • When it comes to Twitch stream chat and YouTube comments, avoiding popular stuff is a legitimate strategy.



  • @glathull said:

    Here's a really great example: Discourse. Do we want a better Discourse? What if Discourse were a piece of good (by someone's definition) software? Do we want that?

    Does Anyone Actually Want Civilized Discourse?


    Filed Under: Please consider this an additional like, I thought that was a really good post.


  • Discourse touched me in a no-no place

    @Jarry said:

    SE should be based on scientific principles.

    SE needs to be primarily an engineering discipline, but that needs to take into account the radically different cost-basis of software compared to physical things. For example, rolling out a new version in the field is mostly much cheaper with software, and making many copies is trivially cheap. In many ways, this means that the costs with software often fall back to those that are involved with producing a prototype, a part of the process that is usually not that big a deal with more traditional engineering. β€œIt's engineering, Jim, but not as we know it.”

    The scientific basis for SE is computer science.



  • @glathull said:

    Pythagoras and Plato wrote a lot about music, but only ever in the sense that it was a study of proportions/ratios. And there were certain "scientific" ways to go about writing and performing music.

    got me, i had no idea about that takes note to read on the subject
    @glathull said:
    In the long run, 2500 years from now, my opinion is that software will be viewed much more like music is today than as a science.

    I'm not so sure. i think it will evolve into two linked fields like civil engineering/architecture. (in fact, i think our field would benefit A LOT if we turn to the architects and try see how they teach/organize design principles)

    @dkf said:

    SE needs to be primarily an engineering discipline

    it will be. given enough time. right now it's alchemy.

    @dkf said:

    radically different cost-basis

    in other engineering fields the cost stops people from screwing thing, a bug in a bridge it serious business. a bug in soft don't, so a lot of people tend do things and then see if they work. it has benefits thou.

    @dkf said:

    The scientific basis for SE is computer science.

    yep, i know. that's why i insist that CS needs to be a fundamental part of any serious SE grad(which in my university isn'tthe case, but that's another history).



  • i think there's a floor on the amount of money, as well as there's a floor on the time a project could take.(IE you cant make a project cost less than X amount no matter how much time you are willing to wait, and you cant make a project take less than X time no matter how much money you are willing to spend)


  • Discourse touched me in a no-no place

    @Jarry said:

    it has benefits thou.

    The major benefit of software being cheap is that you can iterate very rapidly, and the customer is able to evolve their ideas over the course of a project as they come to realise what software can actually do for them. (Yeah, the whole agile thing.) It can go badly wrong and doesn't always work, but it's awesome when it happens.

    Not that you can't do it with physical engineering, but that's usually at the skunkworks stage and the physical nature of things means that the production phase doesn't work that way at all. Continuous Deployment is truly a software-only technique.


  • Fake News

    @JazzyJosh said:

    @Jarry said:
    you can have it cheap; you can get it right. Pick two

    Pretty sure this combination doesn't actually work.

    It's hard to make any combination work, but if you assume your own time is unbilled here's one way:

    1. Find opensource project with talented developers which somewhat seems to do what you need.
    2. Make "small" donation.
    3. Try to guilt-trip them into adding more of your required features.
    4. ???
    5. Profit!


  • @JBert said:

    1. Find opensource project with talented developersDiscourse, which somewhat seems to do what you need.
    2. Make "small" donation.Sign up for hosting
    3. Try to guilt-tripcomplaint-driven development at them into adding more of your required features.
    4. ???
    5. ProfitMonetize!

    Yup, it checks out.



  • You lost me after point 4.



  • Better now?


Log in to reply