7 ms·
Without wishing to appear negative, I do find it odd the way that a technical crowd react to these online demos. Would you have found this impressive if it was
by MrScruff 13y ago
Without wishing to appear negative, I do find it odd the way that a technical crowd react to these online demos. Would you have found this impressive if it was a compiled executable? Because this is just the same thing, just running slower because it's on the web. It's not technically novel in any way.
If you're curious about the algorithm, then take a look at the presentation 'Advanced Character Physics' by Jacobson. They were used in published games at least 13 years ago and are very widely known and implemented.
I get that there's some novelty to this stuff, but we already know that asm.js can achieve performance within a factor of 2 of compiled C code. Since we know that exists, I don't really see what's interesting about seeing each individual piece of code ported to work on the web.
- Swizec 13y agoYes, I would find it impressive. Problem is, there's about a 5% chance I'd ever get to downloading and running it. Especially since it very likely wouldn't be compiled for mac or linux (the only systems I have) and I very very likely wouldn't feel inclined to compile it myself. That's why we love javascript demos. We're lazy sods.
- MrScruff 13y agoIn which case the impressiveness must be coming from the lack of domain familiarity. It's basically getting excited about a game physics 'Hello World'. I remember a good few years ago a colleague writing a fully textured 3D cloth sim that would remotely unfurl on your screen, displaying a given message on the cloth. He used it to display goatse.cx to me, which I wasn't very pleased about. This was developed in python and took him a few hours over a weekend as far as I remember, which seems about right.
- Swizec 13y agoMy familiarity with game physics ended somewhere in the early 00's when I went fully Linux. Since then the most visually impressive game I've played has been Diablo3. Intuitively I still think games look like counter-strike and when I see anything better, I am impressed. But you missed the more important point in my post: if this wasn't in a browser, I'd never see it.
- davidw 13y ago> In which case the impressiveness must be coming from the lack of domain familiarity. One of the nice things about a site like this is being exposed to domains that one is not familiar with. I for one know beans about physics simulations like this, so it is interesting. Also, as someone who recalls what Javascript was like 10 or more years ago, yes, I am impressed with what it can do now.
- MrScruff 13y agoOne of the nice things about a site like this is being exposed to domains that one is not familiar with. I for one know beans about physics simulations like this, so it is interesting. I suppose this is true, though the same could have been said for flash before Javascript's recent strides, and I don't recall anyone being particularly excited about similar demos implemented in actionscript.
- coldtea 13y agoProbably because: 1) HN wasn't that big (or existing) at that time. 2) Now you can also see the code, it's not in some opaque swt archive. 3) You don't need a proprietary Adobe IDE to code it (yes, you could do without for Flash too with some bizarro third party tools. Talking about the mainstream). 4) Everybody hates flash anyway.
- jdolitsky 13y ago^^
- alan_cx 13y agoLack of domain familiarity? Of course experts are not impressed by things they are familiar with. But usually experts are pleased that something has bought interest to people not familiar that domain. For example, people are still blown away by the sight of a far away galaxy in a telescope. Astronomers love this, they don't suggest such wonder is "odd" because they are used to it.
- JabavuAdams 13y agoIt's true, stuff like this was covered with free sample code in Game Developer magazine 10-15 years ago. OTOH, realize that many readers here were probably not programming then. Programming is the archetypal field where everything old is new again. The antidote -- dig up all those 1-2 day projects you did 10 years ago that you think are stupid / too simple, and re-package them for the kids.
- romaniv 13y agoFirst, people have done similar things in Flash and Java applets before. At the time, both of those technologies allowed for running things inside the browser. Second, I am pretty sure that if someone have done this in another language (Python, Ruby, F#) and provided a platform for easy delivery and sandboxing, the most common response would be "we don't need this, this is stupid".
- shmerl 13y agoI often get the same feeling. The fact that it's running in the browser on one hand is an amazing achievement of those who brought canvas and etc. to the web. On the other hand the idea itself can perfectly run as a standalone demo, and the browser doesn't really enhance it in any way (if not making it slower).
- tracker1 13y agoYeah, but you're not thinking big picture here.. now we get a whole new generation of "OBVIOUS_IDEA with SIMPLE_IMPLEMENTATION in a browser" patents to role through... a whole new generation of free money.
- ozh 13y agoIMO, don't over estimate the size of the "technical crowd" vs the entire readership here
- deleted 13y ago[deleted]
- berkut 13y agoThis is what I don't understand - a lot of these WebGL demos as well are largely equivalent (minus some pixel shader stuff that couldn't be done back then) to OpenGL stuff that was being done back in 2000.
- coldtea 13y agoWhat exactly don't you understand? People wanting to port stuff to new domains? Excitement about the web being a feasible platform for running 3D stuff? People learning about old stuff for the first time and doing experiments with the language available to them?
- rrreese 13y agoThis and your other comment make me really sad. For everything that is posted here on Hacker News, there will be many people who are familiar with it, who have domain knowledge. In a child comment you refer to this as "a game physics 'Hello World'." People who aren't familiar with this sort of thing find it really cool, hence the impressive number of upvotes. These online demos are accessible in the way some exe just isn't. So condescending, dismissive, and of course the top voted comment :/
- MrScruff 13y agoIn a child comment you refer to this as "a game physics 'Hello World'." But that's what it is. Would you be impressed if I posted a rails CRUD app? So condescending, dismissive, and of course the top voted comment :/ I'm sorry you think that. I don't mean to be critical of the developer in any way. I was merely remarking that from my perspective, just being on the web isn't enough to be novel or interesting.
- JanezStupar 13y agoWhat rrreese was trying to say is that HN is not here solely for your convenience. Your comment became "THE" comment in this thread. And I would like you to ask yourself the following: "Is the world a better place with or without my comment?"
- MrScruff 13y agoMy comment directed people to a paper that explains the underlying maths behind this well established game physics algorithm. This is much more useful than looking at an implementation of the same thing in my mind. So, I would say yes.
- davidw 13y agoThe paper link was definitely good, but as a humorous way of gauging the tone, if you stood back and read the rest of your comment with the Comic Book Guy voice, would it sound in character?
- buro9 13y agohttp://xkcd.com/1053/ http://xkcd.com/1053/ It's how people learn, and you can choose to help them and share in the learning as even the teacher gets to learn from a student.
- tsahyt 13y agoIn fact, I'd like it more if it was a compiled executable. A couple of weeks back I did something vaguely similar out of boredom on a sunday afternoon in C. It's quite simple, technologically speaking, but a lot of fun to play around with. Same here, it's not a great achievement but it's nice to look at. However, the whole fun originates in the responsiveness of the application and this being a browser implementation is horribly slow and unresponsive. Yes, we can do nice things on the browser today, but I have yet to see anything that ran fast enough to be useful while not eating all my CPU power in one big lump. So, yes: I'd enjoy this a lot more if it was native code. And by the way, this is nowhere near a factor two of a compiled code implementation.
- vanderZwan 13y agoIt's not so much the novelty as the presentation that makes the difference, and I mean that as a positive thing. Ignore the code/algorithm itself for a moment and look at everything else: we see the code first and the results underneath. It's inherently open-source and fairly accessible, because it's JS, and everyone is at least a little bit familiar with the language. Lastly, it can be tweaked and recompiled on the fly so playing with the code has never been easier. I don't recall actionscript working like that. As far as I know, the closest other languages (that don't compile to JS) can come at the moment is something like the Go Playground, and in comparison the best it can do is a text-based Game of Life[1] or a non-interactive generated picture[2] (which can be combined to a graphical version of GoL I suppose). And even something as minimal as the Go Playground turns out to be pretty awesome when discussing bugs/ideas about Go on the internet, so even there it helps and I wish more languages had something like it. [1] http://play.golang.org/p/6j5z_RNr0q http://play.golang.org/p/6j5z_RNr0q (by Jan Mercl) [2] http://play.golang.org/p/yOn9pQwEzJ http://play.golang.org/p/yOn9pQwEzJ (taken from the Go Tour - http://tour.golang.org/#35 http://tour.golang.org/#35 )
- Wintamute 13y agoCongrats you're an experienced advanced/game/physics developer, whatever. This is childs play to you. I'm a lowly web developer, my day-to-day involves HTML templates, Photoshop mockups and HTTP requests ... so I find this sort of thing done on a platform I'm totally familiar with novel and interesting. I see no reason to apologise for that.
- MrScruff 13y agoNobody is asking you to apologise. I'm just saying that we already know what the web is capable of as a runtime. Why wouldn't this have been highlighted as a flash demo? Or as a java applet?
- coldtea 13y ago>Nobody is asking you to apologise. I'm just saying that we already know what the web is capable of as a runtime. Who is that "we" you're talking about? Because it's obvious that the parent does not "already know" and neither do many people. People see trivial stuff like this simulation all the time, not knowing anything about the domain or past developments, and are inspired to learn more, or change it and adapt it to create something else, etc. It would a sad world, yours, where everybody should delve in domain specific tomes to learn about prior art and theories and such, instead of also being able to give a quick glance at some web page and see something he didn't knew about. Not to mention that "having been done before" and "it can be done in Javascript, on the browser, with adequate performance, and not that difficult code, and you know what, you can adapt it for your web project too" is a different thing altogether.
- Wintamute 13y agoDefinition "apologise": defend, explain, clear away, or make excuses for by reasoning. By criticising the response to the link, rather than anything to do with its technical implementation, you are asking people to apologise, either that or inviting agreement, or indeed disagreement. Unless you were hoping for no response at all?
- philjackson 13y agoAs already stated it's partly about the convenience. Click a link, there it is, source code et al. The other reason is that most of us are familiar with the online world a large amount of us will have written JS and therefore have an emotional investment of some sort in it. Thanks to the recent JS engine/browser wars the possibilities have come on so far that it would have been almost inconceivable to have seen this five years ago in the IE dark ages so seeing it live like that is fascinating and gives an endorphin-fuelled sense of 'how far we've come'.
- Stranger2013 13y agoBut it is a scripting language! And it can draw in 2D in real time. And it is deployed to a very popular fat-client over the network. And it even looks like decent frame rate. On my quad-core machine. What is there not to be impressed with in 2013?
- JabavuAdams 13y agoTime to re-implement all of these in JS, now that most people don't enable Java applets: http://www.red3d.com/cwr/steer/ http://www.red3d.com/cwr/steer/
- jasonwocky 13y ago> I get that there's some novelty to this stuff, but we already know that asm.js can achieve performance within a factor of 2 of compiled C code. My guess is that even if this is common knowledge (which I doubt), lots of people still don't know what that means. Demos like this showcase that. As to JS vs. AS or Java Applets, well, among the "technical crowd" I'd wager that JS is more popular than those other two platforms. Simple as that, perhaps?
- ErrantX 13y agoThe advantage is.. you can see the code, see what it does, play with it... and see the results instantly.
- tripzilch 13y agoImagine if HN and comp.sys.ibm.pc.demos really would have the same audience. So everybody'd be like "oh, cloth simulation. we did that in the 90s", as well as, "... in javascript, even! ... just like scenerdude303 did 8 years ago, except he didn't have a canvas-element back then, web browsers were still make of wood and he had to get up at 5am to write the code in the snow when it was still fresh, type with his bare feet and be crawling uphill both ways, ah, why when I was a young programmer ...", etc. Except that many people would also be supportive. Cool cloth demo, it works well! Nice touch with the interactivity and the right-mouse cutting action. Because those two make it fun to play with, and slightly more interesting than just the simulation by itself. Because, and this is something that the actual HN audience should (optimally) also understand, writing a small demo like this is an act of creativity. That should be stimulated no matter what, because--actually I just remembered from some other discussions[0], there's really a load of people here that don't understand this: When making art, there is tremendous value in doing what has been done before. It's called practice, and the value is having the experience of having done something yourself. It's also rumoured to make perfect. It only gets you so far to just know the "why?" and the "how?". To get anywhere you also need to make something. Because only from the vantage-point of being right in the middle of that mess, you can truly decide what your personal take on it, your influence will be. And if you can't, just go right back to practice :) [0] it was a series of InkScape tutorials called "vector game art for programmers" or something. many people were complaining "but he's only showing how to make these characters and objects", that the author didn't explain why the circles go where they should and what a proper shadow should look like. only by people that didn't actually do the exercises, of course. there's no magic involved. just practice. if character faces are too complex, go draw fruits. all fruits. and then remake the rest of pac-man's sprites in vector! (in the snow, uphill both ways, etc)
- thesash 13y agoWhen making art, there is tremendous value in doing what has been done before. It's called practice, and the value is having the experience of having done something yourself. This is so true, and so often overlooked in the rush to "innovate" or "disrupt" or compete with those around us. The most creative creations are an act of play, and it takes a lot of practice to get that good at playing.
- DanBC 13y ago> Without wishing to appear negative One way that would have avoided sounding negative, and which (I HOPE) would have got you a lot more upvotes, would have been to say something like "This is a nice demo! Here's some further reading for these algorithms {CITE}, and here are some other implementations if different languages {CITE}", with a bit of discussion of where you used them and the problems you solved. Personally, I'd much rather see someone's implementation of something that yet another {article I don't like}.
- deleted 13y ago[deleted]
- romaniv 13y agoI don't think anyone genuinely finds this impressive. People simply up-vote because it's written in JavaScript and allows for some immediate clicking gratification. Which, I agree, is sad. (And will be vehemently denied.) I wouldn't really mind if this phenomenon didn't drain attention and resources from other technologies.
- whoisstan 13y agoIts refreshing to see this is in a scripting language that works on any browser. Take it as inspiration and do something better.
- joaquinzrr 13y agoPlease let us be impressed by whatever impresses us.
- fnordfnordfnord 13y agoWithout wishing to kick even more sand in your face, I thought it was pretty cool. I was as impressed with codepen (which I hadn't seen before) as I was with the demo (oh, they really can do some pretty neat stuff in javascript these days). It's like this video: http://www.youtube.com/watch?v=GcDshWmhF4A http://www.youtube.com/watch?v=GcDshWmhF4A Where a guy builds a binary adding machine out of wood and marbles. I've seen them before. I've even seen nicer ones (more expertly constructed). His little counter / adder isn't really a feat in any way. I could even show you how to build a vastly better one with a CPLD. Yet, I am still impressed, and amused when I see that someone has built one. Wood, Minecraft, Little Big Planet, anything else. But, don't stop being a hater. I even got something useful from your post 'Advanced Character Physics' by Jacobson. which is interesting, and which I probably wouldn't stumble across on my own.
- pistacchioso 13y agowell, this sounds like a pc critic in the 70s. "what's new with this thing called personal computer? I see nothing new that couldn't have been done on a mainframe it my university five years ago". but yes, the differ de is that you have now that power in your bedroom. similarly, i guess that most people visit more web pages each day than they download programs, so yes, new-old possibilities in the browser ARE a relevant thing.