Yannick Weiss

Tech: Web Components

Web Components

I already implemented a small project with the Web Components library Polymer and I really enjoyed it. I cannot say if it is the solution to web development but it makes the code modular which is a good thing. Soon most browsers will provide a Shadow DOM API and support Web Components native.

During my writing I noticed custom elements also synergises well with markdown, for example you could use a custom element to embed a gallery: <gallery files="sea.jpg, window.jpg"></gallery>

Falcor

Because REST did not scale for Netflix they created Falcor, an API that uses one endpoint and looks like a normal JSON object but behind the scene it queries and caches data from the server.

Falcor Keynote and blog post The Future of Web Development - React, Falcor, and ES6

PostgreSQL and SQLite

SQLite is tested very extensive they’ve managed to find bugs in other databases. For what it’s worth, if you do want to graduate to a heavier, server database, the author of SQLite, D. Richard Hipp has recommended PostgreSQL. In his talk at PGCon 2014, he mentions that he was able to crash or corrupt data in nearly every database, but that PostgreSQL managed to stand up to almost everything he threw at it.

  • SQLite makes for a great file format
  • SQLite simple C source code is worth studying.
  • SQLite has 94.2 KLOC of code, but 91515.5 KLOC of test code, a ratio of 971:1
  • SQLite was created to be used on guided missile destroyers
  • PostgreSQL can store JSON documents and can do it faster than MongoDB
  • PostgreSQL can be used as key-value store and it’s very effective at it.

Yeah we noticed that last week, we’re considering moving to FileMaker as our primary data storage engine.

CSS Scroll Snap Points

I love the new native CSS scroll snapping feature which is already implemented in Firefox. This technology allows to have a native and therefore fluid scrolling experience on mobile (coming with iOS 9).

An example from the game monikers where I swipe through a list of cards. When swiping to the right the next card is centred, without Javascript!

monikers

To be even more hip you can combine it with the new @supports rule:

@supports ( (scroll-snap-type: mandatory) or (-webkit-scroll-snap-type: mandatory) ) {
  #wrapper {
    scroll-snap-type: mandatory;
    scroll-snap-points-x: repeat(100vw);
    -webkit-scroll-snap-type: mandatory;
    -webkit-snap-points-x: repeat(100vw);
  }
}