52 karma · joined May 1, 2009
Single-threaded is desired behavior in the case of web ui and of Node, which is multi-process c/++ under the hood and JS responding to message queues.
It's pretty simple. Functions block. The messaging queue that triggers function calls in event-driven, setTimeout, XHR, talking to another JS runtime cases doesn't. So yes, you have to be careful to not lock up your entire server by processing images with JS function calls in the same runtime.
But the huge benefit you get out of this tradeoff is that you don't ever have to worry about two things trying to change something at the same time. Everybody is locked until your functions are finished and with async that doesn't typically take very long.
The synchronous lib calls in Node are mostly for convenience. I use them all the time when doing simple file I/O stuff where I just want to read something from a file, do something to it and stick it in a var or a new file. In a server or more complex application, however, you always want to use async callbacks.
- a javascript developer
jQuery had the DOM covered and is in fact now redundant itself and could be managed with a much, much lighter lib that spends a lot less time normalizing assuming you're dropping support for browsers even Microsoft no longer covers.
LESS and SASS were good for vars and should have stopped there. Standard browser support is finally in the works for that. But you certainly don't need both and for FFS you're just making an unmaintainable styling mess using all of the other features, especially (noob, please), nesting which needlessly adds to selector count like nobody's business.
We do NOT need to ASP/JSPify the DOM. Keeping content/structure code separated from the behavior code was the reason proper front end devs were running circles around Java/ASP.net devs. What the fucking fuck is the point of adding your own custom tags to HTML, which already had a perfectly serviceable approach to binding behavior to it? Or creating an XML-like syntax you mix/match directly with your JS?
Silicon valley noobs, please. I had lazy loading scrollable tables that could handle 50,000+ lines of data back when Google Docs was choking on 2,800. This shit is not hard. Stop wining and spend the time you apply to learning frameworks with next to no core technology understanding to actually learning the technology you have before you start adding pointless layers that solve nothing on top of what's already there and you'll be shocked at how not-hard it can really be.
Or let's not. Let's load a massive freaking ridiculous CSS and JS library by the Twitter devs, because, yes, surely they know through their work with a site that essentially boils down to a single text area, a great deal about handling complex layout and UI concerns.
AMD for a web app? Okay, I can see it, certainly for non-trivial SPAs , which NOT EVERY SITE NEEDS TO BE. But first, how complicated is this web app? If not-very, why were people struggling with linking scripts in the right order? Why did they need to link so many damn things to get the job done in the first place?
And FFS, it's just "data-binding." Calling it "Two-way" is redundant and makes you sound like a jackass who doesn't know what the fuck is actually happening. And it's just a pattern. And not a very hard one to implement.
MVC and MV? are great. Really, whatever the fuck keeps data separated from an app layer from your DOM-handling is fantastic. Frameworks that make it easy to follow such patterns in a way that all developers can become familiar with are great too. But sweet JavaScript Jesus why won't they just stop there?
We used to laugh at Java developers. What the fuck are we doing to ourselves? Why haven't I gotten an honest to god core web technology or native JavaScript question at an interview in like 3 years? We have indeed, ruined JavaScript.
Thanks a lot assholes.
I do gather that a lot of DB admins that aren't very political about it do in fact respect MS SQL for some of its more competitive features. I'm just wondering if there's any reason to start with it for a low-cost startup scenario that could ultimately result in a non-trivial but fairly straightforward DB schema with potential for being used by very large institutions (universities at the largest I'd imagine).
I'm ignorant enough (primary experience is in web UI) that I'm leaning towards postgresql because I like the way the Django guys think and they seem to dig it. Also the no-nonsense license and yes, the not-profit-motivated thing is nice when backed by a strong core group which I gather postgres has.
But do the enterprise DB solutions handle severely massive amounts of scale better for some reason? Or is it more that they're culture-friendly to the sorts of companies that typically handle DBs of this nature?
Not long after it came to that we got IE9. The first !@#$ing IE browser in over a decade to finally support the exact same DOM spec Navigator did in 2001.
So no, as long as there are multiple browsers and platforms no one entity controls JS. Google did create V8 which we all like a lot because it kicks ass and any time we want more performance we can bind to C but it's not the only non-browser option for running JavaScript. We've got Rhino and whatever the hell Gnome Shell runs and god knows how many other platforms I don't know about (just learned Gnome Shell scripts via JS yesterday)
So no, Google has no leverage to force any major changes in JS. They have made several attempts to introduce their own cheesy language paradigms that look/act a lot more like Java (because they are Java whores) and yes the down-compiled languages are all the rage (you are a fucking MORON if you use coffee script professionally is all I'm going to say on that), but Google most certainly does not and never will have more than a little bit of influence on JavaScript's design nor incentive to because it has a vested interest in preserving its core features so that we don't "break the web."
The argument that it needs to be smaller is hilarious. It is miniscule compared to Java or C# and runs with a fraction of the syntax. And why did the author link to an article on Dart in reference to this topic? Dart is nothing more than a butthurt segment of Google devs trying to replace JS because their largest endeavors with JS have demonstrated that they're completely incompetent at it. Their spreadsheet app craps out when rows reach the 10 thousands and they have no clue how to architect. They just write procedural JS when they're not trying to mimic Java with it.