Skip to content

Instantly share code, notes, and snippets.

View hhff's full-sized avatar
♻️
not ur dad's plant-based solarpunk marxist

Hugh Francis hhff

♻️
not ur dad's plant-based solarpunk marxist
View GitHub Profile

The introduction to Reactive Programming you've been missing

(by @andrestaltz)

So you're curious in learning this new thing called (Functional) Reactive Programming (FRP).

Learning it is hard, even harder by the lack of good material. When I started, I tried looking for tutorials. I found only a handful of practical guides, but they just scratched the surface and never tackled the challenge of building the whole architecture around it. Library documentations often don't help when you're trying to understand some function. I mean, honestly, look at this:

Rx.Observable.prototype.flatMapLatest(selector, [thisArg])

Projects each element of an observable sequence into a new sequence of observable sequences by incorporating the element's index and then transforms an observable sequence of observable sequences into an observable sequence producing values only from the most recent observable sequence.

(function($){
var map = {
pickup: 1,
driver: 2,
fare: 3,
car: 4,
city: 5,
payment_method: 6
};
@hhff
hhff / pokedex.md
Last active April 23, 2021 21:32 — forked from conordavidson/pokedex.md
Pairing Interview — Pokédex

For this interview we'll be building a lightweight CRUD app. We'll start by creating some system diagrams and wireframes then build out a server and client.

The application is called Pokedéx.io (we use .io because it's a brilliant startup).

We have some basic functional requirements for this application:

  • We will list Pokémon on a page. We'll pull from the Pokeapi (https://pokeapi.co/) to get this list.
  • Users can create an account and login. They can authenticate using email & password, Oauth with Google, or the slick new magic link strategy! Up to you!
  • Once authenticated, users can capture Pokémon. Next to each Pokémon in the list, there will be a capture button. When capturing a Pokémon, the user will be given the oppurtunity to name the capture and add a note. A user can retroactively update this name and note. Captures must be persisted and users cannot capture a Pokémon more than once.

We also have some fun features that we'd like to diagram (but not build):