Show HN: Sorting 50,000-element array in web browser using HTML5 web worker
afshinm.github.io
afshinm.github.io
Might want to mention that in the title.
It's wiser to limit the work your CPU has to do rather than hide this work behind high-level non-deterministic structures like WebWorkers like no work is done.
Don't get me wrong, I'm not saying that WebWorker are useless. I just say that really costly operations are rare if you know your DS and complexities.
Oh, by the way, you usually don't have to implement theses datastructures yourself. Even javascripts have [collections](http://www.collectionsjs.com/).
On my machine with that particular 50k length array it takes 7ms if I just do "a.sort();".
After all, it is the fastest sorting algorithm when your collection is already sorted ! Moreover, it has very nice properties which make it suitable for a lot of concurrent operations.
(Note: I am not advocating to use insertion sort!)
When advocating using a new tech (or "new", as the case may be), one should find an example where the new tech is truly the best solution. (And if there is no such example, then I wonder why you are advocating it)
If they had used a half-decent sorting algorithm (say... sort(), which on the array they give runs an absurdly short length of time) they wouldn't need to use web workers for this.
There are all sorts of things where web workers are useful and better than alternatives. This is not one of them.
Webworkers have been here for a while now...
Excuse me if you didn't find it useful.