Congratulations on your glorious four hours of downtime


  • FoxDev

    man. that makes me feel old....

    hey! i can actually get away with this image meme!


  • Garbage Person

    @accalia said:

    man. that makes me feel old....

    hey! i can actually get away with this image meme!

    Yeah. Damned kids these days.


  • Discourse touched me in a no-no place

    "Oh hey we've switched to a different version of Ember despite it being slower than the current version (but don't worry Ember will figure that out eventually) then we reverted it because it caused bugs but then we're going to unrevert it and figure the bugs out after".
    Riiiiight. CDCKDGI?

    https://meta.discourse.org/t/ember-performance-1-7-1-1-8-1/22801


  • Banned

    paraphrased. Discourse team hate metamorphs so much they decided to take a perf dip just to get rid of them.



  • @loopback0 said:

    "Oh hey we've switched to a different version of Ember despite it being slower than the current version (but don't worry Ember will figure that out eventually) then we reverted it because it caused bugs but then we're going to unrevert it and figure the bugs out after".

    I thought Ember was supposed to magically solve all performance issues like 6 months ago, which is why Atwood and goons weren't worried about the fact that this site runs like frozen treacle.

    WHAT A SHOCK to learn its made performance worse. I AM SHOCKED.


  • Discourse touched me in a no-no place

    @sam said:

    paraphrased.

    Yes, obviously, hence including the link to the post.

    @sam said:

    Discourse team hate metamorphs so much they decided to take a perf dip just to get rid of them.

    I don't know what a metamorph is in this context but I'm not sure it needed to be slower, especially Android.
    Is a metamorph something that has a noticeable user impact or is it just a thing which annoys Discodevs?


  • FoxDev

    @loopback0 said:

    I don't know what a metamorph is in this context

    neither did i..... so i googled it.

    if this page is accurate i may have found why EmberJS has performance issues.....

    http://colynb.com/posts/dom-horror-with-emberjs.html



  • What performance problems? Shit runs perfectly fine in my crappy dual core and my MotoG.


  • Discourse touched me in a no-no place

    @accalia said:

    so i googled it.

    I did briefly but wasn't any the wiser. All the results assume I know what a bloody metamorph is.

    @accalia said:

    if this page is accurate i may have found why EmberJS has performance issues.....

    Maybe but if that's what one is then a version which removes those makes it slower.


  • Discourse touched me in a no-no place

    @sam said:

    Discourse team hate metamorphs

    Do they hate the card in Magic: the Gathering, the body type in Traveller, or the character from Space: 1999?


  • Discourse touched me in a no-no place

    I was thinking the thing from Red Dwarf but it turns out that's the Polymorph.


  • Discourse touched me in a no-no place

    All the things I mentioned where things I saw when Googling "metamorph." I didn't want to take the risk of thinking of the wrong wrong thing.



  • @Intercourse said:

    Meh, I was talking about the amount of time it takes to get to profitability. As far as dev tools go, I could really give a shit less. Those are one time costs. In my frame of reference, I am talking about the amount of time (and time=money) that it takes to get to a billable consumer. I get your point though.

    Ah, I misunderstood. Though I bet CDCK could have afforded to develop in .NET. After all, we have determined that their monthly costs are around $43k.

    @Intercourse said:

    Off the top of my head, as a guesstimate, I would think that a .Net (Windows Server) solution would require a VPS, which will cost you more. A Digital Ocean Discourse instance will cost you the same amount of money though. I call it a draw.

    Yeah, I think that there probably wouldn't be a big cost difference for something like Discourse.


  • Banned

    Before:

    After


  • Banned

    Developing on .NET would have been risky, stuff is shaking out nicely now but 2 years ago the fate of mono was unclear.

    It was critical from day #1 to be able to deploy on a Linux stack, SQL Server clearly out of the question. So yeah, maybe mono+asp.net mvc + some other client side framework would have worked. But then again, the server bits are not where people are feeling pain anyway so I am not really regretting this decision.


  • FoxDev

    @sam said:

    Before:

    <img src="/uploads/default/10857/d9983f7228a5bb06.png" width="525" height="500">

    After

    <img src="/uploads/default/10858/2328148702505af3.png" width="512" height="438">

    that should make low powered devices happier.

    even empty there's a fair bit of overhead for a script tag.

    why a script tag, rather than a span for a metamorph tag?


  • Banned

    I think its the way the library was initially designed ... they wanted to support weird and wonderful stuff like:

    <span>
    2  {{something}}
    {{if bla}}
    </span>
    <span>
    2
    {{/if}}
    </span>
    

    If they used span they would have heavily amended semantics of the page.


  • FoxDev

    ok. i can get that logic then.

    but why would that layout be wanted? from a design perspective, not from a template language design perspective.


  • Banned

    Its one of those things where everyone ends up paying the price for "infinite" flexibility.


  • FoxDev

    @sam said:

    Its one of those things where everyone ends up paying the price for "infinite" flexibility.

    yes, that's the language design perspective.

    i'm wondering what the markup design reasons were for supporting such a strange usage senario.

    i can't think of one where the rule that markup tags can't span context areas (you can't enter exit an {{if}} (etc) with mismatched tags) would be impossible to support (and such a rule would seem to greatly simplify edge cases in the template engine)



  • You know what's fun? s/outage/badger, s/down/sexy

    @accalia said:

    the report covers November.

    25 badgers with a total of 4 hours sexy time.

    average 9.6 minutes sexy time per badger.

    total badgers on all sites monitored in the report: 38.

    % badgers at TDWTF : 65.blahblahblah% (or roughly 2 out of every three badgers)


  • Banned

    The big, "not that controversial" reason was supporting bound nodes that are "undecorated"

    Eg: <p>hello {{user.name}}</p>

    If you force user.name into a span, you are amending semantics and styling with CSS forces people to learn these odd rules. So the script tag shaningen became the general solution here (till metal views came along in 1.8)


  • FoxDev

    oh! i see. we weren't on the same page.

    i mean that instead of:

    <p>
        hello
        <script id="metamorph-0-start" type="text/x-placeholder"></script>
        sam
        <script id="metamorph-0-end" type="text/x-placeholder"></script>
    </p>
    

    produce:

    <p>
        hello
        <span id="metamorph-0-start" type="text/x-placeholder"></span>
        sam
        <span id="metamorph-0-end" type="text/x-placeholder"></span>
    </p>
    

    the overhead of DOM constructing the <span> tags is less than the <script> tags.

    so is there specific reason <script> was used instead?


  • Banned

    ahh I see, I think cause they were trying to play it safe, people do a lot of fancy span styling (with :before :after min widths and so on). script styling is not really possible.


  • FoxDev

    @sam said:

    I think cause they were trying to play it safe, people do a lot of fancy span styling

    and if any designer i work with tries that crap they're getting a nerf dart in the ear.

    still i do see it often enough in the wild.

    ok. i got nothing to counter that reason. carry on (and yay for removing metamorphs!)



  • @FrostCat said:

    or the character from Space: 1999?

    Oh well I agree with them on that. Ugh, the second season of Space: 1999 was craptastic.



  • @sam said:

    But then again, the server bits are not where people are feeling pain anyway so I am not really regretting this decision.

    What about developers? Don't you get sick of working with such primitive and shitty tools? Both MonoDevelop and Visual Studio are way ahead of anything capable of working with Ruby. (Except perhaps SapphireSteel, but that's a Visual Studio plug-in so it's kind of cheating.) "Man I loved how computers worked in 1988! Let's have the 1988 experience ALL THE TIME!"

    Goddamned, maybe if you had a decent debugger there'd actually be fewer bugs. Maybe. Probably not. But it's nice to think.


  • Winner of the 2016 Presidential Election

    @blakeyrat said:

    Both MonoDevelop and Visual Studio are way ahead of anything capable of working with Ruby.

    If RubyMine is as good as Jetbrains' other IDEs, then there might actually be a decent IDE for Ruby. (I hate Ruby, so I've never actually tried it.)


  • Banned

    These guys use vim and emacs and stuff.. which is insane to me.. but as @asdf noted RubyMine is pretty good if you are a visual studio kind of person.

    I do miss Visual Studio.



  • @codinghorror said:

    These guys use vim and emacs and stuff..

    @blakeyrat said:

    "Man I loved how computers worked in 1988! Let's have the 1988 experience ALL THE TIME!"

      


  • BINNED

    @trithne said:

    Let's have the 1988 experience

    Well it was the year that FractInt was released ...



  • Discourse - a fractal of bad design?


    Filed under. [As seen on codinghorror.com]()



  • BINNED

    @aliceif said:

    Why didn't you link to the relevant meta.d thread?

    Because it isn't a blog?


  • Discourse touched me in a no-no place

    Because that topics over 30 days old (or whatever the toaster limit is) and therefore is effectively as old as emacs?


  • Discourse touched me in a no-no place

    @Luhmann said:

    Because it isn't his blog?

    FTFY.


  • ♿ (Parody)

    @sam said:

    metamorphs

    WTF does this mean? Teh google doesn't enlighten me at all.

    EDIT: got it...the expand reply didn't enlighten me instantly


  • FoxDev

    keep reading. we talk about it a fair bit a little firther down thread.


  • ♿ (Parody)

    Yes, I get it now, but the expanded replies didn't give me an immediate warm fuzzy so I chimed in.


  • FoxDev

    basically metamorphs is a thing that emberjs adds (or added, i'm unclear on that) to make it possible to do live updates of all sorts of things.

    this caused the addition of.... well a FXXK tonne of empty <script> tags that all invoke the JS parser (makes the site slower on low powered devices (hig powered too but less noticable on them)

    also devs hate wading through them. the update has some perf regressions but the removal of that FXXK donne of tags was deemed worth it.

    i'm still confused why they couldn't have added rules that meant they could have used some other tag for metamorphs but they're gone now so it's a moot point.


  • ♿ (Parody)

    Yeah, I totally get why they got rid of them and whatnot.



  • I remember doing some jquery drag & drop wizardry in an ember-powered list and having to rearrange the metamotrphs every time I moved around the DOM items. It sucked. I'm glad they're gone.


  • kills Dumbledore

    @sam said:

    metamorphs

    Isn't that a Gen1 Pokemon?


  • Grade A Premium Asshole

    @blakeyrat said:

    That's a funny thing to put at the end of a post where you admitted I was right about 3 times.

    See:

    http://what.thedailywtf.com/t/all-invention-stopped-in-1971-stop-the-presses-which-we-still-use-btw-because-its-1971-tech/5264/19

    Did I say anything about this thread? Let's check:

    @Intercourse said:

    You seem to be wrong a lot lately.

    Nope, I did not say, "You seem to be wrong a lot in this thread" Get those shoulder aliens checked out. They are feeding you the wrong information.

    @abarker said:

    Ah, I misunderstood. Though I bet CDCK could have afforded to develop in .NET. After all, we have determined that their monthly costs are around $43k.

    True, but as (I thought) I mentioned earlier, when you are working on something open-source, it will be easier to find people familiar with RoR than it would for .Net. Right tool for the job and all that. This is one situation I would not fault them on. Admittedly though, I have just gotten in to RoR (because when I checked it out a few years ago I thought it was shit) and I really like it.

    As for discussions about dev tools, we use RubyMine and it works remarkably well. It is not Visual Studio, but it is very good.

    In regards to speed of development, etc, ruby gems can speed up time to release considerably. For this project we are currently on, I knew we wanted to compartmentalize users by subdomain. We had to write almost no code to make this happen.

    gem 'apartment'
    

    Admittedly, there was a little bit more involved. But not as much as you would think. Someone else took care of that functionality for the community. If you read "The Pickaxe Book", one of the things it tells you is (paraphrased) "Whenever you find yourself doing 'plumbing' code, you should look to see if there is a Ruby gem that has already taken care of that for you." Once you get used to that, you write less code. Less code will usually lead to shorter development times. Not always, but usually. Also, for a small team like ours, it is a huge benefit that some other group is taking care of updating the code on the gems that we use. Less work for us. More time to spend implementing new features.

    There is a HUGE community of talented people spending time contributing to Ruby and Rails. Work that others can build upon. Work that takes care of plumbing code and saves us time and money.

    Edit: Wonderful! I quote blakeyrat and a quote from Tarunik shows up instead. The preview window showed the proper quote, but submit does something different.

    @CodingHorrorBot


  • 🔀

    @Intercourse Is Doing It Wrong™


  • Grade A Premium Asshole

    I meant @discoursebot. 😄



  • @Intercourse - Days Since Last Discourse Bug: 0



  • @codinghorror said:

    These guys use vim and emacs and stuff.. which is insane to me..

    It's more than insane, it's stupid. This is exactly why IT never makes any fucking forward progress. Do you think Ford hires automobile designers who still use slide rules and clay models? No; because Ford operates in an industry full of people who aren't insane and stupid.

    You know, in most fields, there's this concept of "standing on the shoulder of giants". So if someone invents something, everybody else in the field adopts it and everybody's more productive as a result. That concept is completely alien to most of the people in IT.



  • @Intercourse said:

    True, but as (I thought) I mentioned earlier, when you are working on something open-source, it will be easier to find people familiar with RoR than it would for .Net.

    What the fuck does the development methodology have to do with the language! You keep glomming these two things together, and I have no idea why or on what basis and it's pissing me off.

    Look: how often you do releases depends entirely on your development methodology, it has nothing to do with what language you choose. Rate of feature development mostly depends on development methodology, unless you're using a really shitty language where you keep getting hung-up on weird/wrong behaviors that wouldn't happen in a better language. Open source is a development methodology, actually it's not even that, it's a software license, and has absolutely nothing to do with the choice of language.

    You don't hire "open source developers", that doesn't even make sense. You hire "developers". Whether the end-product is open source or not is entirely irrelevant to the hiring decision-- either way, you want to find the best person for that product.

    @Intercourse said:

    Admittedly though, I have just gotten in to RoR (because when I checked it out a few years ago I thought it was shit) and I really like it.

    So you're basing all of this on leftover Ruby-on-Rails hype?

    @Intercourse said:

    In regards to speed of development, etc, ruby gems can speed up time to release considerably.

    Right; because no other programming environments have free-to-use libraries.

    @Intercourse said:

    "Whenever you find yourself doing 'plumbing' code, you should look to see if there is a Ruby gem that has already taken care of that for you." Once you get used to that, you write less code. Less code will usually lead to shorter development times. Not always, but usually.

    The problem arises when the gem is written by an idiot and is a buggy mess and your team is full of incompetents who can't do anything more than glue libraries written by other people together. Then you get Discourse.

    @Intercourse said:

    There is a HUGE community of talented people spending time contributing to Ruby and Rails.

    Right; because no other programming environments have huge communities of talented people.

    You know, when comparing A and B, you need to pick some things to mention that A and B don't have in common with each other.


  • kills Dumbledore

    @blakeyrat said:

    You hire "developers". Whether the end-product is open source or not is entirely irrelevant to the hiring decision

    What about the taking-the-job decision? Would you take a job working on an open source project?

    Would the answer be any different if you were in a well paying job vs being unemployed? (i.e. would you take the job when desperate but not otherwise?)


Log in to reply