HNHacker News
TopNewBestAskShowJobs

triskweline

580 karma · joined July 15, 2012

submissionscomments
triskweline··on Shooting down ideas is not a skill
This glazes over the torrent of poorly developed ideas you need to deal with in every organization.
triskweline··on Breaking up with JavaScript front ends
Author here. Yes, we stuck with it and evolved the concept into Unpoly 2 and soon Unpoly 3:

http://triskweline.de/unpoly2-slides/ http://triskweline.de/unpoly3-slides/

I'd say 95% of the apps we build are now based on Unpoly, the rest on React.

We now believe SPAs are not a good default for the type of apps we're building. We're still reaching for SPAs when requirements demand high-frequency user input and optimistic rendering, e.g. for a chat or online game.

YMMV!

triskweline··on Breaking up with JavaScript front ends
Author here. The link is a 6 years old presentation. The demo app has since been rewritten.

The old demo app focused on the downsides of classic multi-page apps (MPAs), i.e. the reason the world moved to SPAs all these years ago. In an MPA clicking a link loses all transient state, like focus, scroll positions and unsaved form state. This can all be solved with updating fragments instead of full pages, while still keeping rendering logic on the server.

triskweline··on Breaking up with JavaScript front ends
Unpoly lead dev here

Unpoly takes special care to always move the focus to the next relevant element in an interaction. E.g. when a link updates a fragment, the focus is moved to that fragment. Or when an overlay is closed, focus is returned to the link that originally opened that overlay.

More details can be found here: http://triskweline.de/unpoly2-slides/#78

Feel free to install a screen reader and play with the demo app (https://demo.unpoly.com/).

triskweline··on Ask HN: Who regrets choosing Elixir?
Our Ruby / Rails agency tried implementing a project in Elixir. After 3 weeks we stopped the experiment and re-did everything in Ruby.

What stopped us was not so much the lack of libraries, but programming ergonomics. E.g. when using keyword lists for function options, callers need to pass the keywords in the exact same order. Also mocking was difficult in tests.

Elixir is a great project with a friendly community, it just didn't work for us. YMMV so by all means try it out if you're interested!

triskweline··on Structured Page Fragments by YouTube (2017)
With pjax you choose a selector that is updated. This is usually a <div> in your layout that houses the main page content.

spfjs lets you target multiple containers with a single update, e.g. in YouTube the video area and the sidebar with related content.

triskweline··on Structured Page Fragments by YouTube (2017)
Unpoly [1] lets you achieve the same effect without having to wrap your content in a JSON transport envelope. There are no two cases for static and dynamic navigation. The HTML you already have is used for transport, fragments are targeted with CSS selectors.

[1]: https://unpoly.com/

triskweline··on Stimulus: A modest JavaScript framework for the HTML you already have
Unpoly currently depends on jQuery. Work is being done to remove that dependency eventually, but that will take time.
triskweline··on Stimulus: A modest JavaScript framework for the HTML you already have
If you enjoy working with intercooler.js but are looking for a bit more power, check out Unpoly [1].

[1]: https://unpoly.com

triskweline··on Turbolinks: SPA-like Experience without the SPA-framework Hassle
If you're looking for a little more control but don't want to go all-in SPA, also check out Unpoly:

https://unpoly.com/

triskweline··on How Cucumber Open Source Maintainers Do Mob Programming
We're heavy users of Cucumber at our development agency. I've never seen non-technical users write Cucumber scenarios either, but we find them very useful for another reason.

The problem with test suites is that, as they grow and age, it becomes harder and harder to understand why tests are testing what they test. When a years old test fails because 5 is not 7, you cannot really fix it unless you understand why it was supposed to equal 7 in the first place.

Cucumber is a way to describe requirements at a higher level of abstraction. They provide rationale on top of mere assertions of behavior. This is worth the small overhead of writing step definitions.

I guess you can get the same by heavily commenting your tests. But you cannot enforce this easily in a team.

triskweline··on Do You Really Need a JavaScript Framework?
There are server-side libraries like Unpoly (https://unpoly.com/) that give you most of the benefits of heavyweight JavaScript frameworks, but without the complexity and code duplication.
triskweline··on Show HN: Unobtrusive JavaScript framework for server-side applications
Author here. Unpoly is my attempt at bridging the gap in user experience between classical, server-side applications and modern single-page applications (SPAs).

Happy to answer any questions you might have.

triskweline··on Show HN: Tdo – keyboard driven, hackable todo list
Nice work!

I built something similar a few years ago: https://hollyapp.com/

triskweline··on CSS Purge
The framework you're subscribing sounds a little like Unpoly [1].

[1]: http://unpoly.com/

triskweline··on Structured Page Fragments by YouTube
We built something similar with Up.js [0]. Rather than wrapping some responses in JSON, Up.js doesn't require any server-side changes. Fragments are selected client-side via CSS selectors.

0: http://upjs.io/

triskweline··on Windows 10 uses your bandwidth to send other people updates
Games like World of Warcraft have been doing this for a decade. Early versions of the Blizzard downloader actually were Bittorrent clients.
triskweline··on Your best passive income? (2015 Edition)
Thank you! I'm afraid we don't have a configurable keymap yet.
triskweline··on Ask HN: Does anyone actually hire from 'developer bootcamps'?
Although the development shop I work at (makandra) has a constant demand for new engineers, we would never hire someone out of a ten week program.

To give you an idea about what kind of juniority is attractive to a shop like ours: We run our own in-house internship program which takes 9 months. It requires CS degree plus some previous experience (private pet projects are OK) to enter.

The intern is paid living expenses and has vacation like other employees. The goal of the program is to hire the intern as a permanent junior developer after 9 months. Junior starting salary is also a far cry below 100K USD, but then again we don't have to live in San Francisco.

triskweline··on Your best passive income? (2015 Edition)
https://hollyapp.com

A task tracker / outliner with a Vim-like editing mode that I built for myself a few years back. It gained a lot of popularity through HN and Lifehacker.

I eventually rewrote the application and offered extra features and mobile support for paying subscribers. It now pays for date night with my wife.

triskweline··on How we’ve made Raptor fast
Spoiler: Insane amounts of low-level optimization.
triskweline··on Growing Rails Applications in Practice (eBook)
Hey Lorenz. Really glad you're enjoying the book!

We're just starting to get a some visibility internationally, which might explain why this is not all over Reddit and HN already.

triskweline··on The greatest bug I never fixed (2010)
Thanks Patrick :) I had to quit my WoW guild when I discovered I could only run a single company at the same time.

Speaking of RCE: Distribution of new FriendNet versions was such a pain that for a while we considered a P2P auto-update mechanism where FriendNet users with newer versions would whisper Lua code to users with older versions, who would then eval() it locally.

It seemed like a much better idea then than it does today...

triskweline··on Android Support vs iOS Support
This chart spells horrible things for all web developers.

Legacy Android brwosers will become the next IE6 in terms of joy drained from our lives.

triskweline··on Why he is there and I am here
Only doing what you're good at seems at odd with running a start-up, where almost by definition you need to fight through stuff you don't like or excel in.

If you're persistent you will eventually get to "design" your own job, but that's some years down the road. If you want to concentrate on the things you are good at today, look for a nice 9-to-5 job at a company that matches your values and don't look back.

triskweline··on Ask HN: What do you want to see in Rails 4.1?
I wish there was some way to call the asset pipeline with parameters. E.g. "render that stylesheet with the dark theme".