Servo 0.0.1 Release
162 points by FedericoSchonborn
162 points by FedericoSchonborn
To many more!!
For now, we are adopting a simple release process where we will use a recent nightly build and perform additional manual testing to identify issues and regressions before tagging and publishing the binaries.
This sentence is the mark of mature developers -- doing the simplest thing that works, even if it sounds silly, and spending their brain points elsewhere.
Some simpler pages load insanely quick that it feels unreal, but the lack of scrollbars and middle-click to scroll (Windows) makes it quite unusable. But if it can maintain this sort of speed in the future as it becomes more capable, it will be a very impressive engine.
What website(s) are you testing with? I can't seem to get it to be any faster than Firefox on sites like computer.rip. (Also, it seems like my comment did not post correctly from within Servo, curious.)
I'm getting vibes of when I started using Mozilla Phoenix Firebird Firefox. I have hazy memories of being at that point on Windows. I was doing webdev for Internet Explorer in that age, and I was about to get my first computer (running... Gentoo), when I was using a shared Windows desktop with my brother.
I don't remember the exact timeline, apparently Mozilla had tabs before Firefox. I remember downloading non-official milestone releases of either Mozilla or Phoenix, how much it sucked in comparison to Internet Explorer (it was much slower and ate memory, IIRC), but showed a lot of promise, so I switched to it, enduring many pains.
I think Servo is at a much earlier stage (I don't think you can't switch to it), but...
I don't remember the exact timeline, apparently Mozilla had tabs before Firefox
Yes there was a tabbed browsing extension you could install in 0.95 or 0.96 of mozilla. I was a big fan of that early on. IIRC you had to drop that into the filesystem yourself as there was no store for extensions yet.
how much it sucked in comparison to Internet Explorer
I never had that expirience. Wherever I could I would download Mozilla and later the early builds of Phoenix. My main machine was already Linux back then so there was no IE. It never feld too slow.
but showed a lot of promise, so I switched to it, enduring many pains.
You must have had one weird machine that it was so bad for you.
Oh, maybe if you were not using them side by side... but Internet Explorer was pretty fast, and I remember Mozilla being slow and hogging more memory. I could be misremembering, though. But also, at that time, a lot of stuff required Explorer. (In 2011, I still had an instance of having to target IE6!)
My recollection is that, at that time, choosing Firefox was a statement. At some point, development ramped up, IE continued to stagnate, and a lot of people switched to Firefox because it was... better. But then Google pushed hard for Chrome and the iPhone came out and... well, flash forward to today...
Just how I remember it:
The prevailing version of IE at that time (ca. 2000–4) felt not particularly fast, nor did Mozilla Seamonkey feel limber either. Features in Seamonkey like tabbing and a different stability profile than IE proved useful as differentiators. Phoenix, Firebird, and then Firefox became marginally faster and easier to proliferate (esp. on friends' computers thanks to broadband being nascent in the U.S. then and slow).
I used a bunch of more boutique browsers on the UNIX-like environments: Konqueror, Galeon, and Epiphany. These — especially Konqueror — materially felt like lightspeed over the rest. It was no wonder that Apple leaned on KHTML for Webkit.
Gosh, I feel old now. I even donated a rather substantial amount of money as a student to Firefox to help it get off the ground. The experience really was that dismal back then. Remember this: https://blog.mozilla.org/press/2004/12/mozilla-foundation-places-two-page-advocacy-ad-in-the-new-york-times/?
I seem to recall a time when "number of browser tabs open" was an accolade and legitimate reason to spring for 8 GB of RAM instead of 4 GB thought fine for the era. This was around 2008–2009.
In $CURRENT_YEAR
I hear people justify higher RAM models for this reason. If anything I think the memory pressure per tab is worse now as JS bloat has grown faster than RAM prices and sizes have shrunk. The only improvement now is that browsers have gotten better at "dehydrating" inactive tabs, but not all web pages/apps respond well to being dehydrated
So, does this mean that, at least for some limited uses, Servo is usable already? Last time I checked it out, I didn't get that impression...
And if it's not because you want people to use the software already... what's the point of creating releases?
It's purely good to release early: release early, and release often. Set user expectations and note that the releases are buggy and at best alpha quality. It's like anything: the more releases you make, the better your release process becomes. Waiting until the software is "ready" to be released to make the first release only delays the shaking out of problems.
Waiting until the software is "ready" to be released to make the first release only delays the shaking out of problems.
Quite right, and importantly, it leads to design defects that need to be rethought in light of those problems getting more deeply woven into the architecture.
It is usable for some limited cases. I can read news, Wikipedia articles, blogs, and many other websites that aren't JS "apps".
I'm starting to think that we should separate web browsers from "webapp runners".
In a way, Electron is the right idea. It's just it's poorly implemented.
But browsing the web and running applications are completely different things. I'm not sure how "forking" the road would look, but I think it's worth thinking about. We're all very used to having such distinct things as tabs in the same application, but I suspect getting away from this model would help.
Yes, I kind of wish Silicon Valley companies hadn't overtaken the web standards process, and XHTML "profiles" would have been a thing.
Then web browsers that support web pages but not "apps" would have a clear feature set to implement, and perhaps website authors would think twice before adding something that increases the requirements.
I suspect that the vast majority of complexity lies in CSS and JS, neither of which would really be covered by XHTML.
XHTML profiles did cover scripting and styling, and capabilities and preferences in general. Natually, it was also eXtensible.
The XHTML Mobile profile contains a scripting module, a style sheets module, embedded object module, and many other modules.
One problem is that the ends are generally very clear, but the middle is much more muddy. Consider an article about a CSS feature that includes a Codepen playground so that the reader can experiment. The article is clearly "the web", and Codepen is definitely "applications", but what about the combination of the two?
More generally, I don't think the web would have succeeded had applications not been an integral part of it. I watched a presentation from Håkon Wium Lie, and he had screenshots from the earliest days at CERN where people were already controlling cameras using links in their browser. The web is interactive documents, and interactive documents are essentially very simple applications. I don't think there is any way to limit the complexity of websites without also limiting the inherent creativity of the web.
Yes, I don't know exactly how it would have ever worked out. And some sort of forms and interactivity is clearly good, exactly. So it's hard to draw a line.
I guess the alternate history version is that Flash, Java applets, .NET ClickOnce or something else had ever delivered a good experience. It's really sad in my opinion that nothing was ever able to compete with shoehorning a browser into running interactive apps.
I guess I just don't see what would have been different if, say, Flash had ended up the predominant tool here. You'd still have had a lot of complexity embedded in browsers, you'd still have had the full range of simple sites and complicated applications, with plenty of sites straddling the divide, and you'd still have developers overusing complex tools when simple ones would do. The only difference would be the underlying technology.
I also don't see what's particularly sad about this. Like I said, right back in the early days of the web, people were building applications out of it, long before JavaScript or Flash came on the scene. Now more of those applications happens in the browser rather than on the server, but I don't think that changes the core idea much. Like I said, where you have interactive documents, you have applications.
The huge problem is that the web is now controlled by Google and Apple. The web is one of the most valuable computing achievements we've had, and it's dying.
In my opinion, that's because the scope of browsers widened so much that even one of the companies with most resources in the world, decided to abandon their browser engine because they decided it's not worth their money!
I think it's all lost now. And now we're moving to even more controlled platforms like Google Play Services-enabled Android and iOS. Basic things now need a device controlled by Google or Apple, and programmable computers are slowly disappearing.
...
Unless governments start sponsoring an open platform or things like the DMA begin to have an effect, Google and Apple will wield a power too big for companies to hold. I don't think they'll do such terrible things with that power (then I guess at some point governments would take this seriously), but it's not right.
I think that's a very simple picture of the status of the web that glosses over a lot of the more inconvenient details. For example, the most controversial proposal of the last few months, dropping XSLT, was originally proposed by Firefox developers, and Google engineers have been trying - and largely failing - to push back against the rate of change of the JavaScript language. There is far more work being done now on interoperability and standards than for most of the history of browser development. As a web developer, I don't think it's at all true to say that the web is dying - it has rarely been easier to write software that works for all browsers, and the web as a platform is becoming increasingly powerful and useful.
You mention the lack of programmable platforms, but the web is in many ways the ultimate programmable tool. Click one button in the toolbar, and you have access to a REPL, a basic IDE, a debugger, and an editor for the page you're looking at right now. And working with the web has consistently become easier over time. Ten years ago, modals and accordions were the sort of things you pulled in poorly-maintained, inaccessible jQuery plugins for. Now they're built into the browser for you.
In my experience, when people talk about how the web is dying, it's because websites have become slower, harder to use, with more popups and larger downloads, etc. I think that's all true and it's a big issue. But to come back to the original point: none of that would have been any different with Flash or some other technology. The only way it would have been different would have been if the web wasn't interactive at all - if we'd have ended up with a protocol like Gemini. But if that had happened, none of the good parts of the web would have developed either, and it would have been relegated to yet another internal document system used by a handful of academics at universities.
The Google/Apple monopoly is also bad, but it also has nothing to do with the state of modern web browsing. Hell, if Google had their way, most websites would be much slimmer, because they'd have delegated all their advertising and user tracking to Google and it would have been built into the browser. Google's attempt to do that (AMP) failed fairly conclusively, despite being surprisingly effective at reducing web bloat.
I agree that it would be great to see more governments and institutions take the web-as-commons seriously and invest in it as a platform. And I agree that there are real concerns to be had over the state of web browser stewardship and web bloat. But I strongly disagree with the idea that the web is dying, or that the complexity of the web platform is some grave danger we should be actively fighting against.