Boris Smus
smus.com · Personal blog · on HN since 2011
Boris Smus, a Google engineer, writes about web audio, WebVR, JavaScript frameworks and HTML5 game development.
What HN saysHN links it for its Backbone versus Ember comparison, which one commenter calls the best summary found, and for his web audio and VR work.
36HN people shared it
12linked it in comments
30stories submitted
427story points
6 months agolast shared
2011people per year2026
Most-shared posts
- 1Ultrasonic Networking via Web Audio8 people · 65 points · first shared 2013 · 16 comments on HN
- 2Let's get physical(units)4 people · 6 points · first shared 2012 · 1 comments on HN
- 3Backbone vs Ember3 people · 150 points · first shared 2012 · 40 comments on HN
- 4Responsive WebVR, headset optional (2015)2 people · 5 points · first shared 2015 · discussion on HN
- 5Forward polyfills: How the web should work2 people · 4 points · first shared 2012 · discussion on HN
- 6Consolidating mouse, touch and other pointer-like event systems with pointer.js2 people · 3 points · first shared 2012 · discussion on HN
- 7Use OAuth2, Facebook and Twitter Auth in Chrome Extensions2 people · 3 points · first shared 2011 · discussion on HN
- 8Developing Multiplayer HTML5 Games with Node.js1 people · 108 points · first shared 2011 · 17 comments on HN
- 9JavaScript Screen video capture for Chrome OS1 people · 59 points · first shared 2011 · 8 comments on HN
- 10Frank Herbert by Tim O’Reilly1 people · 4 points · first shared 2020 · discussion on HN
- 11Really Simple Social Syndication (RSSS)1 people · 3 points · first shared 2013 · discussion on HN
- 12Loading Large Assets in Modern HTML5 Games1 people · 3 points · first shared 2011 · discussion on HN
- 13The Burnout Society by Byung-Chul Han1 people · 3 points · first shared 2025 · discussion on HN
- 14A mobile web application tech stack1 people · 2 points · first shared 2012 · discussion on HN
- 15Interactive touch laptop experiments1 people · 2 points · first shared 2013 · discussion on HN
What HN people wrote when they linked it
niftich · 2015-11-13
Pre-6.0 Android permissions aren't granular and are 'take it or leave it' approved at first install. Some apps install services that run at startup. This would make for a rather excellent monetizatation/interactivity strategy for a chat app, which already has all the necessary permissions for 'normal' operation (think Snapchat LIVE or Moments).
Sonic networking in action:
[1] http://smus.com/ultrasonic-networking/
[2] https://gigaom.com/2014/06/26/chromecast-will-use-ultrasonic-sounds-to…
JackC · 2012-03-22
That was my first question too. This is the best summary I found:
http://smus.com/backbone-and-ember
It links to a much longer IRC argument between their respective evangelists -- the whole thing is an interesting read if you like that sort of thing. But the takeaway is that Ember is pretty opinionated about how to connect views to subviews to templates to models to controllers to data stores, and backbone pretty much lets you/makes you do it yourself. So backbone might mean you're writing a lot of boilerplate, and ember might mean you're locked into decisions you don't like and slowed down by cruft you don't need -- same old tradeoff.
I'm excited to give ember a try, because my initial response to backbone was "wait, where's the rest?" I was expecting the level of handholding of, like, Django. So it'll be interesting to see what that's actually like in practice.
pimgeek · 2026-05-15
I highly recommend this interactive timeline of Invention and Innovation cards, which visualizes the network of interdependency relationships. It features a clean interface, consistent visual style, fast loading times, and intuitive interaction design, while being informative and engaging.
* Time Span: 2,000,000 BCE to 1993 CE
* Mobile-Friendly: presented as a stack of cards on mobile devices for easy finger-browsing
* Card View: whether viewed on desktop or mobile, each information card is uniform sized, with consistent illustrations and a concise summary of a historical event.
* Timeline View: on desktop devices, you can temporarily hide the cards to view a networked timeline of historical invention milestones directly (you can zoom in/out to have better view)
* Hightly Open Source: all data --- including card information and networked timeline data --- is stored in a publicly accessible Google Spreadheet, accompanied by a GitHub repository containing the executable code used to generate this website (though I have not tested it myself)
[1] Info About the Project (by Boris Smus, the Author)
https://smus.com/visual-chronology-science-discovery-v2/
[2] GitHub Source of "Asimov's Chronology of Science and Discovery"
https://github.com/borismus/asimov
QuantumNomad_ · 2026-04-05
Game developers sometimes make the “randomness” favor the player, because of how we perceive randomness and chance.
For example in Sid Meier’s Memoir, this is mentioned.
Quoting from a review of said book:
> People hate randomness: To placate people's busted sense of randomness and overdeveloped sense of fairness, Civ Revolutions had to implement some interesting decisions: any 3:1 battle in favor of human became a guaranteed win. Too many randomly bad outcomes in a row were mitigated.
https://smus.com/books/sid-meiers-memoir/
Some threads on randomness and perceived fairness in video games can be found here on HN too, for example https://news.ycombinator.com/item?id=19399044
The original link being discussed in that thread is 404 now, but archived copies of the original link exist such as for example https://archive.is/8eVqt
HPsquared · 2021-01-21
The book "Seeing like a State" expounds on this topic significantly, using scientific forestry as an example. The "recipe for failure" [0]:
1. Look at a complex and confusing reality
2. Fail to understand all the subtleties of how the complex reality works
3. Attribute that failure to the irrationality of what you are looking at, rather than your own limitations
4. Come up with an idealized blank-slate vision of what that reality ought to look like
5. Argue that the relative simplicity and platonic orderliness of the vision represents rationality
6. Use authoritarian power to impose that vision, by demolishing the old reality if necessary
7. Watch your rational Utopia fail horribly
[0] https://smus.com/books/seeing-like-a-state-by-james-scott/
paulirish · 2014-01-08
A webapp using the Web Audio API adopting the same sort of approach: http://smus.com/ultrasonic-networking/
handsomeransoms · 2013-12-02
A little while back, somebody a cool demo of ultrasonic networking (using HTML5 Web Audio!)
http://smus.com/ultrasonic-networking/
DanI-S · 2013-10-31
For anyone having trouble believing that their computer can network using sound, give this demo a try:
http://smus.com/ultrasonic-networking/
jonobr1 · 2013-05-07
I find this to be a very relevant article on render times between various contexts: http://smus.com/canvas-vs-svg-performance/
Along these lines I've written projects in canvas only to realize later I should've written in SVG. One of the aims of two.js is to afford a canonical API for the developer. So the idea is that if you're rendering lots of particles and not doing any manipulation to individual particles, canvas or webgl will render faster than svg. Two.js aims to make it easier to test and switch around between the contexts. However, I should caveat all of this with two.js is very nascent...
markerdmann · 2011-07-31
Here are a few of my favorite crowdsourcing links. They're not all directly related to Mechanical Turk, but you may find them interesting.
Research on crowdsourcing complex tasks, such as writing articles (open source):
http://smus.com/crowdforge
A company that adds an automated quality layer and/or automated peer review layer:
http://www.crowdflower.com
Crowdsourced translation:
http://www.mygengo.com
Audio transcription through MTurk:
http://www.castingwords.com
Crowdsourcing scientific research:
http://www.hypios.com/
sxp · 2021-05-11
I thought this was going to be about adding spatial audio processing [1] to recorded music. One of the reasons recorded music is uncanny is that the act of listening to something with stereo channels piped directly into your ears is vastly different than listening to the same music in a room as it is affected by the room's dynamics.
There is a lot of work being done in VR research labs to simulate realistic audio by using the correct transfer function when playing the audio track. If done properly, listening to prerecorded audio of a concert would be indistinguishable from a live concert. But doing it correctly requires dynamically adapting the audio stream for the user's head & ear shape and ear position with respect to the audio source.
Synthetic spatial audio that passes a Turing test has been done in the lab but we probably won't see it in consumer devices for a few more years. VR headsets and Airpods are slowly getting there, but they don't simulate the user's ears.
[1] https://smus.com/spatial-audio-web-vr/
nikisweeting · 2021-04-21
There was a whole wave of interest in this space in 2014. I believe @kategeek did the first easy-to-use library with Quietnet ;) https://github.com/Katee/quietnet
Some other material on the subject:
- http://www.whence.com/minimodem/
- https://quiet.github.io/quiet-js/
- https://courses.csail.mit.edu/6.857/2014/files/05-li-lynch-zhao-covert…
- https://www.ghacks.net/2014/01/09/ultrasonic-communication-chat-client…
- https://smus.com/ultrasonic-networking/
- https://arstechnica.com/tech-policy/2015/11/beware-of-ads-that-use-ina…