Additional information for further learning
Here are the links to additional resources mentioned in the slides.
My personal links
- twitter @bahmutov
- GitHub projects github.com/bahmutov
- projects, bio, videos https://glebbahmutov.com
- blog https://glebbahmutov.com/blog
- Kensho where I work https://www.kensho.com
- Search for a particular keyword using
- module counts in different repositories www.modulecounts.com
FP in JS
- List of books teaching functional programming in JS
- The full journey is described in this blog post Journey from ...
Refactoring the code example
- Programming without the for loops
- Adapting functions to call sites and point free programming
- Test if a function is pure against a set of unit tests
- Test if a function is pure revisited
- Binding vs partial application
- From the left _.partial or R.partial
- From the right _.partialRight or R.partialRight
- Leaving open spots
- For object properties obind
- By argument name heroin
- Lodash library docs
- Object iterators
- Put callback first for elegance and Hey Underscore, You're Doing It Wrong!
- Designing user-friendly API
- Alan J Perlis "perlisisms"
- See my blog posts on promises
Pure functional reactive programming
- Cycle.js homepage at cycle.js.org/
- Is framework pure or not?
- Data flow in small Cycle web application
Interesting things I saw at OSCON
It was a very large event: 2 days, 10 parallel tracks, plus an expo with every major and minor software company present. Most of the companies you know were there (from MS, Dell, HP, to GitHub, GitLab and Sentry).
Aside from this, the lessons observes:
every second presentation was about containers and container flows. From the very opening remarks by the Docker team, the focus was on: "docker is awesome, here is how we use it".
"Every millisecond counts: Performance and UX" from Akamai mentioned in edge cached page sub resources (no slides available yet), where the entire page is cached on CDN except for parts of it that are "live". Interesting what will happen to this technology.
"Butterfly in reverse" by Mark Bates (no relation to Brian Bates) about how he tried to both learn Go and micro services, but failed and when with Rails app.
"Becoming a polyglot: Create a simple API server in four interpreted languages" was too simple to be a good example, but it was a beautiful of distributing Docker template file for people to try the example system with minimal hassle.
"Dusty: Building and testing microservices made easy" and slides at http://cdn.oreillystatic.com/en/assets/1/event/154/Dusty_%20Building%20and%20testing%20microservices%20made%20easy%20Presentation.bin about https://github.com/gamechanger/dusty - Docker powered "docker compose" tool for quick local development. Makes me excited to try it.
"What comes after Git Push" by Justin Dorfman from MaxCDN was interesting, because he actually contributed to OSS project not by coding but by designing a good logo, arranging sales and donations (he got the new Bash stickers made, purchase at http://www.unixstickers.com/stickers/coding_stickers/official-bash-sticker-bourne-shell-full-logo 10% goes to FSF), slides at http://cdn.oreillystatic.com/en/assets/1/event/154/What%20comes%20after%20Git%20Push%20Presentation.pdf and overall he was a very nice guy.
"How Netflix gives all its engineers SSH access to instances running in production" about BLESS was really well done. Slides at https://speakerdeck.com/rlewis/how-netflix-gives-all-its-engineers-ssh-access-to-instances-running-in-production
"Better collaboration through tooling" from Docker talked about them using Docker and 3rd party services to develop quickly https://github.com/docker/notary. This presentation was a powerhouse demo of Docker-based workflows and integrating multiple 3rd party review tools with GitHub based repo. Loved it.