back to article Watching you, with a Vue to a Kill: Wikimedia developers dismiss React for JavaScript makeover despite complaints

After several months of debate, the Wikimedia Foundation (WMF) has decided to modernize the front-end interface used by Wikipedia and other projects by adopting the Vue.js JavaScript framework, a choice that remains controversial. The Wikimedia Foundation oversees Wikipedia which still relies on decade-old user interface …

  1. Notas Badoff

    At least it's not "None of the above"

    As usual with the WMF the whole effort didn't seem to be publicized well enough to draw in a wide crowd for informed comment. I mean, surely ElReg mentioned it... oh, not at all?

    I do like the one comment (you linked to it) "Vue core is Evan You's one-person project, which poses a risk to MediaWiki's sustainability" to which someone asked why not have WMF just buy Evan You. Which is classic. But not WMF's way. They'll just switch over to Vue and then fork it when they want to do it their own way. Thus closing the loop with their reason not to use React - dark side ownership.

    I'm just amazed they haven't forked something else *already* with NIH so embedded in WMF's DNA.

  2. Godwhacker

    Front-end development is a complete mess

    ...and I say that as someone who primarily does front-end development these days. Every three months someone will release an update to their package that has a breaking change simply so it fits into whatever the current opinion on Twitter is about some JavaScript feature. Education is largely run by people writing self-promoting, meme-filled posts on Medium called "x considered harmful".

    I've had freelancers putting in the latest React features in seemingly in order to be able to put them on their CV. I've had to break up arguments about semi-colons and tab width. Someone insisted we switch testing framework because there was a new one out.

    I'd love to say this was true of all environments but compare the web page for C++ GLM (https://glm.g-truc.net/0.9.9/index.html) with that of, say, GraphQL (https://graphql.org/) . Notice the difference in bullshit levels.

    Anyway, Vue is totally fine, or is at least as good a way of fucking things up as any of the other options.

    1. Pascal Monett Silver badge

      Re: Front-end development is a complete mess

      I am relieved to see that there is at least one other person that considers framework churn to not be the bee's knees of development environments.

      And, as for decisions, removing frameworks because of lack of popularity is the kind of thing that makes me wince. Popularity is more important than features and stability ? Everything seems to be a show these days. Unfortunately, sometimes it's a shit show.

      1. Tomato42

        Re: Front-end development is a complete mess

        popularity has huge impact on the bus factor, when you're doing the project the size of Wikipedia, those things matter a lot

    2. Glen 1
      Holmes

      Re: Front-end development is a complete mess

      "...Tab width..."

      Answer: Four (4)

      Two is for people who sit too close to the screen, and who don't separate out any of their callbacks.

      Eight is for writers, who tend to not have fixed width text.

      Odd numbers are for summoning Cthulhu (all hail etc, but not before the client has paid)

      I use tabs rather than spaces, but have succumbed to popular opinion, let the IDE do its autoconversion thing.

      1. Anonymous Coward
        Anonymous Coward

        "Tab width" considered harmful

        The only correct answer to "how wide is a tab" is "one tab wide".

        The correct question is "how wide is one indentation level?"

        As a UX and accessibility person, I believe the answer to this question most frequently should be "as wide as the reader needs them to be".

      2. _randomandy_
        Alert

        Re: Tab width

        "...Tab width..."

        Answer: Four (4)

        ... Is that an actual tab or 4 spaces?

        1. Tomato42
          Mushroom

          Re: Tab width

          actual 4 space characters in a file, how you get there I don't care, be it space on keyboard, tab key or Ctrl+Alt+butterfly, but the file on disk better have spaces, at worst have tabs and be consistent

          but if you use a mix of tab and space characters in your files... see icon

      3. bpfh
        Flame

        Re: Front-end development is a complete mess

        Tabs vs spaces, the continuing flamewar.

        I still get roasted by colleagues due to me using tabs rather than spaces, but when editing in vim, I still claim that tab tab tab is superior to space space space space space space space space space space space space space space space space space space, but in the end, everyone to their own.

        /peace.

        1. Anonymous Coward
          Anonymous Coward

          Re: Front-end development is a complete mess

          :set expandtab ?

          1. Michael Wojcik Silver badge

            Re: Front-end development is a complete mess

            When editing in vim, knowing how to use vim is superior to the alternative.

        2. Pascal Monett Silver badge
          Pirate

          I don't give a flying frak how you indent your code, but if you don't I will strangle you with my bare hands then and there.

    3. joeW

      Re: Front-end development is a complete mess

      I must say that I've been enjoying the hell out of react since picking it up a few months ago. But yes, as with all things front-end these days, its the dependencies that are annoying. Every second result when I search for "How to [anything] with React" starts with "Well first you'll just need to 'npm install [package-library]', and then..."

    4. a_yank_lurker

      Re: Front-end development is a complete mess

      Technology churn is idiotic. But there comes a time were the code is so old and creaky that doing anything with it is very difficult if not practically impossible. Then it makes sense to modernize and one should pick a technology that has some maturity to it. As far as picking between React and Vue, I have no opinion but both are mature and well known.

    5. Anonymous Coward
      Anonymous Coward

      Re: Front-end development is a complete mess

      React is a fucking shit show. I'm involved in building a supposedly government strength enterprise website in it atm after years of .Net web development. Amateur is putting it nicely. React itself has good ideas but the "React ecosystem" is a mess and there's as many different ways to do something as there are developers, with each component adopting a slightly different approach to things they all do.

      But look at the choice!!! Five thousand flavours of shit.

    6. J27

      Re: Front-end development is a complete mess

      Keeps us all working. More money for us.

    7. Anonymous Coward
      Anonymous Coward

      Re: Front-end development is a complete mess

      It already happened to be on my mind: https://wiki.quanticle.net/Main/ProgressPostmodernismAndTheTechBacklash

  3. Elledan

    Wikimedia uses JavaScript?

    And here I am, using Wikipedia et al. like a chump with NoScript nuking any potential JS and not noticing any loss of functionality.

    Wikipedia is text with images, what use does JavaScript have there? I'm genuinely curious as to what I may be missing out on.

    1. Chris Gray 1

      Re: Wikimedia uses JavaScript?

      Elledan, if you find out, let us know.

      I opened a tab to Wikipedia just now and NoScript reported blocking 5 whatevers, but showed that only wikipedia.org was needed. I didn't try allowing it to see what changed - I thought you should have that joy. :-)

    2. sabroni Silver badge

      Re: Wikimedia uses JavaScript?

      I think you've spotted a defect in NoScript when it gets confused between pages, I've just gone to wikipeida.org with NoScript defaults and wikipedia.org is the only script source. I enabled it and refreshed and it's still the only one listed. Clicking through to the English site adds wikimedia.org.

      Enabling scripts enables auto complete on the search box so looks like JS is being used exactly as it's supposed to be, to enhance a working page with some extra features designed to make it easier to use.

      The internet is full of sites that doesn't function without JS, looks like Wikipedia are doing it right.

    3. J27

      Re: Wikimedia uses JavaScript?

      After they switch to Vue all you're going to see is a screen that tells you to enable JavaScript, unless they have the old UI as a fallback.

      1. knottedhandkerchief

        Re: Wikimedia uses JavaScript?

        No, Vue is ideal as a replacement for jQuery, for enhancing small forms and widgets with AJAX like behaviour. It can very easily be applied to small sections of plain HTML.

        1. holmegm
          WTF?

          Re: Wikimedia uses JavaScript?

          Er, what's wrong with jQuery again? I mean, other than it being mature.

          1. Michael Wojcik Silver badge

            Re: Wikimedia uses JavaScript?

            Well, for one thing, it was written by people who aggressively refused to read, much less follow, the specification for the language they were using.

            It may be better these days; I can't be bothered to check. But for many years jQuery was a fine example of how to do things The Wrong Way and then bitch when the broken code didn't work. And that alone is enough for me to reject it.

            But then I've never needed it. When I wanted some scripting for some academic projects, I wrote my own library. It's not hard. And that way I could easily design the pages with graceful degradation for people who had scripting disabled, and readable scripts for people who wanted to copy them or hack them with Greasemonkey; and I knew the code complied with the standards; and I knew its provenance and that it was relatively trustworthy.

      2. Elledan

        Re: Wikimedia uses JavaScript?

        I loathe sites which just tell you 'You must enable JavaScript to use this site" more than I used to kinda-sorta loathe Flash-only sites, or Java applets for that matter.

    4. adempus

      Re: Wikimedia uses JavaScript?

      Coming from developing frontends in just plain JavaScript, HTML and CSS, to Vue.js now, I can't really complain. The SPA aspect of Vue accommodates for the simplicity of just text and images very well.

      Also, you have to consider the information hierarchy WM's page layouts, which are fairly complex. Vue router helps to handle this exceptionally: https://router.vuejs.org/guide/essentials/named-views.html#nested-named-views.

      Also Vue is faster:

      https://media.discordapp.net/attachments/325479785151070208/685210069616427086/vue_wins.PNG

      (source): https://auth0.com/blog/vuejs2-authentication-tutorial/#Vuejs-2--Angular-2-and-React

  4. _randomandy_
    Alert

    Re: Tab width

    "...Tab width..."

    Answer: Four (4)

    ...would that be a single tab or four spaces?

    1. Michael Wojcik Silver badge

      Re: Tab width

      Space, tab to the next tab stop which happens to be the next position, two more spaces. Obviously.

  5. J27

    "Vue.js, the proposal says, has better support for front end build tools like Webpack and Babel, appears to allow code with fewer dependencies, and is evolving in a stable manner."

    This is total bunk, Webpack and Babel have first-class React support, the real (and only) reason is the politics. It's totally understandable, but claiming there is a technical reason is just plain incorrect.

  6. Mike 16

    users' needs should be considered alongside those of developers.

    What a novel concept. How I wish this could be more common.

    Of course, _saying_ it is rather different than _doing_ it.

    Meanwhile:

    "...looks like JS is being used exactly as it's supposed to be..."

    For now, maybe, but the future comes fast on the web (as long as it's a future that prioritizes developers and corporations over users)

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like