9 ms·
APIs that will transform the Web in 2013
- indiecore 14y agothe yield keyword is going to be very cool
- kozmikyak 14y agoHaving very effectively used yield-like functionality in a few languages, I too am looking forward to it. In Python it's allowed me to structure certain data-consuming and data-emitting functions in a way that makes both reading sense and storage-usage sense.
- tjholowaychuk 14y agoagreed! generators will be nice
- vitno 14y agoYou are forgetting webRTC. (peer 2 peer data connections)
- ianb 14y agoI think WebRTC is going to be more of a 2014 technology – it's still pretty raw as a technology, and even more so as implements, going into 2013.
- hayksaakian 14y agowhy do you say that? several groups looking to replace flash with webrtc based video chat (opentok) and they already have some basic support.
- est 14y agoI'd rather hope Chrome open API for its XMPP connection. Which is currently used for Chrome Sync. You can build p2p video, audio, multicast, real-time notification, etc. wrapped in a industrial level message channel.
- highwind 14y agoOnce thing I still have hard time understanding is Chrome App Store and Google Chrome Apps. I'm guessing it's something akin to Adobe Air, but has there been any success stories with Air? Also, I feel like Chrome App Store goes against the idea of open web.
- bryanlarsen 14y agoBesides Air, there was Mozilla's Prism/WebRunner/Chromeless, Fluid for OSX and several others. What advantage does Chrome Apps have other those previous failures?
- maccman 14y agoA user-base of 350 million people, and Google's backing :)
- ianb 14y agoMozilla's Prism/WebRunner/Chromeless are all basically defunct, and Chrome Apps aren't really the same as those anyway. Chrome Apps and Firefox OS Apps are basically the same – and in both cases it's adding some extra APIs that web pages can't normally get access too, and an optional packaging format, and a little application-related metadata. Firefox Apps are a bit more cross-platform, as they look a bit more like native apps on normal desktop systems and on Android.
- jan_g 14y agoCorrect me if I'm wrong, but isn't Chrome App Store just a fancy collection of links to various websites that also supports user comments and rating? edit: nevermind, I somehow managed to confuse it with Chrome Web Store.
- jbigelow76 14y agoI'm tempted to go make fake HN accounts just so I can come back and up vote this more. I can understand, if not personally endorse, the need for "apps" on smart phones where access to functionality like the accelerometer is not available through APIs used to create browser based apps, but Google's insistence on trying to push app stores in the browser will just lead to pointless balkanization of the open web.
- fudged71 14y agoNo mention of Web Intent API?
- jordanwallwork 14y agomy thoughts exactly: http://jordanwallwork.co.uk/2012/11/my-most-anticipated-upcoming-web-api-web-intents/ http://jordanwallwork.co.uk/2012/11/my-most-anticipated-upco...
- purephase 14y agoThis is cool. I didn't realize this was coming out of the Android camp and into general use.
- fudged71 14y agoI was ecstatic when I'd first heard of it! The main draw I have towards Android rather than iOS is the ease of use of the interaction between apps. If the web can have the same benefit that I see on mobile, then there could be some explosively innovative interactions possible. Web-to-web interactions right now are mostly just copy-paste and saving things to your desktop to upload again. It would be incredibly innovative to share more complex data structures between sites, like events, contacts, videos, etc.
- jQueryIsAwesome 14y agoIt would be really cool, but the reality is that websites that uses similar kind of data are usually direct competitors and work as closed gardens (Facebook vs Google+, Vimeo vs Youtube, Bing vs Google). But I do hope that at least multimedia tags will be able be dragged and accepted by other websites (drag a video tag to YouTube, drag a pdf to dropbox, etc)
- fudged71 14y agoHmm, I see it as the opposite. Why wouldn't Facebook want to register themselves as a sharing output for images and text? They want us to share as much as possible, and this would just make it easier for users. Otherwise, you'd see sharing menus across the web with "Google+, Twitter, etc." on them and no Facebook. Not a position I think they would want to be in.
- czbond 14y agoGreat list - thanks. Finally .... no more callback hell. (yield) Vitno, thanks for the heads up on webRTC. I can see that having a dramatic impact too.
- grinich 14y agoSurprised Stripe isn't on here ;)
- hartleybrody 14y agonot that kind of API
- grinich 14y agoWell, maybe. Alex works at Stripe. And wrote about having a browser API for payments. http://blog.alexmaccaw.com/one-click-signups-and-purchasing http://blog.alexmaccaw.com/one-click-signups-and-purchasing
- kt9 14y agoReading the title I thought this was about REST APIs. I was wrong.
- calpaterson 14y agoHard to see how ECMAScript 6 will transform the internet when everyone writing Javascript for the public web still has to support IE8.
- AdamTReineke 14y agoWrite the code in ES6 and compile it to ES5, then use Modernizer or some equivalent to detect which runtime is supported by the client's browser and serve the appropriate script.
- zanny 14y agoOr just ignore IE8 and assume the "revenue loss" from anyone running that browser not being able to navigate your site is worth the loss of headache. I always wonder why it is an assumption IE support is mandatory. As others in this thread have pointed out, Chrome / FF now have a combined 700 million and I'd assume between 50 - 70% of the browser marketshare. At some point, using backwards broken nonsense to support outdated browsers becomes a financially unfriendly situation, especially when you can't reproduce a lot of the newer goodness (like html5 localstorage or websockets) in older versions of IE.
- chimeracoder 14y ago> I always wonder why it is an assumption IE support is mandatory. Because for many, the use of IE is mandatory. Depending on what service we're talking about, a lot of the IE traffic is going to come from people who work at companies that require the use of their approved/installed software. Every time there's a post about IE there are few people who come out of the woodwork to comment about how they only use Windows + IE at work, and then Firefox/Chrome at home, even on Hacker News of all places. It's easy to forget on here that Windows still has the dominant market share, and for many people who currently use IE (for even part of the day), switching or upgrading is out of the question. If you don't support IE, you're not encouraging these people to switch - you're encouraging them not to use your service at all.
- 14y ago
- jfaucett 14y agothe 2 best new E6 features for me: yield and default params -- finally :)
- STRML 14y agoAbsolutely. Yield will transform node.js syntax, which is fantastic. Proxies are really interesting - think about how knockout.js syntax might change if it could hook directly into property changes on regular objects.
- lyaunzbe 14y agoEven after ES6 comes out, how long do you think it will take for node to adapt it? I'd love to finally be able to use python style generators.
- dotborg 14y agoauthor didn't mention users at all.. maybe because they won't see any difference? maybe except css filters, but we are yet to see webgl being used in production environment where mass audience is the target those things are really cool from coder POV, but as an user.. sounds like increased CPU usage and nothing else.
- tjholowaychuk 14y agoweb components are still very flawed, they completely ignore a slew of problems, and still promote tons of global variables which is just a major no no. Some of the features that come along with the web component spec are fantastic, but the way they're doing it is quite wrong IMO, and it cant really be done right from a browser point of view really, the bulk of this should still be user-land, I find it a little scary that browser vendors are already "accepting" these sort of half-complete concepts as what's coming next, we dont need more broken tools
- dreamdu5t 14y agoAgreed. It's frightening to see people embrace web components while completely ignoring the usability issues, and adopting the attitude of "develop first, think about API design later."
- paulirish 14y agoThe folks behind web components are super open to feedback. I'd be happy to introduce you so you can provide some feedback on where the spec should go to better address the pain points you have.
- tjholowaychuk 14y agoDo you know how they'll tie into ES6 modules? (if at all), that's definitely a big concern for me, I'd like to never see a global again as far as libraries go. Anyway yeah that would be great! I totally understand the end goal of having something usable out of the box, I'm just not 100% convinced browsers can even really get away with that. There's still fundamental issues like dependency mapping and manifests etc that are purely user-land anyway, so at the end of the day they wouldn't really be useful without some sort of registry/packaging mechanism anyway
- st0p 14y agoNone of this will work in IE7, IE8, IE9 or IE10. This will transform absolutely nothing on the web for many years to come. I can understand people getting hyped up about cool new tech like this, but the article has way too much hyperbole to take any of it seriously.
- rhizome 14y ago"Predicting the future" is a negative-click signal for me.
- nicholassmith 14y agoIf people work it so there's graceful degradation then it'll transform plenty of things for a large segment of the internet using public. Disparity isn't great but if there's developers pushing features out for the other main browsers it'll hopefully light a fire under the IE team.
- BadDesign 14y agoSo what?! How much time it takes to install a different/newer browser? I tell you - less than a minute. There.
- abk 14y agoYou'd be surprised by how many people won't do that. In my opinion, it's your job as a designer / developer to make sure your product works for as many people as reasonably possible, and not expect users to jump through hoops (no matter how small) to use it.
- magicalist 14y agoI definitely agree (to a point...I don't test with IE6 or IE7 anymore unless budget and time is specifically allocated for them), but "make sure your product works for as many people as reasonably possible" is not to be confused with "make sure your product works the same for as many people as reasonably possible". I'm happy to serve static images to older browsers with an unintrusive note telling them what they're missing and how they can get it.
- hntldr_com 14y agoPer article these 5 APIs: CSS Custom Filters Autocomplete API Google Chrome Apps ECMAScript 6 Web Components
- drivebyacct2 14y agoUh, where's WebRTC?
- transfire 14y agoES6 may well be the death of Javascript. They've managed to turn Javascript into Java, which means web programming is about to turn into a buggy nightmare.
- scotth 14y agoHow do you feel they've done that?
- taitems 14y agoEven if what you're saying is true (which it isn't), it's completely optional. Don't want to use `let` scoping? Use `var` instead! etc.
- bcoates 14y agoLanguages don't work that way. Anyone touching the language has to deal with the whole thing. Tooling ES6 code is more complicated, learning the language is much more complicated (it was nicely minimalist compared to other mainstream languages). At least they mostly stuck to mucking with the syntax--saying they turned it into Java is crazy until they introduce Java's broken threading.
- ianb 14y agoIt doesn't look anything like Java. There's a class statement, but it's not something dramatic, just some syntax around normal JS prototype patterns. The JS2 proposals years back started to look a lot more like Java, but those never went anywhere.
- aneth4 14y agoSeems to me that ES6 adds a lot of useful constructs. Java is usually criticized for adding features too slowly and promoting bloated codebases due to an inflexible language. I don't see how this is anything like Javascript or promotes buggy programs.
- danbeam 14y agolol, my favorite part was when you thought a totally hacked together, duck-typed, uncompiled language would produce less buggy code than Java!
- superasn 14y agoCSS filters are already in Chrome and Safari, and allow advanced styling as as blurring, warping and modifying the color intensities of elements. Isn't it funny that the first browser to implement these "filters" was IE 4.0 [1]. And at that time using any of these filters was a bit frowned upon and amateurish. Now suddenly everyone is gung-ho about it and calling it the API that will transform the web in 2013. [1] http://msdn.microsoft.com/en-us/library/ms532849(v=vs.85).aspx http://msdn.microsoft.com/en-us/library/ms532849(v=vs.85).as...
- timmclean 14y agoExcept IE's filters were an unrelated proprietary technology with an ugly syntax: filter: progid:DXImageTransform.Microsoft.Blur(pixelradius=2); compared to filter: blur(2px);
- hfz 14y agoSimilar to how IE's box model was deemed incorrect until fast-forward today and people realized that their box model was simpler and easier to use compared to the standard. See: http://paulirish.com/2012/box-sizing-border-box-ftw/ http://paulirish.com/2012/box-sizing-border-box-ftw/
- yuhong 14y ago
- louischatriot 14y agotldr version: http://tldr.io/tldrs/50b6a7a7bb22039977000ced http://tldr.io/tldrs/50b6a7a7bb22039977000ced I enjoy writing client or server Javascript (yeah, really!), but some of these new features (such as generators) are something I very much look forward to.
- angersock 14y agoI think the funniest part of this is expecting web folks to write good GLSL code. That's going to be a laugh riot. Especially, since, you know, they can't make useful guarantees on things like available uniforms, varyings, samplers, etc.
- azakai 14y ago1. First I heard about GLSL custom CSS filters. Is this on track to being standardized? I suspect Microsoft would never support it, for example. 2. Chrome Apps? What does that have to do with the web? It's a Chrome thing, not a web thing (those apps don't run anywhere else). I guess the author is a Chrome fan based on the end of the article though so that figures. 3. No WebRTC, and no WebGL? Perhaps ironic I mention it given my point #1, but these two are going to make huge strides in 2013, and their effects are much larger than nicer CSS filters.
- bcoates 14y agoIsn't WebGL still a disaster that bears an uncanny resemblance to a C .h file mechanically transformed into a browser API?
- azakai 14y agoNo, not by any reasonable account.
- bcoates 14y agohttp://www.khronos.org/files/webgl/webgl-reference-card-1_0.pdf http://www.khronos.org/files/webgl/webgl-reference-card-1_0.... http://www.khronos.org/files/opengles3-quick-reference-card.pdf http://www.khronos.org/files/opengles3-quick-reference-card.... Look at the sources to http://media.tojicode.com/q3bsp/ http://media.tojicode.com/q3bsp/ Notice the clunky transitions between Javascript and some degenerate form of C where everything is a member function of some hairy stateful singleton global object. Oh, and all that matrix math isn't part of WebGL, the API neither provides graphics-specific utility functions nor general-purpose math operations. You have to roll it yourself in Javascript. You know, the way you have to write your own layout engine to write a 2d webpage? This is all before we even get to the shader, where they just threw up their hands and said, "fuck it, let's have them send GLSL source as a wire protocol" Also, security problems, weird device whitelist/blacklist, Microsoft's reasonable "hell no" stance, etc. Taking WebGL seriously is sucking the air out of the room and preventing progress on satisfying the demand for sane 3d on the web.
- zobzu 14y agoChrome != the web. I'll take webapps that works in ANY browser over "webapps" that works with Chrome ONLY any day of the 2013 year. Embrace extend extinguish the web Google? Thanks but no thanks!
- Shamanmuni 14y agoGoogle is proposing and very actively working in the WHATWG and both WebKit and V8 are open source. So you can easily access the specifications for these APIs and see how they implemented them. It's the absolute opposite of "the Microsoft way". They even hired Ian Hickson, who pretty much is the "web standards guy". It's not Google's fault that the other browser vendors are not as fast as them. They will eventually catch up and we'll all have a better web. I'm really glad the situation has changed so much since the days of "IE 6 only" and later "we all have to wait for the slow learning kid, IE". For a web developer these days are truly exciting.
- zobzu 14y agothey're not standard APIs, they're Google's API. Having an open source product doesn't mean the process is open, or the APIs are standardized. The reason why they're not standardized and that nobody pushes for a standard too is simple. Most of them are very much tied to Chrome itself, instead of being tied to features, and have no sense being used by another browser. This looks like a much more sane API: https://wiki.mozilla.org/WebAPI https://wiki.mozilla.org/WebAPI Incidentally, it comes from the guys who actually changed the "IE 6 only" to what it is today, incl. the chrome dominance that resulted from it...
- Void_ 14y agoI'm a web developer, but keeping with these seems like a cat-laser scenario. These APIs change every day, and knowing about them before they are usable in the wild feels like a waste of time and brain space. Anybody feels the same way too?
- olalonde 14y agoHopefully with Chrome and Firefox auto-upgrading in the background, browser compatibility will become less and less of an issue. Also, most of those APIs are decorative (like CSS filters) and shouldn't entirely destroy the experience for browsers that don't support them (it just won't look as good).
- mcot2 14y agoI think flexbox is bigger than any of those. The new spec is already in WebKit and the Firefox nightlys as well as Opera. Advanced CSS layout is vitally important for creating web apps with the nice benefit of eliminating almost all extra markup that was used for layout.