Please don't post comments that are dismissive of new work. Acerbic swipes poison the atmosphere, and we want HN to be a place where discussion of new work can thrive.
It's of course fine to ask what a project is for or how it addresses a specific concern, criticize substantively, and so on, but there should always be a baseline of respect for someone who tried something and put it out there.
It isn't new. I've seen this thing at least twice before. I seem to remember last time it even said that it couldn't interact with normal torrent clients.
Your comments make it clear that you know quite a bit in this area. Instead of venting annoyance, why not teach readers some of what you know? If you did so without snark you could add a lot of value to a thread like this. People are obviously interested in the topic or they wouldn't have upvoted the story to #1.
I can't teach anyone anything. I have neither the knowledge, skill, temperament, or desire. People will continue to implement things in a browser, poorly, and there is not a damn thing I can do about it.
> or they wouldn't have upvoted the story to #1
The cynic in me says that happened because this is "X in Y lines of javascript, in the browser!". The one thing that is guaranteed to catch the attention of people here is reinventing the wheel--poorly.
All you need to do to teach readers is to post comments with real information in them. If you can't or won't do that, you should at least spare everyone the comments without real information in them.
Yes, because it requires a BEP (http://www.bittorrent.org/beps/bep_0001.html) to be added as an "official" extension to BitTorrent. Eventually it will happen. I'd hope that by posting it again to HN, someone might add it to their list of things to do in their Infinite Free Time.
adding a BEP will not fix webtorrent, it will still be incompatible with µTP / TCP transport and even more importantly the DHT. It's shoving the responsibility of being compatible onto everyone else because browser environments are inherently crippled, they do not provide access to such simple things as TCP/UDP sockets and thus can never be truly interoperable with protocols that run on them.
It smells a bit like embrace-extend-exterminate to me, even if it's not intentional, it currently is a natural consequence of "claim to do X in a browser" without access to the underlying primitives necessary to do X in a standards-compliant manner.
In my opinion browsers need to provide thinner abstractions over posix apis (with the appropriate sandboxing and opt-in where necessary).
>It smells a bit like embrace-extend-exterminate to me, even if it's not intentional, it currently is a natural consequence of "claim to do X in a browser" without access to the underlying primitives necessary to do X in a standards-compliant manner.
Sure, so don't support it. If no one supports the protocol or the app, then it will die. That's an acceptable outcome to some. I'm not saying anyone has to support it, I don't even have any vested interest in it. It's just an interesting project and I've spent far too long today on HackerNews defending it when I could be working on my own projects.
To me, it looks more like "Adding Bittorrent into Firefox is pretty much impossible, where can we start instead?"
>In my opinion browsers need to provide thinner abstractions over posix apis (with the appropriate sandboxing and opt-in where necessary).
NaCl & Emscripten should get you some of the way there.
I already have many choices of client. All of which can correctly interact with each other. A new client come along and can't do that. Suddenly every other client is broken. Please, this client is broken and needs fixing.
They interact with each other because of BEPs. This client is a prototype and if it's successful you'll have a whole new source of peers.
And before PeX was a BEP, before Vuze had a Mainline DHT plugin, it didn't interact with some clients either. Hell, even DHT [1] had to go through the same BEP process. Do you expect all software to start out complete?
By that logic though you can say anything is BitTorrent if it gets a BEP. IPX/SPX networking only? No problem, just needs a BEP! ;) You must admit it's certainly different to start off with a completely incompatible client, vs just a new feature. (I do wish WebTorrent well though.)
Do you have any insight into the BT dev community as to whether WebTorrent is likely to be picked up in other clients?
WebTorrent isn't trying to embrace and extend BitTorrent. It is impossible for code running in a browser to speak any of the existing BitTorrent protocols, so as a last resort they are running over WebRTC.
PDF.js allows for an inline/controlled display of a PDF, where you can control the interaction in a browser. Given, this is of limited use, and there are other solutions.
That said, the browser will not return to only acting as a display conduit with no interactivity despite what some people would like to see...
If you want a better platform than the browser for server-driven interactive applications not requiring you to install extra applications, then build one. To date, there hasn't been a better, more open option.
The stronger argument for pdf.js is that you get to leverage the Javascript sandbox instead of having to sandbox a native code binary (or worse, support a plugin interface and hand over the keys to the system).
I think I know where you're coming from with the numerous amounts of JavaScript heavy software being popularised.
However I think you would have more success in A) gaining an understanding of what someone is trying to achieve / what problem they might be trying to solve and B) sharing your likely very valid point of view / experience with others if you change the way you communicate your reply.
The way you worded your reply could be hurtful to the person that came up with the idea and spent their time to try and create something from it.
I'm sure your intentions are good, probably a mix of wanting to educate people, share your experiences and show heartfelt frustration with certain types of software trends or implementations.
I think it would be more constructive and less potentially hurtful if you focused on talking about how you could see issues with using X to do Y and perhaps offer a suggested alternative path to look at if they're interested.
Tldr; If someone is demoing their ideas or product - friendly constructive criticism and feedback is very important and valuable. Keep comments positive and your words will have more of an impact.
I don't really care that much about my tone, especially in this case. My constructive criticism is not all that constructive: Stop. As I said elsewhere is is not a new idea but it is still a bad idea and a broken implementation.
Sad but true. The rate at which software quality is decreasing is increasing all the time. e.g. even though I haven't upgraded my phone's OS for over a year (I have tried, but the newer versions are always broken in some important way!), Google pushes out updates to Play Services that I can't block that cause crashes, dead batteries, broken apps and features, etc.
This is why, more and more, I gravitate toward not only FOSS software, but stuff like Emacs that Just Keeps Working. It seems like hardly any software developers care anymore about making things that actually work. Imagine if modern cars broke as often as most computer software does. (And as cars come to depend more on complex software, they are going to get less reliable--just as they were getting to be very reliable.)
Modern JavaScript engines can compile the code to an intermediate form (or even to machine language) which may allow performance roughly equal with compiled languages like C.
While JavaScript is probably slower and use much more resources, it's not always the case.
I would also argue that bit-torrent doesn't take up much resources, at least when only seeding a few files, I guess you would have to seed thousands of files for performance to matter.
I know what javascript engines tout in their feature lists. I also know how javascript heavy websites/webapps behave. They don't inspire great confidence.
The IRC-like chat on Social Savannah will run up your browser memory and until you run out and crash. pdf.js (in firefox), as mentioned, starts sucking down cycles and bytes with just intel reference manuals open.
It's of course fine to ask what a project is for or how it addresses a specific concern, criticize substantively, and so on, but there should always be a baseline of respect for someone who tried something and put it out there.