Forgot your password?
typodupeerror
Graphics Open Source X Linux

More From Canonical Employee On: "Why Mir?" 337

Posted by Unknown Lamer
from the not-invented-here dept.
An anonymous reader writes "Canonical Desktop and Mobile Engineer Christopher Halse Rogers explains in more detail the decision for Mir as apposed to Wayland. Although Halse Rogers 'was not involved in the original decision to create Mir,' he's had 'discussions with those who were.' 'We want something like Wayland, but different in almost all the details.' 'The upsides of doing our own thing — we can do exactly and only what we want, we can build an easily-testable codebase, we can use our own infrastructure, we don't have an additional layer of upstream review.' In a separate post Halse Rogers answer the question: Does this fragment the Linux graphics driver space?"
This discussion has been archived. No new comments can be posted.

More From Canonical Employee On: "Why Mir?"

Comments Filter:
  • "apposed?" (Score:5, Insightful)

    by logjon (1411219) on Tuesday March 12, 2013 @12:25AM (#43145873)
    Really? Are we not even going to try to pretend to give a shit anymore?
  • Re:Context please? (Score:2, Insightful)

    by Anonymous Coward on Tuesday March 12, 2013 @12:30AM (#43145889)

    Because inexperienced, but otherwise intelligent, people often believe that they can do stuff better than everyone before them, there is a trend among hackers to rewrite otherwise perfectly fine code. Since X dates back decades, according to this line of thinking, it must need to be rewritten. "Wayland" is on such attempt (actually, what they are doing isn't nearly as sophisticated as X). Since Cannonical believes they are the shit, they want to be in control of the X successor. Their candidate is "Mir". I know nothing about Mir. The truth of the matter is that neither of these projects is going to go anywhere because it will require redoing lots of hard word (the video drivers, which are for some terrible reason part of X itself). X could use some work, but destroying the decades of compatibility is not the way to do it. The right way to do this would be to try to gather some kind of very broad support (say... from the developers of Qt and GTK) and get the two of these groups to converge on some modern subset of X, and implement the deprecated remainder as a legacy library. Of course, this doesn't let you "own" the end result, and it requires a LOT of work, so that won't ever happen. Also there's a feud between them, so it's probably impossible to do that.

  • Re:Context please? (Score:5, Insightful)

    by Anonymous Coward on Tuesday March 12, 2013 @12:47AM (#43145989)

    Your assertion that Wayland will not go anywhere seems to be predicated on the incorrect assumptions that Wayland is born of naïvety (it's not; it's developed by people with a LOT of real experience working on the current X-centric stack), and that it needs to entirely supplant X to succeed (it doesn't; it deliberately does a lot less, and it can host a rootless X server, and indeed this is the only realistic use case for it on regular desktop distributions for the next couple of years).

    Yes, there are many projects that are started for the reasons you describe, and go on to fail for those same reasons. But Wayland is not one of them. That is not to say that its success is guaranteed—but rather only that your reasons to assume its failure is inevitable are invalid.

    Wayland does not need to destroy decades of compatibility. In fact, its approach is quite the opposite: to maximize compatibility initially (pass almost everything through to a rootless X server with XWayland if you want), and then offer an optional smooth migration path away from X for applications that don't need its complexity, would like to push the complexity into separate components, or would like to take advantage of some of the things that you simply can't achieve with X today, e.g., flicker-free from boot, to playing a game, and then on to playing hardware-accelerated videos.

    You concede that the current state of video drivers being too tightly tied to X is terrible, so I assume you agree that the work has to be done to resolve that at some point, whatever path we collectively take. That also happens to be the only thing I'm aware of that's really holding Wayland back from mainstream use today. Everything else is just little bits and pieces that need to be finished or polished up, and then it could be dropped in to real general purpose distros.

  • Re:Context please? (Score:3, Insightful)

    by phantomfive (622387) on Tuesday March 12, 2013 @12:55AM (#43146029) Journal

    Your assertion that Wayland will not go anywhere seems to be predicated on the incorrect assumptions that Wayland is born of naïvety (it's not; it's developed by people with a LOT of real experience working on the current X-centric stack)

    His point wasn't that they are inexperienced with X, it's that they are inexperienced with software development in general. It's fairly common for inexperienced (though otherwise skillful) programmers to decide to re-implement a huge chunk of code in the hopes to make it better. It rarely works out very well.

  • Re:Context please? (Score:5, Insightful)

    by foniksonik (573572) on Tuesday March 12, 2013 @01:13AM (#43146099) Homepage Journal

    Apple did it and it seems to be working out just fine. They could have tried to use X but probably had the same reasons as Canonical, full control.

    Sometimes the only way to get better results is to tear it all down and start over. You learn from the past but let go of the baggage.

  • by G3ckoG33k (647276) on Tuesday March 12, 2013 @01:13AM (#43146101)

    "doing our own thing — we can do exactly and only what we want, we can build an easily-testable codebase, we can use our own infrastructure, we don't have an additional layer of upstream review."

    IOW, Fuck GPL and collaboration.

    Canonical better find an attitude. This is why they are disliked by the Debian team and others.

    This is also why I dislike Shuttleworth and Canonical - the lack of helpful upstream collaboration.

  • by bcrowell (177657) on Tuesday March 12, 2013 @01:13AM (#43146103) Homepage

    We know what a disaster it was when Canonical tried to adopt PulseAudio in Ubuntu. Basically they broke audio for no good reason. (See http://en.wikipedia.org/wiki/PulseAudio#Problems_during_adoption_phase [wikipedia.org] for more info.)

    Mir would seem to be an order of magnitude more difficult to pull off, since it's to be developed in-house by Canonical, and video is *much* more complex than audio.

    Over all, it seems extremely unlikely to me that Canonical is competent to succeed in this.

    They also don't seem to have learned their lesson from the PulseAudio experience in terms of "if it ain't broke, don't fix it."

  • by Stiletto (12066) on Tuesday March 12, 2013 @01:32AM (#43146141)

    The great thing about Linux is... You can simply choose to not use Ubuntu. BAM! Problem solved.

  • by foreverdisillusioned (763799) on Tuesday March 12, 2013 @01:37AM (#43146177) Journal
    I'm almost inclined to cut Canonical some slack here. Almost. I don't think NIH is such a horrible thing if the project in question still isn't anywhere near usable. In a situation like this, it's entirely possible that a team of paid, full time, competent programmers could start over from scratch and quickly surpass the original project. Given equal talent and effort, the Cathedral is always more efficient better than the Bazaar.

    However, I haven't seen evidence that Ubuntu possesses the talent or the manpower. Time and again, I've either read about or experienced firsthand halfassed, quite unnecessary 'improvements' while watching them neglect the fundamentals.

    So, like most every other thing they've done for the past five years, this decision may be fine in theory (I'm not super familiar with the issues surrounding Wayland, so I can't say for sure), but in practice will quickly become a category five disaster.
  • Why not X? (Score:2, Insightful)

    by Damouze (766305) on Tuesday March 12, 2013 @02:00AM (#43146257)

    Why not continue using and developing on and for X? It is and remains -the- standard way for UNIX applications to get a graphical user interface. X is also largely platform independent. If I want to run my X server on system A and the applications on system B, it is the X protocol that separates my desktop from my applications. My display is not necessarily directly connected to the computer I run my applications on.

  • Re:Context please? (Score:4, Insightful)

    by Anonymous Coward on Tuesday March 12, 2013 @02:16AM (#43146299)

    His point wasn't that they are inexperienced with X, it's that they are inexperienced with software development in general. It's fairly common for inexperienced (though otherwise skillful) programmers to decide to re-implement a huge chunk of code in the hopes to make it better. It rarely works out very well.

    That assumes that X11 was universally well-designed in the first place. It also assumes that experienced developers have been maintaining it (they all got laid off in the 1990s and nothing happend for 10 years). And it assumes that X11 is full of stuff that people care about, when much of it is legacy and not used by modern applications.

    Eventually someone is going to have to suck it up and do something. Even if it was removing all the crap and making an "X12".

  • Re:Context please? (Score:4, Insightful)

    by Randle_Revar (229304) <kelly.clowers@gmail.com> on Tuesday March 12, 2013 @02:51AM (#43146409) Homepage Journal

    The comments from e.g. Dave Airlie, Kristian Høgsberg, Daniel Stone are even better, IMO, since they are Xorg/Wayland guys. Though Aaron is certainly a graphics guy, just at a higher level on the stack.

  • by rahvin112 (446269) on Tuesday March 12, 2013 @03:08AM (#43146473)

    And the misinformation is already being quoted as fact. Per the discussion on G+ where the Wayland developers responded to the FUD from Canonical, AFAIK none of the claimed missing feature of Wayland are even missing. In fact from what I was reading tonight touch input has already been implemented in Wayland and the work on virtual keyboards and such is being worked on (Canonical hasn't even started this part of MIR).

    Given the Canonical didn't even talk to the Wayland project it's not surprising but what Canonical claimed is nothing but FUD. They are trying to back justify their decision, but they didn't even bother to learn about Wayland before creating a bunch of false assumptions and FUD. Unfortunately that FUD is so far out there now that people are even quoting it as fact.

    Go to G+ and google MIR, you'll find a number of threads where the Wayland developers point out that Canonical outright lied about what Wayland could/couldn't do. The linked post basically points this out, they didn't talk to Wayland, they didn't find out about wayland, they just wanted something they had total control over.

    In the end they'll end up with a monster that eats coder time to no actual benefit where had they devoted those developers to Wayland they could have had more input into Wayland AND helped it get here quicker. It's a sad story of Shuttleworth desire for total control, even if what he ends up with is unmaintainable crap that's dropped after 2 versions and fragments the community in the interim. All because he wants a tablet/phone OS in a very crowded space.

    It's ironic, if he wanted Android so bad, why didn't he just fork Android. The reality is he doesn't have the resources to do what Google did. Instead he's going to create a Frankenstein blend of (half-assed) Wayland, X and SurfaceFlinger that will likely have all the worst of each and none of the benefits.

  • by FranTaylor (164577) on Tuesday March 12, 2013 @03:10AM (#43146481)

    what are the benefits of Wayland for the end users. No benefit for users. What can I do with Wayland that I couldn't do with Xorg?

    You can have a display server with 10% of the code and 10% of the bugs!

    TELL US MORE about how pruning dead code and reducing the number of bugs is not a benefit for the user.

    TELL US MORE about the benefits of maintaining DEAD UNUSABLE remote code! WHY should users put up with the performance issues associated with years and years of X lossage?

  • by mvdwege (243851) <mvdwege@mail.com> on Tuesday March 12, 2013 @04:36AM (#43146757) Homepage Journal

    I have done all you say is impossible, with little to no issues. So now we have competing anecdotes, how about next time you provide some actual data to go with your FUD?

  • by FranTaylor (164577) on Tuesday March 12, 2013 @05:01AM (#43146865)

    X itself goes to great lengths to avoid being affected by latency.

    How about this quote from Keith Packard:

    ---

    One of the design ``mistakes'' of X11 exacerbated by its very success is the extensible type system called atoms (as in the Lisp systems from which it was derived). This has been heavily used in the interclient communications protocols used between applications (primarily toolkits) and window managers. The InternAtom function requires a round trip to provide agreement among clients on a small (32 bit) handle for a string. A modern design would almost certainly avoid round trips entirely by using cryptographic hashes (or just using strings everywhere). Unfortunately, it is very hard to retrofit this

    ---

    X was designed when CPUs ran at 8 MHz, the network ran at 10 Mbit and the display was black and white.

    In 1985, the network was FAST and the computers were SLOW so latency was not so much of an issue.

    Today the network is SLOW and the computers are FAST and so network latency rears its ugly head.

    I have to ask: if it works so great, why does nobody use it? Why doesn't it work with sound? Why can't I use it for my Windows or OSX apps like I can with VNC?

    If X makes it too hard to write a decently performing application, THAT ALONE is good reason to dump it

  • by GauteL (29207) on Tuesday March 12, 2013 @05:02AM (#43146869)

    The great thing about Linux is... You can simply choose to not use Ubuntu. BAM! Problem solved.

    Not quite. Linux users do rely on a large amount of other users making it viable and interesting to make applications, drivers, etc. for the platform. The more Ubuntu succeeds in gathering Linux users to their Ubuntu OS, the smaller the rest of the Linux market becomes.

    Canonical wants to go their own way in order to distinguish themselves from other distributions in order to gather more Linux market share (larger slice), rather than attempt to cooperate with others to grow the market (larger cake). Canonical does not have the resources to compete with Apple, Google or Microsoft on their own, so their fragmentation of the Linux base will only result in a net loss for Linux and free software.

  • by eennaarbrak (1089393) on Tuesday March 12, 2013 @05:36AM (#43146995)

    Ubuntu is convinced that they have to spend all their development resources on reinventing the wheel because Wayland isn't an internal project (but it could be).

    You simply invoke "NIH-syndrome" without clarifying why Canonical is making the wrong decision in this specific case. You are implying that it is *never* a good decision to do things in-house when an existing solution (however imperfect) is already available. But looking around at technology companies that are successful (Apple, Google, Amazon), it is obvious that your reasoning is flawed, as all these companies have, on occasion, done things in-house when existing solutions were already available.

    Clearly, the decision to do something in-house or not is more complex than following a stupid rule of thumb.

  • by serviscope_minor (664417) on Tuesday March 12, 2013 @05:59AM (#43147073) Journal

    Wayland is being developed by the same people behind X.org.

    So? Xorg is boring. It doesn't need to change all that fast. It's not new and interesting. Careful improvements is far less funt than nuking it and starting again. Just because they develop Xorg doesn't mean they're not hopelessly biased for other reasons.

    99.9% of the people lambasting Wayland have no idea what it is, what it's going to accomplish or how entrenched it already is.

    Then enilghten us.

    Wayland is the future.

    I hope not.

    It will take some time to get everything in place but it's already in play and many other project from the kernel to window managers are already moving towards implementing the plumbing necessary.

    WTF? You really have no clue. The kernel side stuff is just for graphics and works as well with X11 as anything else. Secondly for "plumbing" there is no plu8mbing for window managers. WMs are replaced entirely by the compositor. None of the X11 WMs will work. It's a completely different architecture.

    Given this is slashdot I'm not particularly surprised by the ignorance,

    Is the irony intended.

    nor am I surprised that no one has bothered to actually learn about wayland and what it is but frankly the hatred is a bit surprising given the total ignorance. People hate software they know nothing about because they are afraid of change, it's just silly.

    Change is not always good, especially when it's for the better. Wayland looses us network transparency. So far all the counters to this tell me that (a) I'm lieing and I don't really want it (b) it can be hacked on after a la VNC and (c) it can be hacked on at the toolkit level providing a delightful level of inconsistency.

    Those are not good arguments. (a) is particularly insulting.

    You think they would at least try to learn what it is given that almost all the people behind it are the same people behind X.org.

    And these are the user-hostile numpties who have come up with some really dubious decisions of late.

    For instance, nixing the "kill active grab" keystroke, because it shouldn't be needed because it's caused by buggy programs. I mean WTF? How is that any comfort when some buggy program locks up the X server again and I have to switch to a console and try to kill it (if I can even find which one).

    And they've decided that the Wayland policy is to have client side decorations "because it will allow consistend window decorations". The last point is an outright lie---it cannot be explained by incompetence. So in addition to having inconsistent decorations (from each toolkit, unlike now), hung windows will be immovable.

    But that's OK because that's an application bug and apparently those don't ever happen. Especially not to developers.

    Oh and then there's the persistent lie about X11 on Wayland. It's a lie because it's a half truth intended to decieve which probably makes it even worse. Of course you can run X11 on it. You can run X11 on a dead mouse, OS9/8/7/6 OSX, Win95, DOS Win 3.11 and modern Windows. That doesn't mean the user experience will be integrated and it doesn't mean that thw Wayland programs get the same advantages.

    I wouldn't mind Wayland nearly so much if the creators (who also apparently had a lot to do with X) weren't such blantant FUD machines. If they're demonstrably lieing about a system they know in detail then it gives the feeling that they're really messing things up.

    That and they've taken a really user hostile turn recently.

    The thing is, thatWayland could be quite useful for multiplexing consoles and X11 sessions (if you care about graphical transitions between them, which I manifestly do not). But it's being sold very forcefully as a replacement general windowing system and due to the design lacks a number of really important feautres. If I have to choose between fancy transitions to ctrl+alt+f1 and remote windowing, I and many other slashdotters would choose the latter in a heartbeat.

    And that is why there is so much hate for Wayland here: it's been earned.

  • Re:Anything but X (Score:4, Insightful)

    by mvdwege (243851) <mvdwege@mail.com> on Tuesday March 12, 2013 @06:17AM (#43147137) Homepage Journal

    In other words, all you can do is parrot decades old grumbling.

    Alex had more sense than you.

  • by 21mhz (443080) on Tuesday March 12, 2013 @07:11AM (#43147319) Journal

    I'm almost inclined to cut Canonical some slack here. Almost. I don't think NIH is such a horrible thing if the project in question still isn't anywhere near usable. In a situation like this, it's entirely possible that a team of paid, full time, competent programmers could start over from scratch and quickly surpass the original project. Given equal talent and effort, the Cathedral is always more efficient better than the Bazaar.

    This is showcased nicely by the previous projects near-single-handedly developed by Canonical: Bazaar (heh; there were actually two iterations of it, both ultimately crap) and Upstart. Interestingly, neither of those was clearly NIH-motivated, they just were not satisfactory from the engineering standpoint as later, better projects have demonstrated.

  • Re:Context please? (Score:2, Insightful)

    by jedidiah (1196) on Tuesday March 12, 2013 @09:53AM (#43148257) Homepage

    > They managed to create a much more efficient display engine

    You couldn't tell this by running an actual Mac.

    This cult of Apple admirers would be amusing if they weren't potentially so destructive. They seem to blindly follow Apple without actually having any real experience with the product. They just swallow the usual media hype wholesale and then go on to replicate Apple's mistakes.

    They also don't understand how an X server relates to the rest of MacOS.

  • Re:Context please? (Score:5, Insightful)

    by Dahamma (304068) on Tuesday March 12, 2013 @02:49PM (#43151563)

    This cult of Apple admirers would be amusing if they weren't potentially so destructive. They seem to blindly follow Apple without actually having any real experience with the product. They just swallow the usual media hype wholesale and then go on to replicate Apple's mistakes.

    They also don't understand how an X server relates to the rest of MacOS.

    Broad generalizations and assumptions never helps your point. I have worked on kernel and userspace graphics and video overlay drivers for Linux/X11, so I know plenty about how X11 and display servers in general work.

    I do have a Mac. I also have a PC running Windows, and one running Linux (and honestly at this point VMs on these machines running more than one OS at a time - with fairly good unity/coherence modes, as long as we are talking display servers and window managers).

    Some of us use computers as tools for accomplishing what we want at work, home, entertainment, etc and have no interest in blind Apple admirers OR blind Apple detractors (or Microsoft, or Linux, or any other software for that matter). Why does technology have to be like politics to some people?

    (oh, and to your other comment, MacOS is more "UNIX" than Linux is, and is certified SUSv3 (for what that's worth, but it's worth more than your opinion on the matter).

Organic chemistry is the chemistry of carbon compounds. Biochemistry is the study of carbon compounds that crawl. -- Mike Adams

Working...