Top all-time · #2092
Robin Ward
Personal blog · eviltrout.comprogrammingwebgames
Robin Ward writes Evil Trout Inc., a personal blog at eviltrout.com about programming, web and games. Since 2012, 38 different Hacker News readers have linked it 61 times, most often “Ember vs. Angular”. It is still writing: the last post was on 2026-08-21, and you can follow it by feed.
Evil Trout Inc. produces and designs games, including The Roottrees are Dead and The Incident at Galley House.
Most-linked posts?
- Ember vs. Angular7 people · 7 mentions · first linked 2013-06-20
- Adding support for search engines to your JavaScript applications5 people · 6 mentions · first linked 2013-06-20
- Why Discourse uses Ember.js4 people · 5 mentions · first linked 2013-02-11
- Ember without Ember Data4 people · 5 mentions · first linked 2013-03-23
- We finally did something about [Ember on] Android Performance4 people · 4 mentions · first linked 2016-02-25
- Building the Roottrees Are Dead2 people · 2 mentions · first linked 2025-01-29
- Infinite Scrolling that Works2 people · 2 mentions · first linked 2013-02-16
- Building Galley House2 people · 2 mentions · first linked 2026-07-28
- /2013/02/16/infinite-scrolling-that-works.html2 people · 2 mentions · first linked 2016-04-17
- The value of a thousand little features2 people · 2 mentions · first linked 2017-04-13
What Hacker News says?
Aggressive virtualization, especially if it also involves removing stuff that scrolled out of view, also bogs down some screen readers (particularly Windows ones) that have their own representation of the web page. Speaking of both Discourse and screen readers, before my stint at Microsoft, I wrote a Windows screen reader, which tried to detect client-side page navigation by watching for the URL (minus the fragment)…
Comment linking /2013/01/06/turbolinks-and-the-prague-effect.html.html
on “Solid.js feels like what I always wanted React to be”Submitted Why Discourse uses Ember.js as a story · 267 points
HN discussionIt is strange to see Angular labeled "large" and "monolithic" here, when it was blasted for being too small and simple by one of the Ember guys ( http://eviltrout.com/2013/06/15/ember-vs-angular.html ). I have suffered trough JEE which is/was really humungous, and Angular is really tiny in comparison.
Comment linking /2013/06/15/ember-vs-angular.html
on “Angular 2.0”Submitted AngularJS versus Ember as a story · 207 points
HN discussionhttps://eviltrout.com/2013/02/16/infinite-scrolling-that-wor...
Comment linking /2013/02/16/infinite-scrolling-that-works.html
on “Stop Infinite Scrolling”Submitted TIS-100: An emulator for a CPU that doesn't exist as a story · 80 points
HN discussion> Search-engine optimization is a large part. It doesn't look like it is too difficult to add search indexing support. http://eviltrout.com/2013/06/19/adding-support-for-search-en...
Comment linking /2013/06/19/adding-support-for-search-engines-to-your-javascript-applications.html
on “Progressive Enhancement Is Dead”Submitted How our users exploited concurrency and how we fixed it as a story · 60 points
HN discussionIt’s a myth that if you use a client side MVC framework that your application’s content cannot be indexed by search engines. In fact, Discourse forums were indexable by Google the day we launched. http://eviltrout.com/2013/06/19/adding-support-for-search-en... They are probably a good case to follow, if you want to see what people's experiences with SEO for JS-based services are.
Comment linking /2013/06/19/adding-support-for-search-engines-to-your-javascript-applications.html
on “Progressive Enhancement Is Dead”Submitted We finally did something about [Ember on] Android Performance as a story · 45 points
HN discussionEmber has bad performance on Android[0]. The Discourse team had to write their own Virtual DOM renderer to work around this[1]. [0] https://discuss.emberjs.com/t/why-is-ember-3x-5x-slower-on-a... [1] https://eviltrout.com/2016/02/25/fixing-android-performance....
Comment linking /2016/02/25/fixing-android-performance.html
on “Angular 4.0.0 Now Available”Submitted Adding to Discourse using EmberJS Part 1: Routing and Templates as a story · 45 points
HN discussionThanks for the follow up. A lot of good info in there. Btw, I just saw this article from the Discourse team on this same topic and was wondering what your thoughts are https://eviltrout.com/2016/02/25/fixing-android-performance....
Comment linking /2016/02/25/fixing-android-performance.html
on “The Chrome Distortion: how Chrome negatively alters our expectations”Submitted Ember without Ember Data as a story · 44 points
HN discussionI really liked Discourse's approach to infinite scrolling[1], it updates the URL as you go with the History API's replaceState() function so you can safely navigate away from the page without losing your position. [1]: http://eviltrout.com/2013/02/16/infinite-scrolling-that-work...
Comment linking /2013/02/16/infinite-scrolling-that-works.html
on “Google’s suggestion for a better infinite scroll?”Submitted Turbolinks and the Prague Café Effect as a story · 29 points
HN discussionI can repro it. The lag is only of a few milliseconds, but enough to capture a screenshot, so it is jarring for sure. This is on first page load - http://imgur.com/4kB93ZX And this is on clicking through to a post - http://imgur.com/i7B3HOE When I hit back, I get the first page's loading symbol again. Here's another weird thing: Sometimes, when I click from the list of posts page through to a post, scroll down, and…
Comment linking /2013/01/06/turbolinks-and-the-prague-effect.html
on “Why Discourse uses Ember.js”Submitted I've been programming since I was 7 as a story · 20 points
HN discussionYeah. This blog post sold that for me: https://eviltrout.com/2015/06/29/an-emulator-for-tis-100.htm... Particularly this bit: Them: “So, it’s a game about programming…” Me: “Yes, it’s so much fun!” Them: “But I program all day.” Me: “Me too!” Them: “The last thing I want to do when I come home is program again” awkward silence Them: “You’re nuts.”
Comment linking /2015/06/29/an-emulator-for-tis-100.html
on “The Hacker's Manifesto (1986)”Submitted Infinite Scrolling that Works as a story · 10 points
HN discussionThere are probably things the web developer can do to minimise memory consumption, though there isn't an obvious solution. That said, the problem of losing your reading position can be solved using something like history.replaceState(). As the user scrolls, update the history entry with a reference to the current reading location. Then, when the browser restarts, the website can know where the user was previously at…
Comment linking /2013/02/16/infinite-scrolling-that-works.html
on “Pagination with rel=“next” and rel=“prev” (2011)”Submitted Getting Started with ES6 Modules as a story · 7 points
HN discussion> constantly changing 1.0.0.rc1 was released on February 15, and (to my knowledge) there has been _one_ backwards-incompatible change since then. > ember-data isn't done yet You don't need to use ember-data: http://eviltrout.com/2013/03/23/ember-without-data.html
Comment linking /2013/03/23/ember-without-data.html
on “AngularJS versus Ember”Submitted Ember vs. Angular as a story · 7 points
HN discussionPhantomJS can be a pain to setup, I think the approach taken by Discourse.org is the best option: http://eviltrout.com/2013/06/19/adding-support-for-search-en...
Comment linking /2013/06/19/adding-support-for-search-engines-to-your-javascript-applications.html
on “Javascript apps can be fully crawlable”Submitted Adding support for search engines to your JavaScript applications as a story · 4 points
HN discussionSomebody's already done one in C: https://eviltrout.com/2015/06/29/an-emulator-for-tis-100.htm... And according to Zach, the intended market wasn't just programmers (which is why he explicitly killed bit manipulation, and the largest number a TIS-100 register can hold isn't a power of two), and I've heard tales of non-programmers enjoying it. Then again, if you like Zachtronics games, especially TIS-100, then have I…
Comment linking /2015/06/29/an-emulator-for-tis-100.html
on “TIS-100 – Tessellated Intelligence System”Submitted Anatomy of a Room as a story · 3 points
HN discussionEmber Data is opinionated about the backend, Ember itself isn't. You can use Ember without Ember Data, as is the case with Discourse, one of the largest Ember apps out there. http://eviltrout.com/2013/03/23/ember-without-data.html
Comment linking /2013/03/23/ember-without-data.html
on “AngularJS 1.3.0”Submitted Building the Roottrees Are Dead as a story · 3 points
HN discussion