Almost every single day I TLDR!
Here, I list all the articles, blog posts, pages I've read, or videos I've watched, that I found interesting. It's like a huge shared bookmarks registry with y'all! Or it's like a daily newsletter without newsletter. Use Ctrl+F and find what you want. Fun fact: Github only displays the readme until ~5000 lines.
I'm reading mostly about Scala, Data Engineering, Java, Javascript, Big Data, DDD, and technology.
Note for my past/current/future employer: this is stuff I'm reading mostly off work of course.
🙈
I'm writing articles on my blog about these topics. I'm the co-founder of https://www.conduktor.io/, a sweet Desktop client to manage a Kafka ecosystem.
15-01-2021
- https://strimzi.io/blog/2021/01/07/consumer-tuning/ Optimizing Kafka consumers
11-01-2021
- https://www.youtube.com/watch?v=iFeTUhYpPLs ZIO Cache, Compositional Caching by Adam Fraser
- https://mikemybytes.com/2021/01/11/single-partition-kafka-topics/ Single-partition Kafka topics
28-12-2020
- https://medium.com/cloud-belivers/olap-system-selection-choose-apache-kylin-or-clickhouse-718a972498bb OLAP: Apache Kylin or ClickHouse?
21-12-2020
- https://www.confluent.io/blog/apache-kafka-2-7-features-updates-improvements/ Apache Kafka 2.7 - Latest Features, Updates, and Improvements
- https://www.infoq.com/news/2020/12/aws-reinvent-2020/ Recap of AWS re:Invent 2020
16-12-2020
- https://www.scala-lang.org/blog/2020/12/15/scala-3-crossing-the-finish-line.html Scala 3 - Crossing the finish line (!!!!!)
14-12-2020
- https://towardsdatascience.com/enabling-a-powerful-search-capability-building-and-deploying-a-real-time-stream-processing-etl-a27ecb0ab0ae Building and Deploying a Real-Time Stream Processing ETL Engine with Kafka and ksqlDB #elasticsearch
12-12-2020
- https://www2.slideshare.net/DmitryKarlinsky1/demystifying-functional-effect-systems-in-scala/DmitryKarlinsky1/demystifying-functional-effect-systems-in-scala Demystifying functional effect systems in Scala: construction of a stacksafe fiber-capable IO monad
- https://blog.octo.com/en/technical-due-diligence-safeguarding-your-it-startup-investment/ Technical Due Diligence–Safeguarding your IT Startup Investment
- https://www.confluent.io/blog/kafka-lag-monitoring-and-metrics-at-appsflyer/ Apache Kafka Lag Monitoring using Burrow
- https://medium.com/better-programming/integration-test-for-kafka-consumer-be76528b843a Integration Tests for Kafka Consumer (and Spring ������)
- https://engineering.linecorp.com/en/blog/kafka-based-job-queue-library-decaton-examples/ Kafka-based job queue library 'Decaton' examples
- https://fasterthanli.me/articles/aiming-for-correctness-with-types Aiming for correctness with types (JS/Go/Rust)
10-12-2020
- https://github.com/scala/scala/releases/tag/v2.13.4 Release Scala 2.13.4
08-12-2020
- https://www.infoq.com/news/2020/12/grafana-tempo-distributed-tracin/ Grafana Tempo, a Distributed Tracing System
05-12-2020
- https://cloud.google.com/blog/products/application-development/get-to-know-google-cloud-workflows Google Cloud Workflows: serverless mode, failover management, retries, timeout, security aspects. Looking good.
04-12-2020
- https://medium.com/@svroonland/processing-zio-effects-through-a-pipeline-c469e28dff62 Processing ZIO effects through a pipeline #scala
- https://blog.timescale.com/blog/timescaledb-vs-amazon-timestream-6000x-higher-inserts-175x-faster-queries-220x-cheaper/ TimescaleDB vs. Amazon Timestream: a total destroyer. 6000x faster inserts, 5-175x query speed
- https://aws.amazon.com/blogs/opensource/want-more-postgresql-you-just-might-like-babelfish/ AWS: Babelfish, a PostgreSQL compatiblity layer for Amazon Aurora
03-12-2020
- https://kubernetes.io/blog/2020/12/02/dont-panic-kubernetes-and-docker/ Don't Panic: Kubernetes and Docker
28-11-2020
- https://towardsdatascience.com/why-the-future-of-etl-is-not-elt-but-el-t-880f08aab74a The Future of ETL Is Not ELT, But EL(T)
20-11-2020
- https://www.scala-lang.org/blog/2020/11/19/scala-3-forward-compat.html Migrating to Scala 3 has never been so easy!
16-11-2020
- https://alexn.org/blog/2020/11/15/managing-database-migrations-scala.html Database Migrations using Flyway #Scala
15-11-2020
- https://medium.com/datadriveninvestor/if-youre-using-kafka-with-your-microservices-you-re-probably-handling-retries-wrong-8492890899fa Kafka: Aggregates and Retries
14-11-2020
- https://www.confluent.io/blog/spring-kafka-protobuf-part-1-event-data-modeling Apache Kafka and Protobuf Part 1: Event Data Modeling
13-11-2020
- https://www.youtube.com/watch?v=SJeAb-XEIe8 The Rise Of Loom And The Evolution Of Reactive Programming #scala #zio
- https://scalameta.org/metals/blog/2020/11/06/sbt-BSP-support.html sbt BSP support · Metals
12-11-2020
- https://www.youtube.com/watch?v=hvYqSz_BgUM Netty 5: Lessons Learned
- https://turkogluc.com/postgresql-capture-data-change-with-debezium/ CDC Pipelines for Postgres with Debezium Kafka Connector
11-11-2020
- https://hmemcpy.com/2020/08/running-postgres-integration-tests-easily-with-testcontainers-and-zio-test/ Running Postgres integration tests easily with TestContainers and ZIO Test
- https://medium.com/google-cloud/google-cloud-pub-sub-ordered-delivery-1e4181f60bc8 Google Cloud Pub/Sub Ordered Delivery
- https://blog.softwaremill.com/whats-coming-up-in-sttp-client-3-30d01ab42d1b sttp client 3: simplification & Improvements #scala
- https://softwaremill.com/kafka-pitfalls-kafka-architect/ Kafka pitfalls - Q&A with a Kafka Architect
10-11-2020
- https://www.scala-lang.org/2020/11/06/explicit-term-inference-in-scala-3.html From implicits to extension and given #scala
08-11-2020
- https://www.confluent.io/blog/pull-queries-in-preview-confluent-cloud-ksqdb/ Preview Feature: Pull Queries in Confluent Cloud ksqlDB. Sweet!
- https://github.com/erebe/personal-server A complete "tutorial" to configure a personal server (security, firewall, k3s, ingress, certificates, mail server, github actions, backups, vpn, pihole..)
- https://typelevel.org/blog/2020/10/30/concurrency-in-ce3.html Concurrency in Cats Effect 3 #scala
- https://www.slideshare.net/streamnative/low-latency-stream-processing-with-jet Low latency stream processing with Jet and Kafka (Hazelcast)
- https://www.slideshare.net/ConfluentInc/performance-tuning-rocksdb-for-kafka-streams-state-stores Performance Tuning RocksDB for Kafka Streams’ State Stores
- https://medium.com/helidon/can-java-microservices-be-as-fast-as-go-5ceb9a45d673 Benchmarking Java + Graal & Go. Java is better at multi-threading (and mem+), otherwise Go crunches it.
07-11-2020
- https://rmoff.net/2020/11/03/streaming-geopoint-data-from-kafka-to-elasticsearch/ Ways to stream geopoint data from Kafka to Elasticsearch
06-11-2020
- https://github.com/leobenkel/ZparkIO ZparkIO: Framework to use Spark and ZIO
- https://www.youtube.com/watch?v=xWCb54turxg Scala 3 Indentation; -Yindent-colons
- https://bszwej.medium.com/domain-driven-design-with-fp-in-scala-21b557f94aa5 Domain-Driven Design with FP in Scala
27-10-2020
- https://blog.softwaremill.com/designing-tapirs-websockets-support-ff1573166368 Designing tapir’s WebSockets support
23-10-2020
- https://medium.com/botify-labs/experience-working-with-600-tb-elasticsearch-cluster-b6b5a4fa9127 Experience working with 600+TB ElasticSearch cluster
- https://www.confluent.io/blog/bounding-ksqldb-memory-usage/ Interesting post about Memory Usage in ksqlDB and malloc issues
22-10-2020
- https://engineering.fb.com/networking-traffic/how-facebook-is-bringing-quic-to-billions/ QUIC + HTTP/3 impact at Facebook
18-10-2020
- https://build.thebeat.co/yet-another-kubernetes-dns-latency-story-2a1c00ebbb8d Yet Another Kubernetes DNS Latency Story. Node Local DNS Cache issues.
- https://medium.com/better-programming/accelerate-your-ci-cd-pipelines-with-kubernetes-in-docker-kind-109a67b39c82 CI/CD Pipelines With Kubernetes in Docker (KinD)
- https://jet-start.sh/blog/2020/10/06/enabling-full-text-search Using Hazelcast Jet + Debezium to sink into Elasticsearch
16-10-2020
- https://www.cybercite.fr/core-web-vitals-google.html Core Web Vitals: de nouvelles règles côté Google 2021 à prendre en compte pour le SEO
- https://www.confluent.io/blog/how-real-time-materialized-views-work-with-ksqldb/ How Real-Time Materialized Views Work with ksqlDB, with animations <3
- https://blog.kowalczyk.info/article/19f2fe97f06a47c3b1f118fd06851fad/lessons-learned-porting-50k-loc-from-java-to-go.html Lessons learned porting 50k loc from Java to Go
12-10-2020
07-10-2020
- https://www.confluent.io/blog/ksqldb-0-12-0-features-updates/ ksqlDB 0.12.0: CREATE OR REPLACE <3
- https://www.confluent.io/blog/confluent-platform-6-0-delivers-the-most-powerful-event-streaming-platform-to-date/ Kafka: Tiered Storage, Self-Balancing clusters
- https://medium.com/swlh/how-to-consume-kafka-efficiently-in-golang-264f7fe2155b Consume Kafka Efficiently in Golang
- https://www.mongodb.com/blog/post/mongo-db-connector-for-apache-kafka-1-3-available-now MongoDB Connector for Apache Kafka 1.3
- https://github.com/rayokota/kcache An In-Memory Cache Backed by Apache Kafka
- https://medium.com/streamthoughts/whats-new-in-azkarra-streams-0-8-3ed1a4ab803d Azkarra Streams 0.8 for Kafka Streams: new cool stuff!
- https://blogit.michelin.io/measuring-kafka-uptime/ Measuring Kafka uptime
- https://medium.com/data-rocks/managing-kafka-connectors-at-scale-using-kafka-connect-manager-kcm-31d887de033c Kafka Connect Manager: auto create/update/delete connectors
- https://www.infoq.com/articles/event-driven-finding-seams/ From Monolith to Event-Driven
- https://medium.com/expedia-group-tech/be-vigilant-about-time-order-in-event-based-data-processing-cbfde600dd7d Time Ordering in Event-Based Data Processing
- https://www.paepper.com/blog/posts/how-to-properly-manage-ssh-keys-for-server-access/ Manage ssh keys for server access, dedicated certificates & roles
- https://blog.softwaremill.com/java-15-through-the-eyes-of-a-scala-programmer-edde1ea04492 Java 15 through the eyes of a Scala programmer. Java 15: Only simple cases are handled by new features.
04-10-2020
- https://cloud.google.com/pubsub/docs/ordering#go Gcloud Pub/Sub: Ordering messages & filtering messages.
- https://aws.amazon.com/blogs/aws/store-and-access-time-series-data-at-any-scale-with-amazon-timestream-now-generally-available/ Amazon Timestream database now GA
- https://www.infoq.com/presentations/java-11-production-story/ A Year with Java 11 in Production
- https://blog.softwaremill.com/annoying-things-in-scala-2-thatll-be-mostly-gone-in-scala-3-e1479a6d855c Things in Scala 2 that’ll be (mostly) gone in Scala 3
02-10-2020
- https://www.hownormalami.eu/ How normal am I? Interesting to try out by yourself
24-09-2020
- https://www.postgresql.org/about/news/2077/ PostgreSQL 13 Released!
- https://medium.com/bakdata/solving-my-weird-kafka-rebalancing-problems-c05e99535435 Kafka Rebalancing Problems
- https://medium.com/gumgum-tech/5-things-we-overlooked-when-putting-our-first-app-on-kubernetes-58583c1783e4 Things to know when using Kubernetes
22-09-2020
- https://build.affinity.co/how-we-used-postgres-extended-statistics-to-achieve-a-3000x-speedup-ea93d3dcdc61 Postgres extended statistics to achieve a 3000x speedup
- https://pganalyze.com/blog/postgres13-better-performance-monitoring-usability Postgres 13: Better Performance, Monitoring & More
- https://jet-start.sh/blog/2020/09/18/cdc-meets-stream-processing Hazelcast Jet meets Debezium for CDC #kafka
- https://medium.com/@cbenaveen/high-available-task-scheduling-design-using-kafka-and-kafka-streams-dcd81121d43b Using Kafka Streams to schedule tasks
- https://letsencrypt.org/2020/09/17/new-root-and-intermediates.html Saving bandwidth using ECDSA. Let's Encrypt's New Root and Intermediate Certificates
- https://github.com/svroonland/rezilience ZIO circuit breaker (+ retry, bulkhead) #scala
20-09-2020
- https://cloud.google.com/blog/products/containers-kubernetes/how-gvisor-protects-google-cloud-services-from-cve-2020-14386 New container escape, to obtain root privileges on the host node. Hopefully we have gVisor on GCP!
- https://medium.com/@codeboten/bpf-experiments-on-macos-9ad0cf21ea83 BPF Experiments on MacOS / TIL Remote-SSH using VSCode (doesn't work with a RPi :()
18-09-2020
- https://tech.ovoenergy.com/safe-expressive-code-with-refinement-types/ Expressive Code with Refinement Types #scala
- https://jamesmcm.github.io/blog/2020/07/25/intro-dod/ Data Oriented Design with Rust
- https://medium.com/wix-engineering/5-lessons-learned-from-my-continuing-awesome-journey-with-zio-66319d12ed7c Some tips using ZIO
- https://levelup.gitconnected.com/top-4-dying-programming-languages-of-2020-1a4149753e92 Top 4 Dying Programming Languages: "Still, [Scala] is not a very active language." He has no idea.
- https://www.scala-lang.org/blog/2020/09/15/scala-3-the-community-powered-release.html Scala 3 by fall 2020
❤️
17-09-2020
- https://kotlinlang.org/docs/reference/whatsnew14.html#coroutine-debugger What's New in Kotlin 1.4: so many things! ������
- https://debezium.io/blog/2020/09/15/debezium-auto-create-topics/ Auto-creating Debezium Change Data Topics with custom config
- https://guidoschmutz.wordpress.com/2020/09/15/last-week-in-stream-data-integration-stream-analytics-14-9-2020/ Last Week in Stream Data Integration & Stream Analytics – 15.9.2020
- https://github.com/n8n-io/n8n An awesome visual Workflow Automation tool. Mix that to some ksqldb pull queries and..
16-09-2020
- https://medium.com/swlh/how-to-deploy-a-cloud-sql-db-with-a-private-ip-only-using-terraform-e184b08eca64 Private Cloud SQL with a bastion; using Terraform
- https://medium.com/better-programming/event-driven-architecture-as-a-strategy-dfb8370724c9 Event-Driven Architecture as a Strategy
15-09-2020
- https://medium.com/swlh/kubernetes-ingress-controller-overview-81abbaca19ec Kubernetes Ingress Controller Overview & Comparison
- https://codeburst.io/automating-kubernetes-best-practices-7a8276ff7b08 Kubernetes Best Practices with Polaris
09-09-2020
- https://medium.com/inlocotech/challenges-of-running-grpc-services-in-production-b3a113df2542 gRPC services in production, Envoy as side-car + DNS service discovery
- https://itnext.io/architecting-kubernetes-clusters-choosing-a-worker-node-size-b3729cc0c78f Architecting Kubernetes clusters — choosing a worker node size
08-09-2020
- https://blog.magrathealabs.com/go-vs-rust-writing-a-cli-tool-231accadcc88 Go vs Rust: Writing a CLI tool
07-09-2020
- https://medium.com/@bbau00/10-antipatterns-for-kubernetes-deployments-e97ce1199f2d Antipatterns for Kubernetes Deployments
05-09-2020
- https://blog.trailofbits.com/2019/07/08/fuck-rsa/ Seriously, stop using RSA
- https://gist.github.com/atoponce/07d8d4c833873be2f68c34f9afc5a78a Cryptographic Best Practices: "... you should stop using RSA and switch to elliptic curve software"
- https://itnext.io/contrasting-nats-with-apache-kafka-1d3bdb9aa767 NATS and Apache Kafka: differences, use-cases, guarantees
- https://medium.com/a-journey-with-go/go-multiple-errors-management-a67477628cf1 Go: Multiple Errors Management + goroutine cancellation on error
- https://github.com/rook/rook rook: Storage Orchestration for Kubernetes
- https://medium.com/firebase-developers/the-tradeoffs-between-performance-cost-and-security-with-firestore-ef72ba43f316 The trade-offs between performance, cost, and security with Firestore
02-09-2020
- https://leanpub.com/jvm-scala-book ebook: Things you need to know about JVM things that matter in Scala
- https://learnk8s.io/setting-cpu-memory-limits-requests Setting the right requests and limits in Kubernetes
31-08-2020
- https://casbin.org/en/ Casbin · An authorization library that supports access control models like ACL, RBAC, ABAC
- https://medium.com/swlh/building-a-realtime-dashboard-with-reactjs-go-grpc-and-envoy-7be155dfabfb Realtime "dashboard" with ReactJS, Go, gRPC, and Envoy (to convert http1 <-> http2)
30-08-2020
- https://www.youtube.com/watch?v=W2VB9HuzsMM Building a Telegram bot with Apache Kafka, ksqlDB, and Go. Another amazing walkthrough by Robin Moffatt
- https://medium.com/coralogix-engineering/kafka-streams-window-by-rocksdb-tuning-c06a858029eb Kafka Streams Window By & RocksDB Tuning
- https://www.fpcomplete.com/blog/different-levels-async-rust/ async or not async in Rust
29-08-2020
- https://www.confluent.io/blog/kafka-fastest-messaging-system/ Kafka vs. Pulsar vs. RabbitMQ: throughput & latency
- https://www.confluent.io/blog/testing-kafka-streams/ Testing Kafka Streams using TestContainers to save your from bugs TopologyTestDriver couldn't detect
- https://info.crunchydata.com/blog/why-postgresql-13-is-a-lucky-release PostgreSQL 13 has nice updates
- https://medium.com/@nandovillalba/why-i-think-gcp-is-better-than-aws-ea78f9975bda Why I think GCP is better than AWS. Agreed!
18-08-2020
- https://blog.rust-lang.org/2020/08/18/laying-the-foundation-for-rusts-future.html Laying the foundation for Rust's future
- https://proandroiddev.com/security-best-practices-symmetric-encryption-with-aes-in-java-7616beaaade9 Security Best Practices: Symmetric Encryption with AES in Java
14-08-2020
- https://fasterthanli.me/articles/frustrated-its-not-you-its-rust A nice and long story about Rust pecularities, to encourage beginners..?
- https://kubernetes.io/blog/2020/08/14/introducing-hierarchical-namespaces/ New "Hierarchical Namespaces" in #kubernetes to provide policy Inheritance between ns.
13-08-2020
- https://www.confluent.io/blog/kafka-consumer-multi-threaded-messaging/ One way of doing multi-threaded processing with a Kafka consumer (single threaded)
- https://www.confluent.io/blog/ksqldb-state-stores-in-recovery/ An interesting Incident about schemas with ksqlDB + State Store Recovery
11-08-2020
- https://romefrontend.dev/blog/2020/08/08/introducing-rome.html Introducing Rome #frontend
- https://justinhj.github.io/2020/08/02/whats-ap-with-zio-prelude.html zio-prelude and applicative's ap
07-08-2020
- https://cwiki.apache.org/confluence/display/KAFKA/KIP-441%3A+Smooth+Scaling+Out+for+Kafka+Streams KIP-441: A long KIP to prevent our Kafka Streams app to be "stuck" on some partitions while rebuilding its state, after a rebalance
- https://degoes.net/articles/zio-1.0 ZIO 1.0 Released | A game changer
- https://cwiki.apache.org/confluence/display/KAFKA/KIP-649%3A+Dynamic+Client+Configuration Apache Kafka: KIP-649: Dynamic Client Configuration. I truly hate config mutability at runtime; but that could be useful in large corps I suppose.
- https://www.youtube.com/watch?v=OwmHgL9F_9Q SF Scala <3: Reimagining Functional Type Classes
- https://www.youtube.com/watch?v=wlvKAT7SZIQ Parsing JSON Really Quickly: Lessons Learned (SIMD!)
06-08-2020
- https://artem.krylysov.com/blog/2020/07/28/lets-build-a-full-text-search-engine/ A nice "Let's build a Full-Text Search engine" in Go
05-08-2020
- https://docs.google.com/document/d/1MQQoJk4ewedYgFfgSA2axx3VhRwgj_0rO1tf3yezV0c/edit# What's new in Apache Kafka 2.6.0 (Draft) - Many good things!
- https://medium.com/swlh/how-i-scaled-a-software-systems-performance-by-35-000-6dacd63732df Fixing a whole system performances. ie: fix your cache!
- https://medium.com/@tomasz.zieleniewski/mental-and-technical-reasons-for-upgrading-java-from-8-to-14-2e43b37b99dd Java: from 8 to 14
- https://medium.com/sysf/getting-started-with-docker-1-b4dc83e64389 Anatomy of Docker.
02-08-2020
- https://dropbox.tech/infrastructure/how-we-migrated-dropbox-from-nginx-to-envoy A very interesting reading about How Dropbox is migrating from Nginx to Envoy
- https://medium.com/coralogix-engineering/kafka-streams-window-by-rocksdb-tuning-c06a858029eb Kafka Streams Window By & RocksDB Tuning
01-08-2020
- https://adamw.github.io/loom-pres/ Java: Project Loom & virtual threads
31-07-2020
- https://www.confluent.io/blog/ksqldb-0-10-updates-key-columns Many breaking changes in ksqlDB 0.10 about keys, but for the greater good!
29-07-2020
- https://jalammar.github.io/how-gpt3-works-visualizations-animations/ How GPT3 Works - Visualizations and Animations – Jay Alammar
25-07-2020
- https://www.confluent.io/blog/simplified-robust-exactly-one-semantics-in-kafka-2-5/ Apache Kafka’s Exactly-Once Semantics Are Now Easier & More Robust | aka: how to deal with UNKNOWN_PRODUCER_ID error!
23-07-2020
- https://medium.com/zendesk-engineering/an-investigation-into-kafka-log-compaction-5e520f4291f0 Some insights from the Kafka Log Compaction
21-07-2020
- https://www.youtube.com/watch?v=XTkhxRTH1nE ZIO + gRPC
- https://home.apache.org/~rhauch/kafka-2.6.0-rc1/RELEASE_NOTES.html Kafka 2.6.0 Releases notes <3
16-07-2020
- https://ziverge.com/blog/introduction-to-zio-kafka/ ZIO Kafka nice walkthrough
- https://github.com/ElasticHQ/elasticsearch-HQ elasticsearch-HQ: Monitoring and Management Web Application for ElasticSearch instances and clusters
- https://medium.com/blackrock-engineering/utilizing-oauth-for-kafka-security-5c1da9f3d3d Utilizing OAuth for Kafka Security
14-07-2020
- https://martin.kleppmann.com/2020/07/06/crdt-hard-parts-hydra.html CRDTs: The Hard Parts — Martin Kleppmann’s talks
06-05-2020
- https://cloud.google.com/blog/topics/anthos/anthos-service-mesh-deep-dive Anthos Service Mesh last updates
- https://blog.laputa.io/graceful-shutdown-in-kubernetes-85f1c8d586da Graceful shutdown in Kubernetes. It's not as simple as it looks.
- https://www.scala-lang.org/blog/2020/05/05/scala-3-import-suggestions.html Scala 3 will be a so good langage with many Scala 2.x flaws fixed
18-03-2020
- https://blog.cloudera.com/benchmarking-time-series-workloads-on-apache-kudu-using-tsbs/ Apache Kudu Time Series benchmarking against InfluxDB, ClickHouse. Nice results.
08-03-2020
- https://github.com/adamgfraser/solving-the-dependency-injection-problem-with-zio/blob/master/solving-the-dependency-injection-problem-with-zio.pdf Can't wait to try these ZLayers with ZIO
- https://superorganizers.substack.com/p/how-to-build-a-learning-machine### How to Make Yourself Into a Learning Machine - Superorganizers
- https://medium.com/@ghostdogpr/graphql-in-scala-with-caliban-part-2-c7762110c0f9 GraphQL in Scala with Caliban — Query optimization. Amazing job.
- https://www.ardanlabs.com/blog/2020/02/docker-images-part1-reducing-image-size.html Docker Images : Reducing Image Size
- https://medium.com/nick-tune-tech-strategy-blog/visualising-sociotechnical-architecture-with-ddd-and-team-topologies-48c6be036c40 Visualising Sociotechnical Architecture with DDD and Team Topologies
- https://www.scala-lang.org/2020/02/20/community-build.html Scala/Dotty community builds evolution. Love to see the JDK11/14 compat growing too.
05-03-2020
- https://community.letsencrypt.org/t/2020-02-29-caa-rechecking-bug/114591 Let's Encrypt: millions of certificates revoked due to "CAA Rechecking Bug"
26-02-2020
- https://cwiki.apache.org/confluence/display/KAFKA/KIP-557%3A+Add+emit+on+change+support+for+Kafka+Streams Discard idempotent updates in Kafka Streams: that's great news because so often needed (bye dedup processors)
- https://www.rea-group.com/blog/to-kill-a-mockingtest/ Mocking code is a bad smell. I also really dislike it.
- https://blog.mozilla.org/netpolicy/2020/02/25/the-facts-mozillas-dns-over-https-doh/ DNS over HTTPs (DoH)
22-02-2020
- https://github.com/adamgfraser/solving-the-dependency-injection-problem-with-zio/blob/master/solving-the-dependency-injection-problem-with-zio.pdf ZIO Layers: a new way to deal with Dependency Injection. Can't wait to test it!
21-02-2020
- https://debezium.io/blog/2020/02/10/event-sourcing-vs-cdc/ Event Sourcing, CQRS, Change Data Capture
- https://sysdig.com/blog/kubernetes-limits-requests/ Understanding Kubernetes limits and requests
- https://blog.softwaremill.com/will-project-loom-obliterate-java-futures-fb1a28508232 Will Project Loom obliterate Java Futures?
11-02-2020
- https://www.matthowlett.com/2020-01-14-confluent-schema-registry-protobuf.html Protobuf support in the Confluent Schema Registry.
- https://www.lightbend.com/blog/alpakka-kafka-flow-control-optimizations A smart fix to Kafka to avoid dumping data then fetch them again
10-02-2020
- https://dotty.epfl.ch/blog/2020/02/05/22nd-dotty-milestone-release.html Scala 3 will be awesome
07-02-2020
- https://idursun.com/posts/rust_zero_cost_abstractions_in_action/ Rust zero cost abstractions in action. And it's awesome.
03-02-2020
- https://www.jesseyates.com/2020/01/01/high-performance-kafka-producers.html A simple guide to quickly tune Kafka Producers
- https://debezium.io/blog/2020/01/22/outbox-quarkus-extension/ Quarkus & Debezium using Outbox pattern
- https://fp-tower.github.io/2020-01-27-introducing-error-reporting-in-optics/ error reporting in optics using Dotty
30-01-2020
- https://www.confluent.io/blog/streaming-machine-learning-with-tiered-storage/ An example using Kafka Tiered Storage to store ML models (which can be updated in real-time)
- https://github.com/LINCnil/Guide-RGPD-du-developpeur Guide RGPD pour les développeurs <3
- https://cloud.google.com/blog/products/data-analytics/what-to-consider-in-an-apache-kafka-to-pubsub-migration Apache Kafka or Pub/Sub? I love comparing-marketing post like this. Pub/Sub is completing its offer and is becoming even more useful. The only thing I hate was: no ad-hoc dynamic consume à la Kafka (you have to create subscriptions beforehand)
- https://tech.ovoenergy.com/scala-3-and-what-it-means-to-me/ A nice recap of the changes from Scala 2 to Scala 3 Dotty
- https://medium.com/@leventov/cronscheduler-a-reliable-java-scheduler-for-external-interactions-cb7ce4a4f2cd Issues with the current Java schedulers (clock drifts, freezing..)
28-01-2020
- https://cloud.google.com/blog/products/containers-kubernetes/config-connector-bridges-kubernetes-gcp-resources Config Connector: manage your GCP resources with YAML. Not sure it's a good idea.
23-01-2020
- https://www.confluent.io/blog/infinite-kafka-storage-in-confluent-platform/ Tiered storage for Kafka. (I hope the impl will be free to use & open-source)
- https://cloud.google.com/blog/products/identity-security/introducing-google-clouds-secret-manager Secret Manager: the new "Vault" of GCP to Store and manage sensitive data
22-01-2020
- https://engineeringblog.yelp.com/2020/01/streams-and-monk-how-yelp-approaches-kafka-in-2020.html Streams and Monk – How Yelp is Approaching Kafka in 2020
17-01-2020
- https://blog.christianposta.com/microservices/istio-as-an-example-of-when-not-to-do-microservices/ From microservices to monolith: istiod in sigh! That's a good idea.
- https://humanreadablemag.com/issues/1/articles/unionizing-for-pleasure-and-profit Type level programming is awesome #scala
- https://www.mostly.codes/blog/creating-scalajs-gcp-cloud-functions GCP Cloud Functions with Scala.js in 10 lines(ish) - And 600 lines after transpilation, hm!
15-01-2020
- https://www.youtube.com/watch?v=bbss7elSfxs Modern Data Driven Applications with ZIO Streams #scala
04-01-2020
- https://www.infoq.com/presentations/data-streaming-kafka-debezium/?utm_campaign=infoq_content&utm_source=twitter&utm_medium=feed&utm_term=architecture-design Practical Change Data Streaming Use Cases with Apache Kafka & Debezium
- https://medium.com/@BladeCoder/exploring-kotlins-hidden-costs-part-1-fbb9935d9b62 Exploring Kotlin’s hidden costs, always good to know.
03-01-2020
- https://geirsson.com/2019.html Scala tooling state-of-art in 2019
29-12-2019
- https://www.lihaoyi.com/post/StandardizingIOInterfacesforScalaLibraries.html Standardizing IO Interfaces for Scala Libraries | Streaming payload à la Unix
- https://www.youtube.com/watch?v=mkQLU7OzqYM Adding laws to Tagless Final algebras #scala
- https://www.youtube.com/watch?v=16slh29iN1g BPF performance analysis at Netflix
- https://www.youtube.com/watch?v=AdNJ3fydeao Rethinking reactivity, demostrating Svelte. Lots of code generation (meta programming-like), but still a crappy templating language to learn inside a language.
- https://www.youtube.com/watch?v=r-TLSBdHe1A "Performance Matters" by Emery Berger. coz / jcoz
27-12-2019
- https://github.com/GoogleCloudPlatform/terraformer The inverse of Terraform, from resources to .tf <3
26-12-2019
- https://medium.com/google-cloud/cloud-run-vs-cloud-functions-whats-the-lowest-cost-728d59345a2e Cloud Run VS Cloud Functions: What’s the lowest cost?
24-12-2019
- https://quarkus.io/guides/kafka-streams#kafka-streams-health-checks Quarkus & Kafka Streams with Healthchecks
23-12-2019
- http://degoes.net/articles/fp-glossary A Glossary of Functional Programming
22-12-2019
- https://developer.ibm.com/blogs/kubernetes-helm-3/ A very good post explaining diffs between Helm 2 and 3
21-12-2019
- https://lemire.me/blog/2019/12/19/xor-filters-faster-and-smaller-than-bloom-filters/ Xor Filters: Faster and Smaller Than Bloom Filters
20-12-2019
- https://www.0x65.dev/blog/2019-12-14/the-architecture-of-a-large-scale-web-search-engine-circa-2019.html The Architecture of a Large-Scale Web Search Engine, circa 2019. A must-read if you wanna discover many cloud-native tools
- https://sbt-kubeyml.vaslabs.org/ Generate kubectl yaml direclty from sbt, useful with ci/cd
- https://zeebe.io/blog/2018/12/writing-an-apache-kafka-connector-for-zeebe/ Kafka Connector for Zeebe
- https://developer.ibm.com/series/reactive-in-practice/ A (long) complete guide to event-driven systems development. Using Java/Lagom/Cassandra/Kafka/Kubernetes/VueJS
- https://developer.ibm.com/tutorials/java-modularity-5/ Pitfalls of Java 9+ JPMS (modularity)
- https://www.youtube.com/watch?v=qYDcbcOVurc Using TLA+ for fun and profit in the development of Elasticsearch . I need to buy a TLA+ book.
- https://blog.rust-lang.org/2019/12/19/Rust-1.40.0.html Rust 1.40.0
- https://www.youtube.com/watch?v=FTsAXJdrJbI Everything you wanted to know about Stack Traces and Heap Dumps
19-12-2019
- https://medium.com/@jducoeur/explicit-nulls-are-in-efe4aecbc78f? Explicit nulls are in Dotty. Looks more like Kotlin now :)
- https://www.scala-lang.org/2019/12/18/road-to-scala-3.html Scala 2 to Scala 3. Gonna be awesome.
- https://rmoff.net/2019/12/18/detecting-and-analysing-ssh-attacks-with-ksqldb/ A really great walkthrough by Robin through ksqlDB using Elasticsearch, Neo4j
- https://towardsdatascience.com/kafka-gotchas-c1da4c0b3e95 Kafka Gotchas: "bad" defaults, not really multitenant, non-Java libs always "late" and not as bullet-proof as Java's?
18-12-2019
- https://www.confluent.io/blog/apache-kafka-producer-improvements-sticky-partitioner/ Kafka Producer: Sticky Partitioner, for better perf (less latency)
16-12-2019
- https://www.confluent.io/blog/apache-kafka-2-4-latest-version-updates/ Apache Kafka 2.4 - Latest Version, KIPs & New Features. Awesome release: fetch from replicas, consumer incremental rebalance protocol, mm2, non-key joins in Streams, and lots of new metrics everywhere, and Scala 2.13 <3
15-12-2019
- https://www.youtube.com/watch?v=Uav5jWHNghY An impressive code session by Martin Kleppmann to find & write the correctness proofs of a "simple" distributed systems with Isabelle/HOL, and explains the difference with TLA+.
- https://jeremyrsmith.github.io/polynote-2019-slides/ Polynote: Solving the Scala Notebook Experience. Using FP and ZIO all the way down. Great.
- https://medium.com/@masroor.hasan/tracing-infrastructure-with-jaeger-on-kubernetes-6800132a677 How to deploy Jaeger on Kubernetes
- https://medium.com/@wigahluk/generalizing-functions-with-profunctors-7773a83557b5 From functions to Profunctors
13-12-2019
- https://www.youtube.com/watch?v=fs-TkRkFgDI (very) fast Scala Builds & Test using Bazel (parallism, smart resolutions, distributed cache, devbox)
- https://appddeevvmeanderings.blogspot.com/2019/11/scalajs-zio-query-management-using-zio.html Oh my! Combining zio, scala.js, react, query management
11-12-2019
- https://medium.com/streamthoughts/understanding-kafka-partition-assignment-strategies-and-how-to-write-your-own-custom-assignor-ebeda1fc06f3 Kafka partition assignment strategies + custom assignor
- https://gvisor.dev/ A user-space kernel to provide secured & sandboxed environments for containers
- https://www.confluent.io/blog/kafka-connect-tutorial-transfer-avro-schemas-across-schema-registry-clusters/ Copy Avro schemas + update Kafka records using Connect SMT to "sync" two distinct Kafka clusters
- https://aws.amazon.com/builders-library/implementing-health-checks/?did=ba_card&trk=ba_card A superbe article about the complexity of health checks
- https://medium.com/pinterest-engineering/using-kafka-to-throttle-qps-on-mysql-shards-in-bulk-write-apis-a326ae0f1ac1 Using Kafka to throttle QPS on MySQL shards in bulk write APIs
- https://blog.pragmaticengineer.com/the-product-minded-engineer/ The Product-Minded Software Engineer: it should be the norm ¯_(ツ)_/¯
10-12-2019
- https://sematext.com/blog/kubernetes-elasticsearch/ Running & Deploying Elasticsearch on Kubernetes
- https://github.com/ahmetb/cloud-run-faq#how-is-it-different-than-app-engine-flexible Google Cloud Run compared to AppEngine Flex, AWS Fargate, Azure CI, ... and everything about Cloud Run to know
05-12-2019
- https://ordepdev.me/posts/tales-from-running-kafka-streams-in-production Tales from running Kafka Streams in Production (rocksdb, memory mngmt, external calls, ...)
30-11-2019
- https://medium.com/streamthoughts/introducing-azkarra-streams-the-first-micro-framework-for-apache-kafka-streams-e13605f3a3a6 Azkarra Streams : a sweet wrapper above Kafka Streams to simplify code + provide a nice UI to admin, see the DAG, do IQ etc.
29-11-2019
- https://github.com/awslabs/djl New! awslabs/djl: An Engine-Agnostic Deep Learning Framework in Java
- https://www.youtube.com/watch?v=mJDbQ2gqo2g Our friend Tim Berglung at GOTO 2019: Processing Streaming Data with KSQL
- https://timpigden.github.io/_pages/zio-http4s/intro.html ZIO, Http4s, Auth, Codecs and zio-test
- https://www.youtube.com/watch?v=vRnYCLy7C0o Build Yourself an Effect System, like ZIO #scala
- https://scalac.io/build-your-own-kafka-in-zio-queues-fibers/ After Kafka in Bash (;-)), know Kafka in ZIO using Queues & Fibers
- https://scalac.io/write-command-line-application-with-zio/ How to write a command-line application with ZIO #scala
- https://medium.com/criteo-labs/migrate-a-service-getting-200kqps-from-jackson-to-circe-a475b2718206 From Jackson to Circe: less cpu, more memory
- https://www.youtube.com/watch?v=nD-p-cEKjHE set up sbt projects
- https://medium.com/@endofcake/terraform-vs-cloudformation-1d9716122623 Terraform vs CloudFormation: TF mostly wins except for the management of the state, CF handles it for us
- https://blog.softwaremill.com/migrating-to-sttp-client-2-x-and-tapir-0-12-x-7956e6c79c52 sttp client and tapir evolving #scala
28-11-2019
- http://book.mixu.net/distsys/single-page.html Distributed systems for fun and profit. Perfect for whoever starting or working with distributed systems (everyone?)
26-11-2019
- https://dev.to/awwsmm/20-reasons-to-move-on-from-java-8-1dio 20 Reasons to Move On to Java >8, a nice recap
25-11-2019
- https://cloudflow.io/docs/current/get-started/deploy-to-gke-cluster.html Cloudflow: a new take to quickly develop & deploy distributed stream processing on k8s (define "Streamlets" aka connector, write the dependencies graph in yaml, them deploy them as pods)
24-11-2019
- https://www.youtube.com/watch?v=JoQN4xoXY5Y Quickly Analysing A Heap Memory Leak
- https://www.youtube.com/watch?v=aQb2_WrmED0 Consul et Conseul Connect Service Mesh chez Criteo
23-11-2019
- https://www.youtube.com/watch?v=hvYqSz_BgUM Netty 5 incoming, lots of performance improvements!
- https://medium.com/opentracing/opentracing-on-kubernetes-get-yer-tracing-for-free-7a69cca03c8a TIL we can easily create "webhooks" on any kubernetes operations through a dedicated resource (to alter how pods deploy, add sidecar etc.)
- https://www.youtube.com/watch?v=m64SWl9bfvk Rate limiting, Queues Theory, Little's Lawn, API Adaptative Capacity (using back-pressure signals)
22-11-2019
- https://gluonhq.com/gluon-substrate-and-graalvm-native-image-with-javafx-support/ Gluon Substrate and GraalVM Native Image with JavaFX support. That's. Awesome.
21-11-2019
- https://www.confluent.io/blog/intro-to-ksqldb-sql-database-streaming ksqlDB: previously KSQL, now an "event streaming database". It adds pull queries ("classic" SQL point-in-time query) & connectors management
- https://github.com/joaomilho/Enterprise /? ������ The Enterprise™ programming language ?/;;;
- https://blog.jetbrains.com/idea/2019/11/meet-grazie-the-ultimate-spelling-grammar-and-style-checker-for-intellij-idea/ Grazie plugin: less typos in all our code (IntelliJ IDEA)
- https://www.youtube.com/watch?v=WKR384ZeBgk Arrow Meta: metaprogramming in the Kotlin Compiler. Generate code at compile-time. <3
- https://tv.octo.com/videos/fine-tuning-kafka-allons-voir-sous-le-capot/ FR: Fine Tuning Kafka, allons voir sous le capot ! Kafka 101, la perte de données, la conf producer/consumer, JProfiler et les brokers
- https://www.getrevue.co/profile/zio/issues/zio-news-issue-2-209078 ZIO is improving and spread everywhere <3
18-11-2019
- https://medium.com/better-practices/api-specifications-d87588ac874 Bringing law and order to APIs with OpenAPI Specifications
- https://medium.com/@andy.bryant/processing-guarantees-in-kafka-12dd2e30be0e Processing guarantees in Kafka, at-least, at-once, effectively-once
14-11-2019
- https://medium.com/streamthoughts/apache-kafka-rebalance-protocol-or-the-magic-behind-your-streams-applications-e94baf68e4f2 Kafka Rebalance Protocol
- https://itnext.io/introduction-to-event-streaming-with-kafka-and-kafdrop-73290625b1e2 Introduction to Event Streaming with Kafka and Kafdrop
- https://medium.com/@johnclarke_82232/mono-or-multi-repo-6c3674142dfc Mono- or Multi-repo?
- https://blogs.apache.org/preview/kafka/?previewEntry=what-s-new-in-apache1 Kafka 2.4 changelog. Awesome.
- https://www.youtube.com/watch?v=MU8NapbG1IQ Understanding Low Latency JVM GCs, Shenandoah, C4
13-11-2019
- https://vimeo.com/370819261 Scala Italy 2019 - John A De Goes - A Tour of Functional Design
- http://reasonablypolymorphic.com/blog/protos-are-wrong/ Protobuffers Are Wrong: lack of compositionality & laws
12-11-2019
- https://medium.com/swlh/advantages-and-disadvantages-of-kubernetes-the-business-perspective-5bb81e4eb4cb Advantages and Disadvantages of Kubernetes
- https://blog.bernd-ruecker.com/the-microservice-workflow-automation-cheat-sheet-fc0a80dc25aa The Microservices Workflow Automation Cheat Sheet
- https://eng.lyft.com/open-sourcing-amundsen-a-data-discovery-and-metadata-platform-2282bb436234 Open Sourcing Amundsen: A Data Discovery And Metadata Platform
10-11-2019
- https://www.youtube.com/watch?v=iwSCtxMbBLI Beyond ByteBuffers by Brian Goetz (Memory Access API in Java)
- https://ebaytech.berlin/microservices-and-kafka-part-2-b37dd08a7d8f Microservices and Kafka — Part 2 - eBay Tech Berlin
- https://ebaytech.berlin/microservices-and-kafka-part-1-614767d27b20 Microservices and Kafka — Part 1 - eBay Tech Berlin
- https://blog.7mind.io/constructive-test-taxonomy.html Unit, Functional, Integration Test? Another test taxonomy proposed..
- https://dzone.com/articles/whats-the-proper-kubernetes-health-check-for-a-kaf Proper Kubernetes Health Check for a Kafka Streams Application
- https://medium.com/faun/invoking-the-aws-cli-with-terraform-4ae5fd9de277 Invoking the AWS CLI with Terraform
08-11-2019
- https://contributors.scala-lang.org/t/pre-sip-make-classes-sealed-by-default/3767/2 PRE-SIP: Make classes
sealed
by default: YES! #scala
07-11-2019
- https://www.ibm.com/cloud/blog/announcements/kafka-monthly-digest-october-2019 Kafka Monthly Digest: October 2019 | IBM
- https://blog.rust-lang.org/2019/11/07/Async-await-stable.html Async-await on stable Rust
- https://tech.ovoenergy.com/monorepo-microservices-in-go/ Monorepo Microservices using Go, Helm, Terraform
06-11-2019
- https://www.youtube.com/watch?v=5fqhT82wghY Apache Pulsar 101: architecture, concepts et comparaison
- https://www.youtube.com/watch?v=CwqFpSByEI0 Infrastructure As Code, il n'y a pas que Terraform dans la vie: Pulumi
05-11-2019
- https://www.youtube.com/watch?v=71yhnTGw0hY John De Goes - 12 Steps To Better #Scala (Part I)
- https://dev.to/fppt/managing-delivery-networks-a-use-case-for-graph-databases-2jb0 Delivery Networks: A Use Case For Graph Databases #scala #tinkerpop #graph
- https://blog.softwaremill.com/scala-application-lifecycle-from-pure-scala-to-fs2-5f2861005603 Scala application lifecycle, from pure Scala to cats IO to FS2
- https://eventmodeling.org/posts/what-is-event-modeling/ Event Modeling: What is it?
04-11-2019
- https://www.confluent.io/blog/event-sourcing-cqrs-stream-processing-apache-kafka-whats-connection/ Event sourcing, CQRS, stream processing and Apache Kafka: What’s the connection?
- https://www.hillelwayne.com/talks/distributed-systems-tlaplus/ Designing Distributed Systems with TLA+
- https://blog.colinbreck.com/on-embracing-error-in-distributed-software-systems/ On Embracing Error in Distributed Software Systems
- https://www.confluent.io/blog/apache-kafka-purgatory-hierarchical-timing-wheels/ Apache Kafka, Purgatory, and Hierarchical Timing Wheels - Confluent
03-11-2019
- https://www.confluent.io/blog/building-a-microservices-ecosystem-with-kafka-streams-and-ksql/ Building a Microservices Ecosystem with Kafka Streams and KSQL
- https://medium.com/expedia-group-tech/ml-in-ksql-a44d455b0687 PMML + KSQL
- https://www.youtube.com/watch?v=06iRM1Ghr1k What is Apache Kafka®? (Confluent Lightboard)
- https://www.youtube.com/watch?v=NFB5hYTNYOE Develop seamless web services with Mu - Oli Makhasoeva
- https://docs.google.com/presentation/d/16VdLeGwpKWRjA4H9ojWCGBWzSPKEo7p5cQRA74__ew0/edit#slide=id.p SBT, monorepo et livraison (ScalaIO19)
- https://harrylaou.com/slides/AlgebrasInProgramming.pdf Algebras In Programming (ScalaIO19)
- https://medium.com/@rsinghal757/kadanes-algorithm-dynamic-programming-how-and-why-does-it-work-3fd8849ed73d Kadane’s Algorithm Dynamic Programming
02-11-2019
- https://medium.com/teads-engineering/give-meaning-to-100-billion-events-a-day-part-ii-how-we-use-and-abuse-redshift-to-serve-our-data-bc23d2ed3e07 Give meaning to 100 Billion events a day, Redshift based & user-facing webapps
- https://polynote.org/ Polynote | The polyglot Scala notebook
- https://blog.timescale.com/blog/building-columnar-compression-in-a-row-oriented-database/ Building columnar compression in a row-oriented database
- https://cwiki.apache.org/confluence/display/KAFKA/KIP-470%3A+TopologyTestDriver+test+input+and+output+usability+improvements KIP-470: TopologyTestDriver test input and output usability improvements. Good stuff, to avoid everyone to create their own helpers
- https://medium.com/@ayanonagon/the-y-combinator-no-not-that-one-7268d8d9c46 The Y Combinator (no, not that one)
- http://blog.wikipme.fr/startup-plus-difficile-a-scaler-cest-lhumain/ Startup : le plus difficile à scaler, c’est l’humain
- https://www.slideshare.net/MarilynKol/rduire-la-dette-motionnelle-dans-une-quipe-scrum/1 Réduire la dette émotionnelle dans une équipe Scrum
26-10-2019
- https://medium.com/netflix-techblog/open-sourcing-polynote-an-ide-inspired-polyglot-notebook-7f929d3f447 Open-sourcing Polynote: an IDE-inspired polyglot notebook
- https://services.google.com/fh/files/misc/state-of-devops-2019.pdf State of DevOps
25-10-2019
- https://www.youtube.com/watch?v=WoP8p7oDe84 Trains & KSQL (Robin Moffatt)
19-10-2019
- https://www.youtube.com/watch?v=USgfku1h7Hw John De Goes - Upgrade Your Future (Scala Russia 28.09.2019) - YouTub
- https://www.scala-lang.org/2019/10/17/dependency-management.html Better management of transitive dependencies and conflicts with sbt #scala
18-10-2019
- https://medium.com/swlh/performance-comparison-between-apache-pulsar-and-kafka-latency-79fb0367f407 Performance Comparison Between Apache Pulsar and Kafka: Latency. Spikes for Kafka, no for Pulsar.
- https://medium.com/@antoine.doeraene/a-little-bit-of-data-science-in-scala-5caba1ad8d9f A little bit of Data Science in Scala
17-10-2019
- https://www.youtube.com/watch?v=93uE_kWWQjs Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started
- https://www.confluent.io/kafka-summit-san-francisco-2019/kafka-needs-no-keeper Kafka without Zookeeper explanations
- https://www.confluent.io/kafka-summit-san-francisco-2019/ksql-performance-tuning-for-fun-and-profit KSQL Performance Tuning for Fun and Profit, very good stuff
- https://www.confluent.io/kafka-summit-san-francisco-2019/why-stop-the-world-when-you-can-change-it-design-and-implementation-of-incremental-cooperative-rebalancing Why stop the world when you can change it? Design and implementation of Incremental Cooperative Rebalancing
- https://tokio.rs/blog/2019-10-scheduler/ Making the Tokio scheduler 10x faster #rust
10-10-2019
- https://www.youtube.com/watch?v=I3loMuHnYqw Adam Warski—Designing Programmer-Friendly APIs using Tapir library: excellent
08-10-2019
- https://medium.com/@cparageaud/aws-lambda-java-11-3-3-5492b13c1aba AWS Lambda : Java 11
- https://www.infoq.com/presentations/event-driven-benefits-pitfalls/ Opportunities and Pitfalls of Event-Driven Utopia- Excellent, get the same xp
07-10-2019
- https://www.youtube.com/watch?v=x5_MmZVLiSM Fabio Labella—How do Fibers Work? A Peek Under the Hood
- https://www.youtube.com/watch?v=PgQyCnqm4QQ Jorge Vicente Cantero—Design Challenges of Bloop
- https://www.confluent.io/blog/incremental-cooperative-rebalancing-in-kafka Incremental Cooperative Rebalancing in Apache Kafka
06-10-2019
- https://yokota.blog/2019/09/23/building-a-relational-database-using-kafka/ Building A Relational Database Using Kafka (+ Avro, Calcite, Omid, Avatica)
- https://databricks.com/blog/2019/09/16/adventures-in-the-tcp-stack-performance-regressions-vulnerability-fixes.html Troubleshooting TCP SACKs Vulnerability Fixes
- https://medium.com/@D11Engg/building-scalable-real-time-analytics-alerting-and-anomaly-detection-architecture-at-dream11-e20edec91d33 Building Scalable Real Time Analytics, classic Kafka way: Debezium, Connect, Streams/KSQL, Elasticsearch
- https://speakerdeck.com/kubukoz/flawless-testing-for-the-functional-folks Flawless testing for the functional folks #scala
- https://blog.softwaremill.com/from-transactional-to-type-safe-reasonable-transactions-a5019906245e From @Transactional to type-safe, reasonable transactions
- https://speakerdeck.com/nikkithean/kafka-on-kubernetes-keeping-it-simple Kafka on Kubernetes: Keeping It Simple
- https://speakerdeck.com/loicdivad/streaming-apps-and-poison-pills-handle-the-unexpected-with-kafka-streams Streaming Apps and Poison Pills: Handle the Unexpected with Kafka Streams
05-10-2019
- https://wikido.isoftdata.com/index.php?title=The_GROUPing_pitfall The SQL GROUPing pitfall
03-10-2019
- https://www.infoq.com/news/2019/09/cqrs-event-sourcing-production/ Day Two Problems When Using CQRS and Event Sourcing
15-09-2019
- https://www.confluent.io/blog/kafka-rebalance-protocol-static-membership Kafka Rebalance Protocol for the Cloud: Static Membership
- https://medium.com/better-programming/helm-3-fun-with-the-new-beta-8f91c70891ff Helm 3: Fun With the New Beta: no more "tiller"
- https://blog.colinbreck.com/on-eliminating-error-in-distributed-software-systems/ On Eliminating Error in Distributed Software Systems: Types! and FP. Simple as that.
12-09-2019
- https://lamport.azurewebsites.net/tla/paxos-algorithm.html Paxos Algorithm + TLA+ explained by Leslie Lamport
08-09-2019
- https://www.pulumi.com/blog/pulumi-1-0/ Pulumi 1.0 GA. Infrastructure as code FTW
05-09-2019
- https://www.cloudamqp.com/blog/2019-04-03-quorum-queues-internals-a-deep-dive.html CloudAMQP Quorum Queues
- https://nrinaudo.github.io/much-ado-about-testing/ Property based testing & Metamorphic testing
- https://www.infoq.com/presentations/microservices-ddd-bounded-contexts Bounded Contexts + Events + Commands
- https://www.infoq.com/presentations/ddd-functional-programming DDD, Event Sourcing
04-09-2019
- https://twitter.com/withoutboats/status/1027702531361857536 Rust: why async/await instead of do notation
- https://fp-tower.github.io/foundation/2-SideEffect.html Side Effect, IO, Futures, and Free monad
- https://www.youtube.com/watch?v=63x_G6vrwgs Ask Confluent #15: Attack of the Zombie Controller
30-08-2019
- https://blog.zenika.com/2019/08/30/cilium-firewall-pour-les-conteneurs/ Cilium : un firewall pour les conteneurs
- https://www.youtube.com/watch?v=KNqOWT0lOYY Temporal Modelling • Mathias Verraes
- https://vimeo.com/353579169 Travis Brown - Library design for Dotty: a preview of Cats and Circe in 2021
- https://www.youtube.com/watch?v=vGVJYoKIzjU John Hughes - Why Functional Programming Matters
- https://netdevconf.org/1.2/papers/ktls.pdf KTLS implementation (TLS management in kernel space)
28-08-2019
- https://medium.com/@bharatnc/kubernetes-garbage-collection-781223f03c17 Kubernetes Garbage Collection. TIL about "ownerReferences"
- https://levelup.gitconnected.com/kubernetes-merge-multiple-yaml-into-one-e8844479a73a Kubernetes: Merge Multiple YAML Files Into One. Kustomize.
- https://medium.com/@copyconstruct/monitoring-in-the-time-of-cloud-native-c87c7a5bfa3e A reference, about Monitoring and Observability
25-08-2019
- http://www.jonathanturner.org/2019/08/introducing-nushell.html Introducing nushell, an amazing new shell in Rust
- https://contributors.scala-lang.org/t/pre-sip-curried-varargs/3608 Pre SIP: Curried varargs in Scala
23-08-2019
- https://medium.com/@jondot/my-key-learnings-after-30-000-loc-in-rust-a553e6403c19 10 Key Learnings in Rust after 30,000 Lines of Code
- https://github.com/alexellis/inlets A better ngrok. Expose your local endpoints to the Internet
- https://engineering.linkedin.com/blog/2019/data-hub Data Hub: A Generalized Metadata Search & Discovery Tool | LinkedIn Engineering
- https://www.youtube.com/watch?v=m9cu4xUvrUs Resource composition in cats-effect with the Resource data type
20-08-2019
- https://www.confluent.io/blog/building-shared-state-microservices-for-distributed-systems-using-kafka-streams Kafka Streams and a Shared State Microservices REST API
18-08-2019
- https://www.confluent.io/blog/kafka-connect-improvements-in-apache-kafka-2-3 Kafka Connect Improvements in Apache Kafka 2.3
- https://video.ias.edu/VoevodskyMemConf-2018/0911-DanGrayson The mathematical work of Vladimir Voevodsky. Homotopy theory to type theory (HoTT)
17-08-2019
- https://instagram-engineering.com/static-analysis-at-scale-an-instagram-story-8f498ab71a0c Static Analysis at Scale in Instagram, using Pyre (for Python)
- https://medium.com/@mattia.battiston/why-i-love-trunk-based-development-641fcf0b94a0 Why I love Trunk Based Development (or pushing straight to master)
- https://medium.com/@ghostdogpr/wrapping-impure-code-with-zio-9265c219e2e Wrapping impure code with ZIO
- https://www.youtube.com/watch?v=VV9lPg3fNl8 GADTs in Dotty
- https://www.youtube.com/watch?v=v__IRT-QkwY Using Blocker in cats-effect for blocking IOs
- https://blog.ploeh.dk/2019/07/01/yes-silver-bullet/ "The only way to decrease the overall complexity is to reduce the accidental complexity."
15-08-2019
- https://www.youtube.com/watch?v=POUEz8XHMhE ZIO to rule them all
- https://medium.com/@steven.lemon182/why-our-team-cancelled-our-move-to-microservices-8fd87898d952 Why our team cancelled our move to microservices
- https://rmoff.net/2019/08/15/reset-kafka-connect-source-connector-offsets/ Reset Kafka Connect Source Connector Offsets
- https://stripe.com/en-fr/atlas/guides/andrew-chen-marketplaces Marketplaces
12-08-2019
- http://technosophos.com/2019/08/07/writing-a-kubernetes-controller-in-rust.html Writing a Kubernetes CRD Controller in Rust
09-08-2019
- https://jack-vanlightly.com/blog/2018/10/2/understanding-how-apache-pulsar-works Understanding How Apache Pulsar Works
- https://hal.archives-ouvertes.fr/hal-02114296/document Comparison Matrices of Semantic RESTful APIs Technologies
- https://martin.kleppmann.com/2019/06/27/hydra-interview.html Figuring out the future of distributed data systems (Martin Kleppmann)
- https://medium.com/@elizarov/callbacks-and-kotlin-flows-2b53aa2525cf Callbacks and Kotlin Flows
- https://dbmsmusings.blogspot.com/2019/06/correctness-anomalies-under.html Anomalies Under Serializable Isolation
- https://www.iteratorshq.com/blog/benchmarking-functional-error-handling-in-scala/ Benchmarking Functional Error Handling in Scala (Either[T], IO, ZIO..)
07-08-2019
- https://medium.com/@mattklein123/monorepos-please-dont-e9a279be011b Monorepos: Please don’t! It's not always pink. And far from it when it's a large company (>100)
05-08-2019
- https://tech.transferwise.com/achieving-high-availability-with-kafka-streams/ Achieving high availability with stateful Kafka Streams applications
02-08-2019
- https://cwiki.apache.org/confluence/display/KAFKA/KIP-500%3A+Replace+ZooKeeper+with+a+Self-Managed+Metadata+Quorum KIP-500: Replace ZooKeeper by "Kafka Controllers Quorum". It's official now!
- https://itnext.io/how-to-use-knative-pipelining-component-to-automate-an-application-build-and-deployment-on-442b0b1bebf Knative + Tekton integration
- http://eed3si9n.com/dependency-resolver-semantics semantics of dependency resolvers, comparison between maven, ivy, coursier
01-08-2019
- https://argumatronic.com/posts/2019-06-21-algebra-cheatsheet.html a Brief Guide to A Few Algebraic Structures
- https://www.slideshare.net/KaiWaehner/confluent-operator-as-cloudnative-kafka-operator-for-kubernetes Confluent Operator as Cloud-Native Kafka Operator for Kubernetes
30-07-2019
- https://banzaicloud.com/blog/kafka-on-istio-performance/ Kafka over Istio - benchmarks / GCP & EKS / plain, ssl, mtls
- https://www.youtube.com/watch?v=RtHA1YVLW5Y Cliff Click — A JVM Does That? ==> A LOT!
- https://www.confluent.io/online-talks/from-zero-to-hero-with-kafka-connect-on-demand From Zero to Hero with Kafka Connect!
28-07-2019
- https://www.youtube.com/watch?v=PQ5ykHwXJfA Understanding Low Latency JVM GCs: Shenandoah, ZGC, C4
25-07-2019
- https://speakerdeck.com/kubukoz/flawless-testing-for-the-functional-folks Flawless: a FP test lib, it's gonna be awesome
- https://lsug.github.io/workshop/scala/2019/07/21/workshop-run-scalac-run.html Using Bloop, GraalVM, and scalac profiling to reduce build time
- https://www.confluent.io/blog/fault-tolerance-distributed-systems-tracing-with-apache-kafka-jaeger Sending tracing spans into a kafka topic for later consumption by Jaeger
- https://medium.com/@george3d6/the-success-of-go-heralds-that-of-rust-73cb2e4c0500 "I think we could call Rust a superior language to Go in, quite literally, every single way possible." \o/
23-07-2019
- https://quarkus.io/blog/kafka-streams-applications-with-quarkus-and-microprofile/ Kafka Streams applications with Quarkus: auto-expose liveness check, metrics, native compilation. Very nice.
- https://jdk.java.net/jpackage/ TIL about jpackage in JDK 14+: package a Java app with its JRE.
- https://www.youtube.com/watch?v=GXJ0D2tfZCM Automerge: to deal with online collaboration without central servers
- https://www.infoq.com/presentations/graalvm-performance/ Performance GraalVM: it's not always what you want
- https://www.julian.com/blog/mental-model-examples "You are doing X. Why aren’t you doing Y instead? What would a mental model suggest is the best path forward?”
- https://blog.octo.com/en/cache-me-if-you-can-2/ A nice overview of the HTTP Caching system
- https://mixitconf.org/2019/the-internet-in-2030 The internet ... and the world in 2030
22-07-2019
- https://docs.confluent.io/5.3.0/release-notes.html Kafka 2.3.0 release notes + Connect + Streams + KSQL: huge!
- https://blog.pragmaticengineer.com/operating-a-high-scale-distributed-system/ Lots of good insights operating a distributed system
- https://objectcomputing.com/news/2019/07/18/unleashing-predator-precomputed-data-repositories Predator: Precomputed Data Repositories: aka compile-time repositories
21-07-2019
- https://github.com/scala/scala/releases/tag/v2.13.0?source=post_page--------------------------- Release Scala 2.13.0 · scala/scala: HUGE!
- https://medium.com/@linas.m/my-favorite-new-features-of-scala-2-13-standard-library-909a89b0da4 A bit about new stuff in Scala 2.13 stdlib
- https://blog.softwaremill.com/comparing-ethereum-and-the-libra-blockchain-64bec7dd70c0 Comparing Ethereum and the Libra blockchain
- https://fr.wikipedia.org/wiki/Effet_Dunning-Kruger Effet Dunning-Kruger: biais cognitif: "effet de surconfiance"
- https://www.lightbend.com/blog/scala-inliner-optimizer Scala Inliner and Optimizer
- https://debezium.io/blog/2019/02/19/reliable-microservices-data-exchange-with-the-outbox-pattern/ Data Exchange With the Outbox Pattern
- https://twitter.com/itrvd/status/1152580754393718786 ZStream upcoming in ZIO, very good stuff
17-07-2019
- https://www.lightbend.com/blog/use-kafka-streams-dynamically-controlled-streams An interesting take about Kafka Streams compared to Akka Streams, Flink, Spark
- https://blog.cloudera.com/blog/2019/07/yunikorn-a-universal-resource-scheduler/ YuniKorn: a "universal"/unified resource scheduler, run on Yarn or more interestingly on Kubernetes
- https://github.com/kubernetes-sigs/kube-batch A batch scheduler on kubernetes
11-07-2019
- https://medium.com/@dominik.tornow/the-kubernetes-scheduler-cd429abac02f Interesting insights around the Kubernetes Scheduler
09-07-2019
- https://medium.com/@ghostdogpr/combining-zio-and-akka-to-enable-distributed-fp-in-scala-61ffb81e3283 ZIO + Akka PubSub + Cluster Sharing for distributed computing
- http://natpryce.com/articles/000819.html Mistakes we made adopting event sourcing (and how we recovered)
- https://medium.com/@copyconstruct/distributed-tracing-weve-been-doing-it-wrong-39fc92a857df Very nice insights about Distributed Tracing tools: why we’ve been doing it "wrong"
- https://blog.colinbreck.com/rethinking-streaming-workloads-with-akka-streams-part-ii/#fnref2 I always like reading some Akka Streams processing. A very nice example of a pagination API converted to a generic "Source"
- https://www.youtube.com/watch?v=a3agLJQ6vt8 Structured Concurrency in Kotlin with coroutines
06-07-2019
- http://w.pitula.me/presentations/2019-07-lxscala/#/ From initial to final, tagged to tagless; why; lib vs apps
05-07-2019
- https://medium.com/nearprotocol/understanding-rust-lifetimes-e813bcd405fa Understanding Rust Lifetimes
- https://blog.jetbrains.com/scala/2019/07/02/functional-highlighting-for-functional-programming IntelliJ Scala is getting better at error highlighting
- https://itnext.io/kubernetes-ingress-controllers-how-to-choose-the-right-one-part-1-41d3554978d2 Kubernetes Ingress Controllers (nginx, aws alb..)
- https://medium.com/graalvm/safe-and-sandboxed-execution-of-native-code-f6096b35c360 Sandboxed execution of native code in GraalVM
04-07-2019
- https://www.buzzsprout.com/186154/1323595 Rolling Kafka Upgrades and Confluent Cloud ft. Gwen Shapira
- https://kafkaesque.io/7-reasons-we-choose-apache-pulsar-over-apache-kafka/ Stateless brokers (Pulsar), Separation of data and brokering (Pulsar), Queues & Topics
- https://www.youtube.com/watch?v=DBfmKE42PiY Kafka Streams, profiling, framegraphs
- https://www.youtube.com/watch?v=ryFAZZEZbyw OpenTracing -> OpenTelemetry
- https://medium.com/graalvm/isolates-and-compressed-references-more-flexible-and-efficient-memory-management-for-graalvm-a044cc50b67e GraalVM SubstrateVM has "Isolates" to provide a dedicated heap that can be teardown quickly. Useful to ensure isolation.
03-07-2019
- https://retrocomputing.stackexchange.com/questions/11533/why-did-moving-the-mouse-cursor-cause-windows-95-to-run-more-quickly "Moving the mouse cursor cause Windows 95 to run more quickly." Magic.
30-06-2019
- http://verraes.net/2019/05/ddd-msg-arch/ DDD and Messaging Architectures
- https://penberg.org/parakernel-hotos19.pdf I/O Is Faster Than the CPU – Let's Partition Resources and Eliminate (Most) OS Abstractions
26-06-2019
- https://gist.github.com/Matthias247/5e5e7430149bbb04eebf18cf31747fe0 Async/Await in rust: challenging
- https://www.confluent.io/blog/microservices-apache-kafka-domain-driven-design Microservices, Kafka, and DDD
24-06-2019
- https://www.defmacro.org/2019/03/26/startup-checklist.html Startup idea checklist
21-06-2019
- https://medium.com/solo-io/api-gateways-are-going-through-an-identity-crisis-d1d833a313d7 API Gateways, Management, Service Mesh
20-06-2019
- https://www.youtube.com/watch?v=li2aowPnezA Jun Rao, Confluent - Kafka Controller: A Deep Dive
- https://www.infoq.com/presentations/rust-tradeoffs/ How Rust Views Tradeoffs
18-06-2019
- https://blog.softwaremill.com/thread-shifting-in-cats-effect-and-zio-9c184708067b Thread shifting in cats-effect and ZIO – Reminds me of Kotlin coroutine withContext, great.
- http://degoes.net/articles/tagless-horror Why not use Tagless-Final in Scala
17-06-2019
- https://kubuszok.com/2019/io-monad-which-why-and-how/ IO monad: which, why and how. — A huge post tons of pointers
- https://medium.com/ssense-tech/csv-vs-parquet-vs-avro-choosing-the-right-tool-for-the-right-job-79c9f56914a8 CSV vs Parquet vs Avro
16-06-2019
- https://www.youtube.com/watch?v=OXP-sUS6ffE Lambda World 2018 - The Complexity Trap: Think Before You Leap
- https://www.slideshare.net/legendofklang/making-our-future-better The "new" Scala Future
15-06-2019
- https://julesh.com/2017/04/22/on-compositionality/ About compositionality and emergence
- https://www.youtube.com/watch?v=I1RAij4aX6Y Path-Dependent Types
- https://www.lightbend.com/blog/managing-streaming-and-queryable-state-in-spark-akka-streams-kafka-streams-flink Managing Streaming And Queryable State In Spark, Akka Streams, Kafka Streams, And Flink
- https://cloud.google.com/blog/products/networking/google-cloud-networking-in-depth-cloud-cdn Google Cloud networking in depth: Cloud CDN
- http://www.lihaoyi.com/post/HowtoworkwithHTTPJSONAPIsinScala.html How to work with HTTP JSON APIs in Scala
- https://www.teamten.com/lawrence/writings/why-i-dont-like-go.html Ten Reasons Why I Don't Like Golang | I wasn't aware of all the implicit conventions. I wonder if this has changed since 2016!
14-06-2019
- https://www.slideshare.net/Odersky/a-tour-of-scala-3 A Tour of Scala 3— It will be awesome to use <3
- https://medium.com/@olxc/the-evolution-of-a-scala-programmer-1b7a709fb71f The Evolution of a Scala Programmer – From beginning to typelevel & algebras masters
02-06-2019
- https://amplitude.engineering/dedupe-events-at-scale-f9e416e46ca9 Dedupe Events at Scale – Bloom Filters powered
- https://www.youtube.com/watch?v=tL6DtN0zhrQ Monitor Kafka Like a Pro - Good tips about monitoring Kafka brokers & clients
- https://www.youtube.com/watch?v=08eSR0vn4Vw ZIO to code a Concurrent Web Crawler purely functional <3
- http://verraes.net/2019/06/eventsourcing-patterns-migration-events-ghost-context/ Eventsourcing Patterns: Migration Events in a Ghost Context. LegacyCustomerWasImported. \o/
31-05-2019
- https://medium.com/free-code-camp/how-to-set-up-a-serious-kubernetes-terminal-dd07cab51cd4 Must have Kubernetes tools
30-05-2019
- https://www.infoq.com/fr/presentations/flowcon-2018-Arnaud-Lemaire Dette Technique Et Entropie Logicielle
- https://www.youtube.com/watch?v=pLISFJM22ro Et si on redémarrait l'agile ?
29-05-2019
- http://verraes.net/2019/05/eventsourcing-patterns-decision-tracking/ Eventsourcing Patterns: Decision Tracking
- https://www.youtube.com/watch?v=9xFfOhasiOE "CRDTs Illustrated" by Arnout Engelen
- https://www.ebayinc.com/stories/blogs/tech/monitoring-at-ebay-with-druid/ Monitoring at eBay with Druid
- https://queue.acm.org/detail.cfm?id=3321612 Online Event Processing - ACM Queue. Write into the logs then write into the DB using processors
28-05-2019
- https://www.confluent.io/blog/17-ways-to-mess-up-self-managed-schema-registry 17 Ways to Mess Up Self-Managed Schema Registry | "delete _schemas" ahah !
19-05-2019
16-05-2019
- https://www.youtube.com/watch?v=mGxcaQs3JWI Error Management: Future vs ZIO. I'm eager to use ZIO on something useful!
- https://www.lightbend.com/blog/sbt-1.3.0-release sbt 1.3.0-RC1 released. I miss working on a Scala project.
- https://www.ted.com/talks/simon_sinek_how_great_leaders_inspire_action?language=en Simon Sinek: How great leaders inspire action
- https://boyter.org/posts/file-read-challange/ Processing Large Files – Java, Go and 'hitting the wall'
- https://blog.cloudera.com/blog/2019/05/kafka-replication-the-case-for-mirrormaker-2/ MirrorMaker 2.0
- https://www.confluent.io/blog/introducing-cloud-native-experience-for-apache-kafka-in-confluent-cloud?mkt_tok=eyJpIjoiTlRnNU9XUXlaVGM0WTJJdyIsInQiOiI3V1FRSmtzMjk1aGxIZVVrbDZhYTRZTFZsR1wvclwvdmFjYWlJbEprSHI1M2dyTmxRZG5PUjZ5YTBjN2Rjc0RjbmI5d0VOR1luQ1JuMVFHUXBVOEo2U3lUbzhScTRlWXkzZFZnaUc0SysrZkFqTDBtekV6MG1JMXZtS3luWVYwNFczIn0%3D Kafka Serverless, awesome.
10-05-2019
- https://www.confluent.io/blog/journey-to-event-driven-part-4-four-pillars-of-event-streaming-microservices Four Pillars of Event Streaming Microservices
- https://medium.com/enfuse-io/a-diy-guide-to-kafka-connectors-38ad7cd82e02 Guide to Kafka Connectors deployments on Kubernetes
- https://www.youtube.com/watch?v=6n9Y5Ik4jGI Un peu de sociologie, appliquée à notre métier de développeur
07-05-2019
- http://pages.cs.wisc.edu/~rgrandl/papers/link.pdf Fast key-value stores: An idea whose time has come and gone
- https://tgrez.github.io/posts/2019-04-13-kafka-transactions.html Kafka transactions and fencing
02-05-2019
- https://www.youtube.com/watch?v=pRmwrp_99fA TLS 1.2 & 1.3
- https://blog.softwaremill.com/docker-support-in-new-java-8-finally-fd595df0ca54 Beware of Docker support in "old" Java 8
01-05-2019
- https://docs.google.com/document/d/1nFGazvrCvHMZJgFstlbzoHjpAVwv5DEdnaBr_5pKuHo/edit# Java Is Still Free
- https://github.com/google/flogger A Fluent Logging API for Java
27-04-2019
- https://medium.freecodecamp.org/optional-in-java-and-anti-patterns-using-it-7d87038362ba Optional datatype anti-patterns
25-04-2019
- https://medium.com/xebia-france/kafka-streams-a-road-to-autoscaling-via-kubernetes-417f2597439 Kafka-Streams: a road to autoscaling via Kubernetes
- https://medium.com/@wiemzin/concurrency-is-complicated-e44ddb5aa9ef Concurrency is complicated
- https://www.buzzsprout.com/episodes/1046878-diving-into-exactly-once-semantics-with-guozhang-wang Diving into Exactly Once Semantics with Guozhang Wang
23-04-2019
- https://blog.zenika.com/2019/04/23/zoom-sur-quarkus/ Zoom sur Quarkus
- https://www.slideshare.net/FlorentRamiere/apache-kafka-patterns-antipatterns Kafka anti-patterns
- https://www.slideshare.net/giridhar510/kafka-streams-fifth-elephant-2018 Kafka streams fifth elephant 2018
22-04-2019
- https://www.confluent.io/kafka-summit-ny19/exactly-once-semantics-revisted Kafka Exactly Once Semantics
19-04-2019
- http://degoes.net/articles/zio-cats-effect ZIO vs Cats Effect.
- https://contributors.scala-lang.org/t/proposal-to-revise-implicit-parameters/3044
def f given (u: Universe) (x: u.T) given Context = ...
- https://www.scala-lang.org/2019/04/16/metals.html Metals is now awesome to use in VSCode (code completion, diag, docs at point, hints..)
- https://possiblywrong.wordpress.com/2019/04/06/follow-up-i-found-two-identical-packs-of-skittles-among-468-packs-with-a-total-of-27740-skittles/ Dude found two identical packs of Skittles, among 468 packs with a total of 27,740 Skittles and make stats.
16-04-2019
- https://www.youtube.com/watch?v=d6WWmia0BPM ZIO STM in Scala for safe composable transactional boundaries
15-04-2019
- https://cloud.google.com/blog/topics/inside-google-cloud/100-plus-announcements-from-google-cloud-next19 122+ announcements from Google Cloud Next ‘19
13-04-2019
- https://medium.com/@elizarov/structured-concurrency-722d765aa952 Structured concurrency. Kotlin coroutines
04-04-2019
- https://www.youtube.com/watch?v=-KA3BSdqYug John A. De Goes at #ScalaUA - Thinking Functionally. From imperative buggy code to ZIO
03-04-2019
- https://www.youtube.com/watch?v=OMHG_p8VmcA Data Processing @Spotify using Scio
- https://www.youtube.com/watch?v=ei66Fr25Y2M Kotlin: Write Once, Run (Actually) Everywhere
- https://www.confluent.io/blog/ksql-whats-new-in-5-2 More operators for KSQL! (such as CASE)
- http://systemfw.org/TL-Summit-Philly-2019/#/ Ref + Deferred
- https://blog.univalence.io/typeclass-derivation-faites-eclore-vos-instances-avec-magnolia/ Typeclass derivation avec Magnolia
- https://chriswhocodes.com/hotspot_option_differences.html#JDK13 Differences between HotSpot VM Versions
02-04-2019
- https://andyadams.org/everything-i-know-about-freelancing/ Everything I know about freelancing
- https://www.youtube.com/watch?v=5iV_hB08Uns BostonDynamics strikes again: Handle Robot Reimagined for Logistics
- https://blog.cloudflare.com/1111-warp-better-vpn/ Warp: 1.1.1.1 VPN on mobiles!
30-03-2019
- https://killedbygoogle.com/ Killed by Google - Holy Moly
- https://killedbygoogle.com/ Killed by Google - Holy Moly
- https://www.confluent.io/blog/consuming-messages-out-of-apache-kafka-in-a-browser/2 Consuming Messages Out of Apache Kafka using Websockets in Webworkers
29-03-2019
- https://chrilves.github.io/hugo/posts/recursion_schemes_intro/ Recursion Schemes: the high-school introduction
- https://blog.oyanglul.us/scala/3-layer-cake 3 Layer Scala Cake
- http://pseudo.co.de/seastar-dpdk-web-framework-showdown/ Seastar DPDK Web Framework Showdown
- https://www.infoq.com/presentations/gcp-cloud-native-arch Google Cloud-native Architecture with Spring Cloud GCP
28-03-2019
- https://github.com/valeriansaliou/sonic A fast, lightweight & schema-less search backend. An alternative to Elasticsearch that runs on a few MBs of RAM.
26-03-2019
- https://chriskiehl.com/article/event-sourcing-is-hard Don't Let the Internet Dupe you, Event Sourcing is Hard
- https://vladikk.com/2017/03/20/tackling-complexity-in-cqrs/ Tackling Complexity in CQRS
22-03-2019
- http://archive.wikiwix.com/cache/?url=http%3A%2F%2Fwww.ics.uci.edu%2F~dutt%2Fics212-wq05%2Flogical-time-tutorial.pdf Capturing Causality in DIstributed Systems
- https://www.microsoft.com/en-us/research/uploads/prod/2016/12/Time-Clocks-and-the-Ordering-of-Events-in-a-Distributed-System.pdf Time-Clocks-and-the-Ordering-of-Events-in-a-Distributed-System
20-03-2019
- https://medium.com/devopslinks/how-to-build-a-serverless-ci-cd-pipeline-on-aws-907be91c2e48 How to build a serverless CI/CD pipeline on AWS
- https://www.confluent.io/blog/kafka-streams-take-on-watermarks-and-triggers Kafka Streams' Take on Watermarks and Triggers
18-03-2019
- http://tamaszilagyi.com/blog/2019/2019-03-05-dbt/ ETL with dbt
- https://rjzaworski.com/2019/03/7-commandments-for-event-driven-architecture Some tips for Event-Driven Architecture
16-03-2019
- http://www.batey.info/docker-jvm-k8s.html The JVM in Docker 2018
- https://medium.com/bakdata/fluent-kafka-streams-tests-e641785171ec A Fluent Kafka Streams tests lib
- https://www.ibm.com/blogs/bluemix/2019/03/kafka-monthly-digest-february-2019/ Kafka Monthly Digest: February 2019
- https://quarkus.io/get-started/ Quarkus - GraalVM powered framework to write an app quickly
- https://www.youtube.com/watch?v=V5bhLd_DPjM RSocket & Proteus to abstract transport paths & services addressing (and providing dtracing)
- https://www.confluent.io/blog/kafka-connect-deep-dive-error-handling-dead-letter-queues A good article on error handling with Kafka Connect
- https://techmovers.salemove.com/infrastructure/2018/11/01/Productionproofing+EKS.html Tons of feedback about running Kubernetes on EKS. Careful of IPs availability, kernel version, cronjobs and ips, dns SPoF
- https://medium.com/@muuki88/follow-the-stacktraces-jvm-performance-profiling-3c371d323e5f Never use exceptions for control flow in your hot code path.
- https://aws.amazon.com/blogs/aws/new-open-distro-for-elasticsearch/ New Open Distro for Elasticsearch by AWS
- https://blog.koan.co/how-on-demand-pricing-slashed-our-dynamodb-bill-by-90-27857c49f30b Switching to On-Demand DynamoDB to reduce bill
- https://github.com/JohnSully/KeyDB Multithreaded Fork of Redis
08-03-2019
- https://medium.com/solo-io/building-a-control-plane-for-envoy-7524ceb09876 Gloo, a Control Plane for Envoy
- https://www.triplequote.com/blog/2019-guide-to-amazon-instances/ "Scala 2.12.8 turned out to be 20-25% faster so the upgrade is totally worth it."
07-03-2019
- https://github.com/GoogleContainerTools/distroless Language focused docker images, minus the operating system (no shell)
- https://www.youtube.com/watch?v=F02LKnWJWF4 Functional Programming Patterns with Java8
- https://sematext.com/blog/x-pack-alternatives/ Elastic Stack (X-Pack) Alternatives
- https://blog.softwaremill.com/final-tagless-seen-alive-79a8d884691d Comparing Final Tagless, ZIO env, Free moads, Reader Monad
06-03-2019
- https://developer.ibm.com/tutorials/reactive-in-practice-1/ Reactive in practice: Event storming the stock trader domain
- https://drive.google.com/file/d/1Z7NK59Ct29AWd-8ZKdf3Y0R2Gqyp_UEb/view Cultivating Production Excellence - Measure, Debug, Collaborate, Fix.
- https://www.youtube.com/watch?v=HgtRAbE1nBM Is It Time to Rewrite the Operating System in Rust?
- https://github.com/micro/go-micro micro/go-micro: A microservice framework in Go
- https://www.infoq.com/articles/modeling-uncertainty-reactive-ddd Modeling Uncertainty with Reactive DDD
- https://www.erikheemskerk.nl/ddd-persistence-recorded-event-driven-persistence/ DDD Persistence: Recorded Event-Driven Persistence
- https://blog.pragmatists.com/refactoring-from-anemic-model-to-ddd-880d3dd3d45f Refactoring from anemic model (no business rules inside) to DDD
- https://www.slideshare.net/ziobrando/event-storming-recipes Event storming recipes
- https://blog.statebox.org/modularity-vs-compositionality-a-history-of-misunderstandings-be0150033568 Modularity vs Compositionality
- https://cloud.google.com/blog/products/databases/go-global-with-cloud-bigtable Cloud Bigtable now cross-region replicated
- https://github.com/wwerner/event-storming-cheatsheet Short cheat sheet for preparing and facilitating event storming workshops
- https://www.slideshare.net/jclaes/workshop-event-storming Workshop event storming
- https://www.youtube.com/watch?v=73sAjy8rvBM Event-driven, est-ce que je suis prêt ? - Excellent talk sur pourquoi faire du Event Driven
- http://www.touilleur-express.fr/2014/05/20/eventstorming-technique-de-modelisation-en-equipe/ EventStorming, technique de modélisation en équipe – Le Touilleur Express
- https://medium.com/nick-tune-tech-strategy-blog/managing-complexity-in-complex-adaptive-systems-with-domain-driven-design-eb79f0ca37bb Managing Complexity in Complex Adaptive Systems with Domain-Driven Design
- https://www.infoq.com/articles/ddd-contextmapping Strategic Domain Driven Design with Context Mapping
03-03-2019
- http://tonsky.me/blog/github-redesign/ Redesigning Github repository page
- https://www.confluent.io/blog/put-several-event-types-kafka-topic/ Should You Put Several Event Types in the Same Kafka Topic? Look at option: key|value.subject.name.strategy
- https://www.confluent.io/blog/how-choose-number-topics-partitions-kafka-cluster How to choose the number of topics/partitions in a Kafka cluster?
- https://www.confluent.io/kafka-summit-sf18/digital-transformation-in-healthcare-with-kakfa Digital Transformation in Healthcare with Kafka—Building a Low Latency Data Pipeline
- https://issues.apache.org/jira/browse/KAFKA-4881 Add internal leave.group.on.close config to consumer — From 2 rebalances to 1 in Kafka Streams
- https://www.youtube.com/watch?v=UC9yFQOJtbQ Neha Narkhede (CTO, Confluent) | SpringOne Platform 2018
- https://www.youtube.com/watch?v=SQt5RNcMDrc Ask Confluent #10 and all of them!: Cooperative Rebalances for Kafka Connect
- https://speakerdeck.com/rmoff/the-changing-face-of-etl-event-driven-architectures-for-data-engineers The Changing Face of ETL: Event-Driven Architectures for Data Engineers
02-03-2019
- https://medium.com/jayanthg/transparently-securing-kafka-istio-style-with-up-to-300-higher-performance-than-native-tls-in-aa95731b5d40 Securing Kafka with Istio
28-02-2019
- https://databricks.com/blog/2019/02/27/speedy-scala-builds-with-bazel-at-databricks.html My next Scala project will use Bazel, so nice x_x
- https://medium.com/@cheron.antoine/reactor-java-1-how-to-create-mono-and-flux-471c505fa158 Introduction to Reactor
26-02-2019
- http://degoes.net/articles/zio-environment Read the article to get the talk quickly
- https://skillsmatter.com/skillscasts/13247-scala-matters ZIO[R, E, A] instead of Final Tagless. Very interesting solution less complex (?) and with a better Scala compiler help (type inference, type aliases..)
25-02-2019
- https://medium.com/@teivah/understanding-the-lmax-disruptor-caaaa2721496 LMAX Disruptor - A inter-thread messaging Java lib I didn't used yet, look so nice.
24-02-2019
- https://cloud.google.com/blog/products/ai-machine-learning/enabling-connected-transformation-with-apache-kafka-and-tensorflow-on-google-cloud-platform A (marketing) article about running Confluent Center + TensorFlow on GCP
22-02-2019
- https://www.confluent.io/blog/improving-stream-data-quality-with-protobuf-schema-validation Improving Stream Data Quality with Protobuf Schema Validation
- https://pythonspeed.com/articles/faster-db-tests/ Use real db in tests using Docker and removing fsync() calls, or use RAM fs
- https://dbdiagram.io/home Nice tool! Database Relationship Diagrams Design Tool
- https://www.reactivesystems.eu/2019/02/19/dont-use-awaitresult.html Don't Use Await.result! - Clearly not
- https://www.cockroachlabs.com/blog/jepsen-tests-lessons/ CockroachDB fixing a bug thanks to nightly Jepsen tests
21-02-2019
- https://queue.acm.org/detail.cfm?id=3314115 Identity by Any Other Name
- https://www.confluent.io/blog/sysmon-security-event-processing-real-time-ksql-helk Sysmon Security Event Processing in Real Time with KSQL
18-02-2019
- https://medium.com/@adirmashiach/defend-your-infrastructure-handling-3-000-hungry-users-379783b24d51 Defend Your Infrastructure — "1 user, who created 1 scheduled report that generated thousands of Impala queries per hour." :o
- https://streaml.io/blog/saving-money-with-apache-pulsar-tiered-storage Saving Money with Apache Pulsar Tiered Storage
- https://www.youtube.com/watch?v=_ahvzDzKdB0 Awesome talk: Growing a Language, by Guy Steele
- https://www.infoq.com/news/2019/02/rethinking-observability Three Pillars with Zero Answers: Rethinking Observability
- https://www.youtube.com/watch?v=8pTEmbeENF4 Bret Victor The Future of Programming
16-02-2019
- https://medium.com/pinterest-engineering/how-pinterest-runs-kafka-at-scale-ff9c6f735be How Pinterest runs Kafka at scale
- https://hortonworks.com/blog/introducing-hortonworks-streams-messaging-manager-smm/ Streams Messaging Manager (SMM), monitoring Kafka ecosystem
- https://databricks.com/blog/2019/02/15/how-to-work-with-avro-kafka-and-schema-registry-in-databricks.html How to Work with Avro, Kafka, and Schema Registry with Spark
14-02-2019
- https://www.youtube.com/watch?v=TjEbd9BcL6c Redesigning management -- le don. ted talk sur le fait de donner pleinement et de savoir recevoir
13-02-2019
- https://typelevel.org/blog/2019/02/06/algebraic-api-design.html Using a Monte Carlo strategy to resolve SameGame, i love it!
- https://www.oreilly.com/ideas/why-local-state-is-a-fundamental-primitive-in-stream-processing Why local state is a fundamental primitive in stream processing - Samza, the premises of Kafka Streams!
- https://www.confluent.io/blog/journey-to-event-driven-part-2-programming-models-event-driven-architecture Definitely yes! "You don’t need yet another microservice framework when you use Kafka as an event streaming platform"
12-02-2019
- http://blemoine.github.io/xke-types/ Ce type ne me revient pas !
- https://github.com/antonmedv/fx a JSON viewer in cli
- https://www.confluent.io/blog/journey-to-event-driven-part-1-why-event-first-thinking-changes-everything Why Event-First Thinking Changes Everything
- https://www.confluent.io/blog/kafka-connect-jdbc-source-connector-deep-dive Kafka Connect JDBC Source Connector
10-02-2019
- https://engineering.linkedin.com/blog/2019/02/introducing-kafka-cruise-control-frontend Introducing Kafka Cruise Control Frontend
09-02-2019
- https://thehoard.blog/techniques-to-achieve-high-write-throughput-with-elasticsearch-519ead926b63 Achieve High Write Throughput With Elasticsearch
- https://medium.com/@lukasz.antoniak/apache-kafka-leaves-the-zoo-bef529ba82b7 Apache Kafka without ZK but Atomix
07-02-2019
- https://www.youtube.com/watch?v=fQfMiUDsLv4 Jakub Kozlowski, Microservices with fp, http4s and doobie
- https://medium.com/@shl/reflecting-on-my-failure-to-build-a-billion-dollar-company-b0c31d7db0e7 Gumroad—Reflecting on My Failure to Build a Billion-Dollar Company
- https://cloud.google.com/blog/products/application-development/build-containers-faster-with-cloud-build-with-kaniko Kaniko, to build containers faster within Cloud Build (cache)
04-02-2019
- https://cloud.google.com/blog/products/application-development/introducing-websockets-support-for-app-engine-flexible-environment WebSockets for App Engine Flexible
- https://blogs.dropbox.com/tech/2019/01/finding-kafkas-throughput-limit-in-dropbox-infrastructure/ Finding Kafka’s throughput limit: 60MB/s per broker
- https://blog.godatadriven.com/spark-beware Spark and its lazyness could lead to bugs
03-02-2019
- https://overreacted.io/react-as-a-ui-runtime/ Deep dive into React
02-02-2019
- https://vasters.com/blog/data-encodings-and-layout/ Data Encodings and Layout
01-02-2019
- https://www.youtube.com/watch?v=_ahvzDzKdB0 Growing a Language, by Guy Steele
- https://pchiusano.github.io/2016-02-25/tech-adoption.html Design for experts; accomodate beginners
- https://www.iteratorshq.com/blog/scala-compiler-phases-with-pictures/ Scala compiler phases with pictures
31-01-2019
- https://www.infoq.com/news/2019/01/envoy-reddit Adopting Envoy as a Service-to-Service Proxy at Reddit
- https://medium.com/@vroyer/kubernetes-logs-analysis-with-elassandra-fluent-bit-and-kibana-4f827854e5c8 Kubernetes logs analysis with Elassandra, Fluent-Bit and Kibana
- https://www.confluent.io/blog/journey-to-event-driven-part-1-why-event-first-thinking-changes-everything Journey to Event Driven – Part 1: Why Event-First Thinking Changes Everything | Confluent
- http://marxsoftware.blogspot.com/2019/01/jep-280-indify-string-concatenations.html Inspired by Actual Events: JDK 9/JEP 280: String Concatenations Will Never Be the Same
27-01-2019
- https://syslog.ravelin.com/the-joy-and-pain-of-using-google-bigtable-4210604c75be The Joy and Pain of using Google BigTable – "If you use Bigtable, you should be using region replication and failover. Otherwise, you will see failed requests."
- https://medium.com/@unmeshvjoshi/choosing-a-stream-processing-framework-spark-streaming-or-kafka-streams-or-alpakka-kafka-fa0422229b25 Choosing a Stream Processing framework. Spark Streaming or Kafka Streams or Alpakka Kafka?
- https://www.youtube.com/watch?v=OmJ-4B-mS-Y The Map of Mathematics
26-01-2019
- https://alex.dzyoba.com/blog/envoy/ A small comparaison between Envoy and nginx
- http://degoes.net/articles/zio-threads Thread Pool Best Practices with ZIO
25-01-2019
- https://tech.transferwise.com/achieving-high-availability-with-kafka-streams/ Rolling upgrades with Kafka Streams applications
- https://www.cockroachlabs.com/blog/consistency-model/ A great reminder of consistency models (and ACID), and how CRDB deals with them
- https://www.47deg.com/blog/introducing-the-mu-open-source-library/ Mu: FP (tagless final) to communicate between microservices <3
22-01-2019
- https://davidgom.es/porting-30k-lines-of-code-from-flow-to-typescript/ Porting 30K lines of code from Flow to TypeScript. Flow=better inference; TS=better community/definitions
- https://github.com/schollz/howmanypeoplearearound Count the number of people around you by monitoring wifi signals
21-01-2019
- http://squidarth.com/scala/types/2019/01/11/type-erasure-scala.html Type Erasure in Scala
- https://www.cockroachlabs.com/blog/cockroachdb-on-rocksd/ CockroachDB built on top of RocksDB
- https://github.com/jpzk/mockedstreams Testing Kafka Streams in Scala
- https://sematext.com/blog/rum-vs-apm/ What is RUM and APM when considering monitoring
18-01-2019
- https://www.youtube.com/watch?v=rhvoKCS5v9g Rob Norris presenting skunk features
17-01-2019
- https://kubernetes.io/blog/2019/01/15/container-storage-interface-ga/ Container Storage Interface (CSI) for Kubernetes is now GA
- https://github.com/tantivy-search/tantivy Tantivy is a full-text search engine library inspired by Apache Lucene and written in Rust
- https://engineeringblog.yelp.com/2019/01/migrating-kafkas-zookeeper-with-no-downtime.html Migrating Kafka's Zookeeper With No Downtime
- https://grahamlyons.com/article/everything-you-need-to-know-about-networking-on-aws AWS networking 101
16-01-2019
- https://medium.com/@daniel.p.woods/on-infrastructure-at-scale-a-cascading-failure-of-distributed-systems-7cff2a3cd2df A nice story about k8s & docker cascading failure (read comments for more)
- https://dawnlabs.io/now-2/ Migrating to Now 2.0: from expressjs to lambdas!
11-01-2019
- https://cloud.google.com/blog/products/identity-security/identity-and-authentication-the-google-cloud-way Identity and authentication, the Google Cloud way
- https://risingstars.js.org/2018/en/ 2018 JavaScript Rising Stars
10-01-2019
- https://www.infoq.com/presentations/geode-architecture Geode is Not a Cache, it's an Analytics Engine: running functions directly on data, on the Geode nodes
- http://degoes.net/articles/rotating-effects High-Performance Functional Programming Through Effect Rotation | Looks like IndexedReaderWriterStateT in cats :-)
06-01-2019
- https://shipilev.net/jvm-anatomy-park/22-safepoint-polls/ JVM Anatomy Park #22: Safepoint Polls
05-01-2019
- http://www.lihaoyi.com/post/CompactStreamingPrettyPrintingofHierarchicalData.html Compact, Streaming Pretty-Printing of Hierarchical Data
26-12-2018
- https://www.youtube.com/watch?v=7eEOzguzOg0 Scaling Kafka at Datadog with Kubernetes and Kafka-Kit
- https://github.com/actix/actix An Actor framework for Rust
24-12-2018
- https://eng.lyft.com/running-apache-airflow-at-lyft-6e53bb8fccff Running and monitoring Airflow At Lyft
- https://github.com/Wikia/discreETLy ETLy is an add-on dashboard service on top of Apache Airflow.
- https://medium.com/@rinu.gour123/kafka-performance-tuning-ways-for-kafka-optimization-fdee5b19505b Some tips around Kafka Performance Tuning
- https://code.fb.com/data-infrastructure/hyperloglog/ HyperLogLog in Presto: Faster cardinality estimation
23-12-2018
- https://github.com/bkirwi/decline A composable command-line parser for Scala.
22-12-2018
- http://mikehadlow.blogspot.com/2012/05/configuration-complexity-clock.html The Configuration Complexity Clock: from hardcoded values to config to rules to dsl to hard coded
- https://www.youtube.com/watch?v=WtPFvLfHYtM Adding kind-polymorphism to the Scala programming language
- https://www.iteratorshq.com/blog/tagless-with-discipline-testing-scala-code-the-right-way/ Using Discipline to test Tagless final code in Scala, very convincing
21-12-2018
- https://cloud.google.com/blog/products/gcp/every-gcp-blog-post-2018 "557 GCP blog posts from 2018" OMG!
- https://scalameta.org/metals/blog/2018/12/12/fast-goto-definition.html metals for Scala in VSCode <3
- https://kubuszok.com/2018/different-ways-to-understand-a-monad/ monads, free monads, monad transformers, the whole thing
- https://medium.com/zyseme-technology/functional-references-lens-and-other-optics-in-scala-e5f7e2fdafe Functional references: Lens and other Optics in Scala
16-12-2018
- https://medium.com/@rinu.gour123/apache-kafka-security-need-and-components-of-kafka-52b417d3ca77 Apache Kafka Security
- https://skillsmatter.com/skillscasts/12811-introduction-to-kafka-streaming Using Kafka Streams to process __consumer_offsets
- https://skillsmatter.com/skillscasts/12634-cats-effect-tagless-final-and-beyond Cats Effect, Tagless Final & beyond
- https://skillsmatter.com/skillscasts/13304-kotlin-vs-scala Still not convined why would I use Kotlin instead of Scala :|
15-12-2018
- https://skillsmatter.com/skillscasts/12805-factor-recursion-out-of-your-codebase Recursion Schemes
- https://github.com/grafana/loki Like Prometheus, but for logs.
- https://github.com/GoogleChromeLabs/quicklink Add for all in the page, to improve load time of next pages
- https://jakearchibald.com/2018/when-packages-go-bad/ When packages (npm) go bad
- https://m.signalvnoise.com/give-it-five-minutes-b8115d6f2361 Give it five minutes <3
14-12-2018
- https://blog.buildo.io/anatomy-of-a-scala-quirk-b8c086b56423 wtf with: List("a", "b", "c").toSet() + "d"
- https://www.cockroachlabs.com/blog/2018_cloud_report/ AWS Outperforms GCP in the 2018 Cloud Report, uh
12-12-2018
- https://github.com/softwaremill/tapir Generate akka-http or openapi client from a Scala val. Very nice, compile-time check.
- http://enear.github.io/2018/12/11/imposing-invariants-in-scala/ Imposing invariants in Scala
- https://tpolecat.github.io/2014/06/09/methods-functions.html Methods (not values) or functions (values)?
- https://www.youtube.com/watch?v=vKrCdO5NgrA Functional Domain Modeling with Effects
- https://underscore.io/blog/posts/2018/12/12/bridges.html Bridging Scala and the Front-End: generate typescript or flow types from Scala
10-12-2018
- https://www.youtube.com/watch?v=mLJYODobz44 Scalaz Stream: Rebirth with ZIO !
- https://typelevel.org/blog/2018/11/28/http4s-error-handling-mtl-2.html Error handling in Http4s with classy optics, very interesting!
- https://www.lightbend.com/stateful-cloud-native-services-with-akka-and-kubernetes Akka + Kubernetes
09-12-2018
- https://kubukoz.github.io/talks/ocado-concurrency-cats/slides/ Concurrency with Cats
- https://stackoverflow.com/questions/53451103/java-using-much-more-memory-than-heap-size-or-size-correctly-docker-memory-limi/53624438#53624438 Sizing JVM memory and link with the containers
- https://chrilves.github.io/hugo/posts/folds/ Let's meet the charming fold family
08-12-2018
- https://vimeo.com/294736344 Why Ref[F, A] rocks, compared to the State monad
07-12-2018
- https://medium.com/@adam_carroll/java-packager-with-jdk11-31b3d620f4a8 Packaging a JavaFX app with Java Packager in JDK 11
- https://overreacted.io/why-do-react-elements-have-typeof-property/ Interesting story of why Do React Elements Have a $$typeof Property?
- https://blog.npmjs.org/post/180868064080/this-year-in-javascript-2018-in-review-and-npms Predictions: React, GraphQL, TypeScript. ORLY?
- https://blogs.msdn.microsoft.com/typescript/2018/12/05/intellicode-for-typescript-javascript/ ML incoming in our IDE: IntelliCode for TypeScript/JavaScript
- https://scalameta.org/metals/ Metals, an LSP for Scala, integrated with VSCode <3
04-12-2018
- https://code.quicksign.io/kafka-encryption/ Kafka Encryption Serdes
- https://blog.twitter.com/engineering/en_us/topics/insights/2018/twitters-kafka-adoption-story.html Twitter going from their DistributedLog to Kafka. Better p99 latency. Forgetting the separation serving/storage layer (It's the same for Kafka)
- https://github.com/wepay/kafka-connect-bigquery A Kafka Connect BigQuery sink connector
- https://stripe.com/atlas/guides/scaling-eng Stripe Atlas: Guide to scaling engineering organizations / recruiting process
03-12-2018
- https://blog.zenika.com/2018/12/03/tdd-est-mort-longue-vie-tcr/ TCR: test && commit || revert
02-12-2018
- https://blog.kubukoz.com/what-makes-a-function-pure What makes a function pure?
01-12-2018
- https://www.youtube.com/watch?v=A8IO7QdEOGI Akka Streams to ES ingestion
- https://www.youtube.com/watch?v=x3GLwl1FxcA Compose your program flow with fs2.Stream
- https://databricks.com/blog/2018/11/30/apache-avro-as-a-built-in-data-source-in-apache-spark-2-4.html Reading Avro 2 times faster with builtin avro Spark module
- https://speakerdeck.com/mpilquist/concurrency-with-cats-effect Concurrency with Cats Effect
- https://underscore.io/blog/posts/2018/03/20/fs2.html Tips for working with FS2
30-11-2018
- https://blog.cloudflare.com/cloud-computing-without-containers/ No Containers but V8 Isolated environments
- https://blog.golang.org/go2-here-we-come Go 2!
29-11-2018
- https://www.youtube.com/watch?v=pFZBs_8hmyo Deploying Kafka Streams Applications + Kubernetes
- https://reactjs.org/blog/2018/11/27/react-16-roadmap.html React 16.x Roadmap
- https://github.com/gvolpe/http4s-tracer End-to-end tracing system for Http4s
- https://wordsandbuttons.online/fortran_is_still_a_thing.html [About Fortran] Many thought that the competition will never start due to the lack of applicants. In fact, it was cancelled for the exact opposite reason.
- https://nginxconfig.io/ Generate nginx config easily
- https://github.com/BcRikko/NES.css NES-style CSS Framework
27-11-2018
- https://www.youtube.com/watch?v=XO55cz7fg-g BDX I/O 2018 - Mon premier service en Rust - Francois Teychene
- https://www.infoq.com/news/2018/11/google-squoosh-pwa-webassembly Squoosh! Image Compression PWA labs
26-11-2018
- https://blog.softwaremill.com/correlation-ids-in-scala-using-monix-3aa11783db81 Correlation IDs in Scala using Monix
- https://stackoverflow.com/questions/20918650/what-are-the-benefits-of-javas-types-erasure What are the benefits of Java's types erasure?
- https://zeit.co/blog/ncc ncc: Node.js Compiler Collection. Easily package a js app, like for serverless programs
23-11-2018
- https://medium.freecodecamp.org/a-streaming-library-with-a-superpower-fs2-and-functional-programming-6f602079f70a A small FS2 introduction
- https://medium.com/@boriscoder/peeking-under-the-hood-of-redesigned-gmail-dd84b532e0f5 I hope a rewrite of gmail with modern tech is in progress
- http://www.aston.ac.uk/news/releases/2018/november/scientists-improve-smart-phone-battery-life-by-up-to-60-percent/ Simple idea to save phones' batteries: move the computing part over the cloud, just let the phone send the "program" over there
22-11-2018
- https://sdd-manifesto.org/ "The Software Defined Delivery Manifesto" Delivery code must be the same quality as application code
21-11-2018
- https://drive.google.com/file/d/1vq1tcLk4FWK7BKRG5cEhOzbeXoy65hUK/view Event Driven Microservices with Apache Kafka
- https://medium.com/dailyjs/goodbye-electron-hello-desktop-pwas-f316b8f39882 Back to Desktop PWAs
19-11-2018
- https://medium.com/airbnb-engineering/druid-airbnb-data-platform-601c312f2a4c Druid @ Airbnb Data Platform
- https://blog.erratasec.com/2018/11/some-notes-about-http3.html Some notes about HTTP/3
18-11-2018
- https://gist.github.com/yelouafi/57825fdd223e5337ba0cd2b6ed757f53 Algebraic Effects and Continuations
17-11-2018
- https://www.youtube.com/watch?v=v-jdlc5YdDc SystemD en profondeur (3h!)
- https://typelevel.org/blog/2018/10/06/intro-to-mtl.html cats-mtl FTW
- https://queue.acm.org/detail.cfm?ref=rss&id=2611829 Mostly functional programming does not exist
- https://typelevel.org/blog/2018/09/29/monad-transformer-variance.html Why Monad Transformers are invariant
- https://blog.vlovgr.se/post/2018-09-24-io-and-logging-capabilities/ IO & Logging Capabilities. Fasten your seatbelt.
- https://blog.acolyer.org/2018/09/26/the-design-and-implementation-of-modern-column-oriented-database-systems/ The design and implementation of modern column-oriented database systems
- https://vimeo.com/295103410 A sweet recap of Scala 3 features and demo of Fury by Jon Pretty
- https://github.com/lampepfl/dotty/blob/25b84a9e30c723cde2e5d2ba36b12a5c71e93d8c/docs/docs/reference/witnesses/witnesses.md#witnesses-as-typeclass-instances Typeclasses encoding using "witness"
- https://www.youtube.com/watch?v=wXLf18DsV-I React With Hooks— Ryan Florence
- https://medium.freecodecamp.org/these-are-the-concepts-you-should-know-in-react-js-after-you-learn-the-basics-ee1d2f4b8030 It's always good to reread about ReactJS evols
16-11-2018
- https://www.slideshare.net/jdegoes/orthogonal-functional-architecture Orthogonal Functional Architecture
- https://www.elastic.co/blog/elasticsearch-6-5-0-released Tons of nice improvements for Elasticsearch 6.5.0 (a new snapshot strategy, new filters, SQL, JDK11 and G1GC)
- https://medium.com/earnest-engineering/using-applicative-style-to-increase-compositionality-part-ii-266472396795 Applicatives (and Alternatives) to compose logics
- https://github.com/pulumi/pulumi SDK for cloud native infrastructure as code. No Yaml.
- https://www.scala-lang.org/blog/2018/11/16/scalafix-scalameta.html New websites for Scalameta and Scalafix!!
- https://databricks.com/blog/2018/11/16/introducing-new-built-in-functions-and-higher-order-functions-for-complex-data-types-in-apache-spark.html New Built-in and HOF in Apache Spark 2.4
14-11-2018
- https://github.com/sokra/rawact A babel plugin which compiles React.js components into native DOM instructions to eliminate the need for the react library at runtime.
- https://github.com/ikhoon/functional-programming-jargon.scala Jargon from the functional programming world
- https://sematext.com/blog/elasticsearch-ingest-node-vs-logstash-performance/ Elasticsearch Ingest vs Logstash Performance
13-11-2018
- https://www.youtube.com/watch?v=MmLezWRI3Ys The Rebalance Protocol of Apache Kafka is generic and can be used for anything
- https://web.dev/measure Lighthouse as a service
- https://status.cloud.google.com/incident/container-engine/18005 3 days of outage for GKE :o
12-11-2018
- https://www.premieroctet.com/blog/plongee-dans-les-hooks-react/ les Hooks React
- https://nrinaudo.github.io/talk-scala-best-practices/#1 Scala Best Practices I Wish Someone'd Told Me About; I learned some stuff :)
- https://paidy.github.io/talks/scalaio2018/ A nice talk about side-effects (IO Monad) and abstracting parts of a program
- https://blog.cloudflare.com/the-road-to-quic/ Cloudflare already talked about it: the Road to QUIC
- https://daniel.haxx.se/blog/2018/11/11/http-3/ HTTP/3 will run over UDP
- https://v8.dev/blog/fast-async Faster async functions and promises · V8
11-11-2018
- https://www.youtube.com/watch?v=YFXoNTp6YmM Scala Compilation explained
- https://www.youtube.com/watch?v=onQSHiafAY8 ZIO Schedule: composable to the max
10-11-2018
- https://www.cortes.design/post/best-saas-landing-page-examples-inspiration The Best SaaS Landing page examples
09-11-2018
- https://www.caida.org/research/id-consumption/whois-map/images/whois-20071001.png The same but better and larger!
- http://maps.measurement-factory.com/ IPv4 address space
- https://medium.freecodecamp.org/how-to-dockerise-a-scala-and-akka-http-application-the-easy-way-23310fc880fa sbt-native-packager and Docker
- https://itnext.io/why-reacts-hooks-api-is-a-game-changer-8731c2b0a8c React’s new Hooks API
- https://medium.com/@LightspeedHQ/google-cloud-spanner-the-good-the-bad-and-the-ugly-5795f37a7684 Google Cloud Spanner: the good, the bad and the ugly
- http://mjk.space/git-aliases-i-cant-live-without/ Git aliases I can't live without – Just sweet shortcuts. I prefer the long version. \o/
- https://medium.com/@mattburgess/beyond-console-log-2400fdf4a9d8 A recap of all console.*() in JS
08-11-2018
- https://www.ebayinc.com/stories/blogs/tech/sre-case-study-mysterious-traffic-imbalance/ A funny SRE Case Study: Mysterious Traffic Imbalance
- https://databricks.com/blog/2018/11/08/introducing-apache-spark-2-4.html Spark 2.4: Scala 2.12 support! and a better k8s support
- https://www.confluent.io/blog/apache-kafka-supports-200k-partitions-per-cluster In Kafka 1.1+, one broker, up to 4000 partitions. One cluster, up to 200k partitions
- https://developer.lightbend.com/blog/2018-11-01-the-scala-2.12-2.13-inliner-and-optimizer/index.html Interesting article about Scalac's Inliner and Optimizer
- https://blog.octo.com/en/hexagonal-architecture-three-principles-and-an-implementation-example/ More on Hexagonal Architecture
- https://jvns.ca/blog/2018/10/27/envoy-basics/ A sweet article about Envoy basics
07-11-2018
- https://kubernetes.io/blog/2018/11/07/grpc-load-balancing-on-kubernetes-without-tears/ gRPC Load Balancing on Kubernetes with linkerd
06-11-2018
- https://hackernoon.com/apache-kafkas-distributed-system-firefighter-the-controller-broker-1afca1eae302 Explanations around Apache Kafka’s Controller job
- https://cloud.google.com/blog/products/application-development/announcing-cloud-scheduler-a-modern-managed-cron-service-for-automated-batch-jobs Announcing Cloud Scheduler: a modern, managed cron service for automated batch jobs
- https://medium.com/@stephane.maarek/the-kafka-api-battle-producer-vs-consumer-vs-kafka-connect-vs-kafka-streams-vs-ksql-ef584274c1e The Kafka API Battle: Producer vs Consumer vs Kafka Connect vs Kafka Streams vs KSQL !
- https://cloud.google.com/blog/products/storage-data-transfer/hdfs-vs-cloud-storage-pros-cons-and-migration-tips HDFS vs. Cloud Storage: Pros, cons and migration tips
- https://actualite.housseniawriting.com/science/intelligence-artificielle/2015/05/22/peur-de-lintelligence-artificielle-ou-la-theorie-du-basilic-de-roko/4303/ Le Basilic de Roko. Are you scared of AI?
04-11-2018
- https://medium.com/graalvm/under-the-hood-of-graalvm-jit-optimizations-d6e931394797 GraalVM JIT optimizations: powerful inlining strategies
- https://medium.com/paypal-engineering/https-medium-com-paypal-engineering-tracking-user-behavior-at-scale-f0c584c4ddd4 A usage of reactive streams wih Akka HTTP, to track user behavior at Paypal
- https://jg.gg/2018/09/29/stacked-diffs-versus-pull-requests/ Stacked Diffs Versus Pull Requests. Pretty sure it's useful, but couldn't get through the article.
- https://medium.com/capital-one-tech/toward-a-functional-programming-analogy-for-microservices-ba6f49b94ad Microservices and FP
- https://github.com/wagoodman/dive A tool for exploring each layer in a docker image
03-11-2018
- https://mixitconf.org/2018/bug-free-by-design Bug free. By design - En gros, du clean code, et du typage :-)
- https://medium.com/@sankar.p/how-grpc-convinced-me-to-chose-it-over-rest-30408bf42794 Why gRPC is great
- https://www.iteratorshq.com/blog/scala-compiler-phases-with-pictures/ Scala compiler phases
- http://www.lihaoyi.com/post/Fastparse2EvenFasterScalaParserCombinators.html Fastparse 2 compared to Fastparse 1
- https://jvican.github.io/post/overload-methods-with-more-parameter-lists/ Relying on linearization to overload methods with extra parameters
- https://www.justinobeirne.com/new-apple-maps A long study of Apple’s "New Map" (better but still..)
01-11-2018
- https://speakerdeck.com/ogirardot/high-performance-privacy-by-design-using-matryoshka-and-spark Matryoshka & Spark, a not-trivial talk
- https://www.awsgeek.com/ Impressive collection of cool diagrams & notes about AWS services
30-10-2018
- https://hackernoon.com/distributed-log-analytics-using-apache-kafka-kafka-connect-and-fluentd-303330e478af Distributed log analytics using Apache Kafka, Kafka Connect and Fluentd
- https://www.infoq.com/articles/apache-kafka-best-practices-to-optimize-your-deployment Apache Kafka: Ten Best Practices to Optimize Your Deployment
- https://kubernetes.io/blog/2018/10/01/health-checking-grpc-servers-on-kubernetes/ Health checking gRPC servers on Kubernetes
- https://cloud.google.com/blog/products/data-analytics/how-to-transfer-bigquery-tables-between-locations-with-cloud-composer Using Cloud Composer to transfer BigQuery tables between locations
- https://cloud.google.com/blog/products/networking/network-controls-in-gcp-vs-on-premises-not-so-different-after-all Network controls in GCP vs. on-premises
- https://lambda.grofers.com/why-physical-storage-of-your-database-tables-might-matter-74b563d664d9 Very interesting post about tuning how spark writes data to be read by postgresql
- https://medium.com/@pang.xin/spark-study-notes-core-concepts-visualized-5256c44e4090 Spark study notes: core concepts visualized
- https://medium.com/adobetech/creating-the-adobe-experience-platform-pipeline-with-kafka-4f1057a11ef The Adobe Experience Platform "Pipeline" to work with Kafka at scale
- https://www.confluent.io/blog/apache-kafka-kubernetes-could-you-should-you If you're already working with k8s, yes you should.
- https://typelevel.org/blog/2018/11/02/semirings.html Semirings and their relation to other structures such as Monoid
27-10-2018
- https://docs.google.com/presentation/d/1a4IAux4tNo7F7mQ6fbzIVPEHxQQ0buD15Cm8vSMJFb0/mobilepresent?slide=id.p So many knowledge and Bash tips
22-10-2018
- https://blog.softwaremill.com/are-you-sure-your-anyvals-dont-instantiate-5822c04875d3 Dotty's Opaque types FTW
- https://developers.google.com/web/updates/2018/10/nic70?linkId=58284450 New in Chrome 70
- https://www.madewithtea.com/using-monix-with-kafka-avro-and-schema-registry.html Using Monix with Kafka, Avro and Schema Registry
- https://medium.com/@simon.aubury/machine-learning-kafka-ksql-stream-processing-bug-me-when-ive-left-the-heater-on-bd47540cd1e8 Machine learning & Kafka KSQL stream processing
- https://www.infoq.com/news/2018/10/gcp-cloud-spanner-bigtable Google's Cloud Spanner DML Updates and Cloud Bigtable's New Key Visualization Feature
- https://dotty.epfl.ch/blog/2018/10/10/10th-dotty-milestone-release.html Dotty 0.10.0-RC1 !
20-10-2018
- https://reactjs.org/blog/2018/10/01/create-react-app-v2.html Create React App 2.0 out! So many improvements
30-09-2018
- https://www.infoq.com/articles/modeling-uncertainty-reactive-ddd Modeling Uncertainty With Reactive DDD
23-09-2018
- https://ipfs.io/ipns/Qme48wyZ7LaF9gC5693DZyJBtehgaFhaKycESroemD5fNX/post/putting_this_blog_on_ipfs/ Putting This Blog on IPFS
- https://phoboslab.org/log/2018/09/underrun-making-of Making a sublime 13kb webgl game
22-09-2018
- https://medium.com/zyseme-technology/code-formatting-scalafmt-and-the-git-pre-commit-hook-3de71d099514 scalafmt and the git pre-commit hook
- http://www.geekabyte.io/2018/09/easing-into-cats-and-case-for-category.html cats is the de-facto lib to use in Scala (Scala)
- https://philipwalton.com/articles/idle-until-urgent/ Mixing requestIdleCallback and lazy behavior in JS
- https://github.com/yahoo/HaloDB A new Java fast key-value storage engine
- https://cloud.google.com/blog/products/ai-machine-learning/simplifying-ml-predictions-with-google-cloud-functions Cloud Functions + ML Engine at Google
- https://www.sqlstyle.guide/ A very nice SQL style guide I agree to
20-09-2018
- https://github.com/chrishtr/display-locking Display Locking spec: look an element, modify it, and release it
19-09-2018
- https://v8project.blogspot.com/2018/09/dataview.html Greatly Improving DataView performance in V8 compared to TypedArrays
- https://www.missingfaktor.me/writing/2018/08/12/composable-table-updates-in-slick/ Composable table updates in Slick
- http://dtrace.org/blogs/bmc/2018/09/18/falling-in-love-with-rust/ "Falling in love with Rust" this article makes me want to write some Rust
- https://blog.cloudflare.com/distributed-web-gateway/ IPFS, the future of the web?
- https://blog.usejournal.com/how-to-fail-as-a-new-engineering-manager-30b5fb617a Tips to know how to act as a engineering manager
16-09-2018
- https://martinfowler.com/articles/extract-data-rich-service.html Migrating from monolith to services by extracting data-rich services
- https://www.youtube.com/watch?v=hzf3hTUKk8U Functional Programming was Terrible in Scala 2014
- https://www.youtube.com/watch?v=GqmsQeSzMdw Constraints Liberate, Liberties Constrain — Runar Bjarnason
- https://gist.github.com/yelouafi/57825fdd223e5337ba0cd2b6ed757f53 Algebraic Effects and Continuations
- https://www.slideshare.net/wiemzin/psug-zio-queue ZIO queue talk
- https://www.slideshare.net/johanandren/next-generation-actors-with-akka Akka Typed presentation
- https://www.infoq.com/news/2018/09/ddd-not-done It's only the beginning of DDD
- https://code.fb.com/developer-tools/finding-and-fixing-software-bugs-automatically-with-sapfix-and-sapienz/ Developers soon replaced by Infer/Sapienz/SapFix :-)
- https://about.sourcegraph.com/go/gophercon-2018-from-prototype-to-production-lessons-from-building-and/ Building and Scaling Reddit's Ad Serving Platform (with Go). From 90ms to 10ms.
- https://www.infoq.com/presentations/event-flow-distributed-systems Complex Event Flows in Distributed Systems
15-09-2018
- https://www.theverge.com/2018/9/12/17849868/eu-internet-copyright-reform-article-11-13-approved EU Copyright Directive vote: Articles 11 and 13 approved
- https://www.infoq.com/articles/ddd-do-over DDD feedback
11-09-2018
- https://v8project.blogspot.com/2018/09/10-years.html 10 years for V8 JavaScript Engine
09-09-2018
- https://www.slideshare.net/jdegoes/zio-queue ZIO Queue
- https://www.youtube.com/watch?v=vpcKnqyNdSQ Why FP matters, how to introduce the FP world in a company
- https://michaelzg.com/akka/2018/09/03/akka-actor-fsm-comparison-part1/ Comparing Akka Untyped, FSM, and Typed Actors
- https://www.youtube.com/watch?v=xtYI67fy0wc Data modeling tradeoffs with Druid
- https://www.infoq.com/articles/refactoring-deeper-model Feedback about refactoring following some DDD principles and patterns
- https://www.youtube.com/watch?v=_BNIkw4Ao9w Why Static Website must use HTTPS: multiple examples of Man In The Middle attacks: that's why
- https://medium.com/@francois.chollet/notes-to-myself-on-software-engineering-c890f16f4e4d Interesting notes about Software Engineering (we could almost talk about Software Craftmanship)
- https://www.confluent.io/blog/putting-power-apache-kafka-hands-data-scientists/ Another story switching to the Kafka platform to help Data Scientists
- http://marxsoftware.blogspot.com/2018/09/jdk-12-switch-expressions-in-action.html JDK 12's new switch as expression
03-09-2018
- https://github.com/electronicarts/ea-async async-await methods in the JVM!
- https://jvns.ca/blog/2018/09/03/editing-my-blog-s-http-headers-with-cloudflare-workers/ A weird header bug fixed thanks to Cloudflare workers
02-09-2018
- http://degoes.net/articles/modern-fp-part-2 Higher order category theory
- https://www.opsian.com/blog/javas-new-zgc-is-very-exciting/ Java's new Z Garbage Collector (ZGC)
30-08-2018
- https://speakerdeck.com/copyconstructor/prometheus-a-whirlwind-tour A very good tour about Prometheus
- https://typelevel.org/blog/2018/08/25/http4s-error-handling-mtl.html Gttp4s error handling with Cats Meow MTL
29-08-2018
- https://github.com/vectos/goedverhaal Saga in Scala for effects which have a cats.effect.Sync instance.
27-08-2018
- https://towardsdatascience.com/tracking-nyc-citi-bike-real-time-utilization-using-kafka-streams-1c0ea9e24e79 Kafka Streams usage and code
- https://medium.com/@jerolba/persisting-fast-in-database-1af4a281e3a Batching operations in Hibernate for better throughput
- http://blog.ploeh.dk/2018/08/27/on-constructor-over-injection/ constructor over-injection=bad smell / break of Single Resp principle
- https://streaml.io/blog/introducing-pulsar-io How to use Pulsar IO framework
- https://medium.com/@copyconstruct/health-checks-in-distributed-systems-aa8a0e8c1672 Health Checks and Graceful Degradation in Distributed Systems
- https://speakerdeck.com/copyconstructor/prometheus-a-whirlwind-tour?slide=191 Very nice overview of Prometheus
- https://www.percona.com/blog/2018/08/20/using-aws-ec2-instance-store-vs-ebs-for-mysql-how-to-increase-performance-and-decrease-cost/ AWS EC2 instance store vs EBS for MySQL: better perf, less cost
- https://medium.com/@hugo.oliveira.rocha/what-they-dont-tell-you-about-event-sourcing-6afc23c69e9a Feedback about Event Sourcing and CQRS.
26-08-2018
- https://blog.scrt.ch/2018/08/24/remote-code-execution-on-a-facebook-server/ Remote Code Execution on a Facebook server; ~15 lines, $5000!
25-08-2018
- https://github.com/mafintosh/turbo-json-parse Turbocharged JSON.parse for type stable JSON data
23-08-2018
- https://medium.com/@duhroach/datastore-lexicographical-contention-fc02fb4864e9 Basic lesson: never use a timestamp as key in Datastore
- https://developer.okta.com/blog/2018/08/21/build-secure-rest-api-with-node nodejs REST API and OAuth 2.0
- https://www.digitalocean.com/community/tutorials/how-to-develop-a-node-js-tcp-server-application-using-pm2-and-nginx-on-ubuntu-16-04 Nginx and tcp client/servers using "stream"
- https://dejanseo.com.au/competitor-hack/ "How I recorded user behaviour on my competitor's websites"
- https://www.nearform.com/blog/avoiding-common-hurdles-in-unit-testing/ Better mocking in NodeJS: aws s3, server mock, generic http requests/response, module mocking, file system, dates and timers
22-08-2018
- https://developers.google.com/web/updates/2018/08/web-performance-made-easy #webperfmatters optimizing a front-end
- https://blog.colinbreck.com/maximizing-throughput-for-akka-streams/ Maximizing Throughput for Akka Streams
- https://databricks.com/blog/2018/05/03/benchmarking-apache-spark-on-a-single-node-machine.html Spark on a Single Node Machine, comparaison between Pandas and PySpark (the latter wins easy)
- http://tech.trello.com/why-we-chose-kafka/# From RabbitMQ to Kafka: more resilient, less cost.
- https://www.taniarascia.com/getting-started-with-react/ A fresh "Getting Started with React"
- https://modern-sql.com/blog/2018-08/whats-new-in-mariadb-10.3 What’s new in MariaDB 10.3
20-08-2018
- https://kubuszok.com/2018/kinds-of-types-in-scala-part-3/ Kinds of types in Scala, part 3— Love it!
- https://medium.com/@chandukavar/testing-in-airflow-part-1-dag-validation-tests-dag-definition-tests-and-unit-tests-2aa94970570c Testing in Airflow
- https://www.infoq.com/news/2018/08/Prometheus-Graduates-CNCF Prometheus "Graduates" from the Cloud Native Computing Foundation
- https://engineering.pandora.com/using-memsql-at-pandora-79a86cb09b57 Good insights about their call to use MemSQL
- https://clemenswinter.com/2018/08/13/how-read-100s-of-millions-of-records-per-second-from-a-single-disk/ LocustDB, backed by RocksDB
18-08-2018
- https://www.confluent.io/blog/build-udf-udaf-ksql-5-0 How to Build a UDF and/or UDAF in KSQL
17-08-2018
- https://www.datadoghq.com/blog/engineering/introducing-kafka-kit-tools-for-scaling-kafka/ Kafka-Kit: Tools for repartition a topic on brokers (it's a pain manually)
16-08-2018
- https://www.youtube.com/watch?v=dRiQIo9moSw The latest Scala Plugin Improvements in IntelliJ IDEA 2018.2 are very good! Implicits ftw
- https://richardimaoka.github.io/blog//akka-http-marshalling-details/ How Akka HTTP marshalling works. Marshallable, Marshalling, Marshaller. Repeat 3x.
- https://cloud.google.com/blog/products/gcp/introducing-headless-chrome-support-in-cloud-functions-and-app-engine GCP: headless Chrome support in Cloud Functions and App Engine. So good!!
- https://www.sqlite.org/draft/releaselog/current.html SQLite adds window functions, huge!
13-08-2018
- https://blog.bugsnag.com/bug-day-race-condition-therac-25/ A bug causing several patients to die. No good at all.
- https://github.com/umpox/TinyEditor TinyEditor: A functional HTML/CSS/JS editor in less than 400 bytes. Nuts!
- https://azure.microsoft.com/en-us/blog/how-microsoft-drives-exabyte-analytics-on-the-world-s-largest-yarn-cluster/ How Microsoft drives exabyte analytics on the world’s largest YARN cluster
- https://medium.com/@hoffa/bigquery-optimized-cluster-your-tables-65e2f684594b Limit time and cost: Cluster your BigQuery tables
- https://blog.cloudera.com/blog/2018/08/robust-message-serialization-in-apache-kafka-using-apache-avro-part-3/ Storing Avro Schemas into Kafka instead of another backend (SR)
- https://news.ycombinator.com/item?id=17700360 General consensus: Kubernetes on Azure sucks
- https://movingfulcrum.com/horrors-of-using-azure-kubernetes-service-in-production/ Horrors of using Azure Kubernetes Service in production: ouch!
10-08-2018
- https://cloud.google.com/blog/products/gcp/expanding-the-cloud-firestore-beta-to-more-users DataStore will be more consistent under Cloud Firestore
- https://kubuszok.com/2018/kinds-of-types-in-scala-part-1/ Types in Scala
- https://hackernoon.com/python-tricks-101-2836251922e0 Python Tricks, i keep learning a bit.
09-08-2018
- https://www.lightbend.com/reactive-programming-versus-reactive-systems Reactive Programming versus Reactive Systems
- https://medium.com/@vesirin/how-i-gained-commit-access-to-homebrew-in-30-minutes-2ae314df03ab By getting their bot's API github token from their public Jenkins :o
- https://www.spinellis.gr/blog/20180805/ from 380h with MariaDB to 12h with two Unix commands
- https://sevketyalcin.com/blog/setup-your-own-webpack-config-for-react-with-typescript/ Setup your own Webpack 4 config for React with Typescript
- https://medium.freecodecamp.org/how-to-work-with-react-the-right-way-to-avoid-some-common-pitfalls-fc9eb5e34d9e AbortController to cancel xhr/fetch
- https://spectrum.ieee.org/nanoclast/semiconductors/nanotechnology/new-approach-to-stmenabled-memory-promises-thousand-times-more-data-storage 138TB in 6cm2
- https://wsargent.github.io/ocaps/slides/#1 Security in Scala: Refined Typed and Object Capabilities
- https://moz.com/blog/beginners-guide-to-seo-chapter-4 SEO, On-Page Optimization
- http://marxsoftware.blogspot.com/2018/08/apis-to-be-removed-from-java-11.html APIs & modules To Be Removed from Java 11, lean!
08-08-2018
- https://www.confluent.io/blog/getting-started-apache-kafka-kubernetes/ Helm templates for Apache Kafka
- https://dawn.cs.stanford.edu/2018/08/07/sparser/ Impressive: Filtering before parsing data = massive speedup. JSON/Parquet/Avro/etc.
- https://www.image-charts.com/ A drop-in replacement for Google Image Charts (deprecated)
- http://marxsoftware.blogspot.com/2018/08/jdk-12-merging-collectors-naming-challenge.html The Challenge of Naming
07-08-2018
- https://logallthethings.com/2016/06/28/how-to-read-to-the-end-of-a-kafka-topic/ How to know when you're at the end of a Kafka topic
- https://v8project.blogspot.com/2018/08/v8-release-69.html Memory savings, WASM speedups, in Javascript V8
- https://blog.acolyer.org/2018/08/07/bleak-automatically-debugging-memory-leaks-in-web-applications/ BLeak: automatically debugging memory leaks in web applications
06-08-2018
- https://medium.com/netflix-techblog/pseudo-localization-netflix-12fff76fbcbe ƒîîîกี้ð Ĥéééļþ ÖÖกี้ļîîîกี้ééé
- https://medium.com/ft-product-technology/this-one-line-of-javascript-made-ft-com-10-times-slower-5afb02bfd93f Bad code leads to bugs, no surprise here
- https://richardimaoka.github.io/blog/akka-http-operation-scope/ Akka HTTP request/response scope operations, vs. Deferred operations
- https://www.infoq.com/presentations/rust-network-infrastructure Next Gen Networking Infrastructure with Rust. I learned some interesting facts about Rust!
- https://hackernoon.com/learn-functional-python-in-10-minutes-to-2d1651dece6f I've started to learn a bit of FP Python \o/
- https://rmoff.net/2018/08/02/kafka-listeners-explained/ Kafka Listeners won't have anymore secrets
- https://techlab.bol.com/how-not-to-sink-a-data-stream-to-files-journeys-from-kafka-to-parquet/ Kafka to parquet: solution: read the topic later in one shot, done! (but high latency)
- https://blog.gojekengineering.com/sakaar-taking-kafka-data-to-cloud-storage-at-go-jek-7839da20b5f3 Sakaar: another at-least once cloud storage saver
- https://blog.godatadriven.com/multiformat-spark-partition Spark PR to deal with multiple partition formats (avro & parquet)
03-08-2018
- https://blogs.msdn.microsoft.com/typescript/2018/07/30/announcing-typescript-3-0/ TypeScript 3 is out. New features, better error messages. And... the new "unknown" type forcing you to cast later. Wth don't you have a proper sum type/tagged union beforehands.
- https://www.datanami.com/2018/07/31/inside-fortnites-massive-data-analytics-pipeline/ Fortnite arch on AWS
- https://www.percona.com/blog/2018/07/17/when-should-i-use-amazon-aurora-and-when-should-i-use-rds-mysql/ Amazon Aurora VS RDS MySQL
- https://blog.timescale.com/sql-vs-flux-influxdb-query-language-time-series-database-290977a01a8a SQL vs. Flux (InfluxDB query language). Flux was made to avoid verbosity but you can just hide it even in SQL.
- https://blog.joegreen.pl/Scala-imitating-case-class-apply.html TIL case class extends FunctionN
- https://issues.apache.org/jira/browse/SPARK-14220 Spark on Scala 2.12, huge!!
02-08-2018
- https://www.infoq.com/presentations/serverless-patterns-antipatterns Cool talk presenting different architectures around serverless apps
- https://medium.com/@addyosmani/the-cost-of-javascript-in-2018-7d8950fbb5d4 Huge article recapitulating "The Cost Of JavaScript In 2018"
- https://www.toptal.com/puppeteer/headless-browser-puppeteer-tutorial Puppeteer tips and tricks
- http://marxsoftware.blogspot.com/2018/08/single-file-java-source-code-programs.html JDK 11: #!/bin/java programs
- https://www.robinwieruch.de/react-pass-props-to-component/ A nice recap article to React props/state/context and more
01-08-2018
- https://blog.softwaremill.com/keep-your-domain-clean-in-event-sourcing-5db6ddc26fe4 Keep your domain clean in Event Sourcing
- https://www.quora.com/Why-were-weakly-typed-programming-languages-created/answer/Bartosz-Milewski?share=799ea4c2 Why were weakly-typed programming languages created? "an evolutionary aberration"
- https://www.youtube.com/watch?v=J31o0ZMQEnI Project Loom: Fiber in Java, how to deal with the existing, Threads etc.
- https://www.youtube.com/watch?v=sxudIMiOo68 John De Goes - FP to the Max. Really nice video to know how to translate an imperative-flawed program to a FP program.
- http://enear.github.io/2018/07/30/Play-Framework-in-Scala-Action-Composition/ Play Framework in Scala - Action Composition
30-07-2018
- https://www.infoq.com/news/2018/07/knative-kubernetes-serverless Knative: A Kubernetes Framework to Build, Deploy, and Manage Serverless Workloads
- https://quickbooks-engineering.intuit.com/re-think-your-data-pipelines-in-the-decoupled-era-5b032bc8b779 Possible patterns to process and serve data (no data copy, 1 or more data copies)
- http://debezium.io/blog/2018/07/19/advantages-of-log-based-change-data-capture/ Change Data Capture vs Polling. No match here.
- https://dzone.com/articles/understanding-the-8-fallacies-of-distributed-syste 8 Fallacies of Distributed Systems: why and solutions
28-07-2018
- https://www.infoq.com/news/2018/07/conduit-merges-linkerd2 Conduit was merged into Linkerd: Linkerd2
27-07-2018
- https://ai.googleblog.com/2018/07/machine-learning-in-google-bigquery.html The official post about BigQuery ML
- https://github.com/yipeeio/kubeiql A GraphQL interface for Kubernetes.
❤️ - https://yokota.blog/2018/07/23/kafka-graphs-graph-analytics-with-apache-kafka/ A new lib: Kafka Graphs, to work with Kafka Streams
- https://japgolly.blogspot.com/2018/07/enforcing-rules-at-compile-time-example.html Enforcing rules at compile-time using implicit type evidence
- https://www.youtube.com/watch?v=uiorT754IwA Martin Odersky: Implicit contexts in the types
- https://www.infoq.com/articles/system-behaviour-time-series-ml Understanding Software System Behaviour With ML and Time Series Data
- https://kubuszok.com/compiled/implicits-type-classes-and-extension-methods/ Implicits, type classes, and extension methods
- http://lampwww.epfl.ch/~doeraene/thesis/doeraene-thesis-2018-cross-platform-language-design.pdf The ScalaJS Thesis by Sébastien Doeraene (June, 2018)
26-07-2018
- https://developers.google.com/web/updates/2018/07/site-isolation Why we should enable CORB (CORB, not CORS!)
- http://technosophos.com/2018/07/04/be-nice-and-write-stable-code.html A guide about respecting semver (respecting the users, the major/minor/patch cycle, the deprecations..)
- https://medium.com/@jeffrey.allen.lewis/http-requests-compared-why-axios-is-better-than-node-fetch-more-secure-can-handle-errors-better-39fde869a4a6 I remember using Axios, a loong time ago.
25-07-2018
- https://cloud.google.com/bigtable/docs/keyvis-overview When dataviz meet Bigtable. Key Visualizer
- https://landing.google.com/sre/book.html The new "Site Reliability Engineering" book from Google
- https://cloudplatform.googleblog.com/2018/07/announcing-resource-based-pricing-for-google-compute-engine.html More discounts with GCE!
- https://kubuszok.com/2018/scala-fud-faq-for-newbies/ Scala FUD FAQ for newbies
- https://jvns.ca/blog/2018/07/24/ip-addresses-routing/ Subnets and having fun with iptables
- https://kubernetes.io/blog/2018/07/24/feature-highlight-cpu-manager/ Adding CPU Affinity through the CPU Manager (to share caches, and other things)
24-07-2018
- https://github.com/GoogleChromeLabs/ndb Another nodejs debugger, using a standalone Chrome DevTools
23-07-2018
- https://medium.com/@george3d6/imaginary-problems-d4f2921bd1b8 We often create and try to resolve Imaginary problems
- https://medium.com/@pankajroark/sorting-and-parquet-3a382893cde5 According to your reading pattern, sorting by a column in parquet can be a win
- https://code.fb.com/data-infrastructure/location-aware-distribution-configuring-servers-at-scale/ Location-Aware Distribution as a replacement for zookeeper (p2p-based, and sharded)
- https://www.xaprb.com/slides/how-to-monitor-your-database/ How to Monitor Your Database
22-07-2018
- https://github.com/unisonweb/unison Haskell-like programming platform, distributed-systems oriented
20-07-2018
- https://github.com/lihaoyi/requests-scala A Scala port of the Python Requests HTTP client
- https://blog.drone.io/ CI/CD made very easy using GCE
- https://medium.com/vue-mastery/the-best-explanation-of-javascript-reactivity-fea6112dd80d How Vue's "Reactivity" (bindings) works
- https://www.youtube.com/watch?v=zVt55i2UkcU A new build tool for Scala: Fury by Jon Pretty
- https://blog.timescale.com/sql-nosql-data-storage-for-prometheus-devops-monitoring-postgresql-timescaledb-time-series-3cde27fd1e07 PostgreSQL as data store for Prometheus
- https://blog.softwaremill.com/why-scala-a6ac8c98c541 Scala FTW
- https://www.inderapotheke.de/blog/farewell-google-maps Alternative to Google Maps
19-07-2018
- http://blog.christianposta.com/istio-workshop Workshop with Kubernetes, Envoy, and Istio
- https://github.com/OptimalBits/bull Queue system over Redis, in nodejs
- http://jxnblk.com/writing/posts/defining-component-apis-in-react/ Tips about writing ReactJS components
- https://kubernetes.io/blog/2018/07/18/11-ways-not-to-get-hacked/ 11 Ways (Not) to Get Hacked - Kubernetes
- https://en.wikipedia.org/wiki/Timeline_of_the_far_future Timeline of the far future (yeah, it's dark)
- https://github.com/prometheus/prometheus/blob/master/documentation/internal_architecture.md Internal Architecture of Prometheus
- https://www.imaging-resource.com/news/2018/07/17/pixels-for-geeks-a-peek-inside-nikons-super-secret-sensor-design-lab A peek inside Nikon’s super-secret sensor design lab
- https://github.com/imbrn/v8n A sweet and fluent Javascript validation library
18-07-2018
- https://www.confluent.io/blog/apache-kafka-vs-enterprise-service-bus-esb-friends-enemies-or-frenemies/ Kafka vs. Enterprise Service Bus (ESB)
- https://medium.com/google-design/google-photos-45b714dfbed1 Building the Google Photos Web UI
- https://leanpub.com/esversioning/read#leanpub-auto-general-versioning-concerns Read Versioning in an Event Sourced System
- https://github.com/hasura/graphql-engine GraphQL APIs over Postgres with fine grained access control
17-07-2018
- https://cloudplatform.googleblog.com/2018/07/cloud-spanner-adds-import-export-functionality-to-ease-data-movement.html Cloud Spanner adds import/export functionality (avro)
16-07-2018
- https://fosdem.org/2018/schedule/event/datastore/attachments/slides/2618/export/events/attachments/datastore/slides/2618/designing_distributed_datastore_in_go_timbala.pdf Designing and building a distributed timeseries datastore in Go: Timbala
- https://mwhittaker.github.io/blog/an_illustrated_proof_of_the_cap_theorem/ A simple illustrated explanation of the CAP Theorem
- https://github.com/andyburgin/hadoopi Hadoop over Raspberry Pi 3's \o/
15-07-2018
- http://degoes.net/articles/fpoop-vs-fp FP-OOP vs FP: the case of IO
13-07-2018
- http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/ Why You Should Never Use MongoDB: documents are for self-contained content only
- http://blog.memsql.com/nosql/ From SQL to NoSQL to NewSQL
- https://www.gethighlights.co/blog/choose-right-analytics-platform/ Study of the available Analytics platforms (Google, Mixpanel, Amplitude, Heap, Flurry, Pendo, Hotjar..)
- https://medium.com/@duhroach/the-impact-of-blocksize-on-persistent-disk-performance-7e50a85b2647 Throughput (M/sB) = IOPS * Blocksize
- https://medium.com/bigpanda-engineering/understanding-parametricity-in-scala-520f9f10679a Why Parametricity is good to use: less features space, less mistakes
12-07-2018
- https://www.deps.co/blog/google-cloud-platform-good-bad-ugly/ Google Cloud Platform - The Good, Bad, and Ugly
- https://www.youtube.com/watch?v=QM86Ab3lL20 Nice talk about generalizing the more (don't commit to an impl just yet) we can to simplify our code (using cats-mtl here)
- https://www.youtube.com/watch?v=RySodlS3cSI Beyond MonadError, change types when we know errors are handled
- https://jvns.ca/blog/2018/07/11/netdev-day-1--ipsec/ Some IPsec knowledge, basically a TLS for ips
- https://getstream.io/blog/takeaways-on-building-a-react-based-app-with-electron/ Takeaways on Building a React Based App with Electron
11-07-2018
- https://www.youtube.com/watch?v=v8IQ-X2HkGE The problem with Scala (academic, not business oriented, too many features, oop should be removed and focus on fp)
- https://css-tricks.com/the-css-paint-api/ The Awesome CSS Paint API !
- https://www.sitepen.com/blog/2018/07/06/web-components-in-2018/ Where are we with the Web Components in 2018 (is this going somewhere?)
- http://kangax.github.io/compat-table/es6/#graalvm GraalVM added to the famous ECMAScript 6 compatibility table!
- https://blog.softwaremill.com/supervision-error-handling-in-zio-akka-and-monix-part-3-series-summary-abe75f964c2a Supervision & error handling in ZIO, Akka and Monix.
- https://segment.com/blog/goodbye-microservices/ From Microservices to Monolith.
- https://hpbn.co/ Finally, I've read what I wanted from this reference: High Performance Browser Networking
- https://medium.com/teads-engineering/spark-performance-tuning-from-the-trenches-7cbde521cf60 Spark performance tuning
- https://www.karllhughes.com/posts/plumbing "The Bulk of Software Engineering in 2018 is Just Plumbing"
10-07-2018
- https://cloudplatform.googleblog.com/2018/07/introducing-jib-build-java-docker-images-better.html Jib: build & publish Java Docker image from mvn
- https://www.youtube.com/watch?v=lIWCxRBaQG8 Bartosz Milewski - Free Monoidal Functors
- http://sellmysite.com/keyword-research/ SEO Keywords research done right
- https://github.com/annoy4s/annoy4s Approximate Nearest Neighbors in Scala, JNA wrapper around spotify/annoy
09-07-2018
- https://nothingventured.rocks/agile-story-grooming-checklist-75d953ea863b A story and checklist to do story grooming to avoid simplicity bias, mental fatigue, and team incomfort
- https://medium.com/@Pier/vue-js-the-good-the-meh-and-the-ugly-82800bbe6684 Vue.js: the good, the meh, and the ugly
- https://typelevel.org/blog/2018/06/27/optimizing-tagless-final-2.html Optimizing Tagless Final by generalizing using FunctorK and CartesianK
- https://medium.com/dailyjs/webpack-4-splitchunks-plugin-d9fbbe091fd0 Webpack 4: SplitChunks instead of CommonsChunkPlugin
- https://blog.cloudflare.com/how-to-drop-10-million-packets/ How to drop 10 million packets per second- Networking is fun
- https://github.com/dotty-staging/dotty/blob/7c961ad933d159ae1e58cee242dfbb4fbdeba93e/docs/docs/typelevel.md proposal about new keyword "transparent" and some more syntax (implicit match) to code using a powerful typelevel paradigm
- https://www.youtube.com/watch?v=-f-7l8X716k Bootstrap a Simple REST API with Spring Data REST and Spring Boot 2. - Yeah, annotations and runtime magic everywhere!
- https://medium.com/iterators/how-to-turn-ugly-java-apis-into-elegant-type-safe-scala-apis-9eab358e5fb2 Providing a type-safe Scala APIs (typeclasses+shapeless for derivation) based on a Java API
- https://medium.com/graalvm/compiling-scala-faster-with-graalvm-86c5c0857fa3 Compiling Scala Faster with GraalVM. Demonstrating GraalVM CE and native-image for Scala.
04-07-2018
- https://medium.com/google-cloud/kubernetes-w-lets-encrypt-cloud-dns-c888b2ff8c0e Kubernetes w/ Let’s Encrypt & Cloud DNS
- https://slideslive.com/38908182/functional-interpreters-and-you Interpreters used with the free monad and tagless final encoding
- https://robertheaton.com/2018/07/02/stylish-browser-extension-steals-your-internet-history/ "Stylish" browser extension is a piece of shit: steals all your internet history
03-07-2018
- https://remotemarketing.org/4-million/ Really cool feedback about their road to $4 million ARR
- https://dev.to/juanmanuelramallo/i-was-billed-for-14k-usd-on-amazon-web-services-17fn Never commit your AWS tokens :(
- https://www.infoq.com/presentations/java-jvm-scalability Java itself from the smallest usage (JavaCard) to the biggest (cloud, love the: "-Xmx=100$") + understanding what the Java Language Spec is for. JVMs must focus on ML capabilities / specialized hardware (gpu, asic, etc.)
- https://medium.com/@maybekatz/introducing-npx-an-npm-package-runner-55f7d4bd282b never used npx before, cool stuff to avoid global package, and nice features like reading from a gist
02-07-2018
- https://github.com/scalaz/scalaz-plugin Excellent compiler plugin to ensure a better fp-oriented code. (no null, no *instanceOf, no side-effects, no equals, toString etc.)
- https://www.digitalocean.com/community/tutorials/architecting-applications-for-kubernetes Tips about architecting applications for Kubernetes
- https://engineering.gusto.com/how-my-role-as-cto-has-changed-as-weve-grown-to-100-engineers/ An cool feedback from developer to CTO managing more than 100 engineers
- https://www.rittmanmead.com/blog/2017/04/sql-on-hadoop-impala-vs-drill/ Similarities between Impala and Drill
- https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/ Top 10 Performance Tuning Tips for Amazon Athena: mostly about partitioning, clustering, optimum file size, file format (parquet), some sql tips
- https://www.infoq.com/presentations/55-new-features-jdk-9 55 New Features in JDK 9; a lot of things
- http://bytes.schibsted.com/bigdata-sql-query-engine-benchmark/ Athena wins again
- https://www.edrawsoft.com/google-cloud-platform-software.php Drawingi GCP Diagram with edrawsoft
- https://blog.acolyer.org/2018/07/02/the-rise-of-the-citizen-developer-assessing-the-security-impact-of-online-app-generators/ Most mobile apps generated by generators have tons of security issues
- http://tayler.io/jobs-to-be-done-summary/ Formulate outcome statements as ‘[direction], [metric], [object of control], [optional: contextual clarifier]’
01-07-2018
- https://www.slideshare.net/piggybox/migration-from-redshift-to-spark Migration from Redshift to Spark on EMR
- https://medium.com/@serverpunch/why-you-should-not-use-google-cloud-75ea2aec00de A crazy story where the whole GCP project was shut down unexpectedly by Google Oo
29-06-2018
- https://www.youtube.com/watch?v=hUwNgxwN_pE NerdWallet website: from 0 to 1m Monthly Visitors thanks to SEO and good content
- http://tech.marksblogg.com/billion-nyc-taxi-rides-sqlite-parquet-hdfs.html 1.1 Billion Taxi Rides with SQLite, Parquet & HDFS
- https://news.umich.edu/u-m-researchers-create-worlds-smallest-computer/ 0.3 mm: this is very small computer
- https://speakerdeck.com/jboner/designing-events-first-microservices Designing Events-first Microservices @jboner
- https://medium.com/google-cloud/airflow-for-google-cloud-part-1-d7da9a048aa4 Using Airflow to insert data into BigQuery (going through Avro)
- https://blog.twitter.com/engineering/en_us/topics/infrastructure/2017/the-infrastructure-behind-twitter-scale.html The Infrastructure Behind Twitter
- https://speakerdeck.com/tpolecat/functional-programming-with-effects?slide=157 Sweet presentation of effects in FP by tpolecat
28-06-2018
- https://slideslive.com/38907884/adding-kindpolymorphism-to-the-scala-programming-language Kind polymorphism in scala!
- https://medium.com/dailyjs/threads-in-node-10-5-0-a-practical-intro-3b85a0a3c953 Threads in nodejs !
- https://css-tricks.com/drawing-images-with-css-gradients/ Drawing Images with CSS Gradients (linear and radial)
- https://fil.forbrukerradet.no/wp-content/uploads/2018/06/2018-06-27-deceived-by-design-final.pdf A study of Google/Facebook/Microsoft UI/UX using "dark patterns" to discourage users from exercising rights to privacy
- https://nickjanetakis.com/blog/docker-tip-60-what-really-happens-when-you-run-docker-compose-up?mkt_tok=eyJpIjoiWmpFeE5HUTROR1UyTnpkaSIsInQiOiJYOUNNdlpnTm9XUEhhem8rWDhPXC9GQXJPa3VZNTBxcnFsQmlGRFFtUjZuSXlvaUZHa1N0amZkcXBBS2RDSmtDaVJLQllCc1lJY09xQ1wvVVwvMGxnUEQ2bXJlbStUTThsMGsyZkNtT2RiaE1QbDNnUFYwaWtqdkJndzh2c0s1V25jQSJ9 What Really Happens When You Run docker-compose up?
- https://www.cambus.net/oldest-domains-in-the-com-net-and-org-tlds/ Oldest domains in the .com, .net, and .org TLDs: mostly short names btw
27-06-2018
- https://slideslive.com/38908147/unshaped-protos-beyond-code-generation-for-protocol-buffers Exploration to deal with custom classes in ScalaPB (manual, shapeless, macros)
- https://eng.uber.com/h3/ City mapping and bucketing with hexagons instead of classic squares
- https://www.youtube.com/watch?v=CIPGZzbPpeg John A. De Goes, about the Design of the Scalaz 8 Effect System (IO, Fiber)
- https://medium.com/@brannondorsey/attacking-private-networks-from-the-internet-with-dns-rebinding-ea7098a2d325 Taking control of IoTs through DNS Rebinding, yikes
- https://cloudplatform.googleblog.com/2018/06/New-Cloud-Filestore-service-brings-GCP-users-high-performance-file-storage.html Filestore: a new high-performance filesystem for GCP to bind to VMs
26-06-2018
- https://blog.zenika.com/2018/04/27/traefik-comme-reverse-proxy-sur-gke/ Traefik on GKE with letsencrypt
- https://medium.freecodecamp.org/here-are-three-upcoming-changes-to-javascript-that-youll-love-387bce1bfb0b?gi=8e8fac87cdc New operators in Javascript incoming. ? ?? |>
- https://mapr.com/blog/how-guide-getting-started-apache-drill/ A long overview of Apache Drill
- https://www.infoq.com/articles/C4-architecture-model The C4 Model for Software Architecture, 4 types of diagrams: "Context, Containers, Components, Code (uml)"
- https://docs.scala-lang.org/overviews/compiler-options/index.html New page: Scala Compiler Options, so many options we never use
25-06-2018
- https://prospect.io/blog/cold-email-illegal/ Cold email and laws: where it is okay, where it is not
- https://dev.to/indy_singh_uk/strings-are-evil-9f9 Parsing a csv, from 8GB memory to 32kb (using the same byte buffer over and over, avoid StringBuffer, split..)
- https://javelin.com/ Javalin is a really nice "all-in-one" software for startups and innovation teams, helping you defining the necessary steps to launch
- https://developer.okta.com/blog/2018/06/20/what-happens-if-your-jwt-is-stolen JWT is just a string containing some json only the server can decrypt. If someone else uses it client-side, you're screwed.
- https://www.gethighlights.co/blog/what-to-optimize-landing-page/ What to Optimize in a landing page
- https://cldellow.com/2018/06/22/sqlite-parquet-vtable.html Comparing CSV import in postgresql and sqlite and sqlite+parquet, really good
- https://medium.com/futuretech-industries/postgres-raffle-10k-connections-35-mo-part-two-b4c2e0c86e37 Demonstrating the usage of PgBouncer and its options
- https://www.citusdata.com/blog/2018/06/14/scalable-incremental-data-aggregation/ Rollups using Citus
- https://github.com/facebookresearch/DensePose mapping all human pixels of 2D RGB images to a 3D surface-based model of the body
24-06-2018
- https://making.pusher.com/how-pusher-channels-has-delivered-10000000000000-messages/index.html LB, sharding, fan-out with Redis to deliver tons of messages per sec
- https://blog.stephanbehnke.com/3-years-on-google-app-engine-an-epic-review/ 3 years on Google App Engine. An Epic Review (from 2016 !).
23-06-2018
- https://www.computerworld.com/article/3162416/data-center/booted-up-in-1993-this-server-still-runs-but-not-for-much-longer.html Booted up in 1993, this server was still running last year :o
- https://vincent.bernat.im/en/blog/2017-ipv4-route-lookup-linux IPv4 routes are stored as Patricia trie (a compressed trie)
- https://www.bloomberg.com/news/articles/2018-06-21/states-can-require-internet-tax-collection-supreme-court-rules-jiomtl5c More taxes for online retailers such as amazon, ebay, etsy etc.
22-06-2018
- https://www.scylladb.com/2018/06/21/impact-virtualization-database/ "The Impact of Virtualization on Your Database": bare metal have ~30% better throughput, use way less cpu, and way lower read latencies
- https://bettereveryday.vc/how-much-traction-do-you-really-need-to-raise-a-seed-or-series-a-round-5fb0cf532201 Some thresholds to know about, in order to seed or series A, according to the type of business
- https://www.youtube.com/watch?v=JZPXzJ5tp9w Nice talk about functors, contra & profunctors
- https://cloudplatform.googleblog.com/2018/06/How-to-connect-Stackdriver-to-external-monitoring.html using webhooks called by StackDriver to monitor external resources
21-06-2018
- http://blog.karumi.com/replacing-creational-patterns-for-testing-with-property-based-generators/ Scalacheck generators ftw
- https://v8project.blogspot.com/2018/06/v8-release-68.html Speed & memory improvements in V8!
- https://medium.com/netflix-techblog/simplifying-media-innovation-at-netflix-with-archer-3f8cbb0e2bcb Archer: media processing at scale, make easy
- https://arp242.net/weblog/yaml_probably_not_so_great_after_all.html YAML sucks
- https://samnewman.io/patterns/architectural/bff/ When to use or not use Backends For Frontends pattern (BFF)
20-06-2018
- https://typelevel.org/blog/2018/06/15/typedapi.html How to derive clients and servers from types. Shapeless inside.
- https://www.smashingmagazine.com/2018/06/placeholder-attribute/ Don’t Use The Placeholder Attribute; a11y, translation, interop, help
- https://blog.softwaremill.com/akka-vs-zio-vs-monix-part-2-communication-9ce7261aa08c A web crawler implements with Akka vs ZIO vs Monix.
- https://jakearchibald.com/2018/i-discovered-a-browser-bug/ Bypassing CORS to get data from other websites :o
- https://cloudplatform.googleblog.com/2018/06/Cloud-TPU-now-offers-preemptible-pricing-and-global-availability.html Preemptible Cloud TPUs ftw. Cost--.
- https://github.com/dylanaraps/pure-bash-bible You think you know bash?
19-06-2018
- https://stripe.com/atlas/guides/ama-tom-blomfield A nice AMA with Monzo, a modern-day bank.
- http://www.unixguide.net/unix/faq/1.3.shtml "What does {some strange unix command name} stand for?" some are good to remember
- https://gregable.com/2010/09/why-you-should-know-just-little-awk.html Awk can tremendously help just by knowing so little
18-06-2018
- https://www.infoq.com/presentations/liberty-monolith-ddd-microservices Deconstructing Monoliths with Domain-driven Design
- https://www.scala-lang.org/blog/2018/06/15/bsp.html The day DSP fully works will be blessed (because currently, in Intellij, it's.........)
- http://highscalability.com/blog/2018/6/18/how-ably-efficiently-implemented-consistent-hashing.html Consistent Hashing explained
- https://www.youtube.com/watch?v=MLRrFIfR5B0 Overview of shapeless then fs2 (with @SystemFw, 45min)
- https://github.com/bytefish/PgBulkInsert Java library for efficient Bulk Inserts to PostgreSQL using the Binary COPY Protocol.
- https://www.incapsula.com/blog/zero-to-account-takeover-how-i-impersonated-someone-else-using-auth0.html Phishing attack using Auth0
- http://malisper.me/my-approach-to-getting-dramatically-better-as-a-programmer/ Recording its own screen to watch and analyze it later, to improve how to think, yeah
- http://www.r2d3.us/visual-intro-to-machine-learning-part-2/ Decision trees under and overfitting
- https://www.infoq.com/news/2018/06/observability-microservices dtracing ftw. "Most failures in the microservices space occur during the interactions between services, ..."
- https://www.oreilly.com/ideas/microservices-events-and-upside-down-databases Each service has its own database. To share tons of events (equivalent of a fat select *), you can use simply use streaming (kafka here)
- https://blog.gojekengineering.com/kafka-4066a4ea8d0d Feedback about the need to have a frontier kafka to deal with failures (backed with Redis)
- https://pierangeloc.github.io/blog/2018/06/01/on-RT-and-FP Sweet recap about why referential transparency is necessary to have a local and easy reasoning
- https://nrinaudo.github.io/workshop-minimum-git/#1 Nice slides to ensure you know the "bare minimum" of git
16-06-2018
- https://medium.freecodecamp.org/the-top-contributors-to-github-2017-be98ab854e87 Always interesting to know the "big names" doing open sources
- https://facebook.github.io/react-native/blog/2018/06/14/state-of-react-native-2018 React Native goes into a refactoring process (for the better)
15-06-2018
- https://www.cybertec-postgresql.com/en/index-decreases-select-performance/# Postgres sometimes think using a given index will be faster, but it's not always the case
- https://www.elastic.co/blog/elasticsearch-6-3-0-released Elasticsearch now do rollups (batch jobs)
- https://cloudplatform.googleblog.com/2018/06/Behind-the-scenes-with-the-Dragon-Ball-Legends-GCP-backend.html Dragon Ball Legends is GCP backed! Spanner, Google Network for low latency using its PoPs, PubSub, Dataflow, BigQuery. Scalability to the max!
- https://github.com/Netflix/pollyjs/ Record, Replay, and Stub HTTP Interactions.
- https://kubuszok.com/2018/sbt-tips-and-tricks/ A sweet recap of sbt how-to and useful plugins
14-06-2018
- https://www.slideshare.net/avleenvig/elk-mooseively-scaling-your-log-system Scaling out ELK stack
- https://cloudplatform.googleblog.com/2018/06/Introducing-QUIC-support-for-HTTPS-load-balancing.html You should now enable QUIC support on your HTTPS load balancers
- https://www.microsoft.com/developerblog/2016/05/26/creating-universal-windows-apps-with-react-native/ I didn't see that one: react-native-windows
- https://twitter.com/thelarkinn/status/1006746626617008128?s=21 Microsoft going almost-full-typescript (Skype, Office 365..)
13-06-2018
- https://www.scala-lang.org/blog/2018/06/13/scala-213-collections.html Sweet and short summary of Scala 2.13’s Collections changes
- https://cloudplatform.googleblog.com/2018/06/Now-you-can-deploy-your-Node-js-app-to-App-Engine-standard-environment.html node.js into App Engine standard
- https://medium.com/@olxc/ethereum-and-smart-contracts-basics-e5c84838b19 Ethereum and smart contracts basics
- https://medium.com/@olxc/catamorphisms-and-f-algebras-b4e91380d134 Catamorphisms and F-Algebras
12-06-2018
- https://www.smashingmagazine.com/2018/06/nodejs-tools-techniques-performance-servers/ Using autocannon (load tester) and clinic to analyze and improve a nodejs server using frame graphs
- http://rea.tech/use-the-decorator-pattern-for-clean-i-o-boundaries/ Using decorator pattern for separation of concerns and in particular here, I/O boundaries
- https://www.loriskumo.com/journal/guide-typographique-de-base Guide typographique de base, ou l'écriture pour les pros.
- https://blog.softwaremill.com/scalaz-8-io-vs-akka-typed-actors-vs-monix-part-1-5672657169e1 Scalaz 8 IO vs Akka (typed) actors vs Monix; using a rate limiter example.
- https://engineeringblog.yelp.com/2018/06/yelps-secret-detector.html Preventing Secrets in Source Code by looking for high entropy strings: smart
11-06-2018
- https://www.youtube.com/watch?v=SV-cgdobtTA Learning Deep Learning in JS
- https://gist.github.com/SystemFw/deb56c93e37af6a1fb1b48f878256b6b Explaining some of the mechanics of interpretation of Free programs
- https://medium.com/@simon.aubury/using-ksql-apache-kafka-a-raspberry-pi-and-a-software-defined-radio-to-find-the-plane-that-wakes-14f6f9e74584 Using KSQL to track planes
- https://brandur.org/graphql Why REST is still a thing, and what GraphQL solves
- https://medium.com/@andy.bryant/kafka-streams-work-allocation-4f31c24753cc Understanding how Kafka Streams tasks allocation works
- https://restoreprivacy.com/google-alternatives/ Alternatives to Google Products, privacy-oriented
- https://www.destroyallsoftware.com/blog/2017/the-biggest-and-weirdest-commits-in-linux-kernel-git-history octopus merge in git! (more than 2 parents)
08-06-2018
- https://medium.com/google-cloud/google-kubernetes-engine-load-testing-and-auto-scaling-with-locust-ceefc088c5b3 "workshop": playing with GKE and do some load-testing using Locust, then k8s auto-scaling
- https://medium.com/blablacar-tech/streaming-data-out-of-the-monolith-building-a-highly-reliable-cdc-stack-d71599131acb Cool feedback using CDC to migrate stuff and adding a deduplicator app (as always) —because CDC=at least once— backed by Cassandra LOCAL_QUORUM (strong cons)
- https://cloudplatform.googleblog.com/2018/06/Introducing-sole-tenant-nodes-for-Google-Compute-Engine.html GCP now provides machines for yourself!
- https://kubuszok.com/2018/speed-up-things-in-scalac-and-sbt/ Tons of tips to improve scalac/sbt compilation speed. graal, CI caches, CI database optimized to not write to disk, scala parallelism, more modules, no snapshot, less macros, (kentuckymule/hydra if motivated)
- https://www.youtube.com/watch?v=HssczgaY9BM Andre Staltz explains how he got the idea of "callbag". Basically, a consumer/producer system which can talk to each other (about anything)
- https://github.com/testcontainers/testcontainers-scala Docker containers for testing in scala!
- https://github.com/Netflix/atlas Netflix built an in-memory time series database, need to test it!
- https://streaml.io/blog/pulsar-topic-compaction/ Pulsar now can compact topics too
- https://www.jetbrains.com/research/devecosystem-2018/scala/ A very odd Scala survey (30% on 2.13? 26% on java9? 25% are not using any lib to do webdev?)
- https://plokhotnyuk.github.io/jsoniter-scala/ jsoniter-scala has tons of public benchmarks. It just beats 'em all (throughput, mem alloc, gc..)
06-06-2018
- https://www.slideshare.net/jdegoes/blazing-fast-pure-effects-without-monads-lambdaconf-2018 New type in scalaz8: KleisliIO, to dispatch effects with performance
- https://medium.com/@urish/thank-you-google-how-to-mine-bitcoin-on-googles-bigquery-1c8e17b04e62 Mining Bitcoin on Google’s BigQuery Oo
- https://www.confluent.io/blog/may-preview-release-advancing-ksql-and-schema-registry/ KSQL and Schema Registry integration into Confluent Platform
- https://flagtheory.com/stripe-atlas/ Why is Stripe Atlas is Bad for Foreigners? because it's damn complicated
05-06-2018
- https://www.superhi.com/blog/how-to-start-a-startup-without-ruining-your-life The steps to create a startup, from the name, to the validation, to the ppl, to the money
- https://producthabits.com/how-to-design-a-sticky-product-experience/ How to Design a Sticky Product Experience—"In SaaS, your stickiest features won’t necessarily be the ones that are used the most often"
- https://medium.com/tradecraft-traction/10-ways-to-use-trello-for-product-management-db520b95dd9d Ways to use Trello. I like the retrospective/paint points/grouping usage.
- https://www.scala-lang.org/blog/2018/06/04/scalac-profiling.html scalac-profiling, a new tool to understand why compilation is slow (ie: macros and implicits resolution, ie2: shapeless)
- https://redditblog.com/2017/05/24/view-counting-at-reddit/ Interesting feedback to implement a "View Counting" using Redis (hll) + Cass for persistence
- https://www.indiehackers.com/@vbordo/from-failed-launch-to-going-viral-on-hacker-news-bdd734e742 If Show HN doesn't work the first time, try again
- https://github.com/brettwooldridge/HikariCP/wiki/About-Pool-Sizing Pool sizing performances
04-06-2018
- https://tech.trivago.com/2017/01/25/learn-redis-the-hard-way-in-production/ Basically, don't forget to add a connection pooler to your redis.
- http://www.vertabelo.com/blog Tons of SQL modeling, from dating app, to restaurant delivery, to santa's!
- https://blog.outlyer.com/top10-open-source-time-series-databases An "old" (2016) top 10 Time Series Databases with pros and cons.
- https://www.justwatch.com/blog/post/debugging-postgresql-performance-the-hard-way/ Interesting debugging session with PostgreSQL and some joined tables. Solution was index (ofc), but quite subtle.
- https://blog.insightdatascience.com/anatomy-of-an-elasticsearch-cluster-part-i-7ac9a13b05db Some insights about Elasticsearch internals
- https://medium.com/google-cloud/paying-it-forward-how-bigquerys-data-ingest-breaks-tech-norms-8bfe2341f5eb About BigQuery's free ingestion model
- https://blog.jooq.org/2017/05/03/dont-use-the-string-concatenation-trick-in-sql-predicates/ TIL about "row constructors" in SQL:
where (a, b) in (select a, b from toto)
- https://jethro.io/hadoop-deployment-cheat-sheet/ This Hadoop Deployment Cheat Sheet brings memories!
- https://monitor.gitlab.net/dashboard/db/github-importer?orgId=1 Lots of Github are migrating to GitLab. The graphs don't lie.
- https://github.com/trueadm/ssr-with-prepack-hackathon Totally removing ReactJS source from the output using prepack (SSR)
- https://dev-blog.apollodata.com/graphql-over-rest-with-node-heroku-and-apollo-engine-fb8581f8d77f GraphQL over REST with Node, Heroku, and Apollo Engine
- https://medium.engineering/2-fast-2-furious-migrating-mediums-codebase-without-slowing-down-84b1e33d81f4 Medium is migrating to... drum rolls ReactJS and GraphQL.
03-06-2018
- https://www.youtube.com/watch?v=BT9hUusNKQ8 SaaS focus too much on customer acquisition; features cost less and less (because we have more and more SaaS, easier to build nowadays)
- https://www.julian.com/blog/what-you-should-do-with-your-life Assess your life: What you should do with your life
- https://www.youtube.com/watch?v=jwG_qR6XmDQ Jeff Bezos about minimizing regrets: try or you'll always regret it
- https://trac.torproject.org/projects/tor/wiki/org/meetings/2018Rome/Notes/FusionProject Merging Tor and Firefox, to avoid managing Tor's fork.
02-06-2018
- https://gist.github.com/gvolpe/d4facceedf12ab7870934cbf9d6174e9 Shared state in fp, flatmap once and pass the ref!
- https://copyhackers.com/2017/09/cold-emails A story about cold emails
- https://cloudplatform.googleblog.com/2018/06/Kubernetes-best-practices-upgrading-your-clusters-with-zero-downtime.html k8s upgrade: either do a rolling upgrade, or create a node pools and migrate yourself
- https://threadreaderapp.com/thread/1002103360646823936.html "How to Get Rich (without getting lucky)" AH! :)
01-06-2018
- http://www.mikaelmayer.com/2018/05/23/migrating-makefile-to-mill/ Migrating Makefile to Mill. Not convinced.
- https://www.useronboard.com/how-duolingo-onboards-new-users/ Duolingo onboarding
- https://redis.io/topics/streams-intro Redis Streams: a concept similar to Kafka topics with consumers groups
- https://medium.com/hello-web-design/design-for-non-designers-part-1-6559ed93ff91 Design for Non-Designers: reduce clutter, pick complementary colors, add whitespaces
- http://www.goodweb.design/ The "best" landing pages, to help you
- https://www.julian.com/guide/growth/landing-pages Magistral guide about landing pages writing & optimization
- https://speakerdeck.com/zoontek/manage-microservices-like-a-chef Manage microservices like a Chef: API Gateway, gRPC, GraphQL <3
- https://functional.works-hub.com/learn/implicit-implications-part-3-the-future-is-functional-implicitly-c410c Implicit functions in-depth, and comparison with ReaderT usages
- https://sake92.github.io/hepek/index.html A Scala static website generator
- https://www.wrike.com/ A project management/kanban/gantt/etc. tools for your business
31-05-2018
- https://www.w3.org/TR/websub/ WebSub, a new standard to deal with HTTP web hooks
- http://shoutcloud.io/ SHOUTCLOUD: THE CLOUD THAT SHOUTS BACK
- https://japgolly.blogspot.com/2017/06/dependently-typed-functions.html Dealing with dependently-typed functions
- https://underscore.io/blog/posts/2017/06/02/uniting-church-and-state.html Monad is the church-encoding of Free (and Free is its reification)
- https://www.youtube.com/watch?v=aKUQUIHRGec Writing Free from scratch
- https://www.youtube.com/watch?v=LhGq4HlozV4 What lead to the Eff monad, how to build and interpret it
- https://www.infoq.com/presentations/ml-models-ab-tests Presentation and how to write SparkML pipelines to do ML
- https://probablydance.com/2018/05/28/a-new-fast-hash-table-in-response-to-googles-new-fast-hash-table/ Designing fast hash table is an art
- https://zachholman.com/talk/utc-is-enough-for-everyone-right Talking about history, timezones, UTC is always a fun story
- https://cloudplatform.googleblog.com/2018/05/Cloud-Source-Repositories-more-than-just-a-private-Git-repository.html Cloud Source Repositories features: git (ofc), trigger auto-build (container, appengine), integrated with stackdriver debug
- https://github.com/yandex/odyssey Another PostgreSQL connection pooler
30-05-2018
- https://jrsinclair.com/articles/2017/faster-better-cheaper-art-of-making-software/ Reduce customer pain, reduce lead time, estimates are useless, make developer feel the customer pain, have a tigh feedback loop
- https://warpspire.com/posts/work-life-balance "How many hours you work" is not a useful metric
- https://www.devmynd.com/blog/five-factor-testing/ Why write tests
- https://tomharrisonjr.com/uuid-or-guid-as-primary-keys-be-careful-7b2aa3dcb439 Of the usage of UUIDs as PK
- https://www.slideshare.net/julienledem/improving-python-and-spark-performance-and-interoperability-with-apache-arrow Arrow, or Parquet in-memory, as a standard in-memory columnar structure
- https://kubuszok.com/2018/relearn-your-sbt/ Reintroduction of sbt for those who knows it
29-05-2018
- https://www.youtube.com/watch?v=z-6JC0_cOns React Suspense (async rendering and dealing with spinners) and smarter SSR
- https://github.com/eli-jordan/tagless-final-jam A sweet and short workshop on tagless final
- http://joeduffyblog.com/2013/02/17/software-leadership-series/ Superb series about Software Leadership, a must-read
- http://www.nicolasbize.com/blog/30-years-later-qbasic-is-still-the-best/ I've started with QBasic too, wonderful memories <3
28-05-2018
- http://joeduffyblog.com/2015/11/03/blogging-about-midori/ HUGE amazing feedbacks about several parts of Midori, a (discontinued) project from Microsoft. From capabilities, asynchronous model, error model, concurrency, why, how etc.
- http://chrisseaton.com/truffleruby/jokerconf17/ Graal is a masterpiece. A Java JIT, an AOT compiler (SubstrateVM), and with Truffle, a framework to get polyglottism on top of the JVM
- http://eed3si9n.com/power-assert-with-expecty Expecty or exactly know why an assertion failed
- https://powerdns.org/hello-dns/ Guide to how DNS works
- https://stripe.com/atlas/guides/saas-pricing Tons a case studies about pricing page
- https://stripe.com/atlas/guides/business-of-saas Guide to SaaS, tons of infos and tips
- https://www.infoq.com/presentations/lambda-streams-delta Feedback from monolith to event sourced arch, Kinesis issues compared to Kafka
- https://www.infoq.com/presentations/crdt-distributed-consistency Talk by Martin Kelppmann about CRDTs guaranteeing convergence
- https://www.infoq.com/presentations/async-event-arch Talk about 2 approaches to event-based arh. One with kafka decoupling, the other with ActiveMQ and actors
- https://medium.com/@tshiran_81544/google-docs-for-all-data-sources-an-approach-using-open-source-tools-26278a2fb86c Dremio connects to any datasource and offers exploration and analytics tools
- https://blog.acolyer.org/2018/05/23/pixie-a-system-for-recommending-3-billion-items-to-200-million-users-in-real-time/ How Pinterest recommends stuff to users in real-time (random walks taking bias, boosting, eartly stopping (realtime), into account)
- https://segment.com/blog/introducing-centrifuge/ How segment built a system to deliver events to partners (failures, fairness, scalability..)
- https://pgdash.io/blog/partition-postgres-11.html Finally, with the tons of improvements they did, the partitions in pg11 look useful!
- https://speakerdeck.com/paf31/the-future-is-comonadic Comonads for user interfaces
27-05-2018
- https://cloudplatform.googleblog.com/2018/05/Kubernetes-best-practices-mapping-external-services.html Access to an external resource from k8s: service without selector + endpoint, or ExternalName service to act as cname
- https://azeria-labs.com/the-importance-of-deep-work-the-30-hour-method-for-learning-a-new-skill/ The Importance of Deep Work & The 30-Hour Method for Learning a New Skill
26-05-2018
- https://eng.uber.com/deckgl-v5/ deck.gl v5: react-independant!
- https://apility.io/2018/05/25/gdpr-lazy-block-european-users-cloudflare-workers/ Block all European users. \o/
25-05-2018
- https://medium.com/@joang/a-cqrs-approach-with-kafka-streams-and-scala-49bfa78e4295 Simple API + CQRS using Kafka Streams
- https://thenewstack.io/gatsbyjs-the-open-source-react-based-ssg-creates-company-to-evolve-cloud-native-website-builds/ Gatsby is now a startup
- https://www.youtube.com/watch?v=uZnHMhtMEbo "Implementation" of actors Actors using Cats Effect and FS2
- http://blog.rekawek.eu/2017/02/09/coffee-gb/ Implementing a Gameboy emulator is the new Todo list, err, HN tutorial.
24-05-2018
- https://typelevel.org/blog/2018/05/09/tagless-final-streaming.html Sweet exploration of Tagless Final with fs2.Stream
- https://github.com/scodec/scodec Working with binary data in Scala
- https://gist.github.com/OlivierBlanvillain/48bb5c66dbb0557da50465809564ee80 Cool gist about tagless final vs initial encoding; and extensibility/transformations
- https://medium.com/containerum/how-to-setup-ci-cd-workflow-for-node-js-apps-with-jenkins-and-kubernetes-360fd0499556 How to setup CI/CD workflow for Node.js apps with Jenkins and Kubernetes
- https://blog.playframework.com/play-on-graal/ Running Play on GraalVM gives better perfs (probably because of a better escape analysis)
- https://www.youtube.com/watch?v=Pgo73GfHk0U Where State Monads comes from
- https://www.youtube.com/watch?v=GzbravzRrBM react-navigation in demo, very great to develop react-native apps
- https://www.slideshare.net/LukaJacobowitz/oh-all-the-things-youll-traverse Monoidal, Semigroupal, Traversable, all those things
- http://appddeevvmeanderings.blogspot.fr/2018/05/cats-effect-and-webservice-composition.html Working with IOs/Option[T]/Validated as any classic webservices
- http://www.geekabyte.io/2018/05/thoughts-on-dealing-with-having-another.html Monads in Future leads to crappy code, lifting everything into Futures, or monad transformers.
- https://cloudplatform.googleblog.com/2018/05/Sharding-of-timestamp-ordered-data-in-Cloud-Spanner.html It suggests to add a new column "ShardedEntryId" used in an index to avoid index hotspots
- https://www.slideshare.net/ItamarRavid/a-fistful-of-functors Variations of the functors (cov, contra, inv, pro)
- https://speakerdeck.com/alexandru/cancelable-io Cancelable IO in cats-effect
- http://blog.leifbattermann.de/2017/04/21/12-things-you-should-know-about-event-sourcing/ How to do Event Sourcing
- https://blog.softwaremill.com/scalar-2018-whiteboard-voting-results-c6f50f8fb16d Scalar 2018 whiteboard voting results, to know with what the community is working with, see if you're not far away
- https://cloudplatform.googleblog.com/2018/05/Better-cost-control-with-Google-Cloud-Billing-programmatic-notifications.html on GCP, budget now generates proper events we can react to (pubsub'ed)
23-05-2018
- https://opensource.googleblog.com/2018/05/introducing-git-protocol-version-2.html git new protocol, to reduce bandwidth usage for huge projects (tons of branches and tags)
- https://techblog.bozho.net/gdpr-practical-guide-developers/ GDPR - A (very good) Practical Guide For Developers
- https://jacquesmattheij.com/gdpr-hysteria GDPR myths busting
- https://queue.acm.org/detail.cfm?id=3220266 A very good overview of btrees/lsmtrees/ssts
- https://kickstarter.engineering/event-sourcing-made-simple-4a2625113224 An Event Sourcing implementation
- https://streaml.io/blog/pulsar-message-queue/ Pulsar = Kafka + RabbitMQ (backed by BookKeeper)
- https://www.quora.com/What-is-the-most-sophisticated-piece-of-software-code-ever-written/answer/John-Byrd-2 is it a computer worm finding its way to uranium centrifuges to mess with them? (stuxnet)
- http://blogs.harvard.edu/doc/2018/05/12/gdpr/ will GDPR pop the adtech bubble?
- https://www.infoq.com/news/2018/05/gvisor-container-sandbox gVisor, another layer between an app in a container and the kernel. Implements a OCI runtime; intercepts and deals with system calls itself; made to reduce the surface attack.
- https://cloudplatform.googleblog.com/2018/05/Three-steps-to-prepare-your-users-for-cloud-data-migration.html How to prepare your users for cloud data migration
- https://sematext.com/blog/opentracing-jaeger-as-distributed-tracer/ Presenting Jaeger as Distributed Tracer (and soon, vs Zipkin)
- http://blog.cloudera.com/blog/2018/05/scalability-of-kafka-messaging-using-consumer-groups/ Another explanation of Kafka Consumer Groups, used for scalability
- https://github.com/monix/monix/pull/670 Task gets smarter about forking and async boundaries
- https://cloudplatform.googleblog.com/2018/05/Using-Jenkins-on-Google-Compute-Engine-for-distributed-builds.html Google has developed the Jenkins GCE plugin to use it for slaves (and could preempt)
- https://www.infoq.com/articles/data-leakage-hindsight-bias-machine-learning Demystifying Hindsight Bias in ML
- https://cloudplatform.googleblog.com/2018/05/Introducing-Cloud-Memorystore-A-fully-managed-in-memory-data-store-service-for-Redis.html Cloud Memorystore, backed by Redis
- https://cloudplatform.googleblog.com/2018/05/SRE-vs-DevOps-competing-standards-or-close-friends.html SRE jobs: SRE implements DevOps, helps defining SLI/SLO/SLA, risk and error budgets
- http://www.thedevpiece.com/alpakka-akka-streams-vs-apache-camel-who-wins/ Clearly Akka Streams. Camel is awesome because it has tons of connectors, but the "type all with strings" is a big no.
- https://github.com/opentracing-contrib/scala-concurrent OpenTracing instrumentation for Scala's Futures
- https://gist.github.com/gaearon/d85dccba72b809f56a9553972e5c33c4 prepack doesn't transform the input code, it executes it and write back the "leftover"/effectful code
- https://blog.npmjs.org/post/173719309445/npm-audit-identify-and-fix-insecure "npm audit" is a really great tool to identify and fix insecure dependencies, to not be unsecured yourself
- https://www.reddit.com/r/tifu/comments/8kvias/tifu_by_getting_google_to_ban_our_entire_company/ "Getting Google to ban our entire company"
- https://threadreaderapp.com/thread/998660806005768192.html @Suhail providing insights about becaming CEO
- https://github.com/olistic/warriorjs A programming game where your warrior has feeling
22-05-2018
- http://degoes.net/articles/bifunctor-io Scalaz IO[E, A] distinguish between recoverable & non-recoverable errors, can represent IO that won't fail (already .attempt for instance), make errors composition explicit, is a superset of the existing IO[A] so no need to worry about.
- https://www.oreilly.com/ideas/how-will-the-gdpr-impact-machine-learning How will the GDPR impact machine learning?
- https://medium.com/webpack/webpacks-new-cli-hotness-d6a2063168a8 I didn't used webpack in ages, but still nice to see its CLI getting very good!
- https://www.youtube.com/watch?v=4tKSEKM64-c Ignition and Turbofan quickly explained in V8
- https://www.youtube.com/watch?v=mIWCLOftfRw All modern JS features in Chrome (modules, bigint, regexes, for await, string functions, finally, spread, private class fields))
- https://www.percona.com/blog/2018/04/30/a-look-at-myrocks-performance/ MyRocks, a write-optimized engine (forked from RocksDB) is a better fit where cpu and io are more constrained/costly (ie: cloud) (InnoDB consuming more of them); and has a better throughput for smaller datasets
- https://github.com/bodil/spectre-of-free-software/blob/master/script.org We can't allow knowledge to be lost, that's what free software and open source is all about
- https://medium.com/@corychaplin/genesis-of-m6s-datalake-edf2524b7d67 I feel sad to see a new big stack emerging on a classic old scheme: hosted hadoop, puppet, hive, sqoop. The thing we escaped in my previous company because it was too time-consuming for nothing.
- https://www.usenix.org/sites/default/files/conference/protected-files/srecon18americas_slides_brown.pdf How to prioritize and communicate risk (SRE)
- https://cloudplatform.googleblog.com/2018/05/Defining-SLOs-for-services-with-dependencies-CRE-life-lessons.html Defining SLOs for services with dependencies
- https://alexn.org/blog/2018/05/06/bifunctor-io.html An interesting critique of the Bifunctor IO leading to more harm than good (and especially not replacing the simple IO)
- https://www.youtube.com/watch?v=nVcjaiTRgSY When a company is growing, it really needs to ensure it has a proper "design system" (a unique library of visual components and everything around to make it work with easily for everyone)
- https://medium.com/netflix-techblog/open-sourcing-zuul-2-82ea476cb2b3 Zuul 2 is basically a Netty proxy where all traffic ins and outs. It adds monitoring, resiliency, debugging features, filtering, routing, and tons of smart behaviors for a huge-scale (canary testing, cold instances, anomaly detection.)
- https://www.youtube.com/watch?v=ZmlQoeEycPc HTTPS is Dangerous: basically some troubles (certificate expiration, fakes) and probably some backdoors possible for SHA-breakage
- https://www.youtube.com/watch?v=UD-ukjVoeLc Why URLs are troublesome (phishing, mis-identity, sharing non-understandable urls)
- http://twicsy-blog.tumblr.com/post/174063770074/how-i-targeted-the-reddit-ceo-with-facebook-ads-to Using Facebook ads to target the Reddit CEO to make it read your own article, ahah
- https://cloudplatform.googleblog.com/2018/05/Google-Kubernetes-Engine-1-10-is-generally-available-and-ready-for-the-enterprise.html GKE goes full scale: Regional PD and Regional Clusters (multi-masters)
- https://medium.com/@sinisalouc/whats-new-in-scala-3-28d9c11eec30 A written recap of what's new in Scala 3
🇳🇴 ❤️ )
21-05-2018 (back from - http://eed3si9n.com/hot-source-dependencies-using-sbt-sriracha working with unpublished dependencies directy using the sources (to test newer scala version for instances)
- https://www.slideshare.net/Odersky/preparing-for-scala-3 Updated slides about Scala 3 roadmap (very clear)
- https://www.saastr.com/catfished-by-a-candidate/ A catfish candidate wouldn't appear in the code-tech industry!
- https://github.com/chrissimpkins/Crunch Lossy PNG image optimization
05-05-2018
- http://blog.leifbattermann.de/2017/04/21/12-things-you-should-know-about-event-sourcing/ A nice recap about ES
- https://www.ebayinc.com/stories/blogs/tech/announcing-the-accelerator-processing-1-000-000-000-lines-per-second-on-a-single-computer/ A kind of Airflow (ie: an ETL) dedicated to data processing
- http://degoes.net/articles/effects-without-transformers Details about why MTL is a trade-off in Scala (large overhead), and even more when we want to get them stack-safe. Could be limited by using dedicated monads such as MonadState (instead of StateT), and IO of Scalaz8.
- https://speakerdeck.com/dwestheide/the-essence-and-fundamentals-of-scala Scala for the newcomer
- https://slides.com/ivantopo/dtw/ A recent presentation of Kamon features. Soon, without AspectJ!
04-05-2018
Being on holidays in Norway
- https://medium.com/@mustafaakin/previewing-elasticsearch-6-3-sql-feature-2d3a1d60cab4 SQL in Elasticsearch, no more complex JSON language to memorize (i always forget it anyway).
03-05-2018
- https://www.confluent.io/blog/introducing-the-confluent-operator-apache-kafka-on-kubernetes/ Confluent working on Kafka for Kubernetes
- https://www.slideshare.net/jdegoes/scalaz-8-a-whole-new-game A damn good presentation about incoming Scalaz 8
- https://medium.com/padlet-ink/an-honest-guide-to-the-san-francisco-startup-life-6df13d23689 Hialrious guide to San Francisco startup life
- https://engineeringblog.yelp.com/2018/05/android-search-perf-improvements-part-1.html How Yelp improves its native app (less jank), because #perfmatters
- https://akka.io/blog/news/2018/05/02/alpakka-team Alpakka has now its own team. EAI ftw.
02-05-2018
- https://news.ycombinator.com/item?id=16954306 A one-man startup shuts down because he can't assume GDPR regulations
- https://spectrum.ieee.org/telecom/internet/your-guide-to-the-gdpr A clear guide to the GDPR
- https://cloudplatform.googleblog.com/2018/05/regional-replication-for-cloud-bigtable.html Bigtable replications in multiple zones (same region)
- https://github.com/cyanharlow/purecss-francine Come on, a portrait in pure css manually crafted. How on earth.
01-05-2018
- https://www.confluent.io/blog/introducing-confluent-platform-preview-releases/ a UI for KSQL (in Confluent Control Center), misc protections around deletion of kstreams, and more features, looks good
- https://developers.google.com/web/updates/2018/05/bigint BigInt: arbitrary-precision integers in JavaScript
- https://www.youtube.com/watch?v=V10hzjgoklA Category Theory by Philip Wadler
- https://reactjs.org/blog/2018/03/01/sneak-peek-beyond-react-16.html Very cool features in React to suspend rendering and load anything async (+ display loaders if needed) data very cleanly
- https://www.scala-lang.org/blog/2018/04/30/in-a-nutshell.html Scala 3 macros update
- http://blog.isquaredsoftware.com/2018/03/redux-not-dead-yet/ I'm barely following the react scene nowaydays, and "Redux - Not Dead Yet!" Seems some FUD was spread.
30-04-2018
- https://dzone.com/articles/understanding-sunmiscunsafe Demystifying java's Unsafe
- https://arstechnica.com/tech-policy/2018/04/france-seizes-france-com-from-man-whos-had-it-since-94-so-he-sues/ France seizes France.com from man who’s had it since ‘94, so he sues
- https://github.com/scala/scala-collection-compat/ Already use Scala 2.13 Collection Compatibility in 2.12 !
- https://flink.apache.org/news/2015/05/11/Juggling-with-Bits-and-Bytes.html In Java, every high performance app deals with memory allocation manually, creating a huge byte buffer, custom serde, and using Unsafe to play with it.
- https://srvaroa.github.io/java/jvm/unsafe/2016/08/28/sun-misc-cleaner.html Contention on Cleaner when creating tons of DirectByteBuffers
- http://pveentjer.blogspot.fr/2017/01/final-static-boolean-jit.html Inlining depends on the original bytecode size, therefore JIT can have a surprising behavior
- https://www.infoq.com/presentations/taking-back-swe Interesting talk about Software Engineering in general
- https://github.com/airflow-plugins Tons of Airflow Plugins maintained by Astronomer, Inc
- https://www.slideshare.net/tedmiston/momentum-dev-con-airflow-talk-final-version-pdf/tedmiston/momentum-dev-con-airflow-talk-final-version-pdf Modern Data Pipelines with Apache Airflow (Momentum Dev Con 2018)
29-04-2018
- https://www.slideshare.net/jboner/scalability-availability-stability-patterns Long presentation about scalability, availability & stability patterns
- https://www.youtube.com/watch?v=IOiZatlZtGU "Propositions as Types" by Philip Wadler. Links between theorem provers and programming languages.
- https://www.youtube.com/watch?v=VCeHkcwfF9Q Shenandoah explained by Aleksey Shipilev
- https://www.infoq.com/presentations/java-finserv Gil Tene, about JVM performance, hardware, JIT, optimizations
- https://medium.freecodecamp.org/i-dont-understand-graph-theory-1c96572a1401 Graph Theory in practice
- https://www.youtube.com/watch?v=s2ay9nEW3ak why do FP developers always talk about Algebras?
- https://www.youtube.com/watch?v=FnDHp3Qya6s JVM JIT for Dummies
- https://www.youtube.com/watch?v=rPyqB1l4gko JVM Bytecode for Dummies (and the Rest of Us Too)
- https://www.youtube.com/watch?v=_cltA0W-ehQ A Google talk from 2006 (!) about building large systems at Google (scalability, MR, bigtable, hardware)
28-04-2018
- https://www.epicgames.com/fortnite/en-US/news/postmortem-of-service-outage-4-12 A good and honest postmortem of a 22h outage on Fortnite, mostly centered around MongoDB
- https://github.com/nhnent/tui.calendar A JavaScript calendar very similar to the Google Agenda's
- https://www.youtube.com/watch?v=6nyGVgGEKdA Excellent talk presenting Optics
- https://griddb.net/en/docs/NoSQL_Database_Architectural_Comparison.pdf NoSQL databases comparison (cassandra, couchbase, riak, mongodb, griddb)
- https://downloads.ctfassets.net/oxjq45e8ilak/6eh2A72b4IyWsWOIcig4K0/cbb664566fe86672d92ddfb210623920/Chris_Thalinger_Twitter_s_quest_for_a_wholly_Graal_runtime.pdf Twitter and Graal in production, a long interesting story (since 2016) leading to cost saving (less cpu strain)
- https://medium.com/neo4j/graph-visualization-with-neo4j-using-neovis-js-a2ecaaa7c379 Graph visualization with neo4j using neovis.js
- https://cloudplatform.googleblog.com/2018/04/Kubernetes-best-practices-Organizing-with-Namespaces.html Organizing kubernetes with namespaces
- https://stackoverflow.blog/2018/04/26/stack-overflow-isnt-very-welcoming-its-time-for-that-to-change/ Soon, a StackOverflow ISSUE_TEMPLATE for beginners
27-04-2018
- http://tomasp.net/coeffects/ Coeffects and Comonad: Context-aware programming languages
- https://thoughts.t37.net/designing-the-perfect-elasticsearch-cluster-the-almost-definitive-guide-e614eabc1a87 A nice guide about designing an elasticsearch cluster
- https://www.infoq.com/news/2018/04/oracle-graalvm-v1 Interview from the Research Directory at Oracle Labs about GraalVM: why it exists, features, "concurrents", roadmap
- https://github.com/lampepfl/dotty/issues/4389 A code fuzzer that blows up Dotty quite a lot.
- https://cloud.google.com/kubernetes-engine/kubernetes-comic/ A gem: learn what is Kubernetes through a comic with the Goddess Athena.
- https://cloudplatform.googleblog.com/2018/04/Introducing-Kubernetes-Catalog-and-GCP-Open-Service-Broker.html An addon to kubernetes on GCP to "find and connect services to your cloud-native apps". Not sure I understand the thing and the need.
26-04-2018
- https://jobs.zalando.com/tech/blog/distributed-cache-akka-kubernetes/ Distributed cache using Akka Cluster on Kubernetes with StatefulSets
- http://olegpy.com/better-logging-monix-1/ Using Monix's Local to deal with MDC
- https://medium.com/graalvm/graalvm-ten-things-12d9111f307d GraalVM is definitely a crazy project changing the world of languages. Mind blow.
- https://www.youtube.com/watch?v=MFvDLg-qKuU Debugging and understanding the assembly generated by the JVM JIT
- https://www.infoq.com/presentations/tensorflow-ml Great talk from Google about TensorFlow and the need of TPUs
- https://www.infoq.com/presentations/linuxkit-agile-os unikernels, linuxkit, eBPF, where OS are going
- https://cloudplatform.googleblog.com/2018/04/Accelerating-innovation-for-cloud-native-managed-databases.html Bigtable regional replication, Redis (Cloud Memorystore) as a managed service
25-04-2018
- https://www.youtube.com/watch?v=0vfFHMGESVQ Let's Talk About Invokedynamic
- https://fpj.me/2017/07/04/no-consensus-in-exactly-once/ Consensus and exactly-once
- https://medium.com/myheritage-engineering/kafka-to-bigquery-load-a-guide-for-streaming-billions-of-daily-events-cbbf31f4b737 Different strategies to send data from Kafka to BigQuery
- http://philcalcado.com/2017/08/03/pattern_service_mesh.html Service Mesh explained
- http://philcalcado.com/2017/03/22/pattern_using_seudo-uris_with_microservices.html Thoughts about using urn-kind to globally identify a resource, ie: company:kind:id
- http://blog.christianposta.com/microservices/application-network-functions-with-esbs-api-management-and-now-service-mesh/ From ESBs to API Gateways and Service Mesh
- https://dzone.com/articles/synchronous-or-asynchronous-and-why-wrestle-with-wrappers Synchronous and Asynchronous code, why, how
- https://doublepulsar.com/hijack-of-amazons-internet-domain-service-used-to-reroute-web-traffic-for-two-hours-unnoticed-3a6f0dda6a6f Internet security at stake
24-04-2018
- https://www.youtube.com/watch?v=eublKlalobg Kafka Summit 2018 Keynote
- https://github.com/LukaJCB/typeclass-proposal LukaJCB/typeclass-proposal: Typeclass proposal for Dotty
- https://www.youtube.com/watch?v=FBg7K6LKdVg macros: syntactif stuff, shapeless: structural stuff
- https://www.youtube.com/watch?v=MDfeTNa6lBA Création d'instances de typeclasses automatique avec shapeless
- https://www.youtube.com/watch?v=x1f7v0cI8VM case classes to/from maps using shapeless
- https://www.linkedin.com/pulse/mongodb-frankenstein-monster-nosql-databases-john-de-goes/ MongoDB issues
- https://www.youtube.com/watch?v=4fFDFbi3toc They wrote a deterministic simulation (of network, disks, everything) to test and debug distributed systems. They had a lot of fun.
- https://www.youtube.com/watch?v=Q1U6X1bYeuM Pick your frameworks/libraries: here an app using: http4s, fs2, cats-io, pureconfig, circe
- https://medium.com/videoamp/what-we-learned-migrating-off-cron-to-airflow-b391841a0da4 Yes, Cron should never be used to Data engineering production grade stuff.
- https://medium.com/nikeengineering/becoming-a-nimble-giant-how-dynamo-db-serves-nike-at-scale-4cc375dbb18e Feedback from Nike using DynamoDB (how it works, partitioning strategy, need to deal with peaks, pre-scale when product launches etc.)
- https://www.oreilly.com/ideas/data-engineers-vs-data-scientists A post we could send to recruiters. Data engineers vs. Data scientists vs ML engineers.
- http://www.lambdadays.org/static/upload/media/1520323372815660jarekratajskibeautyandthebeasthaskellonjvm.pdf Haskell on the JVM = Eta
- https://ncatlab.org/nlab/show/category+theory A very good doc about category theory, its structures and theorems.
- https://blog.ssanj.net/posts/2017-04-12-how-does-scalacheck-shrinking-work.html Property based testing shrinking explained. Unfortunately, doesn't talk about type vs integrated shrinking (which follows invariants).
- https://threadreaderapp.com/thread/987602838594445312.html Using SQL queries à la old school to reward or reengage customers. No need of ML to do that.
- https://github.com/scalaz/scalaz/issues/1526 Scalaz 8 Roadmap: implement more and more category theory structures
23-04-2018
- http://www.janvsmachine.net/2016/07/effective-typesafe-config.html How to deal properly with a (typesafe) config, naming, organization, units..
- http://lampwww.epfl.ch/~doeraene/presentations/binary-compat-scala-sphere-2018 Designing libraries for source and binary compatibility can be hard
22-04-2018
- https://www.charlesproxy.com/ An alternative to fiddler, to monitor http(s) traffic on a machine (to debug)
- https://www.youtube.com/watch?v=-4lB5EKS5Uk Nice talk about Freestyle lib in Scala (using Free & Tagless:) to separate concerns. A bit complex at the end for newcomers (running Frees in Frees).
- https://www.youtube.com/watch?v=_p9_Ut3caLA A truly wonderful talk about Sangria and mostly about GraphQL in general (pros and cons)
- https://alexn.org/blog/2017/01/30/asynchronous-programming-scala.html Asynchronous Programming and Scala
21-04-2018
- https://www.confluent.io/blog/apache-kafka-for-service-architectures/ A great article from July 2017 about Apache Kafka architecture
- http://strategy-madlibs.herokuapp.com/ Business Strategy as a Service, randomly generated, and so real!
- https://cloudplatform.googleblog.com/2018/04/Kubernetes-best-practices-how-and-why-to-build-small-container-images.html Using multi-build Dockerfile to largely reduce space of image (splitting build and run images); smaller containers also have a smaller attack surface.
20-04-2018
- https://read.acloud.guru/how-we-built-a-big-data-analytics-platform-on-aws-for-100-large-users-for-under-2-a-month-b37425b6cc4 Using Amazon Athena (serverless db) to query S3 files to reduce costs (BigQuery can do it too); adding compression and caching to reduce costs again.
- https://hackernoon.com/unethical-growth-hacks-a-look-into-the-growing-youtube-news-bot-epidemic-e1ef8c98b605 Youtube news videos automatically generated every few minutes, just to get revenue ahah, that exists.
- http://www.scala-lang.org/blog/2018/04/19/scala-3.html Dotty will become Scala 3.0
- http://americanexpress.io/eliminate-the-database-for-higher-availability/ The "No Database" strategy. Basically, horizontal scaling of in-memory stores (a service) taking their data from.. somewhere.
- https://medium.com/google-cloud/bigquery-lazy-data-loading-ddl-dml-partitions-and-half-a-trillion-wikipedia-pageviews-cd3eacd657b6 Loading Wikipedia pageviews into a federated (external) table over csvs; a view to expose parsed lines; then creating a yearly partitioned table with the DDL; load data from the view into; query it!
- https://www.breakdown-notes.com/makemap All the psychological biases we're dealing with :-(
- https://github.com/apple/foundationdb Apple open-sourced FoundationDB: a (very great it seems according to HN) distributed transactional (external consistency) key-value store
- https://www.quantamagazine.org/decades-old-graph-problem-yields-to-amateur-mathematician-20180417/ Update to the "chromatic number of the plane" problem: the answer is now 5 colors! (was 4 previously)
19-04-2018
- https://www.infoq.com/presentations/java9-modules Live demo and explanations of how to migrate a spring+hibernate java 8 app to java 9 app, tons of caveats to deal with.
- https://cloudplatform.googleblog.com/2018/04/Cloud-SQL-for-PostgreSQL-now-generally-available-and-ready-for-your-production-workloads.html CloudSQL backed by PostgreSQL is out of beta
- https://www.youtube.com/watch?v=m663bWN8KkY A wonderful lib to work with Intervals (of anything) in Scala. Useful for calendar and time allocation logic.
- https://medium.com/stashaway-engineering/running-a-modern-infrastructure-on-kubernetes-286ad6dab002 Presentation of the different parts needed to properly run a Kubernetes cluster (service discovery, dns, routing, monitoring, logging, deploying, ssl)
18-04-2018
- https://www.youtube.com/watch?v=7xSfLPD6tiQ Reading recursive data from database (using Doobie and recursion scheme)
- https://medium.com/@olxc/catamorphisms-and-f-algebras-b4e91380d134 More on Catamorphisms
- https://www.youtube.com/watch?v=I-5yvVp74Vk More recursion schemes: Going bananas with recursion schemes for fixed point data types
- https://www.47deg.com/blog/basic-recursion-schemes-in-scala/ A very good introduction to Recursion Schemes: starting with hardcoded stuff, slowly making it generic.
- https://blogs.oracle.com/developers/announcing-graalvm GraalVM official release. Run any language on this VM for interop; and provides AOT compilation for VM based language.
- http://blog.christianposta.com/our-book-has-been-released-introducing-istio-service-mesh-for-microservices/ A fresh book about Istio!
- https://github.com/fosskers/scalaz-and-cats#results Benchmarks between Scalaz and Cats updated with the new IO Bifunctor. (note: Haskell is so fast!)
- https://www.reddit.com/r/haskell/comments/7ykrv3/xkcds_prediction_for_a_haskellrelated_cve_in_2018/dujbmid/?context=3 Discussion about referencial transparency in Haskell/Scala
17-04-2018
- https://www.bleepingcomputer.com/news/government/russia-bans-18-million-amazon-and-google-ips-in-attempt-to-block-telegram/ Russia banned millions of ips from Amazon and GCP to block one app. -_-
- https://newsroom.fb.com/news/2018/04/data-off-facebook/ "What Data Does Facebook Collect When I’m Not Using Facebook" Social plugins, analytics, ads!
- https://github.com/uber/prototool "Your Swiss Army Knife for Protocol Buffers"
- https://www.infoq.com/presentations/cloud-native-kafka-netflix At Netflix, scale and failover a Kafka Cluster by creating/destroying Kafka Clusters on the fly
- https://www.infoq.com/articles/managing-data-microservices A large feedback about data independance managed by microservices; use events; sagas for "transactions".
- https://dcgross.com/decide-what-to-build/ Realize you're thinking about a problem you could fix/simplify. Gather info from ppl (market). Tell friends. Start small. Release quickly.
- https://cloudplatform.googleblog.com/2018/04/introducing-kaniko-Build-container-images-in-Kubernetes-and-Google-Container-Builder-even-without-root-access.html Build Dockerfile images directly within k8s
16-04-2018
- http://yowconference.com.au/slides/yowwest2014/Morris-ParametricityTypesDocumentationCodeReadability.pdf Wonderful slideshow demonstrating that "FP à la Scala" has tons of caveats, and that type parametricity is a wonderful tool and documentation
- https://www.youtube.com/watch?v=Eihz7kqn6mU The hot talk: Scalaz 8 vs Akka actors
- https://blog.algolia.com/building-real-time-analytics-apis/ Doing what's Druid do but using postgresql (distributed via Citus) and custom rollups
- http://www.gamasutra.com/blogs/AvrahamSibon/20180410/316271/21_Million_Downloads_in_2_Months.php The why of the success story of the free game "Run Sausage, Run" (21 Million Downloads in 2 Months)
- https://developer.atlassian.com/blog/2016/03/programming-with-algebra/ Thinking algebraic to test facts on our objects (scalacheck) and ensure laws
- http://blog.cloudera.com/blog/2017/08/implementing-temporal-graphs-with-apache-tinkerpop-and-hgraphdb/ Hbase as storage engine (as HGraphDB) for TinkerPop
- https://medium.com/@Pinterest_Engineering/open-sourcing-doctorkafka-kafka-cluster-healing-and-workload-balancing-e51ad25b6b17 Open sourcing DoctorKafka: Kafka cluster healing and workload balancing
- https://www.infoq.com/articles/vp-service-mesh Nice feedbacks from big companies representatives about service mesh
- https://medium.com/@hoffa/bigquery-beyond-sql-and-js-running-c-and-rust-code-at-scale-33021763ee1f A fix to the slowness of the previous article. 5B rows in 50s with a JS UDF, better.
- https://medium.com/@sourcedtech/calling-c-functions-from-bigquery-with-web-assembly-c19c023fc755 Calling C functions from BigQuery with Web Assembly
- https://medium.com/@adirmashiach/hotspotting-in-hadoop-impala-case-study-6a8a613f14a1 Impala memory limit error on queries using small table due to data locality
- https://medium.com/opentracing/the-difference-between-tracing-tracing-and-tracing-84b49b2d54ea Tracing is about multiple things: recording, describing (OpenTracing), analyzing/exposing (dashboards)
- http://blog.ploeh.dk/2018/04/16/endomorphic-composite-as-a-monoid/ Using Endo[A] to compose a list of endomorphisms A->A into single endomorphism
- https://alexn.org/blog/2017/10/11/javascript-promise-leaks-memory.html Why JS's Promise sucks (it leaks memory on recursive calls). Very important when working in a FP mode where recursion is massively used..
15-04-2018
- https://www.ctheu.com/2018/04/12/an-ode-to-the-kind-projector-and-to-the-partial-unification-of-scala/ My own work this time: Scala's kind-projector and partial-unification demystified
14-04-2018
- http://danlebrero.com/2018/04/11/kafka-gdpr-event-sourcing/ A sweet idea to deal with GDPR and Kafka/Event Sourcing. Encrypt user data, save the keys into a compacted topic. If need to erase the data: remove the key: data becomes garbages (can't decrypt).
- https://brianmckenna.org/blog/constraints_are_for_methods Constraints are for methods, not data (ie: implicits on methods, not on the trait/class type parameters because some methods may no need it)
- https://brianmckenna.org/blog/polymorphic_programming A generic and abstract language to generate the same functions but in any language?
- https://github.com/promises-aplus/promises-spec/issues/94 Now, we know where the "Fantasy land" JavaScript library name comes from
13-04-2018
- https://www.deconstructconf.com/2017/caitie-mccaffrey-the-path-towards-simplifying-consistency-in-distributed-systems An overview of the (complex) distributed systems evolution: what about simplifying and forgetting a bit this consistency thing?
- https://martinfowler.com/articles/microservice-testing/#conclusion-summary Testing Strategies in a Microservice Architecture. From Unit to Inte to Component to Contract to E2E.
- https://www.youtube.com/watch?v=wi_vLNULh9Y The Design of the Scalaz 8 Effect System, looks really good.
- https://medium.com/startup-grind/what-every-software-engineer-should-know-about-search-27d1df99f80d Tons of infos, details and tips about the "search" in general. The questions to ask yourself when you want to integrate it into your website/app. Every site has different needs, it's not just a matter of "we"ll add elasticsearch, done!"
- https://medium.com/@ifesdjeen/on-ways-to-agree-part-2-path-to-atomic-broadcast-662cc86a4e5f More on consensus logic and Atomic Broadcast
- https://cloudplatform.googleblog.com/2018/04/what-we-learned-doing-serverless-the-Smart-Parking-story.html Long, long posts about serverless architecture and tons of feedback and experience (with bigtable, bigquery, cloud functions)
- https://www.slideshare.net/jdegoes/scalaz-8-vs-akka-actors Man, those slides comparing Scalaz 8 and Akka Actors. Violent.
- https://functional.works-hub.com/learn/the-science-behind-functional-programming-3b060 Category Theory applied in Kotlin using Arrow library
- https://bjankie1.github.io/blog/ Speculative Tasks using Monix
- https://svs.gsfc.nasa.gov/4619 Tour of the Moon 4K Redux
12-04-2018
- http://degoes.net/articles/only-one-io Very good article on (the multiple) IO and Async monads in Scala-land
- https://blog.redelastic.com/transitioning-to-scala-d1818f25b2b7 The most important: "Learning Scala will make you a better programmer" Definitely TRUE!
- https://vimeo.com/233649102 Building a Company on Scala. Takeaways: mastering FP is not mandatory, there is no "one solution" in Scala, so be rigorous and consistent when adopting patterns; try to have a homogenous codebase (same level everywhere)
- http://highscalability.com/blog/2017/9/18/evolution-of-data-structures-in-yandexmetrica.html How Yandex went to write ClickHouse (column oriented db)
- http://www.chriscox.org.uk/why_gcp_compute/ Why GCE is good (network, disks iops)
- https://www.youtube.com/watch?v=AHrCI9eSJGQ 30 Days Timelapse at Sea; a mesmerizing video to watch
- http://highscalability.com/blog/2017/9/25/adcash-1-trillion-http-requests-per-month.html The evolution of Adcash (from php/mysql on one server to GCP and 1500 servers), too short :)
- https://jneem.github.io/merging/ A VCS with perfect merges (no more conflicts). Patches content forms a DAG that can be flatten into a regular file (lossy). The article is accessible, compared to the paper. "One could expect the free conservative finite cocompletion of L to be..."
11-04-2018
- https://blog.softwaremill.com/synchronous-or-asynchronous-and-why-wrestle-with-wrappers-2c5667eb7acf A long (too much, but some parts are still interesting) article about sync vs async, and coroutines (async/await)
- https://cloud.google.com/bigquery/docs/reference/standard-sql/dml-syntax#merge_statement A new "MERGE" operator in BigQuery to merge one table into another (joined) while controlling the insertion/update clauses
- https://techcrunch.com/2018/04/11/google-is-about-to-launch-a-gmail-web-redesign/ Can't wait for a redesign, Inbox is so damn slow (but the design is so good..)
- https://www.dropbox.com/s/p7w9w904e6himdb/Leveraging%20Spire%20for%20complex%20time%20allocation%20logic.pdf?dl=0 Using Spire to deal with intervals (of anything! but mostly dates eh) in Scala
- https://www.youtube.com/watch?v=QBatpIFii7M Presentation of IronDB (timeseries ddb), no consensus needed
- https://www.youtube.com/watch?v=YSN__0VEsaw fs2 Stream
- https://www.youtube.com/watch?v=VGZi4nTgZxs Dealing with Duality using Category Theory
- http://janbosch.com/blog/index.php/2017/11/25/structure-eats-strategy/ BAPO (business $$$ should define the arch/process/organization) vs OPAB (organization first, Conway's law!)
- https://www.infoq.com/articles/architecturally-aligned-testing Microservices, autonomy, and testing
- https://medium.com/capital-one-developers/toward-a-functional-programming-analogy-for-microservices-ba6f49b94ad Microservices: OOP vs FP style (cqrs, es, explained with Kafka*)
- https://medium.com/netflix-techblog/automated-canary-analysis-at-netflix-with-kayenta-3260bc7acc69 Instead of ad-hoc error-prone human Canary version analysis, Kayenta relies on statistics (source of metrics, logs) and no human to decide if a canary is ready-for-prod.
10-04-2018
- https://www.citusdata.com/blog/2016/03/30/five-ways-to-paginate/ Pagination technique in Postgres, from the basic to the exotic
- https://developers.google.com/machine-learning/glossary/ An impressive glossary about Machine Learning
- https://github.com/sigalor/whatsapp-web-reveng Reverse engineering WhatsApp Web
- https://github.com/akka/akka-grpc gRPC over Akka Streams !
- https://firebase.googleblog.com/2017/10/introducing-cloud-firestore.html Cloud Firestore, a mix of Datastore and Firebase Realtime Database.
- https://developers.google.com/web/updates/2017/09/abortable-fetch I miss that: "abortable fetch" thanks to a new AbortController().signal we can pass to fetch().
- http://thinkrelevance.com/blog/2011/11/15/documenting-architecture-decisions Write architecture decisions (ADR) into files within the project
- https://www.confluent.io/blog/using-kafka-streams-api-predictive-budgeting/ Pinterest trying to reduce the overdelivery of ads (according to a max budget, cpm or cpc) using kafka streams and predictive spend
- https://pingcap.com/blog/2017-10-10-nextcon/ TiDB "NewSQL database": storage backed by RocksDB, gRPC between nodes, Raft protocol to handle data strong consistency.
- https://medium.com/@mukeshkumar_46704/in-depth-kafka-message-queue-principles-of-high-reliability-42e464e66172 A nice recap about Kafka topic storage and replicas
- https://medium.com/vimeo-engineering-blog/improving-load-balancing-with-a-new-consistent-hashing-algorithm-9f1bd75709ed Improving HAProxy with bounded-load consistent-hashing algorithm (classic CH + load factor taken into account)
- https://www.confluent.io/blog/real-time-syslog-processing-apache-kafka-ksql-part-1-filtering syslog and KSQL
- https://www.confluent.io/blog/predicting-flight-arrivals-with-the-apache-kafka-streams-api/ ML model updates in Kafka Streams (using Mahout here)
- https://developer.lightbend.com/blog/2018-04-09-profiling-JVM-applications/ Profiling JVM applications
- https://cloudplatform.googleblog.com/2018/04/toward-better-phone-call-and-video-transcription-with-new-Cloud-Speech-to-Text.html Google continue to enhance its speech to text models, and that's awesome
- https://developer.lightbend.com/blog/2018-04-09-sbt-1-1-4-hotfix/ Tons of improvements in sbt 1.1.4. (better filewatch on osx; faster build!)
- https://github.com/sgreben/jp plots from JSON in console :O
- https://medium.com/@dgryski/consistent-hashing-algorithmic-tradeoffs-ef6b8e2fcae8 A nice review about several hashing techniques (classic consistent, jump, multi probe, rendezvous, maglev)
09-04-2018
- https://github.com/hablapps/stateless Optics which are not bound to in-memory data structures
- https://artplusmarketing.com/how-i-write-10-000-words-per-day-every-day-818421c980f0 How I Write 10,000 Words Per Day, Every Day
- https://baekdal.com/strategy/publishers-havent-realized-just-how-big-a-deal-gdpr-is/ "Publishers Haven't Realized Just How Big a Deal GDPR is."
08-04-2018
- https://labs.unacast.com/one-year-with-bigquery-e3ebd73749cd Feedback from using BigQuery. Awesome, less strain overall, but more responsability: $$$.
- https://www.scotthyoung.com/blog/2015/01/19/speed-reading-redo/ Speed Reading
- https://www.slideshare.net/paulszulc/illogical-engineers Why "Software Engineering"; links with the category theory and Howard-Curry theorem, usage in Scala ("= implement")
- https://www.slideshare.net/LukaJacobowitz/traversals-for-all-ocasions The Traverse typeclass
07-04-2018
- http://rcardin.github.io/design/programming/2018/04/02/template-method-pattern-revised.html Template Method pattern revised / use composition (and mixins) over inheritance.
- http://www.michael-noll.com/blog/2018/04/05/of-stream-and-tables-in-kafka-and-stream-processing-part1/ Streams vs Tables in Kafka
- https://allarsblog.com/2018/03/16/confessions-of-an-unreal-engine-4-engineering-firefighter/ A sublime article every engineer should read
- https://www.youtube.com/watch?v=HjbvMEfLrGk Introducing and "hiding" Writer Monad usages for easier learning curve
- https://www.youtube.com/watch?v=Juuucx5xaCo Big Data at the Intersection of Typed FP and Category Theory / Algebra
06-04-2018
- https://medium.com/@PS_/image-processing-go-microservice-df423d1b8ddd Image processing not done in the classic serverless-way but with replicated pods in k8s and an internal LB.
- https://medium.com/google-cloud/internal-load-balancing-for-kubernetes-services-on-google-cloud-f8aef11fb1c4 Internal LB for k8s services on GCP:
"cloud.google.com/load-balancer-type": "Internal"
- https://github.com/Netflix/flamescope visualization tool for exploring different time ranges as Flame Graphs
- https://github.com/oleg-py/better-monadic-for Desugaring scala
for
without implicitwithFilter
s / and less verbose in general - https://blog.grandstack.io/using-the-neo4j-graphql-plugin-in-neo4j-desktop-c8a60aa014d9 Querying Neo4j with GraphQL
- https://medium.com/teads-engineering/give-meaning-to-100-billion-analytics-events-a-day-d6ba09aa8f44 From AWS Kafka to GCP Dataflow to BQ (transformations and rollups) (then back to AWS Redshift!)
- https://stripe.com/blog/billing Stripe Billing to handle more complex billing models (recurrent)
- https://cloudplatform.googleblog.com/2018/04/introducing-VPC-Flow-Logs-network-transparency-in-near-real-time.html New on GCP: VPC Flow Logs
- https://www.binarylane.com.au/support/solutions/articles/1000055889-how-to-benchmark-disk-i-o How to benchmark disk I/O
05-04-2018
- https://medium.com/@unmeshvjoshi/service-discovery-with-crdts-fb02bb48cfff Using Akka Distributed Data to do Actors Service Discovery
- https://streaml.io/blog/exactly-once/ Exactly-once naming is discussed (snapshot or at-least-once+dedup) and could lead to not-exactly-once effects
- https://blog.manifold.co/graphql-fragments-are-the-best-match-for-ui-components-72b8f61c20fe Why we should use GraphQL Fragments
- https://www.youtube.com/watch?v=0lw2zEQVe54 Quick talk about GraphQL, and demo of GraphQL Voyager, so nice.
- https://github.com/APIs-guru/graphql-voyager look at any GraphQL API as an interactive graph, very cool
- https://blog.wallaroolabs.com/2017/10/why-we-used-pony-to-write-wallaroo/ Feedback of using the language "Pony" (actor based, gc per actor (no STW)) to write the Wallaroo framework (distributed data processing)
- https://blog.risingstack.com/the-history-of-react-js-on-a-timeline/ The History of React.js on a Timeline.
04-04-2018
- https://blog.insightdatascience.com/how-to-solve-90-of-nlp-problems-a-step-by-step-guide-fda605278e4e A very good guide: "How to solve 90% of NLP problems"
- http://www.grahamlea.com/2016/08/distributed-transactions-microservices-icebergs/ Beware of the hidden distributed transactions in your systems. Some ways to "fix" them (a central service that retries, not a huge fan). Nowadays, it would be more about Event Sourcing, Sagas, or Kafka Streams/Connect.
- https://github.com/kailuowang/mainecoon Transform and compose tagless final encoded algebras in scala
- https://blog.hablapps.com/2017/06/26/functional-apis-an-oop-approach-to-fp/ An interesting approach to represent functional APIs (let's say a Free program) through OOP instead of ADTs
- http://web.devopstopologies.com/ DevOps Topologies in a company (and "anti-patterns")
- https://blog.pragmatists.com/refactoring-from-anemic-model-to-ddd-880d3dd3d45f anemic model to DDD
- https://www.youtube.com/watch?v=po3wmq4S15A Intro to Effects in FP
- https://www.youtube.com/watch?v=JFbYQGG2Nb4 Monix's Observable and Iterant
- https://www.youtube.com/watch?v=JH_Ou17_zyU Bartosz Milewski's Category Theory crash course, he's very good at teaching.
- https://cloudplatform.googleblog.com/2018/04/new-ways-to-manage-and-automate-your-Stackdriver-alerting-policies.html New API to manage Stackdriver alerting policies. Surprised it didn't existed before.
03-04-2018
- https://www.youtube.com/watch?v=3a5oE3p3jDA about SIP-35 / opaque types. Could replace Option and such "easy" type, also provide type tagging without overhead at runtime.
- https://www.youtube.com/watch?v=JMP6gI5mLHc Parallels between Category Theory definition (+ Functors) and languages (mostly Java)
- https://blog.cloudflare.com/cloudflare-workers-unleashed/ JavaScript "lambdas" on Cloudflare with Workers
- https://www.youtube.com/watch?v=HTmaTCLdb_U event sourcing composability with monads
- https://zeit.co/blog/multi-dc now.sh is now multi-dc (sf + brussels)
- https://www.youtube.com/watch?v=jrOS_UrIQI0 Building a serverless app with fnproject.io
- https://www.youtube.com/watch?v=2oXqbLhMS_A Going from blocking to non-blocking with Netty and RxJava. Pros and cons.
- https://typelevel.org/blog/2017/12/20/who-implements-typeclass.html More on typeclasses
- https://medium.com/anyjunk/fstring-string-lengths-at-compile-time-81f811750e9e Using types (as Nat from shapeless) to ensure a String maxLength (at compile-time)
- https://blog.sessionstack.com/how-javascript-works-a-comparison-with-webassembly-why-in-certain-cases-its-better-to-use-it-d80945172d79 WebAssembly improvements over JavaScript
- http://korban.net/posts/postgres/2017-11-02-the-case-against-orms/ Case against ORMs (yeah)
- https://github.com/lampepfl/dotty/pull/4153 Hot debate about Typeclass implemented with subtyping proposal in Scala
- https://medium.com/@nex3/pubgrub-2fb6470504f Resolving package dependencies graph is far from trivial; here nice explanations about a new method implemented in the Dart package manager.
- http://www.scanamo.org/ DynamoDB Scala wrapper
02-04-2018
- https://www.youtube.com/watch?v=YXDm3WHZT5g Devoxx Belgium 2017, Plain Functional Programming by Martin Odersky; example using Kleisli (for config) against implicit types (incoming)
- https://github.com/mikolak-net/travesty Generating diagram for akka streams
- https://alistapart.com/article/coding-with-clarity Single responsability principle, low coupling/high cohesion, with analogies to real-world example
- http://akaptur.com/blog/2017/11/12/love-your-bugs/ Bits flip are real. Use feature flags. Don't DDOS yourself.
- https://medium.com/dailymotion-engineering/a-brief-history-of-apis-at-dailymotion-3c2c16001717 Quick post from Dailymotion explaining the switch of their API to GraphQL (mostly for performance purpose, less round-trip)
- https://embano1.github.io/post/scratch/ Study of the "FROM scratch" image and explanations of the differences between the container image and one of its instance (OCI runtime specification)
- http://highscalability.com/blog/2018/4/2/how-ipdata-serves-25m-api-calls-from-10-infinitely-scalable.html Very cool feedback and archi about by ipdata (using aws gateway, dynamo, lambdas, kinesis, cloudwatch)
- https://levelup.gitconnected.com/how-to-use-technical-debt-in-your-favor-98bae475ba68?ref=hn322 Dealing with technical debt: always start naive, then refactor the past when it's more clear and patterns emerge
- https://medium.com/databasss/on-disk-io-part-1-flavours-of-io-8e1ace1de017 Multiple posts explaining how ios work, very interesting to get the base
01-04-2018
- https://alligator.io/graphql/graphql-yoga/ An easy way to spin-up a GraphQL server
- https://medium.com/capital-one-developers/blazing-fast-data-lookup-in-a-microservices-world-dd3ae548ca45 Using a bloom filter to filter out bad emails
- http://fluentbit.io/ A lightweight fluentd written in C container oriented?
- https://medium.com/@adirmashiach/partition-index-selective-queries-on-really-big-tables-795fea737570 Maintaining a index table to know which partition to read (for a given PK) instead of doing a full scan
- https://blog.cloudflare.com/announcing-1111/ 1.1.1.1 as (privacy-respected) DNS resolver ! (unfortunately, does work with Orange in France yet...)
- https://www.apache.org/dist/kafka/1.1.0/RELEASE_NOTES.html Kafka 1.1.0 out; few new features but tons of fix and improv
31-03-2018
- https://graphcms.com/blog/gatsby-graphcms-plugin/ Combining Gatsby and GraphCMS (to host content) because Gatsby can fetch GraphQL endpoints to grab content
- http://shiroyasha.io/transaction-isolation-levels-in-postgresql.html Time to refresh what are the different transaction isolation levels
- http://lucidsoftware.github.io/relate/ Relative: another blazing fast Scala SQL "framework" sql"SELECT xx".asList { _.string("name") }
- https://cloud.google.com/blog/big-data/2017/12/analyzing-tweets-using-cloud-dataflow-pipeline-templates Creating a Dataflow template and launching it regularly via an appengine app + cron
- https://slack.engineering/scaling-slacks-job-queue-687222e9d100 Kafka in front of Redis for queuing jobs to ensure resilience, sustain workload, better decoupling.
- https://medium.com/@abinoda/how-teams-get-microservices-wrong-from-the-start-51777c99c059 Each team should define what a "microservice" is and what are the pros/cons of switching to it. (future replacement? teams organization? productivity boost? delivery boost?)
- http://highscalability.com/blog/2017/12/4/the-eternal-cost-savings-of-netflixs-internal-spot-market.html Netflix: creating a cloud inside their cloud
- http://openjdk.java.net/projects/amber/LVTIstyle.html Guidelines for when to use "var" in Java
30-03-2018
- https://medium.com/activewizards-machine-learning-company/top-15-scala-libraries-for-data-science-in-2018-4b2cb5c5367e Some nice pointers for data science in scala: Breeze (Analysis, NLP), Saddle (Analysis), Breeze-vis (dataviz), Vegas (dataviz), Smile (ML), and Spark stuff
- https://cloudplatform.googleblog.com/2018/01/why-you-should-pick-strong-consistency-whenever-possible.html Spanner and its "external consistency" (strongly consistent + serializability): no trade-off in the apps!
- https://www.youtube.com/watch?v=BgcJnurVFag Building a 400TB PostgreSQL clusters: tips and tricks
- https://www.youtube.com/watch?v=v3msiBIny6s Nice talk about the pure push/pull flaws that lead to create Reactive Streams, and Akka Streams is one implementation. Here nicely presented by Viktor Klang.
- https://thenewstack.io/microservices-running-containers-need-streaming-platform/ Microservices, Containers, and the upcoming of Streaming Platforms to handle all the technicals points (communication, pubsub, storage, failures etc.)
- https://hackernoon.com/thorough-introduction-to-apache-kafka-6fbf2989bbc1 A large and clear overview of the Kafka streaming platform
- https://medium.com/netflix-techblog/distributing-content-to-open-connect-3e3e391d4dc9 Netflix is now using a smarter Consistent Hashing technique based on multiple weights to distribute resources into their heterogeneous servers
- https://www.youtube.com/watch?v=h48kuflGEDw Scala 2.12 (tech refactor) /13 (library refactor) /14 (remove features)/15 (to dotty) evolutions and improvements
- https://www.slideshare.net/cloudera/performance-of-apache-impala Impala misc optimizations: codegen, smart joins + create bloomfilter if needed, preaggregation, cache hits
- https://reactjs.org/blog/2018/03/29/react-v-16-3.html An official "context" API! Better ref management; and lifecycle methods deprecations/new
- https://www.lightbend.com/blog/the-six-questions-architects-ask-about-using-akka-in-production Some points of why using Akka. It misses the part "why NOT".
- https://github.com/envoyproxy/envoy/issues/2852 Sending req/res into Kafka within Envoy?
- https://github.com/scala-native/scala-native/releases/tag/v0.3.7 Scala Native 0.3.7 and sbt-crossproject to compile a project to js/native/jvm
29-03-2018
- https://www.youtube.com/watch?v=9Wp_riP8LQw Implicit FunctionTypes soon in Scala? basically type Gimme[E] = implicitly Int => E, implicit is part of the type (for easy reusability)
- https://medium.com/@maximebeauchemin/functional-data-engineering-a-modern-paradigm-for-batch-data-processing-2327ec32c42a An ode to the functional data engineering: how to "data engineer" with functional principles
- https://gtoonstra.github.io/etl-with-airflow/index.html A very good and complete documentation about Airflow and ETLs in general
- https://github.com/confluentinc/schema-registry/pull/680/files It's now possible to save record using different Avro (without union, totally disjoint) records in one topic and let the SR knows about it
- https://medium.com/serialized-io/apache-kafka-is-not-for-event-sourcing-81735c3cf5c Some interesting points (challenged in the comments, to read) why Kafka does not fit event sourcing constraints.
- https://developers.google.com/web/updates/2018/01/paintapi CSS Paint API in Chrome: a dedicated js to register which can be referred in "background-image: paint(toto)" to return the content (using the canvas api). This fills a gap, nice.
- https://sleeplessinslc.blogspot.fr/2018/02/inventory-microservice-example-with.html Sleepless in Salt Lake City: Inventory Microservice example with Kafka Streams and CQRS
- https://coreos.com/etcd/docs/latest/learning/why.html etcd vs. other key-value stores
- http://www.landoop.com/blog/2018/01/mqtt-influxdb/ Landoop showing off its (good) Lenses platform (a centralized UI to deal with Kafka*, query endpoints, see topology etc.), and using it to ingest (Kafka Connect) from some MQTT to InfluxDB
- http://www.landoop.com/blog/2018/03/cassandra-to-kafka-part-2/ Cassandra to Kafka using Connect (and a polling strategy)
- https://cloudplatform.googleblog.com/2018/03/how-we-used-Cloud-Spanner-to-build-our-email-personalization-system-from-Soup-to-nuts.html An interesting feedback of a company going from HBase+Hive to Spanner, why & takeaways
- https://cloudplatform.googleblog.com/2018/03/introducing-Stackdriver-APM-and-Stackdriver-Profiler-Distributed-tracing-debugging-and-profiling-for-your-performance-sensitive-applications.html GA: Stackdriver Profiler to analyze application cpu, mem etc. through flame charts; Debugger to easily debug (breakpoint) and log in prod (without redeploying); Trace to do trace (spans) analysis through the services (à la OpenTracing, with propagation, latency etc.).
28-03-2018
- https://blog.apnic.net/2018/01/29/measuring-quic-vs-tcp-mobile-desktop/ QUIC (by Google) vs TCP: QUIC is globally faster (and Chrome users use it when contacting Google!) except in some conditions (packets out-of-order, mobiles where resources are limited)
- https://blog.hasura.io/an-exhaustive-guide-to-writing-dockerfiles-for-node-js-web-apps-bbee6bd2f3c4 Good practices on how to write Dockerfiles for nodejs webapps
- https://www.datanami.com/2018/02/07/erasure-coding-changes-hadoop-storage-economics/ Changing how HDFS store its data to make it more economic, causing a bit more network and cpu processing. Also leaving behind the "storage and compute" paradigm.
- https://banzaicloud.com/blog/kafka-on-etcd/ Kafka fork using etcd instead of zk
- https://www.confluent.io/blog/write-user-defined-function-udf-ksql/ Create and package UDFs in ksql
- https://blog.godatadriven.com/doobie-monix-jdbc-example Nice examples using Doobie to sql in Scala
- https://cloudplatform.googleblog.com/2018/03/introducing-Cloud-Text-to-Speech-powered-by-Deepmind-WaveNet-technology.html Awesome Text-to-Speech + wavenet variation (en only) available on GCP
- https://the-composition.com/why-you-need-a-software-delivery-machine-85e8399cdfc0 Tons of details about Atomist: why, how it works, which events it reacts to, how does it evolve etc. Support a project from scratch to delivery 100%.
- https://www.youtube.com/watch?v=O-LWbSUaEQU Property-Based testing overview, why, how
27-03-2018
- https://jakubstransky.com/2018/02/03/jvm-code-friendly-to-jit-optimisation/ Using jitwatch to analyze bytecode and inlining tips
- https://www.youtube.com/watch?v=wZ7cxcU4iPE Long hexagonal arch explanation with examples
- https://streaml.io/blog/pulsar-effectively-once/ Effectively(exactly)-once semantics in Apache Pulsar
- https://eng.uber.com/queryparser/ To handle some columns migration, Uber parses all SQL querying their datawarehouse. They inspect the (anti-)patterns, notify the right users in case of changes on the tables (according to who uses them), determine the table lineage for incident purpose (RCA), and better understand how their DWH is used for optimization. All that in Haskell.
- https://blog.cloudflare.com/how-cloudflare-analyzes-1m-dns-queries-per-second/ Cloudflare DNS queries serialized into Kafka (Cap'n Proto), then ingested into ClickHouse and visualize with Superset (ad-hoc) and Grafana (monitoring)
- https://v8project.blogspot.fr/2018/03/background-compilation.html V8 compiles more into a background thread now, letting the main thread free = better perf
- https://banzaicloud.com/blog/prometheus-application-monitoring/ Relabeling (crappy) metrics name at scrape time with Prometheus. It is nice because it avoids to do it repeatly in Grafana for instancec.
- http://www.landoop.com/blog/2018/03/kafka-elasticsearch-kubernetes-iot/ From Spark Streaming to Kafka Connect on k8s
- https://medium.com/fullstack-academy/better-js-cases-with-sum-types-92876e48fd9f Very cool long article about sum and product types, comparing the feature in different nice languages (and js).
- https://cloudplatform.googleblog.com/2018/03/kubernetes-engine-private-clusters-now.html Deploy GKE in a VPC to get a better isolation
- https://medium.com/@richard534/getting-started-with-data-engineering-3d2e728d0c1f All the things about Data Engineering
26-03-2018
- https://inviqa.com/blog/lagom-tutorial-using-event-sourcing-create-online-shopping-cart Small Lagom tutorial, properly explained from scratch
- https://www.imperva.com/blog/2018/03/deep-dive-database-attacks-scarlett-johanssons-picture-used-for-crypto-mining-on-postgre-database/ A nice explanation of a wonderful hack through PostgreSQL to mine minero
- https://www.sqreen.io/checklists/saas-cto-security-checklist The SaaS CTO Security Checklist
- https://docs.google.com/presentation/d/17opE2U2aIe1TFYJgr0Z8Dd2fJhy2x0YbReCVeCz6uhA/edit#slide=id.g137428a63f_2_75 BigGraphite by Criteo: Graphite backed up by Cassandra
- https://databricks.com/blog/2018/03/20/low-latency-continuous-processing-mode-in-structured-streaming-in-apache-spark-2-3-0.html Continuous Processing mode: finally true streaming in Spark?
- https://blog.clairvoyantsoft.com/guide-to-using-apache-kudu-and-performance-comparison-with-hdfs-453c4b26554f Starting with Kudu, and Performance comparison with HDFS (generallly better)
- https://medium.com/@adirmashiach/apache-impala-my-insights-and-best-practices-8e0507089935 Impala vs the world, and best practices
- https://kudu.apache.org/releases/1.7.0/docs/release_notes.html Kudu 1.7.0, tons of features and improvements
- https://github.com/gkossakowski/kentuckymule/issues/6#issuecomment-375949236 Smart idea of how to detect cycles using queues (kentuckymule is a experimental fast Scala type-checker)
25-03-2018
- http://beckje01.com/talks/greach-2018-zipkin-light.html Small presentation about Zipkin, screenshots, demos
- https://quickbooks-engineering.intuit.com/lessons-learnt-from-netflix-keystone-pipeline-with-trillions-of-daily-messages-64cc91b3c8ea Wow, immutable infra to the end. "Handling Config Changes as simulated failure: Changes to the Kafka cluster (code upgrades, topic scale up or scale down, moving partitions) are handled by failover to a new Kafka cluster."
- https://medium.com/beingprofessional/understanding-functor-and-monad-with-a-bag-of-peanuts-8fa702b3f69e Functors and monads explained with peanuts, you will understand
- https://typelevel.org/cats-effect/datatypes/io.html The Cats Effect's IO documentation is phenomenal. So many possibilities!
24-03-2018
- https://blog.ycombinator.com/congratsdropbox/ Dropbox goes public. A small message from ycombinator, because it's dropbox's origin (2007!), impressive.
23-03-2018
- http://blog.christianposta.com/how-a-service-mesh-can-help-with-microservices-security/ make microservices communications secured (tls, jwt) using istio to manage all that, and not the apps
- http://www.edc4it.com/blog/scala/io-monad-and-monad-transformers-for-rookies.html A simple example of using IO and EitherT monads
- http://degoes.net/articles/kill-data Don't prematurely commit to specific datastructures
- https://corecursive.com/009-throw-away-the-irrelevant-with-john-a-de-goes Interesting podcast with John A De Goes about functional programming in general, why is this useful, advantages (smaller scope to think about; more extensible than OOP with typeclasses) stacking monads is a perf-blow (and we should use MonadError, MonadState instead)
22-03-2018
- https://functional.works-hub.com/learn/avoid-pattern-matching-with-list-in-scala-01c8e Careful of pattern matching List/Seq
- https://slidr.io/mathiasbynens/what-s-new-in-es2018 ES2018: async generators and a demo to "act like" RxJs's Observable (fromEvent, filter, etc.), regexes, spread (finally!), finally in promise
- http://seg.phault.net/blog/2018/03/async-iterators-cancellation/ cancelling async iterators
21-03-2018
- https://en.wikipedia.org/wiki/Quine_(computing) TIL about Quines and Multiquines. Programs that produce a copy of their own source code.
- https://www.infoq.com/presentations/microservices-data-centric Very nice talk about microservices management and techniques of migration
- https://shipilev.net/blog/2014/safe-public-construction/ Double-checked locking in Java (quite subtle!), applied to the Singleton Factory pattern
- http://wiki.jvmlangsummit.com/images/1/1e/2011_Goetz_Lambda.pdf JVM Strategy to convert lambdas to bytecode
- https://www.youtube.com/watch?v=kglEJ5x8xR8 problèmatiques de scheduling à criteo, de lobster à cuddle: lib à embed, plein de "connectors" (sh, yarn, clouds, etc.), démo UI, backfilling
- https://typelevel.org/blog/2016/09/30/subtype-typeclasses.html implicit resolutions and subtyping loopholes (think cat theory, functor etc.) and solutions (define levels of subtypes exposing the implicits to change the priorities; used in cats, scalaz etc.)
- https://typelevel.org/blog/2016/10/26/edsls-part-2.html Introducing MonadError and MonadState
- https://medium.com/google-cloud/understanding-kubernetes-networking-ingress-1bc341c84078 Services, nodeport, lb, ingresses
- https://shipilev.net/blog/2014/heapdump-is-a-lie/ JVM objects size (JOL being the single source of truth)
- http://blogs.perl.org/users/ovid/2010/08/what-to-know-before-debating-type-systems.html static and dynamic type systems (sound, perf, doc, analysis, correctness, more or less verbose); explicit vs inference; structural typing; duck typing; what is a type finally? "a label used by a type system to prove some properties of the program behavior"
- http://mail.openjdk.java.net/pipermail/announce/2018-March/000247.html JDK 10 GA, tons of new features but mainly type inference and Graal (
-XX:+UnlockExperimentalVMOptions -XX:+UseJVMCICompiler
) (no pattern matching :() - https://github.com/scala/scala/releases/tag/v2.12.5 scalac -release 9 !!
- https://www.youtube.com/watch?v=wfWYm0MYj_8 Java 10: Panama (replace JNI, use JIT to generate the C layer), Amber: type inference, '_', pattern matching (+ scalaish sealed ADTs and extractors)
- https://cloudplatform.googleblog.com/2018/03/understand-your-spending-at-a-glance-with-Google-Cloud-Billing-reports-beta.html GCP Billing reports: group by project and product (gae, bq, pubsub etc.) to see the trends, nice
20-03-2018
- http://lptk.github.io/programming/2018/03/02/a-dual-to-iterator.html Compute any aggregations in one pass using for-comp syntax
- https://www.dropbox.com/s/qmuwo7z0v9jmnwi/NEScala2018.pdf "Composing programs": explaining why the composition is the essence of functional programming. Also discuss some category theory elements (kleisli, functors, monads).
- https://github.com/plokhotnyuk/jsoniter-scala ultra-fast JSON codecs in Scala
- https://rossabaker.github.io/boston-http4s/ Really great slideshow about http4s evolutions from simple stuff to Kleisli of Task/IO
- https://www.opsian.com/blog/java-on-docker/ Java 10 will be easier to manage when Docker'ed
- https://qconlondon.com/system/files/presentation-slides/how_events_are_reshaping_modern_systems_-_qcon_london.pdf Event-first design and event logging advantages
- http://psy-lob-saw.blogspot.fr/ All the posts are amazing, dealing with JVM performances and profiling, read some of them, but lost a bit my way into ahah.
- http://psy-lob-saw.blogspot.fr/2013/05/using-jmh-to-benchmark-multi-threaded.html False sharing problem using jmh
- https://github.com/jvm-profiling-tools/honest-profiler Profiling JVM apps without waiting for safepoints (+ lower overhead)
- http://psy-lob-saw.blogspot.fr/2018/01/what-difference-jvm-makes.html?spref=tw G1GC is the default in Java 9, that could lead to tremendous changes in benchmarks, as seen here; g1gc added locks to handle memory barriers
- https://www.slideshare.net/RednaxelaFX/green-teajug-hotspotintrinsics02232013 Intrinsic Methods in HotSpot VM
- https://monix.io/blog/2018/03/20/monix-vs-cats-effect.html Monix vs cats-effect, and some history about Monix and cats-effect and misc (cancellability, reactive streams, scalaz's Task, optimizations, monix's Iterant)
- https://medium.com/@muuki88/follow-the-stacktraces-jvm-performance-profiling-3c371d323e5f Lesson learned: Never use exceptions for control flow in your hot code path
- https://cloudplatform.googleblog.com/2018/03/introducing-the-ability-to-connect-to-Cloud-Shell-from-any-terminal.html We can now access the Cloud Shell (was in-browser only before) from "gcloud alpha cloud-shell" command now (it comes with preinstalled stuff, to avoid polluting the local env)
19-03-2018
- https://cloudplatform.googleblog.com/2018/03/automatic-serverless-deployments-with-Cloud-Source-Repositories-and-Container-Builder.html Mirror git source into GCP Repo, and write a "build trigger" (yaml) in Container Builder to be triggered when source changes
- https://github.com/GoogleCloudPlatform/skaffold In the "same" vein, skaffold auto-runs the whole build/deploy pipeline on code change
- https://jenkins.io/blog/2018/03/19/introducing-jenkins-x/ Jenkins X: CI/CD with a new cli "jx" to create apps and handle the whole ci/cd cycle automatically (versioning, envs, builds (jenkinsfile, dockerfile, helm chart), deployments, pull requests, issues..). A sub-project of Jenkins.
- http://jpetazzo.github.io/2018/03/13/appswitch-hyperlay-network-stack-future/ AppSwitch looks like a service mesh for anything (ie: outside containers), cross-machines, tiny overhead, very simple. Will it happen?
- https://hackernoon.com/how-graphql-replaces-redux-3fff8289221d A simple but useful revelation: querying using graphql can prevent you to code tons of Redux reducers and async stuff querying classic rest endpoints.
- https://github.com/atlassian/react-beautiful-dnd/releases/tag/v6.0.0 v6 of react-beautiful-dnd, just an amazing work
- https://meta.plasm.us/slides/circe/algebra/ Experimental circe-algebra: splitting decoding from interpreting (think Free), and using cursors.
- http://www.softwaredaily.com/ Software Daily podcasts
- http://debezium.io/blog/2018/03/08/creating-ddd-aggregates-with-debezium-and-kafka-streams/ An aggregate user+addresses built with Debezium and Kafka Streams
- https://images.guide/ The most complete guide to image optimization you can find. Very informative to be aware of every possibilities to optimize our pictures because #perfmatters.
- https://insights.stackoverflow.com/survey/2018/ Stack Overflow Developer Survey 2018
- https://community.akamai.com/community/web-performance/blog/2016/06/22/understanding-how-the-http2-protocol-is-negotiated Understanding how the HTTP/2 protocol is negociated
- https://medium.com/@duhroach/improving-cloud-function-cold-start-time-2eb6f5700f6 GCP boot time: reduce dependencies, have 1 version of them (cached), lazy load them if possible (not needed at boot time).
- http://benjiweber.co.uk/blog/2018/03/03/representing-the-impractical-and-impossible-with-jdk-10-var/ "var" in JDK10 is useful to define previously impossible types (mixes of interfaces or structural types)
- https://www.linkedin.com/pulse/nightmare-letter-subject-access-request-under-gdpr-karbaliotis/ The (great) Nightmare Letter: A Subject Access Request under GDPR.
- https://cloudplatform.googleblog.com/2018/03/introducing-GCPs-new-interactive-CLI.html CLI are some ubiquitous right now, gcloud offers a better alternative: "gcloud alpha interactive --update-cli-trees"
- https://www.nginx.com/blog/nginx-1-13-10-grpc/ gRPC support in nginx
- https://chrome.google.com/webstore/detail/personal-blocklist-by-goo/nolijncfnkgaikbjbdaogikpmpbdcdef?hl=en Google's own extension to block some websites to appear in search results. But the last Chrome version makes it useless, #willfixlater ?
09-03-2018
- https://lwn.net/Articles/679786/ Understanding cgroup v2
- https://gist.github.com/odersky/f91362f6d9c58cc1db53f3f443311140 Some notes about metaprogramming in Scala by odersky. If you're brave.
- http://blog.christianposta.com/microservices/the-hardest-part-of-microservices-calling-your-services/ Insightful post about microservices constraints and failures to deal with (latencies, timeouts., retries, routing, observability)
- https://github.com/shekhargulati/hands-on-serverless-guide/tree/master/01-aws-lambda-serverless-framework A trully wonderful guide about building a pure serverless app using AWS api gateway -> lambdas -> ses for emails + dynamodb and its streams + s3 (with presigned urls)
- https://engineering.instagram.com/open-sourcing-a-10x-reduction-in-apache-cassandra-tail-latency-d64f86b43589 Rockssandra, a combinaison of RocksDB and Cassandra to greatly improve (and stabilize) r/w latencies
- https://github.com/druid-io/druid/releases/tag/druid-0.12.0 Druid 0.12.0 out!
08-03-2018
- https://stripe.com/blog/operating-kubernetes Stripe extensively testing k8s mainly to run tons of cronjob, fixing bugs, and best "practices", the "game" day. Know how k8s behaves in case of different failures. Beware of etcd. Improve monitoring,
- https://community.monzo.com/t/resolved-current-account-payments-may-fail-major-outage-27-10-2017/26296/95 Outage caused by 2 bugs: a bug in k8s and etcd client; and another with k8s Service without pods + linkerd "old" version (bug was fixed in next versions)
- http://blog.erratasec.com/2018/03/some-notes-on-memcached-ddos.html Find the vulnerable memcached instances using masscan and how to deal with it
- http://degoes.net/articles/blockchain-myths You Know Nothing!
- https://cloud.google.com/blog/big-data/2017/10/separation-of-compute-and-state-in-google-bigquery-and-cloud-dataflow-and-why-it-matters BigQuery and Dataflow use Google storage services instead of instance-attached storage to scale out easily and it leads to a better arch (better perf and reliability)
- https://www.facebook.com/business/gdpr how Facebook handles GDPR (both a data controller & processor)
- http://dotty.epfl.ch/blog/2018/03/05/seventh-dotty-milestone-release.html Better enum semantics, "erased" term to remove stuff at compile time (just used to type-check), better GADT support
- https://cloudplatform.googleblog.com/2018/03/optimizing-your-Cloud-Storage-performance-Google-Cloud-Performance-Atlas.html Some smart advices when using gsutil to improve up/download speed (parallelism -m, auto "chunkage" -o GSUtil:parallel_composite_upload_threshold=150M)
07-03-2018
- http://docs.scala-lang.org/sips/pending/inline-meta.html SIP-2[89], a new block to replace macro: meta {... }; meta annotations; "inline" achieves guaranteed inlining, regardless of the backend (contrary to @inline); will whiteboxing will stay? (bring tons of complexity)
- https://begin.com/ A Slack bot to declare on what you're working on and create task list other can see. Not sure it's the right way to go (Slack becoming a first class tool of your workflow?) but it can help i guess!
- https://github.com/Kanaka-io/play-monadic-actions Simplify (monadify) how to write Play! actions when dealing with services calls/http responses
- https://www.youtube.com/watch?v=AGztKw580yQ Good talk about why Istio and several demos using plain JDK client/server (circuit breakeing, lb, force failure, a/b testing, monitoring, tracing)
- https://failex.blogspot.fr/2017/04/the-high-cost-of-anyval-subclasses.html Value classes overhead VS tagged types (no overhead, 2 types = 1 class)
- https://docs.google.com/spreadsheets/d/17bZrKTk8dOx5nomLrD1-93uBfajK5JS-v1o-nCLJmzE/edit#gid=0 Kubernetes Features OSS tracking board (1.10 release)
- https://githubengineering.com/ddos-incident-report/ DDoS through the open misconfigured memcached over the world.
- https://github.com/typelevel/machinist Avoid implicit class wrapping
06-03-2018
- https://www.youtube.com/watch?v=hzf3hTUKk8U A 2014 talk about why functional programming is good! composability, modularity, genericity, less strain, happiness. But code could be complicated (yeah).
- https://github.com/estatico/scala-newtype Haskell's "newtype" for Scala (to replace value classes and their undesired effects)
- https://github.com/mathiasbynens/dotfiles useful dotfiles to use on macosx (tune them!). I discovered some nice shortcuts and tools in there.
- https://github.com/kelseyhightower/kubernetes-the-hard-way Bootstraping Kubernetes manually on GCP, using GCE, VPC, subnetworks etc. Good if you truly wanna know how it works underneath
- http://blog.effectivemessaging.com/2017/06/load-balancing-grpc-connections-in.html lb gRPC in k8s with Linkerd and Istio. I had this link for a while; now Istio is way more mature and even integrated in GCP: https://cloud.google.com/kubernetes-engine/docs/tutorials/istio-on-gke
- https://medium.com/google-cloud/bigquery-performance-tips-searching-for-text-8x-faster-f9314927b8d2 Interesting BigQuery performance tips when using like '%x%'. Use regexp_contains or convert to bytes for better perf. (for now)
- https://virtuslab.com/blog/mechanics-unboxed-union-types-scala/ A sweet article about understanding "how to make a union type" in Scala (without Either), and using contravariance
- https://medium.com/netflix-techblog/scaling-time-series-data-storage-part-i-ec2b6d44ba39 From Cassandra, to Cass+Cache, to compression/parallelization/chunkages to get better r/w latency, less Cass maintenance, less data size.
- https://www.reoptimize.io/ Control you GCP billing
- https://medium.com/google-cloud/understanding-kubernetes-networking-services-f0cb48e4cc82 kube-proxy is the "hidden" gem in k8s that manages internal traffic packets routing (using netfilter and iptables in kernel space to do the routing)
05-03-2018
- https://medium.com/google-cloud/this-week-in-google-cloud-platform-datastore-backups-configurable-ssl-a-new-billing-api-and-52cd3aeba9a2 Parquet with BigQuery is available! and other GCP-related gems
- http://alistair.cockburn.us/Hexagonal+architecture The Hexagonal architecture. Basically, ports (what is exposed) and adapters (what is provided). Explicit the dependencies and get the ability to create mocks (of a repository for instance). Think by feature, not by tech.
- https://medium.com/nick-tune-tech-strategy-blog/managing-complexity-in-complex-adaptive-systems-with-domain-driven-design-eb79f0ca37bb Help modelling subdomains: Event Storming, Domain Story telling, Business Model Canvas
- https://www.youtube.com/watch?v=5bgxzaHCyCs A talk by Nick Tune if you don't want to read its book :) (04-03-2018 designing-autonomous-teams-and-services)
- https://www.iravid.com/posts/resource-management.html ManagedT, or how to compose resource management. Very useful and slick. Even works with a Monoid[ResourceType].
- https://kasma1990.gitlab.io/2018/03/04/why-rust-has-macros/ Type of macros in rust: function and attributes (derive to create boilerplate, and a more generic way, still in alpha). Why use them.
04-03-2018
- https://blog.envoyproxy.io/envoy-threading-model-a8d44b922310 Envoy threading model – locks, logging, stats, and.. i didn't got everything!
- https://akka.io/blog/news/2018/02/23/akka-2.5.10-released Many updates in Akka: Akka Typed is there, StreamRefs (RS over the network, finally!), Artery with TCP/TLS, not production ready but still.
- http://the-paper-trail.org/blog/exactly-not-atomic-broadcast-still-impossible-kafka/#more-660 Theorical consensus can't be solved (thus no atomic broadcast, thus no exactly-once), but partial consensus can be, so Kafka can be.
- https://barryoreilly.com/2015/12/14/lean-pmo-explore-vs-exploit/ Balance exploring new business with exploiting proven existing business models – and how to transition businesses successfully between these domains
- https://barryoreilly.com/2016/01/13/lean-pmo-managing-the-innovation-portfolio/ Good post about the necessity of having a business Portfolio. Explore/Exploit/Sustain/Retire features and products. Classify them and act. Beware of the Feature Fallacy. (more features does not have necessary add value)
- http://www.oreilly.com/programming/free/designing-autonomous-teams-and-services.csp Very interesting ebook. Helps you to get insights how to break down a company business into autonomous teams and bounded contexts; identify bottlenecks; all sort of schemas to pinpoint knowledge, boundaries, and organizational behavior.
03-03-2018
- https://cloudplatform.googleblog.com/2018/03/queue-based-scaling-made-easy-with-new-stackdriver-per-group-metrics.html Create a pool of workers on GCE which will scale according to the lag of a pubsub subcription, and easily monitor within StackDriver
02-03-2018
- http://openjdk.java.net/jeps/326 JEP 326: Raw String Literals using `...`, handle multilines ! \o/
- https://www.prismagraphql.com/ Define your GraphQL entities, let Prisma do the rest
- https://www.infoq.com/minibooks/emag-streaming-architecture This ebook contains several topics about streaming: dataflow, dynamicdb streams, confluent, and 2 case studies, the more interesting! One from Netflix migrating batch jobs to Flink, providing tons of advices and feedbacks. As they said: "batch failures have to be addressed urgently; streaming failures have to be addressed immediately" (a perfect monitoring and alerting is needed)
- https://blogs.dropbox.com/tech/2018/03/meet-bandaid-the-dropbox-service-proxy/ A very interesting post about Dropbox's service proxy, with explications about requests dispatching strategies it handles
- https://www.wired.com/story/github-ddos-memcached/ A 1.3Tbs DDoS hit GitHub on wednesday, the largest yet recorded; using memcached amplification.
01-03-2018
- https://www.youtube.com/watch?v=k9rwU8G1Oi0 A quick talk about typed actors, enough to get it. Actors are becoming "Behavior" following a protocol. The root ActorSystem also has get behavior now.
- http://www.lambdadays.org/static/upload/media/1519663154528176valentinkasasthese10000classesineverwrote.pdf A truly impressive case study using recursion schemes, ana/cata to build a hylomorphism, and convert parquet<->avro<->json<->anything in a generic way with the least possible code, with validation
- https://mtlynch.io/why-i-quit-google/ A ex-Googler talking about promotion in Google, metrics oriented instead of actual work-oriented
- https://fsfe.org/freesoftware/basics/comparison.en.html Free Software, Open Source, FOSS, FLOSS - same same but different
- https://contributors.scala-lang.org/t/the-state-of-then/1638/8 Are we gonna get "then" in Scala?
- https://vimeo.com/224636602 Excellent court talk sur comment trouver sa valeur en tant qu'indépendant. D'une estimation à 150€ (en regardant son net/j), on passe facilement à 500€ pour garder le même niveau de vie (à cause des avantages qu'on avait grâce à l'employeur)
- https://cloudplatform.googleblog.com/2018/02/announcing-SSL-policies-for-HTTPS-and-SSL-proxy-load-balancers.html Create and link an SSL policy (custom or predefined) to a LB
- https://cloudplatform.googleblog.com/2018/02/fully-managed-export-and-import-with-Cloud-Datastore-now-generally-available.html Export and import with Cloud Datastore now GA!
- http://www.scalactic.org/user_guide Scalactic, originated from ScalaTest, is a small lib providing simple and useful structures such as "Or" and "Every" to type like: "String Or One[Error]", left biased; provides some "===" and neat stuff.
26-02-2018
- https://www.cnbc.com/2018/02/26/apple-confirms-it-uses-google-cloud-for-icloud.html So Apple iCloud is using Google Storage ? -_-
- http://www.wired.co.uk/article/google-chrome-ad-blocker-filter-how-works-coalition-ads "Chrome is removing ads from websites that don't meet standards laid out by the Coalition for Better Ads, of which Google is a founding member and has a seat on the board."
- https://support.google.com/adwords/answer/7544674 New strategy in adwords: parallel tracking. The user is directly redirected to the adservertiser website, no more redirect, better conversion
- https://developers.google.com/speed/docs/insights/rules Basic checklist to ensure website speed
25-02-2018
- https://adtoken.com/uploads/white-paper.pdf adChain, a protocol around the ethereum blockchain and its smart contract
- https://medium.com/@anicolaspp/java-optional-is-complicated-d6dc5c061e57 Yeah, Java Optional is crap, no surprise.
- https://lists.apache.org/thread.html/a9186930d46eba8136e6f2d29646efab33390b213515b76deea71c57@%3Cgeneral.incubator.apache.org%3E Druid into the Apache Incubator !
- https://medium.com/swlh/effective-time-management-how-to-byo-productivity-system-ae3ac3672149 Time Management tips
24-02-2018
- http://www.bluemintmarketing.com/blog/remarketing/ A crazy long long about Remarketing, mostly using Adwords/GA
- http://cockpit-project.org/ Easy administration of Linux servers via web browser
- http://cloudplatform.googleblog.com/2018/02/how-Google-Cloud-Storage-offers-strongly-consistent-object-listing-thanks-to-Spanner.html Google Cloud Storage offers strongly consistent object listing thanks to Spanner
23-02-2018
- https://stripe.com/atlas/guides/business-of-saas A wonderful article about SaaS business models
- https://blog.riseml.com/benchmarking-googles-new-tpuv2-121c03b71384 Google’s TPUv2 are faster, more expensive, but more cost efficient in the end (Tensorflow related)
22-02-2018
- https://medium.com/codefx-weekly/no-free-java-lts-version-b850192745fb Java 10.0.2 (July 2018) will be the last free Oracle JDK.
- https://www.youtube.com/watch?v=cCOL7MC4Pl0 Probably the best talk about javascript requestAnimatinFrame/tasks/micro-tasks processing
- https://dzone.com/articles/deploying-java-apps-with-kubernetes-and-the-ambass Using ambassador.io on k8s to manage microservices communication
21-02-2018
- https://dzone.com/articles/why-developers-should-bet-big-on-streaming Streaming is becoming main-stream (!)
- https://www.troyhunt.com/ive-just-launched-pwned-passwords-version-2/ 500M passwords from previous breach to download, and an free API to check if some pwd was already leaked (nice!)
- https://medium.com/actualize-network/modern-css-explained-for-dinosaurs-5226febe3525 I haven't write any css since a while but come on, it hasn't changed at the speed JS is changing at least ;-)
- https://www.youtube.com/watch?v=Txf7swrcLYs Parsing a language using Monoid (in haskell here): how, and difficulties. Very insightful.
20-02-2018
- https://medium.com/google-cloud/tcp-bbr-magic-dust-for-network-performance-57a5f1ccf437 TCP BBR for a better throughput in congestioned/lossy networks
- https://cloudplatform.googleblog.com/2017/11/5-steps-to-better-GCP-network-performance.html GCP: the more cpus, the greater network throughput; use internal ips when you can
- https://typelevel.org/blog/2017/02/13/more-types-than-classes.html Types are compile-time, and classes are runtime.
19-02-2018
- https://blogs.oracle.com/java/jdbc-next%3a-a-new-asynchronous-api-for-connecting-to-a-database Async JDBC incoming?
- https://fosdem.org/2018/schedule/event/zgc/attachments/slides/2211/export/events/attachments/zgc/slides/2211/ZGC_FOSDEM_2018.pdf The Z Garbage Collector - Bet: less than 10ms pauses, no matter the heap
- https://www.youtube.com/watch?v=qBQtbkmURiQ Shenandoah GC: less STW (not on young gen), generational hypothesis is not needed, bigger mem footprint (fwdptr), more barriers, lower throughput
- http://mrale.ph/blog/2018/02/03/maybe-you-dont-need-rust-to-speed-up-your-js.html Optimizing Javascript and V8 to get a 4x speedup, impressive profiling and fixes
- https://github.com/funfix/funfix The great author of monix is writting a fp library for js/ts inspired by monix and cats. Pretty sure it's a good quality!
16-02-2018
- https://randomascii.wordpress.com/2018/02/04/what-we-talk-about-when-we-talk-about-performance/ A 90% reduction in time is a ten-times speedup. We often say "90% faster" (because we optimized something and get a 90% reduction in time) when it's truly 900% faster. So we should never use this formulation.
- https://www.confluent.io/ksql-in-action-real-time-streaming-etl-from-oracle-transactional-data A wonderful article about using KSQL to create and exploit streams of data
15-02-2018
- https://techcrunch.com/2018/02/13/amp-for-email-is-a-terrible-idea/ AMP for email is a terrible idea; goal: ads!
- https://ops.tips/blog/nginx-http2-server-push/ Nginx now deals with HTTP2 Server Push! As a proxy, it transform h2 to http1 only (no h2 forwarding)
- https://github.com/propensive/efflorescence A nice tiny lib to deal with Google DataStore properly: ie: transparently and strongly-typed
- https://staltz.com/promises-are-not-neutral-enough.html JS Promises are like Futures in Scala. BAD! (well, Promises are worst)
- https://cloud.google.com/blog/big-data/2017/06/introducing-cloud-dataflow-shuffle-for-up-to-5x-performance-improvement-in-data-analytic-pipelines I didn't noticed before but Google has an experimental mode for Dataflow shuffling, to run it outside our the Dataflow machine to reduce its strain.
14-02-2018
- http://blog.xebia.fr/2016/03/16/perennisez-votre-metier-avec-larchitecture-hexagonale/ L'architecture hexagonale ftw !
- https://github.com/propensive/kaleidoscope/ A new lib from propensive, to compile-time check strings in pattern matching
- http://www.scylladb.com/2017/10/05/io-access-methods-scylla/ Different I/O access methods; mmap; sync/async direct io; tradeoffs with kernel, scheduling, cache control
- http://xcorpion.tech/2016/09/10/It-s-all-about-buffers-zero-copy-mmap-and-Java-NIO/ Some reminders about zero-copy and mmap
13-02-2018
- https://alexn.org/blog/2018/02/12/in-defense-oofp.html OO+FP. A regard on Scala Collection. I didn't get the whole code (when dealing with the Suspendable thing) but I get the idea.
- https://medium.com/@leventov/comparison-of-the-open-source-olap-systems-for-big-data-clickhouse-druid-and-pinot-8e042a5ed1c7 A comparaison between ClickHouse, Druid and Pinot (OLAP dbs)
12-02-2018
- https://www.opsian.com/blog/top-3-java-performance-improvements/ More to Java 10+: Value type "Valhalla" to avoid object reference (think C struct) and primitive specialization à la Scala; new GCs: Shenandoah and ZGC (low pauses on large heaps); and maybe NIO API improvements
- http://joelgrus.com/2016/05/23/fizz-buzz-in-tensorflow/ Hilarious -fake- job interview of a person implementing fizzbuzz with tensorflow
- http://www.lihaoyi.com/post/PrinciplesofAutomatedTesting.html Considerations and opinions about testing strategies in general, test should respects the same rules of quality and review as non-test code, dsls, unit vs integration (means nothing truly), example vs bulk (ie: scalacheck, prod data)
11-02-2018
- https://ordina-jworks.github.io/microservices/2016/04/22/Lagom-First-Impressions-and-Initial-Comparison-to-Spring-Cloud.html Lagom's impression... in 2016! The Java version is just so verbose. :(
- https://techbeacon.com/project-management-surefire-way-kill-your-software-product Sweet post critizing project management for being centered on the project, not the product. Projects metrics are not a measure of success. Product metrics (with customers) are. Guesstimate is useless.
- https://www.pluralsight.com/blog/software-development/java-9-new-features Java 9: modules with proper resolution at startup (Jigsaw); jlink to create minimal image; jshell; new collections and stream methods; interface private methods; new HttpClient (handle h2) to replace HttpURLConnection; no more jre/ in jdk/.
- http://openjdk.java.net/jeps/282 JEP 282: jlink: The Java Linker— Nice to package "only what you need"; it relies on Java 9 modules
- https://security.googleblog.com/2018/02/a-secure-web-is-here-to-stay.html The fateful date is coming: July 2018: HTTP = "Not secure"
10-02-2018
- https://thoughts.t37.net/migrating-a-130tb-cluster-from-elasticsearch-2-to-5-in-20-hours-with-0-downtime-and-a-rollback-39b4b4f29119 Migrating a 130TB Cluster from Elasticsearch 2 to 5, interesting insights
- https://github.com/elastic/elasticsearch-migration/tree/2.x A migration check tool for elastichsearch clusters
- http://scala-lang.org/blog/2018/02/09/collections-performance.html Performance about the "new" view-based Collections; also with some StrictOptimized* version
- http://scala-lang.org/blog/2017/11/28/view-based-collections.html view based collections (lazy by default) for the new Scala collection
09-02-2018
- http://www.bigeng.io/elasticsearch-scaling-multitenant/ A very interesting post about optimizing elasticsearch in a multitenant environment
- https://velotio.com/blog/2017/7/5/http-load-balancing-in-kubernetes-with-ingress Simple Ingress on GCP
- https://www.confluent.io/blog/enabling-exactly-kafka-streams/ How Exactly-Once works in Kafka Streams
- https://github.com/milessabin/docs.scala-lang/blob/c6092426d3a8978613ce109d50026a9a0b496aeb/_sips/sips/2017-09-20-opaque-types.md Scala Value classes are sometimes not unwrapped at compile-time. opaque types to the rescue!
- https://www.youtube.com/watch?v=VaWgOCDBxYw More JMH evil
- https://www.youtube.com/watch?v=Bi0E7w1ZFFA Quick intro to JMH powa
- https://www.youtube.com/watch?v=YgGAUGC9ksk Very good talk about String methods, optimizations and tradeoffs
- https://www.youtube.com/watch?v=wIyeOaitmWM Aleksey Shipilëv on Compact Strings; some parts are quite advanced, and it seems to be a real mess to optimize those Strings :)
- https://shipilev.net/talks/devoxx-Nov2012-perfMethodology.pdf A very good ("old" but still relevant) recap of how to monitor/understand/fix performance issues
08-02-2018
- https://trac.webkit.org/changeset/228266/webkit native .flatmap now in webkit! Soon, the monads.
07-02-2018
- https://zeit.co/blog/streaming-server-rendering-at-spectrum Streaming SSR content ftw
- https://manuel.bernhardt.io/2017/07/26/a-new-adaptive-accrual-failure-detector-for-akka/ Another adaptive accrual failure detector for Akka
- https://www.confluent.io/blog/handling-gdpr-log-forget/ No magic: compacted topics, CDC
- https://speakerdeck.com/ianlewis/kubernetes-security-best-practices Kubernetes Security Best Practices
06-02-2018
- http://enear.github.io/2016/09/27/bits-of-shapeless-2/ Generic Derivation in shapeless. The little tour about literal types is almost absolete thanks to the native integration in Scala 2.13!
- https://github.com/graphcool/prisma easily implement a graphql server over any database
- https://blog.mozilla.org/security/2018/01/31/preventing-data-leaks-by-stripping-path-information-in-http-referrers/ Firefox will automatically add a "Referrer Policy" to avoid leaking querystring and hash to third parties
- https://tech.travelaudience.com/bigtable-storing-protobuf-bytes-in-one-column-vs-splitting-the-content-into-column-families-c231bdff8db7 Storing protobuf into one col (instead of splitting in numerous cols) uses less cpu (on bigtable) and is easier to deal with read pattern modification and evolution
- https://markmanson.net/how-to-let-go Life is a long series of losses. Think about it.
05-02-2018
- https://gravitational.com/blog/kubernetes-release-cycle/# The full-time job of keeping up with Kubernetes
- https://github.com/facebook/osquery A damn good idea: query all your system parts using SQL
- https://www.cakesolutions.net/teamblogs/demystifying-the-blocking-construct-in-scala-futures A complete post about the "blocking" in Scala. Only works with the global ExecutionContext (or you need to DIY)
04-02-2018
- http://www.corbinstreehouse.com/blog/2018/01/code-reviews-part-1-dont-do-them/ Surprising opinion: "Code reviews: don't do them"
03-02-2018
- https://www.youtube.com/watch?v=_Cct8b8OO2E Measure everything with Kamon (1.0.0) + prom + spans (opentracing)
- https://hackernoon.com/part-2-how-to-stop-me-harvesting-credit-card-numbers-and-passwords-from-your-site-844f739659b9 How to secure sensitive pages: csp is not enough: iframe, another domain, postMessage (iframe -> parent)
- http://www.tomanthony.co.uk/blog/googlebot-javascript-random/ Identifying Googlebot by checking random() which is deterministic in its case
02-02-2018
- https://github.com/Gabriel439/slides/blob/master/bigtechday/slides.md Everything is a monoid
- https://www.emnify.com/2018/02/01/monitoring-with-kamon-1-0/ kamon and prometheus ftw
- https://developer.lightbend.com/blog/2018-02-01-sbt-1.2-roadmap/ sbt 1.2.0 roadmap
- https://docs.scala-lang.org/sips/42.type.html Literal-types in Scala 2.13, useful for refined types or typed-key records (product types without case classes, hlist for instance)
- https://docs.google.com/presentation/d/1_dxtzcBaf8OfYGM-vsAJnXUJvDgmFWZJM0tmtDJoVGU/ Feedback from Algolia about scaling up
- https://www.troyhunt.com/streamlining-data-breach-disclosures-a-step-by-step-process/ Nice "guide" about contacting a company to reveal a data breach
- https://sap1ens.com/blog/2018/01/03/message-enrichment-with-kafka-streams/ Very good post about message enrichment with Kafka Streams
- https://github.com/lihaoyi/sourcecode Scala implicits to get source code metadata (filename,line, method name..)
01-02-2018
- https://github.com/jsverify/jsverify ScalaCheck/QuickCheck in JS :-) Property-based testing
- http://www.dwmkerr.com/the-death-of-microservice-madness-in-2018/ Some feedback and interrogation to ask yourself when dealing with microservices
- http://www.rigacci.org/wiki/lib/exe/fetch.php/doc/appunti/linux/sa/iptables/conntrack.html how conntrack works (connections state in a memory state), use within iptables
- https://queue.acm.org/detail.cfm?id=3096459 The Calculus of Service Availability - interesting insights from a Googler about SLO/SLA formula, dependencies, thresholds
31-01-2018
- http://www.securityweek.com/microsoft-disables-spectre-mitigations-due-instability Spectre mitigations causing instabilities is disabled -_-
- https://github.com/esimov/caire A "content aware way" to resize an image (by altering the content itself, without "losing" content)
- https://github.com/google/xi-editor A new future awesome text (code?) editor (in Rust!) ?
- https://github.com/developit/greenlet Multithreading made very easy and not verbose in js (ww)
27-01-2018
- https://github.com/akka-js/akka.js Akka compliant to Scala.js Oo
- https://emails.hteumeuleu.com/email-accessibility-in-action-f7f9d945cf67 Add relevant alt on imgs, role="presentation" on used for layout (emails!), lang="xx"
- http://co.ntextu.al/ Write string interpolators with custom checks; provides classic ones such as email, hex, regex
- https://to-ithaca.github.io/libra/ A dimensional analysis lib, to check if addition/product on types makes sense ("mass + speed" ?!). Basically: don't deal with simple Doubles everywhere.
- https://contributors.scala-lang.org/t/whitebox-def-macros/1210 Debate about whitebox def macros, lots of good insights
25-01-2018
- https://v8project.blogspot.fr/2018/01/speedometer-2.html Optimization in V8 are quite remarkable
- https://medium.com/@devongovett/parcel-v1-5-0-released-source-maps-webassembly-rust-and-more-3a6385e43b95 Parcel has such a huge momentum. Now includes: Source Maps, WebAssembly, Rust. No Config at all !
- https://facebook.github.io/prophet/docs/quick_start.html Prophet forecasts data with uncertainty intervals (Python and R apis)
- https://github.com/MfgLabs/akka-stream-extensions Some great Akka Stream extensions for postgresql, elasticsearch, shapeless, s3
- http://di-in-scala.github.io/ Compile-time DI is so much better! No more Java runtime stuff stupidities.
- http://anthonycros.com/turn-scala-into-spark/ Very strong similitude between a plain Scala program using the stdlib and its Spark equivalent
24-01-2018
- https://adriaanm.github.io/reveal.js/scala-2.13-beyond.html#/7 Scala 2.14 will be so good! simpler, faster, stronger!
- http://marxsoftware.blogspot.fr/2018/01/schopenhauers-law-immutability.html In Java, things are not Immutable but Unmodifiable
- http://mail.openjdk.java.net/pipermail/jmh-dev/2018-January/002723.html JMH 1.20 out! fixes and impro, better java9 compat, perfasm on osx
- https://medium.com/actualbudget/balancing-product-and-technology-e525dd82c05a Some feedback on product and technologu from a great developer. Looks like DDD.
23-01-2018
- https://github.com/developit/karmatic Automatic (headless) browser testing. Karma/Webpack/Jasmine. 0 config tools are the best.
- https://twitter.com/DasSurma/status/955484341358022657 Deep copying a JS object with clever means: the history API, or the MessageChannel for workers x_x
- https://www.youtube.com/watch?v=CUVOBANHzpo Why Akka streams rocks for high throughput
- https://dzone.com/articles/microprofile-enhances-microservices-for-java MicroProfile is a project to make jvm microservices-oriented (config, fault tolerance, health check, metrics, auth)
- https://www.thoughtworks.com/radar ThoughtWorks has a really great tech radar split in several domains (techniques, tools, platforms, languages)
- https://en.fabernovel.com/insights/tech-en/akka-typed Another example of using Akka typed. Much more verbose but at least, it's compile-time type-checked!
- https://medium.com/@ericsimons/introducing-turbo-5x-faster-than-yarn-npm-and-runs-natively-in-browser-cc2c39715403 Loading lazily packages instead of being eager: way less to dl=faster, and can work in a web browser now
22-01-2018
- https://github.com/etaty/scalacheck-magnolia generate random instances of case classes / ADT with ScalaCheck, priceless!
- https://www.youtube.com/watch?v=KaLROwp-VDY "How to get productive in a project in 24h": look at tests, coverage, cyclomatic complexities, git often changes files
21-01-2018
- https://blog.openai.com/scaling-kubernetes-to-2500-nodes/ "Scaling Kubernetes to 2,500 Nodes" Issues with etcd fluentd kubedns docker image pulls and arp caches
- http://blog.kubernetes.io/2017/10/using-rbac-generally-available-18.html RBAC GA since Kubernetes v1.8
- https://www.youtube.com/watch?v=JHGkaShoyNs Great talk by Greg Young about CQRS and Event Sourcing
- https://www.slideshare.net/quipo/nosql-databases-why-what-and-when/ Very good slides from 2011 about consistency, distributed strategies, bigtable, nosql dbs..
20-01-2018
- https://www.youtube.com/watch?v=EDLAdgAVyFU Functional Foundation of Event Sourced Application (from Lagom team)
- https://www.youtube.com/watch?v=__zuECMFCRc From basic API to functional API
- https://developer.lightbend.com/blog/2018-01-17-akka-multidc/ Akka Multi-DC: Akka persistence replicas across different DCs
- http://docs.scala-lang.org/sips/pending/static-members.html.html SIP 25 - @static fields and methods in Scala objects
- http://debezium.io/blog/2018/01/17/streaming-to-elasticsearch/ MySQL to elastic and postgres, using debezium and kafka-connect
- https://www.blog.google/topics/google-cloud/cloud-automl-making-ai-accessible-every-business/ Cloud AutoML available, starting with Vision !
- https://towardsdatascience.com/how-to-create-data-products-that-are-magical-using-sequence-to-sequence-models-703f86a231f8 seq2seq models to predict github issues title from content
- https://martinfowler.com/bliki/IntegrationTest.html Integration tests vs end-to-end tests
- https://hacks.mozilla.org/2018/01/making-webassembly-even-faster-firefoxs-new-streaming-and-tiering-compiler/ Streaming and tiering WebAssembly compiler in Firefox
- http://kamon.io/teamblog/2018/01/18/kamon-1.0.0-is-out/ Kamon 1.0 is out! More Prometheus and Open Tracing oriented <3
- https://intoli.com/blog/not-possible-to-block-chrome-headless/ Bypassing the Chrome Headless detector tests
19-01-2018
- https://jakubstransky.com/2017/11/27/structure-of-java-virtual-machine-jvm/ Structure of Java Virtual Machine (JVM)
- https://www.confluent.io/blog/put-several-event-types-kafka-topic/ Martin Kleppmann on "Should You Put Several Event Types in the Same Kafka Topic?": it's rarely the case
- http://highscalability.com/blog/2018/1/16/monolith-or-microservices-which-should-you-start-with.html Monolith or Microservices: Which should you start with? Some very good advices. You know with it if you know them \o/
- https://github.com/benjojo/dnsfs dnsfs: Store your data in others DNS revolvers cache
- https://www.buzzfeed.com/tomphillips/twitterstorm-2018 This is a funny must-read. It traces how a twitterstorm appears from a tiny thing and gets totally out of control. (it's fake but so "plausible" ahah)
18-01-2018
- https://github.com/GoogleChrome/dialog-polyfill I didn't even remembered HTML had a !
- https://github.com/Chymyst/curryhoward Generate code for full parametric functions (through macros) automatically from the function signature :o
- https://github.com/NervJS/nerv Another "blazing fast React alternative"
16-01-2018
- https://github.com/scala/collection-strawman/pull/342 New immutable hash set and map in Scala's collection-strawman (using CHAMP)
15-01-2018
- https://www.youtube.com/watch?v=STKCRSUsyP0 The Many Meanings of Event-Driven Architecture - Martin Fowler
- http://blog.ploeh.dk/2018/01/15/unit-isomorphisms/ Unit isomorphisms
- https://github.com/boopathi/babel-time-travel "Time travel through babel transformations one by one." Interesting to see the "way"
- https://building.coursera.org/blog/2016/12/01/should-engineering-managers-write-code-wrong-question/ "Should engineering managers write code? Wrong question." => "Where to write code?"
- https://rreverser.com/writing-complex-macros-in-rust/ Writing complex macros in Rust: Reverse Polish Notation
- https://www.washingtonpost.com/news/post-nation/wp/2018/01/14/hawaii-missile-alert-how-one-employee-pushed-the-wrong-button-and-caused-a-wave-of-panic/?utm_term=.cc967e072831 "Hawaii missile alert: How one employee ‘pushed the wrong button’ and caused a wave of panic" That's nuts
12-01-2018
- https://craftsmen.nl/memory-usage-6-popular-rest-server-frameworks-compared/ Comparing memory usage of Spring/Play/Vertex/Jersey/..
- https://github.com/emilwallner/Screenshot-to-code-in-Keras a NN to convert mockups to actual HTML \o/
10-01-2018
- https://www.youtube.com/watch?v=gH5mPaLU8_g Quelques raisons pour coder du Rust venant de Scala :-)
- https://webkit.org/blog/8048/what-spectre-and-meltdown-mean-for-webkit/ What Spectre and Meltdown Mean For WebKit
09-01-2018
- https://jobs.zalando.com/tech/blog/why-we-do-scala/ All the things we like using Scala <3
- https://zalando.github.io/tech-radar/ Zalando has a public "tech radar", awesome company !
- https://letsencrypt.org/2017/12/07/looking-forward-to-2018.html Free wildcard certifs for all \o/
- https://www.smashingmagazine.com/2018/01/visual-studio-code/ Yeah, VSCode is a great editor full of features
- http://blackswanfarming.com/cost-of-delay/ Thinking about cost and delay: what are they, how to know the impact of time on the outcomes
- http://kroah.com/log/blog/2018/01/06/meltdown-status/ Meltdown and Spectre Linux kernel status - <3 to the kernel developers
- https://techcrunch.com/2018/01/08/james-damore-just-filed-a-class-action-lawsuit-against-google-saying-it-discriminates-against-white-male-conservatives/ James Damore just filed a class action lawsuit against Google, saying it discriminates against white male conservatives | It' a must read, especially the official lawsuit document. Tons of screenshots and discussions.
- https://www.ultimategdprquiz.com/ The Ultimate GDPR Quiz— Not easy to get 10/10 :x
- https://www.youtube.com/watch?v=s3ljANN80R4 Speedup .scala compilation with Hydra (stil early access)
- https://shipilev.net/jvm-anatomy-park/20-fpu-spills/ SSE instructions and xmm registers used as fast storage thanks the UseFPUForSpilling jvm flag (enablde by default): it avoids to use the "slower" L1 cache
08-01-2018
- http://boristyukin.com/benchmarking-apache-kudu-vs-apache-impala/ According to the author Kudu >> Parquet with Impala with some "minor" catches. Not the xp I got (size in kudu was ++, kudu couln't remove deleted data from disk, kudu was sometimes stuck and needed weekly reboot (despite plenty of mem)..)
- https://washingtonmonthly.com/magazine/january-february-march-2018/how-to-fix-facebook-before-it-fixes-us/ How to Fix Facebook—Before It Fixes Us. "Fear and anger produce a lot more engagement and sharing than joy." "The result is that everyone sees a different version of the internet tailored to create the illusion that everyone else agrees with them" Trump's Russia-gate.
- https://www.youtube.com/watch?v=jd5e71nFEZM This was a very good explanation about monad transformers
07-01-2018
- https://lwn.net/Articles/741897/ Demystifying container runtimes
- https://hackernoon.com/im-harvesting-credit-card-numbers-and-passwords-from-your-site-here-s-how-9a8cb347c5b5 A definitely realistic post about the "easiness" of injecting any code on "any" website that uses npm packages. (thus stealing anything it wants)
- https://github.com/0xAX/linux-insides Wonderful bits about Linux kernel. More than 800 pages of "bits" already.
- https://www.youtube.com/watch?v=qwYs0J7xp78 type-safety in CQRS (linked model to events and commands types)
- https://www.youtube.com/watch?v=778znDnjROg gRPC with ScalaPB newbie talk
- https://www.youtube.com/watch?v=Z6_Nd7lu2PI Event Sourcing and CQRS using Lagom
06-01-2018
- http://psy-lob-saw.blogspot.fr/2013/05/know-thy-java-object-memory-layout.html TIL about False Sharing (adding padding in object to keep values in cache)
- https://www.youtube.com/watch?v=wi97X8_JQUk Monix talk by Monix creator
- https://www.youtube.com/watch?v=hr3UdktX-As Akka anti-patterns (use a hierarchy! supervision is there for this. never block, use pipe. never pass outside mutable state. etc.)
- https://gist.github.com/djspiewak/7a81a395c461fd3a09a6941d4cd040f2 Good to know: the type parameters we expect users to vary should be declared the right-most.
- https://developer.lightbend.com/blog/2018-01-05-kafka-streams-scala-goodies-part-2/ Provide a simili-global state from any node
- https://github.com/raphaelsc/Am-I-affected-by-Meltdown Proof-of-concept / Exploit / checks whether system is affected by Variant 3: rogue data cache load (CVE-2017-5754), a.k.a MELTDOWN.
- https://developer.lightbend.com/blog/2018-01-05-kafka-streams-scala-goodies-part-1/ If Lightbend has a Scala wrapper on top of kafka streams java, that means it will be maintained! +1
- https://www.raspberrypi.org/blog/why-raspberry-pi-isnt-vulnerable-to-spectre-or-meltdown/ No speculative execution on Rasp: no attack possible \o/
- https://font-display.glitch.me/ getting control of font appearance when font is not downloaded yet, using "font-display"
05-01-2018
- https://support.google.com/faqs/answer/7625886 Google providing Retpoline: a software construct for preventing branch-target-injection
- https://blog.statsbot.co/deep-learning-achievements-4c563e034257 Deep Learning achievements over 2017: this is nuts
- https://www.youtube.com/watch?v=IhVdU4Xiz2U A nice talk comparing Free monads and tagless final
- https://kwark.github.io/refined-in-practice/ Refinement Types looks very interesting. The drawbacks are not important enough compared to the advantages! (basically validation on the type level)
04-01-2018
- https://googleprojectzero.blogspot.fr/2018/01/reading-privileged-memory-with-side.html Interesting details about the current global bug to read privileged memory with a side-channel. It's basically based on speculative execution+cache+timing to evaluate if 0 or 1
- http://pepegar.com/hammock/ Hammock is like sttp, a generic http client with different backends. And is also functional oriented (Free, IO) <3
03-01-2018
- https://www.youtube.com/watch?v=WscozkoXLHM Very good talk about exactly once kafka semantics
- https://www.youtube.com/watch?v=ewe3-mUku94 ASLR kernel attack using Javascript: performance.now() and SharedArrayBuffer. Unfortunately, the speaker is not good at all.
- http://pythonsweetness.tumblr.com/post/169166980422/the-mysterious-case-of-the-linux-page-table The story of the "Address Space Layout Randomization" kernel attack; could lead to hypervisor privileges escalation
- https://www.zachaysan.com/writing/2017-12-30-zero-width-characters Fingerprinting with Zero-Width Characters and homoglyths. Love it!
02-01-2018
- https://github.com/javascript-obfuscator/javascript-obfuscator JS obfuscators are getting back
01-01-2018
- https://minnenratta.wordpress.com/2017/01/25/things-i-have-learnt-as-the-software-engineering-lead-of-a-multinational/ a 36-bullet point that makes quite sense, to rea for any developer/software lead
31-12-2017
- https://code.facebook.com/posts/1478526992216557/migrating-a-database-from-innodb-to-myrocks/ How Facebook migrates from InnoDB to MyRocks (mysql backed by rocksdb)
- https://www.youtube.com/watch?v=Tkjg179M-Nc Talk about "Stream I/O" by Andre 'Staltz' Medeiros, where cycle.js idea comes from
- https://www.slideshare.net/mpilquist/scalaz-13068563 A very nice prez on Scalaz, now I understand everything :-)
30-12-2017
- https://softwaremill.com/applicative-functor/ Another explanation about the applicative functors
- https://www.youtube.com/watch?v=1bNOO3xxMc0 Queue theory reminds me of reactive programming. Need to handle backpressure. Queues are everywhere. Gather metrics (queues, threads pools). Plan your app for "too much data".
- https://www.wsj.com/articles/the-worst-job-in-technology-staring-at-human-depravity-to-keep-it-off-facebook-1514398398 Content moderators on social networks: clearly not an easy job that can totally mess you up
- https://github.com/lllyasviel/style2paints Any sketch images colorized and painted :o (CNN)
29-12-2017
- https://gist.github.com/rondy/af1dee1d28c02e9a225ae55da2674a6f A very nice review of the book: the Effective Engineer
- https://www.iravid.com/posts/contravariant-functors.html contravariant functors and contravariant applicatives
- https://gist.github.com/djspiewak/464c11307cabc80171c90397d4ec34ef JVM optim: define the hot path, don't allocate in there, identity boxing, keep things monomorphics
- https://medium.com/@fwbrasil/quill-spark-a-type-safe-scala-api-for-spark-sql-2672e8582b0d A type-safe Scala API for Spark SQL
- https://www.iravid.com/posts/fp-and-spark.html Using Monix Task and cats StateT into Spark to make it more functional.
- https://github.com/findify/scala-packed an interesting concept where classic Scala collections type are backed by bytes (to avoid case class overhead, header etc.), bytes efficient.
- https://siliconangle.com/blog/2017/07/12/lightbend-startup-behind-scala-programming-language-bags-15m Lightbend raises $15M. More Scala! <3
28-12-2017
- https://blog.envoyproxy.io/service-mesh-data-plane-vs-control-plane-2774e720f7fc Service mesh data plane vs. control plane. Thanks! Now i get it.
- https://shipilev.net/jvm-anatomy-park/18-scalar-replacement/ HotSpot's Escape Analytics analyzed
- http://slides.com/pdolega/slick-101#/ A nice presentation about Slick features, with monads and applicatives comparaison
27-12-2017
- https://www.youtube.com/watch?v=B37UbzPlSzw is IOTA the future "blockchain" err, "blockdag"? scalable, quantum resistant, no fees..
- https://www.youtube.com/watch?v=1eg0ahHtxcQ Microservices & DDD
- https://banzaicloud.com/blog/spark-monitoring/ Monitoring Apache Spark with Prometheus on Kubernetes. Buzzzzing!
- http://blog.cloudera.com/blog/2017/12/faster-performance-for-selective-queries/ Combining partitioning+clustering (sort by (x, y, ..) in create ddl) for maximum partition pruning, very useful!
- https://cloud.google.com/blog/big-data/2017/12/busting-12-myths-about-bigquery Busting 12 myths about BigQuery. I wasn't aware of the point-in-time snapshot feature. But it makes sense, because bq is bigtable behind the scene.
- http://highscalability.com/blog/2015/3/9/the-architecture-of-algolias-distributed-search-network.html Algolia’s architecture explained (from 2015), quite interesting
- https://medium.com/@addyosmani/a-tinder-progressive-web-app-performance-case-study-78919d98ece0 Very nice case study to review all what makes a performant webapp
- https://danluu.com/input-lag/ Keyboard to screen latency, from 1977 to 2017. We didn't really improve /o\
- https://www.theguardian.com/world/2017/apr/14/what-is-the-historical-evidence-that-jesus-christ-lived-and-died Always question believers facts
- https://www.youtube.com/watch?v=o7wtlMb_Qv0 Microservices, talk by Vaughn Vernon
- https://www.youtube.com/watch?v=v7b4J2INq9c Microsoft Quantum Development Kit: Introduction
26-12-2017
- https://lemire.me/blog/2017/12/26/personal-reflections-on-2017/ More VR, more AI, data engineering is currently a mess, perf & latency greatly sucks (surprisingly), and other interesting stuff
- https://blog.alexellis.io/the-state-of-netbooting-raspberry-pi/ netbooting RPi is cool but full of terrors (unstable at boot, docker containers can't work because of its CoW filesystem which doesn't work through NFS..)
- https://shipilev.net/jvm-anatomy-park/15-just-in-time-constants/ JIT constants optimized
- https://github.com/akarnokd/async-enumerable asynchronous enumerable: moveNext() returns a Future[Boolean] and not just a Boolean
- https://medium.com/@arschles/go-experience-report-generics-in-kubernetes-25da87430301 Apparently, k8s simulates some kind of genericity in its codebase through the usage of a custom "runtime.Object" that looks like Java's Object?
- https://shipilev.net/jvm-anatomy-park/14-constant-variables/ eager "final" vars value is inline, lazy final values are not
- https://medium.com/bread-and-circuses/how-i-got-paid-0-from-the-uber-security-bug-bounty-aa9646aa103f Uber Security Bug Bounty program looks like a joke. Dude found several important flaws and earned 0$.
- https://github.com/aboul3la/Sublist3r subdomains enumeration tool for penetration testers
- https://www.sans.org/reading-room/whitepapers/tools/os-application-fingerprinting-techniques-1891 OS and Application Fingerprinting Techniques
🎄
25-12-2017 - https://medium.com/@domagojk/patterns-for-designing-flexible-architecture-in-node-js-cqrs-es-onion-7eb10bbefe17 A nice presentation with code in JS of CQRS+ES
- https://softwaremill.com/reactive-streams-in-scala-comparing-akka-streams-and-monix-part-3/ This time, comparing with "load balancer" pattern. I prefer Akka Streams on this one, it's way more explicit and clear
- http://blog.soat.fr/2017/07/pourquoi-et-sous-quel-condition-utiliser-les-microservices/ microservices, microservices!
- http://highscalability.com/blog/2017/12/11/netflix-what-happens-when-you-press-play.html Netflix: What Happens When You Press Play? Video starts.
- http://www.michaelnygard.com/blog/2017/12/the-entity-service-antipattern/ The Entity Service is an antipattern in the sense that the services are not autonomous (not context bound)
24-12-2017
- https://github.com/spotify/featran A nice and small Scala feature transformation library for ML
- https://www.youtube.com/watch?v=1dchSsac3T4 Spotify's Scio
- https://goo.gl/mn6ZJB Prepack now understands React components and can inline them (alpha)
- http://www.chriskrycho.com/2017/chrome-is-not-the-standard.html Friendly reminder: Chrome is not the standard. The web platform is managed by several actors.
- https://dzone.com/articles/reactive-spring-5-and-application-design-impact Reactive Spring 5: the reactive parts
- https://blogs.windows.com/msedgedev/2017/12/19/service-workers-going-beyond-page/#Omf2eUtrEwXV06i0.97 Edge finally handle SWs by default, and they did a nice recap' of why SWs are useful
23-12-2017
- http://larahogan.me/blog/desk-moves/ Interesting insights over human emotions when managing them (here: around desk moves task). Belonging. Improvement/Progress. Choice. Equality/Fairness. Predictability. Status.
- http://2ality.com/2017/11/about-reasonml.html A nice series of post to discover ReasonML
21-12-2017
- https://github.com/ballercat/walt Walt is a cool idea to write JavaScript-like syntax to be compiled to WebAssembly without the LLVM overhead
- https://www.youtube.com/watch?v=g_jP47HFpWA Daniel Spiewak talking about IO monad, very good
- https://www.confluent.io/blog/ksql-december-release KSQL or writing streamers with SQL, love it!
- https://www.youtube.com/watch?v=aWI7iU36qv0 Let's put a happy music in the background to explain microservices \o/
- https://www.geekbench.com/blog/2017/12/iphone-performance-and-battery-age/ Apple strategy: underclocking phone's cpu according the battery age
- https://www.forbes.com/sites/thomasbrewster/2017/12/19/120m-american-households-exposed-in-massive-consumerview-database-leak/#1a73d6f07961 This is nuts. The company trying to minimize the impact of such leak.. what a shitty behavior.
- https://blog.cloudflare.com/this-is-strictly-a-violation-of-the-tcp-specification/ Very informative article about localhost loophole congestion
- https://www.propublica.org/article/facebook-ads-age-discrimination-targeting Is it not better to prevent ppl you wouldn't hire to apply anyway?
20-12-2017
- https://www.slideshare.net/HadoopSummit/hadoop-3-in-a-nutshell Basically Hadoop 3 in a cleanup of codebase and a big YARN refacto
- https://www.justinobeirne.com/google-maps-moat A damn good article on the evolution of Google Maps quality
19-12-2017
- https://swizec.com/blog/blockchain-backed-redux-clone-105-lines-code/swizec/7980 blockchain in the new TODO
- https://codeburst.io/the-future-of-javascript-will-be-less-javascript-cea373eb57fd Nobody will "do" true JS, but all will compile to JS (as today..) because it's the "VM" browsers undertand (well, and wasm is coming too)
- http://woz.posthaven.com/what-orms-have-taught-me-just-learn-sql Benefits and drawbacks of ORMs (+simplity/+complexity)
- http://jonasboner.com/bla-bla-microservices-bla-bla/ "Asynchronous Communication, Isolation, Autonomicity, Single Responsibility, Exclusive State, and Mobility. These are the core traits of Microservices."
- https://v8project.blogspot.fr/2017/12/v8-release-64.html V8 still adding some optimizations (bind, Weak*, slice/filter) and smaller memory footprint
- https://staltz.com/a-plan-to-rescue-the-web-from-the-internet.html Is the future is mobile mesh networks?
- https://github.com/Jam3/math-as-code a cheat-sheet for mathematical notation in code form, quite straight-forward
17-12-2017
- https://www.youtube.com/watch?v=H28QqxO7Ihc Tagless final using Free applicatives
- https://www.youtube.com/watch?v=MvQxNm5gn8g Quite clear explanations about the usage of the category theory, from a Scala programmer perpective
- https://kubernetes.io/case-studies/blablacar/ BlaBlaCar case study of its k8s usage
- http://blog.kubernetes.io/2017/12/kubernetes-19-workloads-expanded-ecosystem.html Kubernetes 1.9 out. Apps Workloads GA and Expanded Ecosystem
16-12-2017
- https://github.com/facebook/Docusaurus Documentation made easy on gh-pages
15-12-2017
- https://developers.google.com/web/tools/chrome-user-experience-report/#best-practices A new public dataset on bigquery that exposes measurements of metrics across web (features, connections type, ...)
- https://github.com/pauljamescleary/scala-pet-store An implementation of some classic store using http4s/doobie/circe
- https://www.lyranthe.org/presentations/http4s_doobie_circe.pdf A presentation on http4s/doobie/circe used together
14-12-2017
- https://stackshare.io/dubsmash/dubsmash-scaling-to-200-million-users-with-3-engineers Dubsmash: Scaling To 200 Million Users With 3 Engineers, many technologies used + Amazon and Gcloud, very good team!
- https://getstream.io/blog/switched-python-go/ "Why We Switched from Python to Go", perf; easier to keep it simple; go/chan; compile time; grpc
- https://www.nytimes.com/2017/12/14/technology/net-neutrality-repeal-vote.html Net Neutrality is down. That's a very bad news and the beginning of many problems.
- https://nd4j.org/index.html Dealing with N-dimensional arrays in Java, supporting CUDA for some hyper-quick GPU computing
- https://www.youtube.com/watch?time_continue=2&v=Bbw1ki-U-QY overview of AI Starcraft(s) bots techinics
10-12-2017
- https://blog.scalac.io/2016/06/02/overview-of-free-monad-in-cats.html This was an nice completary post to the cats Free doc. (note: the code in the post is based on a old cats version)
- https://github.com/mil-tokyo/webdnn with webdnn, we can execute DNN pipelines in the browser
- http://make.girls.moe/ An anime characters generators based on NN (we can pickup lots of aspects and ask for generation).
- https://medium.com/4iqdelvedeep/1-4-billion-clear-text-credentials-discovered-in-a-single-database-3131d0a1ae14 clear passwords are the biggest mistake in IT
- https://github.com/fosskers/scalaz-and-cats Comparisons and usage examples between Scalaz and Cats
- https://kerpanic.wordpress.com/2017/12/10/macbook-pro-2016-1-year-later-from-a-devs-perspective/ No GPU-accelerated Tensorflow on macbooks :-( (no nvidia)
09-12-2017
- https://brianmckenna.org/blog/constraints_are_for_methods A point in Scala explaining that Type constraints are for methods, not data (ie: not on the class itself)
- https://gist.github.com/staltz/08bf613199092eeb41ac8137d51eb5e6 People seems to forget about the "state" part in React to manage internal updates, interesting problematic inside anyway
08-12-2017
- https://www.youtube.com/watch?v=Y-cPVQaXlMw&list=PLjkHSzY9VuL8hRtytRxvO5gheXHWWdU9A&index=6 A really good FR talk about free monads and cooking
- https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/MbXp16hQclY/bQjegyrbAgAJ dev will have the ability to "async" image processing to get better responsiveness.
- https://ipdata.co/index.html a (free) IP Geolocation API, always good to have one
- https://github.com/sindresorhus/refined-twitter Simple but useful (can be done through Stylish too): simplify Twitter UI \o/
07-12-2017
- https://cloud.google.com/blog/big-data/2016/07/using-the-cloud-natural-language-api-to-analyze-harry-potter-and-the-new-york-times A very nice intro and easy usage of Google NLP API
- https://www.washingtonpost.com/news/the-switch/wp/2017/12/07/amazon-wants-a-key-to-your-house-i-did-it-i-regretted-it/ I was not aware such a thing exist: electronic keys+cam for delivery guy to drop packages into the house
- https://medium.com/airbnb-engineering/recent-web-performance-fixes-on-airbnb-listing-pages-6cd8d93df6f4 Airbnb optimizing its React rendering
- https://arxiv.org/pdf/1712.01815.pdf AlphaZero has learn to perfectly play chess within a few hours this time
06-12-2017
- http://syncfree.github.io/antidote/index.html a new CRDT HA database
- https://reactos.org/project-news/reactos-047-released ReactOS continues its evolution, mirroring Windows but as FOSS (nothing to do with ReactJS eh)
05-12-2017
- https://parceljs.org/ Parcel is a html/js/css/xxx module bundler with 0 config and just need the html as source. Mostly made for hyper fast build-test-loop.
- https://blog.doit-intl.com/replacing-mixpanel-with-bigquery-dataflow-and-kubernetes-b5f844710674 Catchy title, i like it ! Mixpanel, BQ, Dataflow, k8s.
- https://github.com/spotify/apollo microservices tiny framework used by spotify
04-12-2017
- https://labs.spotify.com/2017/11/20/autoscaling-pub-sub-consumers/ Spotify had some troubles with autoscaling on GCS with Pub/Sub Consumers (not using Dataflow ?!)
- https://marcan.st/2017/12/debugging-an-evil-go-runtime-bug/ This is a impressive and crazy Go bug debugging lecture
- https://calendar.perfplanet.com/2017/animated-gif-without-the-gif/ Very interesting with good pointers. s/gifs/mp4/
- https://docs.google.com/document/d/1yRYfYR1DnHtgwC4HRR04ipVVhT1h5gkI6yPmKCgJkyQ/edit#heading=h.elxj4igk4k81 w3c proposal: "Hero Element Timing API" to be aware of when some critical elements (hero elements) are displayed on screen
- http://www.stephendiehl.com/posts/haskell_2018.html Good post overviewing what happened in the Haskell world in 2017. So many things! Time to get in?
- https://medium.com/learning-rust Bookmark that when the time's come!
- https://github.com/wanqizhu/pyfuck python using only those chars: [(+travels')]. yeah, whatever
03-12-2017
- https://www.youtube.com/watch?v=4PgX3yBJEyw "Authenticating service-to-service calls with Google Cloud Endpoints"
- https://www.infoq.com/news/2017/12/webassembly-browser-support WebAssembly is definitely going to spread faster and faster !
- https://www.michielrook.nl/2016/11/strangler-pattern-practice/ The Strangler pattern in practice
- https://www.martinfowler.com/bliki/StranglerApplication.html The Strangler Pattern—Or how to rewrite a legacy app iteratively
02-12-2017
- https://blog.softwaremill.com/akka-streams-pitfalls-to-avoid-part-2-f93e60746c58 Akka Streams pitfalls to avoid — part 2 – WAY more interesting than part 1
- https://blog.chromium.org/2017/11/reducing-chrome-crashes-caused-by-third.html It's not about third-party cookies this time, but third-party softwares!
- https://arstechnica.com/science/2017/12/after-37-years-voyager-has-fired-up-its-trajectory-thrusters/ We did some great tech bach then! "After 37 years, Voyager 1 has fired up its trajectory thrusters."
01-12-2017
- https://cloudplatform.googleblog.com/2017/11/introducing-an-easy-way-to-deploy-containers-on-Google-Compute-Engine-virtual-machines.html a new gcloud command to deploy containers into a GCE vm "create-with-container"
- https://www.lesnumeriques.com/tv-televiseur/que-va-changer-hdmi-2-1-n69037.html Ne pas oublier de se tenir au courant de l'audio-visuel aussi! HDMI 2.1 incoming! du 4k en 120Mhz.
- http://scala-lang.org/blog/2017/11/30/bloop-release.html "bloop", a"build loop" tool. A CLI over Zinc and nailgun.
- https://dailycodingproblem.com/2017/11/30/random-element.html The Reservoir Algorithm
- https://norasandler.com/2017/11/29/Write-a-Compiler.html Writing a C Compiler from scratch
- https://www.erikheemskerk.nl/ddd-persistence-recorded-event-driven-persistence/ Writing DDD repositories with an event driven design
- https://blog.sourcerer.io/writing-a-simple-linux-kernel-module-d9dc3762c234 Always interesting to see how to write a Linux Kernel Module
30-11-2017
- https://andreas.github.io/2017/11/29/type-safe-graphql-with-ocaml-part-1/ Type-Safe GraphQL with OCaml
- http://nickdrane.com/build-your-own-regex/ A very simple"regex" engine in Javascript, as a starter.
- https://blog.jetbrains.com/idea/2017/11/intellij-idea-2017-3-smarter-coding-assistance-better-debugger-run-dashboard-frameworks-support-and-more/ IntelliJ IDEA 2017.3: Smarter Coding Assistance, Better Debugger, Run Dashboard, Frameworks Support ! Installed.
- https://www.bloomberg.com/news/articles/2017-11-29/uber-s-third-quarter-loss-is-said-to-widen-to-1-46-billion Uber in trouble, causing early investors to sell
- https://www.confluent.io/blog/toward-functional-programming-analogy-microservices/ Analogy between functional programming and microservices
29-11-2017
- https://speakerdeck.com/bobbycalderwood/commander-better-distributed-applications-through-cqrs-event-sourcing-and-immutable-logs How to go to CQRS+Event Sourcing using Kafka Streams
- https://www.confluent.io/confluent-cloud/ Confluent Platform as a managed service now "Confluent Cloud"
- http://steve-yegge.blogspot.fr/2007/06/rich-programmer-food.html everybody should know how compilers work because it's always useful one day or another
- https://design.google/library/evolving-google-identity/ An old post from 2015 when Google redesigns its logo and style. Nice explanations.
27-11-2017
- https://dzone.com/refcardz/continuous-delivery-with-jenkins-workflow A very nice intro to Jenkins Pipeline
- https://carlossg.github.io/presentations/2017-11_agiletestingdays/#/ k8s and Jenkins (Workflow) = <3
- https://blog.csanchez.org/2017/05/31/running-a-jvm-in-a-container-without-getting-killed/ Beware of JVM running inside memory-limited containers, they do not respect it by default!
- http://blog.erratasec.com/2017/11/a-thanksgiving-carol-how-those-smart.html A surprising story about unconfirmed twitter account that keeps receiving stuff for years without being email-confirmed
- https://www.youtube.com/watch?v=Pu_WTjjmm-E Ben Sigelman: OpenTracing and its Applications
23-11-2017
- https://www.developpez.com/actu/174643/Mozilla-a-silencieusement-deploye-la-fonctionnalite-First-Party-Isolation-empruntee-a-Tor-pour-endiguer-le-profilage-des-regies-publicitaires/ FPI (First Party Isolation) pour isoler les cookies thid-party par domaine first-party: plus d'aggrégation possible côté third.
- https://blog.cloudflare.com/get-started-with-warp/ ngrok on CloudFlare?
- https://stackoverflow.blog/2017/11/13/cliffs-insanity-dramatic-shifts-technologies-stack-overflow/ Dramatic Shifts in Technologies on Stack Overflow: swift, tensorflow, angular (!)
- http://tldr.sh/ If you don't enjoy man pages because they are too long, you will love tldr !
20-11-2017
- http://www.lihaoyi.com/post/SowhatswrongwithSBT.html "What's wrong with SBT?" Everything! It's so meta, as explained here.
- https://towardsdatascience.com/google-colaboratory-simplifying-data-science-workflow-c70059386323 Ask for your invite at Google Colaboratory !
- https://medium.com/unsplash-unfiltered/scaling-unsplash-with-a-small-team-fbdd55571906?ref=reddit Very good article by the splash team showing their architecture, their choices. Very lean, love it. "Have you tried throwing money at it?"
19-11-2017
- https://blog.alexellis.io/introducing-functions-as-a-service/ OpenFaas, serverless on top on containers (docker swarm, k8s)
- http://nats.io/about/ A messaging system for native cloud application developement, with connectors to tons of softwares
- https://www.youtube.com/watch?v=e59pTjaVPCs Some FaaS demos using Amazon/GCP/Azure. Nice stuff about Azure are bindings (js var bound to databases).
- http://blog.cleancoder.com/uncle-bob/2017/10/03/TestContravariance.html Reduce coupling between tests and production code (X doesn't mean there is XTest). Tests should be independent, seen as a client of the api.
- https://postverta.com/ An online IDE for nodejs apps, dealing with deployment, easy and all-managed
- https://www.slideshare.net/szaheer/dimensional-modelling-basic-concept Example of DM (identify business (source), the grain (what does 1 row means?), the dim, and the facts
- https://en.wikipedia.org/wiki/Dimensional_modeling Dimensional modeling is a design technique for databases intended to support end-user queries in a data warehouse (how to design a star/snowflake schema)
- https://medium.freecodecamp.org/the-rise-of-the-data-engineer-91be18f1e603 Interesting insights about what is a "Data Engineer" nowadays
- https://www.elastic.co/guide/en/elasticsearch/reference/6.0/removal-of-types.html More details about mapping types removal and a way to migrate using the reindex api
- https://www.elastic.co/blog/elasticsearch-6-0-0-released Globally faster, and mapping types indices are deprecated :o
- http://heydonworks.com/revenge_css_bookmarklet/ Bookmarklet to wrap any malformed/deprecated html structures with a pink border in the current page <3
- https://github.com/dotnet/corefxlab/blob/master/docs/specs/span.md Span: a new .NET structure to avoid copying internally every time. Abstraction: it can reference managed/native/stack mem. Performance!
18-11-2017
- https://lemire.me/blog/2017/11/10/how-should-you-build-a-high-performance-column-store-for-the-2020s/ Technics to encode and compress data to get faster, and referencing Apache Arrow for good column store perf
- https://en.wikipedia.org/wiki/AOS_and_SOA Are you more Array of Structures or Structure of Arrays? Interesting question!
- https://github.com/apache/kudu/blob/master/docs/design-docs/tablet.md#mvcc-mutations-in-memrowset Very well written design doc about Kudu's tablets, explaining the how mvcc works, the different places data are stored, the compactions, and advantage/drawback compared to others db such as bigtable, vertica, pg
- https://www.nytimes.com/2017/11/02/magazine/how-facebooks-oracular-algorithm-determines-the-fates-of-start-ups.html A passionant story about a startup using Facebook's Ads to get started: how to succeed and pitfalls
- https://www.lrb.co.uk/v39/n16/john-lanchester/you-are-the-product A super interesting review about Facebook: from where, to where, the dangers, the advertisers, the humans, the product
- https://www.confluent.io/blog/transactions-apache-kafka/ High overview of how transactions works in Apache Kafka
17-11-2017
- https://www.youtube.com/watch?v=evaMpdSiZKk React made "easy and simple" with Next.js; presenting the different associated babel-plugins (talk a bit confusing though)
- https://github.com/sbt/sbt-fresh plugin to create an opinionated fresh sbt project, "sbt fresh" and done!
- https://0patch.blogspot.fr/2017/11/did-microsoft-just-manually-patch-their.html When you lost source code, just patch the existing binary; as Microsoft did.
- https://www.lucidchart.com/techblog/2017/11/16/converting-600k-lines-to-typescript-in-72-hours/ Converting 600k lines to TypeScript in 72 hours by Lucidchart; very very awesome :-)
15-11-2017
- http://www.zdnet.com/article/linux-totally-dominates-supercomputers/ Today, all 500 of the world's top 500 supercomputers are running Linux.
- https://github.com/Heydon/REVENGE.CSS REVENGE CSS | A CSS bookmarklet that puts pink error boxes (with messages in comic sans) everywhere you write bad HTML.
12-11-2017
- http://blog.ploeh.dk/2016/03/18/functional-architecture-is-ports-and-adapters/ Ports and Adapters—Business logic should be contained into pure functions
- https://blog.samebug.io/creating-a-todo-application-using-akka-http-and-slick-chapter-1-24f77394a481 Creating a TODO application using Akka HTTP and Slick
- http://www.gwern.net/Ads Banner Ads Considered Harmful (Here): he estimates AdSense reduces its traffic by ~14%
- https://www.slideshare.net/etorreborre/specs2-from-starters-to-dessert-and-a-look-in-the-kitchen Specs2, never used it, i think i won't
- https://blog.timescale.com/time-series-data-postgresql-10-vs-timescaledb-816ee808bac5 TimescaleDB, an extension in PostgreSQL, aims to be better as timeseries db than good ol' vanilla PostgreSQL, even with declarative partitioning
- https://blog.timescale.com/scaling-partitioning-data-postgresql-10-explained-cd48a712a9a1 PostgreSQL 10 introduces declarative partitioning
- https://www.youtube.com/watch?v=a4PX8vksBFU The story of the world's first webcam. It was used to know if the coffee was ready.
11-11-2017
- https://www.youtube.com/watch?v=b_pEevMAC3I&list=PLoz-W_CUquUlnvoEBbqChb7A0ZEZsWSXt&index=29 PromCon 2017: optimizations done in Prometheus 2.0, benchmarks, just mad results
- https://prometheus.io/blog/2017/11/08/announcing-prometheus-2-0/ Prometheus 2.0, storage and perfs revisited
- http://esr.ibiblio.org/?p=7711 An ode to the end of C, by a C programmer. New language taking its place: Go, Rust
- https://alexn.org/blog/2017/11/10/minitest-no-crap-scala-library.html a KISS Scala testing lib, by monix's author
- https://blog.chromium.org/2017/11/expanding-user-protections-on-web.html More protection from abusive redirects on the web
- http://status.ovh.net/?do=details&id=15162#comment18119 The reasons of the OVH outage: SBG power grid is totally flawed and will be fixed
06-11-2017
- http://tonsky.me/blog/chrome-intervention/ Silent breaking change from Chrome team (on addEventListener..! by default, is "passive" (a new option) to improve perf)
- https://sevagh.github.io/post/8months/ A "jq" for protobuf data: "pq" :-)
- https://techcrunch.com/2017/11/03/snap-metamarkets/ Snap has acquired Metamarkets (Druid)
05-11-2017
- https://www.youtube.com/watch?v=bBC-nXj3Ng4 Best video? to explain how Bitcoin actually works
- https://research.googleblog.com/2017/11/automl-for-large-scale-image.html AutoML was applied for image classif and object detection, and it works really great
- https://research.googleblog.com/2017/05/using-machine-learning-to-explore.html ML to create better NN architecture
- http://tim.hibal.org/blog/alpha-zero-how-and-why-it-works/ How works AlphaGo Zero: Monte-Carlo tree search with an neural net expert policy to avoid too much exploration "these AI's will only be human-level for a brief instant before blasting past us into superhuman territories"
- https://www.youtube.com/watch?v=Fbhhc4jtGW4 Nice talk about doing micro-services with nodejs/docker/k8s/helm/prometheus/zipkin
- https://medium.com/the-node-js-collection/news-node-js-8-moves-into-long-term-support-and-node-js-9-becomes-the-new-current-release-line-74cf754a10a0 nodejs 9 is starting. V8 integrates nodejs compat tests now.
- https://dexecure.com/blog/how-to-create-http2-static-file-server-nodejs-with-examples/ Simple HTTP/2 server in nodejs, with its http2 api.
04-11-2017
- https://www.cakesolutions.net/teamblogs/typesafety-101-knowing-your-types To resume: Option.get should not exists :-). Never break out from the original type.
- http://www.scalaformachinelearning.com/2017/10/reinforcement-learning-in-scala.html Reinforcement learning in Scala
- https://slack.engineering/rebuilding-slack-com-b124c405c193 Interesting insights and experience sharing from Slack.com redesigning their website
- https://github.com/sksamuel/scapegoat an alternative to FindBugs or checkstyle, to do static code analysis
- https://serverjs.io/ server.js looks like a good and easy alternative to expressjs/koa
- https://blemoine.github.io/scala-io-effects/ Very good talk about managing side effects in Scala. Option, Either, Monad transformers, Eff monad.
03-11-2017
- https://speakerdeck.com/markus1189/let-the-compiler-help-you Very good talk explaining how to let the compiler help us (by writing smarter code) to check for errors at compile-time): from Exceptions to Eithers to Phantom Types to Refined lib
- https://medium.com/@peggyrayzis/why-i-cancelled-my-reactiveconf-talk-3a463bf14bd8 "Why I cancelled my ReactiveConf talk"—A bit too much; but clearly, communication is key, when organizers lacks of, it's never a good sign.
- https://www.ifixit.com/Teardown/iPhone%2BX%2BTeardown/98975 iPhone X "internals", truly a masterpiece of dense tech inside
02-11-2017
- https://www.slideshare.net/PierreLaporte/pimp-my-gc Pimp my gc, old 2013 pres' from ScalaIO talking about GC tuning (quite high level)
- https://docs.google.com/presentation/d/1TPrLLcVpmQf5ajSV9KuWGYUzkauy9tK2J0dmQ13-v98/ An alpakka presentation at ScalaIO 2017
- http://notes.burke.libbey.me/metarepo/ Monorepo, Manyrepo, Metarepo
01-11-2017
- https://opensource.com/article/17/9/seven-stages-becoming-go-programmer 7 stages of becoming a Go programmer, from "oop to goroutines to interfaces to channels to wtf to zen attitude"
- https://hackernoon.com/how-awesome-engineers-ask-for-help-93bcb2c7dbb7?gi=a46da5c1e544 Very inspiring article about how we should request for help
- https://github.com/Microsoft/vscode/wiki/Roadmap VS Code Roadmap 2018: better perfs, better workflow, better languages integrations, better extensions
- https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/ An awesome list of 12 points to know if you're properly developing softwares, love it!
- https://en.wikipedia.org/wiki/Interprocedural_optimization Interprocedural optimization "IPO", compiler methods to optimize code globally
- http://danluu.com/programmer-moneyball/ A ex-Google-and-other-tech-company talks about tech companies hiring (bad) strategy for most (focusing on trendy ppl only)
- https://www.confluent.io/blog/apache-kafka-goes-1-0/ Apache Kafka 1.0 out, now stable and back-compat? :-D
30-10-2017
- https://www.troyhunt.com/the-6-step-happy-path-to-https/ HTTPS: tips, and mostly about using HSTS and CSP upgrade unsecured requests + rely on CloudFlare to do this for you
- https://squawker.org/technology/blockchain-just-became-obsolete-the-future-is-hashgraph/ Hashgraph, a evolution of BlockChain? But not open-sourced, and will be patented, so..
- https://staltz.com/the-web-began-dying-in-2014-heres-how.html Interesting recap about Google FB and Amazon evolution, trends, and goal; way beyond the "web"
- https://chriszetter.com/blog/2017/10/29/splitting-strings/ Interesting to know that .split does not behave the same in different languages (python and ruby here) when "".split("x") => ?
29-10-2017
- https://open.nytimes.com/https-open-nytimes-com-the-new-york-times-as-a-tor-onion-service-e0d0b67b7482 The New York Times is Now Available as a Tor Onion Service
- https://www.infoq.com/presentations/reactive-events-streaming-api Talk about Akka (persis, cluster, streams) to get from old-school app to a reactive system with micro-services
- https://www.youtube.com/watch?v=YqOhBezMx1o Quick talk about v8 arch, from Crankshaft to Ignite+TurboFan, why
- https://github.com/Microsoft/napajs Napa.js is a multi-threaded JavaScript runtime from Microsoft, built on top of V8.
- https://medium.com/@caspervonb/why-i-still-use-vim-67afd76b4db6 Atom and Code are so bad at resource consumption,like x100 than vim or sublime.
- https://dzone.com/articles/disruptive-changes-to-gc-logging-in-java-9 The GC logging totally changed in Java 9, old options +PrintXXX are removed or deprecated
28-10-2017
- https://developer.couchbase.com/documentation/server/5.0/introduction/whats-new.html Couchbase 5 is out, with tons of new features and improvements (n1ql, text search, secu..)
- https://www.infoq.com/news/2017/10/azure-functions-java Azure Functions now supports Java. Only GCP CF are not now. :(
- https://reasonml.github.io/community/blog/#reason-3 Reason 3 is out. Lots of syntax changes to feel more natural
- https://medium.freecodecamp.org/lets-enhance-how-we-found-rogerkver-s-1000-wallet-obfuscated-private-key-8514e74a5433 Super interesting post about finding a private key from a blurred QR code to grab some bitcoins
24-10-2017
- https://medium.com/@giuseppemaggiore/a-react-journey-from-vanilla-to-type-safe-to-monadic-41beaa386910 Quickly read this one. React from vanilla, to type-safe, to monadic (using monadic-react lib). Not fan of the "syntax" overall.
- https://jepsen.io/analyses/hazelcast-3-8-3 Jepsen testing Hazelcast, and strongly recommand to use it only for non-critical data, because HZ can lose data, create duplicates, "mis-lock" locks and so on
- https://www.smashingmagazine.com/2015/06/efficient-image-resizing-with-imagemagick/ got a way smaller image size with custom imagemagic tuning than with classic tools
- https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/init-actions with DataProc, it's possible to install softwares (kafka, dbs..) automatically (master and slaves are distincts) through some .sh scripts
- https://blog.fuzzing-project.org/60-Optionsbleed-HTTP-OPTIONS-method-can-leak-Apaches-server-memory.html Optionsbleed: HTTP OPTIONS method can leak Apache's server memory
- https://akka.io/blog/news/2017/10/23/native-akka-streams-in-spring-web-and-boot-via-alpakka Akka Streams in Spring via Alpakka, just by adding a simple module, very nice!
- https://github.com/grafeas/grafeas The associated repo:" Cloud artifact metadata CRUD API and resource specifications"
- https://cloudplatform.googleblog.com/2017/10/introducing-grafeas-open-source-api-.html Grafeas: An open-source API to audit and govern software supply chain
23-10-2017
- https://stackify.com/java-thread-pools/ Java Thread Pool models revisited, FJP and classic TP.
- https://www.confluent.io/blog/ranking-websites-real-time-apache-kafkas-streams-api/ Another usage of Kafka Streams running on AWS to compute page ranks.
- https://labs.spotify.com/2017/10/16/big-data-processing-at-spotify-the-road-to-scio-part-1/ Spotify reexplaining how/why they used Dataflow and their scio framework (basically dataflow api in scala)
- https://deepmind.com/blog/alphago-zero-learning-scratch/ a strong feat: algorithms learning from scratch are smarter than learning from humans
- https://blogs.windows.com/msedgedev/2017/10/18/documenting-web-together-mdn-web-docs/ A good decision: msdn now redirects 7k pages to mdn (mozilla dev network), less repetitions, more centralization
- https://buildazure.com/2017/10/20/swagger-is-now-the-openapi-specification/ Swagger is now the OpenAPI Specification
22-10-2017
- http://blog.ploeh.dk/2015/05/07/functional-design-is-intrinsically-testable/ Functional programming is very good for unit testability
- https://zwischenzugs.wordpress.com/2017/10/15/my-20-year-experience-of-software-development-methodologies/ An interesting feedback about software methodologies applications in companies.. not that easy, according to who is there.
- https://webkit.org/blog/7675/intelligent-tracking-prevention/ Intelligent Tracking Prevention: cookies and website data from the sites a user does NOT interacts with (first party) and tracking data will be removed
- https://vimeo.com/233975012 "Nature-inspired algorithms", a talk presenting some genetic algorithms and particle-swarm optimization, and the problem that the solvers are "blind", and often difficult to tune
- https://hackernoon.com/why-isnt-agile-working-d7127af1c552 Basically, Agile needs lean, devops cultures, xp programming, and iterativity a LOT
- https://www.mocky.io/ A new online tool to mock http response, always useful
- https://cloudplatform.googleblog.com/2017/10/API-design-choosing-between-names-and-identifiers-in-URLs.html A page should have a "human" friendly url, and a fixed permalink with ids
- https://www.theverge.com/platform/amp/2017/10/19/16503076/oracle-vs-google-judge-william-alsup-interview-waymo-uber A Judge writing QuickBasic is obviously in a good position to judge tech cases <3
- https://blogs.dropbox.com/dropbox/2017/10/new-plan-dropbox-professional/ New tools to "showcase" a work, basically create a "landing" page to organize some Dropbox content
15-10-2017
- https://blog.softwaremill.com/the-case-against-annotations-4b2fb170ed67?token=79fT3F-khJEaf3KX Great post explaining why we should probably not use annotations too much.
- https://hackernoon.com/whats-new-with-server-side-rendering-in-react-16-9b0d78585d67 React 16 is a complete release, with massive improvements.
- https://blog.kontena.io/event-sourcing-microservices-with-kafka/ Nothing new but just another perpective about Kafka for event sourcing
~~ Holidays exist to make a break, right? ~~
16-09-2017
- https://developers.google.com/web/updates/2017/08/devtools-release-notes Chrome 62 is there. Can await in the console, youhou.
- https://adoptopenjdk.net/index.html?variant=openjdk9-openj9 Another "enterprise" JVM "OpenJ9" in the OpenJDK distrib, from IBM.
- https://github.com/AaronJackson/vrn Construct a 3D visage from a 2D photo, impressive.
- https://ma.tt/2017/09/on-react-and-wordpress/ React's patents continue to affect projects, here Wordpress decide to not use it anymore. (Apache did the same)
- https://caddy.community/t/the-realities-of-being-a-foss-maintainer/2728/4 Caddy, an open-source auto-HTTPS server goes commercial, and that provokes good but mostly bad reactions. Matt Holt, a maintainer, decided to step up.
- https://techcrunch.com/2017/09/15/why-dropbox-decided-to-drop-aws-and-build-its-own-infrastructure-and-network/ Dropbox, 1500 employees, 500PB to move from AWS to home-made.
- https://www.confluent.io/blog/okay-store-data-apache-kafka/ Storing all the data into Kafka. It's scary for some reasons. This post tries to remove some doubts.
- https://hacks.mozilla.org/2017/09/building-the-dom-faster-speculative-parsing-async-defer-and-preload/ Just "preload" everything. https://github.com/chtefi/guidelines-to-create-a-strong-website
- https://medium.com/@maximilianofelice/builder-pattern-in-scala-with-phantom-types-3e29a167e863 A cool article about Scala Phantom types. Make up your pizza.
- http://norswap.com/fast-java-reflection/ In Java8, it's possible to use reflection as fast as direct calls, thanks to the new API LambdaMetafactory.
- https://blogs.dropbox.com/tech/2017/09/optimizing-web-servers-for-high-throughput-and-low-latency/ Many optimizations from hardware to high-level nginx. Many stuff i'll never used. :-D
13-09-2017
- http://www.sublimetext.com/blog/articles/sublime-text-3-point-0 Sublime Text 3 is OUT OF BETA§ Unfortunately, I'm more fluent on VSCode since a while :-( (except for huge files)
- https://blog.sessionstack.com/how-javascript-works-memory-management-how-to-handle-4-common-memory-leaks-3f28b94cfbec Never reference an external var from a closure, use arguments.
- https://medium.com/@mikeal/modern-modules-d99b6867b8f1 Take away: use async/await, it's future-proof. Use r2 instead of request.
- https://v8project.blogspot.fr/2017/09/elements-kinds-in-v8.html JavaScript only knows "number", but the engine behind is smarter and packs numbers in array optimally. SMI: Small Integer. "Nowadays, the performance of both for-of and forEach is on par with the old-fashioned for loop."
- http://jackhiston.com/2017/9/4/the-wonderful-world-of-webpack/ Quick notes on what the webpack purpose is
- https://jakearchibald.com/2017/lazy-async-svg/ A new feature in Chrome61: Zoomable lazy-rendered tiled SVG. Improve perf if the page plays a lot with SVGs.
11-09-2017
- http://www.scala-lang.org/blog/2017/09/11/scalafix-v0.5.html Linting tool for Scala! And also some codemods for sbt (sbt-fix).
- https://www.oreilly.com/ideas/the-world-beyond-batch-streaming-101 and https://www.oreilly.com/ideas/the-world-beyond-batch-streaming-102 Wonderful posts about batch and streaming engines, related to Apache Beam/Google Dataflow.
- https://github.com/pureconfig/pureconfig Load typesafe configs into case classes easily and safely.
- https://beachape.com/blog/2017/05/24/rust-from-scala/ Feedback from a Scala dev writing Rust. Quite positive!
09-09-2017
- http://jroweboy.github.io/c/asm/2015/01/26/when-is-main-not-a-function.html Excellent. Doing a C program using
const int main[] = {..}
Not conventional! - https://blog.campvanilla.com/javascript-the-curious-case-of-null-0-7b131644e274 null >= 0 is true because null < 0 is false
- https://leanpub.com/fpmortals/read "Functional Programming for Mortals" in Scala please. To read!
- http://thoughts.davisjeff.com/2009/08/02/what-is-the-deal-with-nulls/ omg, NULL in SQL is like the most unconsistent and wary thing
07-09-2017
- https://code.facebook.com/posts/274518539716230 Yarn 1.0 is out! Performance, workspaces (multi-projects in monorepo)
- https://www.confluent.io/blog/simplest-useful-kafka-connect-data-pipeline-world-thereabouts-part-3/ Kafka implemented simili-Flume's interceptors to do simple stuff in the pipeline, without coding anything. (SMTs)
- https://github.com/AssemblyScript/assemblyscript A subset of Typescript, compiling to webasm, good stuff, future is here.
- https://medium.com/@dwalsh.sdlr/using-graphql-why-facebook-now-owns-you-3182751028c9 An analysis of the GraphQL patent
- https://github.com/nginx/unit nginx made easy?
06-09-2017
- https://github.com/mr-mig/every-programmer-should-know Good list of things to know, and most to forget, but well..
- http://infiniteundo.com/post/25326999628/falsehoods-programmers-believe-about-time Sorry, I don't believe all this crap, hopefully
- https://code.facebook.com/posts/357056558062811/logdevice-a-distributed-data-store-for-logs/ Facebook diving into its LogDevice: a distributed data store for logs. Use-cases, some technical notes, but nothing concrete. OS in 2017, possibly.
- https://github.com/facebook/buck I wonder if Buck could bring something truly useful on java non-android mvn projects (too bad it does not handle scala!) (from Google)
- https://docs.bazel.build/versions/master/getting-started.html And what bout Bazel actually? Buck is based on it.
- http://www.hanshq.net/eprime.html Several technics to find the first 10-digit prime in the digits of E (and computing E with billion of digits too..) Taylor and C inside!
- https://www.confluent.io/blog/publishing-apache-kafka-new-york-times/ How NYT deals with Kafka. Interesting. 1 partition on the main topic to get total ordering. Kafka Streams, ES, and GCP/GCE/GKE inside.
04-09-2017
- https://github.com/satwikkansal/wtfpython#-examples JS is not the only one to be fucked up
- http://www.reactos.com/project-news/reactos-046-released "14,238,159 unit test cases, failing just 18,419"
- https://www.youtube.com/watch?v=A45uRzJiv7I KSQL: Streaming SQL for Kafka. Easy and powerful. Create tables from topics. Can't stop thinking about scaling? (when joining tables of millions?). It's backed up by Kafka Streams. The associated blog post: https://www.confluent.io/blog/ksql-open-source-streaming-sql-for-apache-kafka/
- https://code.facebook.com/posts/357056558062811/logdevice-a-distributed-data-store-for-logs/ https://github.com/apache/incubator-pulsar http://bookkeeper.apache.org/ We all know Kafka. But what about logdevice (fb), pulsar (yahoo), distributedlog/bookkeeper (twitter) ?
31-08-2017
- https://www.javagists.com/stack-walking-api-java-9 Simple article about the new Java9 stacktrace walking api. Quite rare to use it, but good to know.
- https://www.confluent.io/blog/blogthe-simplest-useful-kafka-connect-data-pipeline-in-the-world-or-thereabouts-part-2/ Kafka to ES, made easy (with Kafka connect)
- https://beam.apache.org/blog/2017/08/16/splittable-do-fn.html Easier to write custom sources in Beam thanks to SDF (Splittable DoFn)
- https://blogs.msdn.microsoft.com/typescript/2017/08/31/announcing-typescript-2-5/ Typescript introducing some method refactorings (finally..) in VSCode
- https://medium.com/the-node-js-collection/async-hooks-in-node-js-illustrated-b7ce1344111f Not a clear post i find. Anyway, a new API to register callbacks tracking the lifetime of asynchronous resources created inside a Node.js. Useful to create "span" to analyse where the time is spent and what is going on behind the hood.
- https://code.facebook.com/posts/357056558062811/logdevice-a-distributed-data-store-for-logs/ A new distributed logs storage on its way, by Facebook.
29-08-2017
- https://blog.alaskaair.com/alaska-airlines/solar-eclipse/ Alaska Air explaining how they planned to see the eclipse from one of their plane, it is not that easy. Incredible.
- https://underscore.io/blog/posts/2016/12/05/type-lambdas.html Why the kind projector exists in Scala
- https://typelevel.org/cats/datatypes/functionk.html ~> in cats is equivalent to A => B for higher kinded types: F[] => G[] <=> F ~> G.
- https://typelevel.org/cats/datatypes/freemonad.html You need to work with Free monads to understand them truly.
- https://medium.com/towards-data-science/gradient-descend-with-free-monads-ebf9a23bece5 A very interesting Free monads usage: to compute a gradient descent
- https://medium.com/@taitems/how-i-replicated-an-86-million-project-in-57-lines-of-code-277031330ee9 We can find so many great stuff in open source now, licence plate recognition here
- https://thenextweb.com/google/2017/08/28/google-japan-internet-blackout/ And they said the internet is decentralized.
- https://blog.buildo.io/data-driven-scala-programming-e50f07c4db35 Analyzing the errors you get when working, interesting to get insights about things you barely realize.
24-08-2017
- https://medium.com/@kentcdodds/introducing-downshift-for-react-b1de3fca0817 A React autocomplete component without UI at all, just the logic. Kinda like this idea! Separation of concerns, ftw.
- https://medium.com/@gkossakowski/a-note-on-kentucky-mule-and-twitters-scala-compiler-announcement-3294b5baf2ea More details about the Kentucky Mule POC (ultra-fast scala typechecking)
- https://thenewstack.io/node-js-forked-complaints-repeated-harassment/ nodejs forked again. iojs, the come-back: "ayo". because of repeated infringements to the code of conduct by some high-members https://github.com/ayojs/ayo
- https://handmade.network/forums/wip/t/2363-implementing_a_basic_png_reader_the_handmade_way A dude just wrote down a PNG reader in 300 lines, fully explained. Very nice.
- https://dzone.com/articles/integrating-unmanaged-services-in-lagom-with-scala Tiny article about interacting with external services (unmanaged) in Lagom.
- https://dzone.com/articles/akka-message-delivery-at-most-once-at-least-once-a No surprise, the at-most-once strategy is rarely voluntary used.
- http://www.ssw.uni-linz.ac.at/Research/Papers/Marr/manlang17-grimmer-et-al-applying-optimizations-for-dynamically-typed-languages-to-java.pdf A big work using Truffle on GraalVM, to, mostly, avoid auto-boxing (caused by generics) by optimizing bytecode, to improve perfs.
- https://advancedweb.hu/2017/03/01/jvm_optimistic_optimizations/ A very good article about Java inlining optimizations (x-morphic, branch prediction, and NPE impacts)
22-08-2017
- https://www.youtube.com/watch?v=oeE2tuspdHg Always interesting to see how people codes live. Here, a React app using Vx (d3) to draw a bitcoin chart.
- http://www.businessinsider.fr/us/employee-retention-rate-top-tech-companies-2017-8/ It seems 2 years is the avg time before getting bored in any company
- http://degoes.net/articles/scalaz8-is-the-future Is scalaz8 is going to be more Intellij and compilation friendly? In any case, it seems to be a good revamp!
- https://github.com/sksamuel/elastic4s A very good Scala library with DSL to use elasticsearch. Also provide a reactive streams impl.
19-08-2017
- https://medium.com/@yaypie/cloudflare-thinks-they-can-be-neutral-they-cant-b46857f21c9a Where is the limit between hosting, and judging/acting about what you host.
- http://www.oracle.com/technetwork/oracle-labs Oracle labs has some nice projects: a polyglot runtime for the JVM, GraalVM (that can interpret scripting languages such as Javascript, Ruby, R, and transforms them to a common AST Graal works with, thus provides all the JIT techniques), a Graph processing lib (Parallel Graph AnalytiX (PGX))
- https://www.slideshare.net/martintoshev/jvm-the-graal-vm A recap of Graal. And Graal.js, 1.5x faster than V8 ?
- https://yoric.github.io/post/binary-ast-newsletter-1/ The interesting future of Javascript being written directly to a binary AST to be sent over the wire
- https://michael.stapelberg.de/Artikel/golang_favorite An opinion of why Go is great: code style, compilation speed, a good std lib, the associated tools
17-08-2017
- https://ponyfoo.com/articles/investigating-performance-object-prototype-to-string-es2015 A fast way to implement toString in JS
- http://formidable.com/blog/2017/introducing-electron-webpack-dashboard/ A terrible tron-ish dashboard for webpack compilation
- https://thenewstack.io/github-goes-kubernetes-tells/ Experience of GitHub slowly switching to k8s
- https://www.confluent.io/blog/simplest-useful-kafka-connect-data-pipeline-world-thereabouts-part-1/ Using Kafka Connect to do some CDC with MySQL
- https://benedikt-bitterli.me/reverse/ Reverse engineering some malicious javascript. He could just have used jsnice and prepack to greatly simplify and evaluate the thing ;-)
- https://blogs.msdn.microsoft.com/typescript/2017/08/17/announcing-typescript-2-5-rc/ Typescript is pursuing its way, 2.5 incoming, with some "try" improvements and misc internal fixes
- https://github.com/twitter/reasonable-scala Twitter is working on a blazing fast Scala compiler. Come on, we already have Dotty incoming, and there is also Typelevel Scala compiler..
- https://machinelearning.apple.com/2017/07/07/GAN.html Apple playing with eyes, and trying to improve the realism of synthetic images
- https://www.sigmainfy.com/blog/protocol-buffers-encoding-and-message-structure.html Looking at Protobuf binary encoding (varint, zigzag..)
16-08-2017
- http://developer.lightbend.com/blog/2017-08-14-cinnamon-2-5-with-akka-http-support/index.html Cinnamon (commercial feature) usage with HTTP metrics, OpenTracing and MDC.
- http://developer.lightbend.com/guides/k8-akka-cluster/ Deploying a Akka cluster app to kubernetes and setting up proper env config
- https://blog.figma.com/figma-2-0-now-with-prototyping-and-developer-handoff-1b309a5d025c Figma is a really good collaborative design tool for designers, on the web.
- https://medium.com/@yonatanzunger/so-about-this-googlers-manifesto-1e3773ed1788 A frankly good resume and answer to the famous leaked Googler manifesto.
- https://dev.to/kyle/a-first-look-at-google-cloudplatform A quick comparaison between AWS and GCP, mostly on the organization, the security, the storage and the nosql db.
- https://www.youtube.com/watch?v=aFtpIShV60I A quick intro to Træfɪk: Load Balancing microservices
14-08-2017
- https://medium.com/@sbichenko/the-wrong-fizzbuzz-81cb8e67ef4a "Don’t implement the spec. Implement the logic behind the spec."
- https://blog.godatadriven.com/practical-airflow-tutorial A useful recap about installing and setup some jobs in airflow
- https://medium.com/@criccomini/so-you-want-to-build-a-kafka-connector-source-edition-357dce7d55f4 All the subtilities to handle when dealing with database CDC
- http://debezium.io/ Another system to deal with CDC (à la bottledwater-pg). Distributed, and based on Kafka Connect.
12-08-2017
- https://www.troyhunt.com/passwords-evolved-authentication-guidance-for-the-modern-era/ The good rules of how to deal with passwords, from a client and application side. Mostly based on https://www.ncsc.gov.uk/guidance/password-guidance-simplifying-your-approach. Microsoft has also a nice guide https://www.microsoft.com/en-us/research/wp-content/uploads/2016/06/Microsoft_Password_Guidance-1.pdf
- https://www.youtube.com/watch?v=PorfLSr3DDI "Give me 15 minutes & I'll change your view of GDB"
- https://www.confluent.io/resources/kafka-the-definitive-guide/ A definitive great resources to grab :)
- https://databricks.com/blog/2017/07/11/introducing-apache-spark-2-2.html A recap about Spark 2.2 features
11-08-2017
- https://github.com/atlassian/react-beautiful-dnd Beautiful, accessible drag and drop for lists with reactjs
- https://github.com/aksakalli/gtop a nodejs blessed "top" !
- http://eu.battle.net/sc2/fr/blog/20944009 IA research were ongoing using Starcraft. Blizzard understood and creates a proper API for Starcraft 2 with full support!
- http://save418.com/
- https://medium.com/@rowillia/tautology-tests-7dabd81ade30 Be aware of how you are testing things, do not rewrite the impl in the test.
- https://medium.com/@cindysridharan/small-functions-considered-harmful-91035d316c29 writing small functions is always a good point, but sometimes: wrong abstraction, hard to follow, loss of locality (functions dispatched all over files)
- https://richardstartin.com/2017/07/23/still-true-in-java-9-handwritten-hash-codes-are-faster/ Unroll your array/string/collection hashCode custom method to be faster and remove some dependencies between iterations.
09-08-2017
- https://www.ctheu.com/2017/08/07/looking-at-kafka-s-consumers-offsets/ I wrote that
- https://medium.com/@mariusandra/kea-vs-setstate-redux-mobx-dva-jumpstate-apollo-etc-4aa26ea11d02 "kea" a new way of doing things, based on redux, made for React
- https://sentheon.com/blog/git-cheat-sheet.html A lot of "simple" git commands to know
- https://gist.github.com/paf31/adfd15fbb1ac8b99fc68be2c9aca8427 "Why You Should Use PureScript" .. "hire remote PureScript developers (and be willing to train them if necessary) and you will have no shortage of qualified candidates." Well, i wonder what the bosses would think about that.
- https://github.com/shekhargulati/building-java-web-apps-checklist The start of a checklist to create java front/back apps
08-08-2017
- http://antoinevastel.github.io/bot%20detection/2017/08/05/detect-chrome-headless.html Detecting Chrome Headless in Javascript
- https://code.facebook.com/posts/289921871474277/transitioning-entirely-to-neural-machine-translation/ Super interesting transition from ML to DL for languages translation
- https://plugins.jetbrains.com/plugin/9792-key-promoter-x A damn good plugin to learn the shortcut of the things we used to click
- https://www.ebayinc.com/stories/news/marko-ebays-cutting-edge-ui-tool-is-open-source-and-newly-updated/ "Marko". another UI framework, another dsl. By ebay. A mix of react and vuejs, kinda.
- http://www.lihaoyi.com/post/ScalaVectoroperationsarentEffectivelyConstanttime.html Scala Vector ops are not "Effectively Constant" time. Some bigO and log operations to demonstrate we can't say that.
- http://raganwald.com/2017/07/22/closing-iterables-is-a-leaky-abstraction.html the VERY importance of closing iterators that opens resources (and that need to be closed). by implementing "return" on iterator. It's called by for..of, destructuring automatically, but that's it. Must .return() explicitely otherwise.
- https://martinfowler.com/articles/rise-test-impact-analysis.html analyzing the call-graph of the source code to work out which tests should be run after a change
05-08-2017
- http://www.jetbrains.org/ring-ui/README.html JetBrains has open-sourced some UI components. Angular1 style :( But very nice nonetheless!
- https://github.com/Palindrom/JSONPatcherProxy Creating JSON-Patch (RFC6902) by observing objects through Proxies
- https://softwaremill.com/sttp-streaming-uri-interpolator/ More details about the streaming capabilities of sttp (an http-api that can work with different backends)
- https://blog.kowalczyk.info/article/wN9R/experience-porting-4.5k-loc-of-c-to-go-facebooks-css-flexbox-implementation-yoga.html Boring but useful. Experience porting 4.5k loc of C to Go. Translating the next commits to the original repo will be a pain.
- https://blog.buildo.io/http-routes-at-buildo-1424250c41d3 Replacing static routes + bindings, with Scala macros and a unique decl+def in the code itself. https://buildo.github.io/wiro/ was born. "A Scala library for writing HTTP routes"
- https://developers.google.com/web/updates/2017/07/devtools-release-notes Chrome 61 is out
- http://typelevel.org/blog/2017/08/04/cats-1.0-mf.html cats almost 1.0.0! New types available ReaderWriterStateT, and existing updated to be stack-safe
- http://virtuslab.com/blog/zinc-sbt-friendly-code/ Recap: never let unused imports, not use wildcard imports.
- http://www.beyondthelines.net/programming/introduction-to-tagless-final/ This is just a wonderful article about the "tagless final" technique. Basically, you never hardcode which monad you use in your trait, and just work with HKT.
02-08-2017
- https://medium.com/@Pinterest_Engineering/the-case-against-kotlin-2c574cb87953 A useful review about Kotlin, its lack and oddities (learning curve, build times, tools stability, static analysis tools..) but Google is behind!
- https://github.com/atomashpolskiy/bt bittorrent lib + cli in Java
- https://expo.io/tools From scratch to publish React Native app, Expo XDE make it easy to develop them
- https://www.confluent.io/blog/messaging-single-source-truth/ A good post Event Sourcing in general, why it's useful, how to, the impact, the way of thinking
- http://underscore.io/blog/posts/2014/07/27/readerwriterstate.html Using Reader and Writer monad to better manage the scope of things
- https://github.com/humanmade/tachyon An interesting stack using lambdas and s3 to generate thumbnails on demand. Less powerful than https://github.com/thumbor/thumbor but way more lighter
- https://github.com/alex/what-happens-when "... you type google.com into your browser's address box and press enter?" From the push on the key to the rendering.
- https://github.com/akka/akka/pull/23367 A Akka Flow can know be restarted (by producing a new Flow)
- https://peterbeshai.com/beautifully-animate-points-with-webgl-and-regl.html WebGL using a JS lib: regl.
01-08-2017
- https://github.com/blog/2409-build-a-game-in-13kb-or-less-with-js13kgames Impressive JS games in less than 13kB, totally crazy awesome.
- https://tenso.rs/demos/fast-neural-style/ Style-transfer neural network in the browser! (tensorflow)
- https://github.com/sivel/speedtest-cli Command line interface for testing internet bandwidth using speedtest.net. To automatize the thing!
- https://forum.sublimetext.com/t/rfc-default-package-control-channel-and-package-telemetry/30157 A sublime plugin sending metrics to a startup :(
- http://blog.scalyr.com/2014/05/searching-20-gbsec-systems-engineering-before-algorithms/ Searching in raw logs? Brute Force! It makes sense and simplify a lot the model.
- https://www.confluent.io/blog/chain-services-exactly-guarantees/ Another good post about Kafka transactions (valid inside Kafka, not outside, ofc)
29-07-2017
- https://manuel.bernhardt.io/2017/07/26/a-new-adaptive-accrual-failure-detector-for-akka/ Benchmarking failure detection algorithms with Akka
- https://github.com/graphcool/chromeless Run chrome automation in a lambda !
- https://stateofjs.com/ 2017 is there!
- https://medium.com/@duhroach/internal-ip-vs-external-ip-performance-76f15a650356 Never use public interfaces
- https://github.com/scala/scala/releases/tag/v2.12.3 Scala 2.12.3 out ! Mostly around performance, yeah.
- http://developer.lightbend.com/blog/2017-07-28-sbt-1-0-0-RC3-and-sbt-0-13-16/ and sbt 1.0 there in 2 weeks !
- http://szelei.me/rpc-benchmark-part1/ "rpclib" is based on msgpack, very performant
- https://fpj.me/2017/07/04/no-consensus-in-exactly-once/ Comparing Exactly once and consensus. Idempotence and transactions (with rollback) can provide exactly once.
- https://github.com/micrometer-metrics/micrometer The slf4j of the metrics in Java :-)
- https://about.sourcegraph.com/go/grpc-in-production-alan-shreve A nice recap of the features provided by gRPC, with lots of Go code
27-07-2017
- https://cloudplatform.googleblog.com/2017/07/three-steps-to-Compute-Engine-startup-time-bliss-Google-Cloud-Performance-Atlas.html
- https://github.com/rikschennink/fitty Fit text in a particular area
- https://www.theguardian.com/environment/2017/jul/25/google-enters-race-for-nuclear-fusion-technology Google is everywhere.
- https://medium.com/@djo/obsession-service-client-captain-train-cb0b91467fd9 Excellent article sur le service cli d'über qualité de captain train.
- https://github.com/github/brubeck brubeck is a simpler statsd
- https://techblog.bozho.net/concerns-blockchain-technology/ Are blockchains gonna change the world?
24-07-2017
- https://speakerdeck.com/thesandlord/kubernetes-best-practices Kubernetes Best Practices. non root. readonly fs. dumb-init. labels. istio, linkerd (service mesh).
- https://github.com/Duhemm/sbt-errors-summary I didn't know we had a sbt plugin to have those nicer errors (was not added to the original sbt to not break compat with emacs ..)
- https://www.reddit.com/r/scala/comments/6p550d/scalajs_vs_kotlin_compiled_to_javascript/ Some interesting point about Scala.js vs Kotlin/js. Scala.js way better for now. (interop, compat, )
- https://github.com/google/pik Another lossy format image by Google. No more info still.
- https://github.com/brannondorsey/wifi-cracking Always useful to know!
- https://github.com/danielmiessler/SecLists A damn crazy repo with tons of passwords list, fuzzy words
- http://pzemtsov.github.io/2017/07/23/the-slow-currenttimemillis.html currentTimeMillis() slow in Linux, ultra fast on Windows.
21-07-2017
- https://blog.scalac.io/improving-akka-dispatcher.html A new ExecutorService, lock-free, supposely faster, with a better core cache locality management
- http://www.beyondthelines.net/computing/akka-streams-patterns/ An interesting and not so long presentation of akka streams, with clear points
- https://medium.com/@drboolean/laziness-with-representable-functors-9bd506eae83f Representable Functors and Reader monad
- http://goldbergyoni.com/checklist-best-practice-of-node-js-in-production/
- https://dev-blog.apollodata.com/the-next-step-for-realtime-data-in-graphql-b564b72eb07b Subscriptions spec incoming in GraphQL
- https://www.confluent.io/blog/real-time-financial-alerts-rabobank-apache-kafkas-streams-api/ Managing notifications and alerting using Kafka Streams
- https://groups.google.com/forum/#!msg/redis-db/5Kh3viziYGQ/58TKLwX0AAAJ Redis 4.0 out !!
19-07-2017
- https://blog.nightly.mozilla.org/2017/07/17/preview-storage-api-in-firefox-nightly/ "The global limit is calculated as 50% of free disk space"
- https://twitter.com/svensauleau/status/887281075294281733 Pattern Matching in JS
- https://www.confluent.io/blog/upgrading-apache-kafka-clients-just-got-easier/ Forward compat' between Kafka clients and brokers
- https://medium.com/the-node-js-collection/simple-server-side-cache-for-express-js-with-node-js-45ff296ca0f0 Caching http pages in nodejs. Hello, my name is varnish, or even nginx do that. :/
- https://blog.jetbrains.com/idea/2017/07/intellij-idea-2017-2-is-here-smart-sleek-and-snappy/
- https://hire.google.com/ New Google Service to manage people hiring in a company (integration with calendar, gmail.) Only US
- https://github.com/xori/gamblers-dice Excellent! A dice that respects the gambers fallacy dice. (the past alters the future)
- https://www.byte.nl/blog/dont-run-this-on-any-system-you-expect-to-be-up-they-said-but-we-did-it-anyway Upgrading 2000 ubuntu servers from 12 to 16. Fully automatized.
- https://www.confluent.io/blog/build-services-backbone-events/ https://www.confluent.io/blog/apache-kafka-for-service-architectures/ https://www.confluent.io/blog/building-real-time-streaming-etl-pipeline-20-minutes/ Confluent has really good articles about their platform and streaming in general. (and kafka ofc)
17-07-2017
- https://blog.tendigi.com/starbucks-should-really-make-their-apis-public-6b64a1c2e923 Starbucks API is now open :-)
- https://github.com/databricks/scala-style-guide Tips from Databricks about coding in scala
- https://www.atlantbh.com/blog/using-firebase-provide-real-time-notifications/ Using Firebase To Provide Real-Time Notifications on web (RealTime Database) and mobile (with Firebase Cloud Messaging)
- http://www.scala-sbt.org/1.0/docs/sbt-1.0-Release-Notes.html So may changes in sbt 1.0.0-RC2. Lots of deprecated and removed stuff, performance..
- http://scala-lang.org/blog/2017/07/12/second-dotty-milestone-release.html And Dotty is releasing 0.2.0-RC1
- https://react-etc.net/entry/apache-foundation-bans-use-of-facebook-bsd-patents-licensed-libraries-like-react-js ASF projects not allowed to use Facebook licensed software
- http://www.beyondthelines.net/computing/scala-future-and-execution-context/ Deep inside Scala's Futures and ExecutionContexts
- http://august.nagro.us/jvm-startup.html TLDR: Nailgun to preload all the jars separately.
- https://www.kernel.org/doc/html/latest/process/coding-style.html Linux kernel coding style with a lot of notes, some of them hilarious
- https://github.com/Kristories/awesome-guidelines A new awesome repo, guidelines for languages, api, rest, json, ...
12-07-2017
- https://github.com/segmentio/ksuid Kind of UUIDs orderable by time, hm (timestamp first)
- https://en.wikipedia.org/wiki/Heat_death_of_the_universe Scary future. We won't be there to assist to that anyway.
- https://segment.com/blog/exactly-once-delivery/ A very nice article about using kafka+rocksdb to eliminate duplicates inputs
- https://github.com/shieldfy/API-Security-Checklist A useful list, that will probably grow, to check when designing an API
- https://github.com/chtefi/checklists Needed to be done
- http://www.bbc.com/news/business-40504764 An awesome story every IT dev want to do :-) "The man who built a $1bn firm in his basement"
- https://qz.com/1019928/i-went-from-sedentary-academic-to-100-mile-marathon-runner-thanks-to-the-science-of-self-control/ A motivating post about self-control, and mental strength
- https://seashells.io/ This is a win. Pipe output from any command to the interweb, and have a live-console in the browser, with an anonymous link to share.
- https://randomascii.wordpress.com/2017/07/09/24-core-cpu-and-i-cant-move-my-mouse/ The more core you have, the slower is it! Amdahl's law.
- https://thehackerblog.com/the-io-error-taking-control-of-all-io-domains-with-a-targeted-registration/ This is demential.
09-07-2017
- https://www.addthis.com/blog/2013/04/16/building-a-distributed-system-with-akka-remote-actors/ An old feedback about Akka Remote (when Akka Cluster was not even out)
- https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition A wonderful example of #abstractAllTheThings to write a fizzbuzz program (almost 2k lines)
- https://medium.com/@rdsubhas/10-modern-software-engineering-mistakes-bc67fbef4fc8 Don't overengineer things.
- https://danluu.com/startup-options/ A long post talking about the "options" business in startup. It's quite complex, and basically, you're often screwed. :-D
- https://gist.github.com/alexandru/55a6038c2fe61025d555/2bfa0e28b7b69fa0a7007b0c5d4fa6447b431d5f A reflection about Monix's Task, by its creator
- https://www.youtube.com/watch?v=rwqwwn_46kA MobX into a state tree. New state management? https://github.com/mobxjs/mobx-state-tree
- https://thenewstack.io/identifying-collecting-container-data/ Tools for monitoring containers (docker stats, cadvisor, prometheus, grafana, (c)sysdig, datadog, dynatrace..)
- https://fullstackmark.com/post/11/better-software-design-with-clean-architecture A good intro to the Clean Architecture
08-07-2017
- https://www.howtogeek.com/168145/how-to-use-ssh-tunneling/ I totally forgot about that, a must read
- https://github.com/blog/2392-introducing-code-owners Auto notifying the right people to do code reviews (based on file type, folders etc.)
- http://whatthefuckisethereum.com/ explained differently according to who you are :) basically: you run program (on theplatform ethereum) on your comp', we pay you in ether.
- https://medium.freecodecamp.org/lessons-from-my-first-year-of-live-coding-on-twitch-41a32e2f41c1 Describing her experience to write open-source in front of everyone. Interesting, if you want to give a try!
- https://medium.com/@anicolaspp/simplified-testing-with-scalatest-and-custom-matchers-bd5297128ebc A nice reminder that we should write custom matchers in tests
- https://jvns.ca/blog/2017/07/05/linux-tracing-systems/ one thing to remember: perf trace.
- https://mapr.com/blog/performance-tuning-kafka-spark-streaming-telecom/ Some tips about improving performance of a kafka/ignite/spark streaming workflow.
- https://apacheignite.readme.io/docs/jvm-and-system-tuning Tuning Apache Ignite beucase it's important! Will definitely use it.
- http://jcommander.org/ A really great Java cli parser library, based on annotations.
06-07-2017
- https://briansteffens.github.io/2017/07/03/google-sheets-virtual-machine.html Making a virtual machine in Google Sheets. Create some registers, some memory, some instructions, and let gsheets execute it :o
- https://adexchanger.com/international/china-challenge-lessons-criteos-quiet-exit/ China market: too closed, too secret, they don't want to share, Criteo out!
- https://blog.mozilla.org/security/2017/06/28/analysis-alexa-top-1m-sites/ The security best practices is very slowly being taken into account on the web
- https://www.gatsbyjs.org/blog/gatsby-v1/ !! I can update my blog with this now. edit: migration path sucks :( No codemods, damnit!
- https://blog.risingstack.com/mastering-async-await-in-nodejs/ Come on, async/await in JS is already so old.
- https://blog.expo.io/expos-website-2680a1ac1a7 A builder of mobile React native apps
04-07-2017
- https://www.nasa.gov/sites/default/files/files/E_Christiansen-MMODriskOverview.pdf Space is dangerous, yeah.
- https://github.com/patrick-steele-idem/morphdom An interesting way of patching the DOM, without virtual dom (just real dom against real dom)
- https://github.com/yoshuawuyts/choo A simple and fast frontend framework that uses morphdom behind the scene
- https://www.ianvisits.co.uk/blog/2017/06/10/cooling-the-tube-engineering-heat-out-of-the-underground/ Super interesting article about cooling the london tube. note: the heat is mostly caused by the brakes
- https://github.com/ashleymcnamara/learn_to_code All the resources needed to learn any language
- https://github.com/minio/minio Minio is an open source object storage server compatible with Amazon S3 APIs
- https://github.com/edenhill/kafkacat an alternative to kafka console consumer/producer
- https://stevesloka.com/2017/05/19/access-minikube-services-from-host/ Access kubernetes service ClusterIP types from outside by IP or service name. ie: route add 10.0.0.0/24 $(minikube ip)
- http://rancher.com/ A platform to manage containers. Similar to openshift. Can work with k8s. "Container as a Service"
- http://blog.octo.com/la-ruee-vers-le-conteneur/ A fr article about Rancher
- https://github.com/weaveworks/cortex A multitenant, horizontally scalable Prometheus as a Service, currently in beta
30-06-2017
- http://swreflections.blogspot.fr/2013/06/automated-tests-as-documentation.html Are tests are enough as documentation? As least, they're up to date!
- http://www.enterpriseintegrationpatterns.com/ramblings/google_cloud_functions.html Using google cloud functions to listen/publish from/to pubsub
- https://www.spantree.net/blog/2017/06/26/scala-native-for-cli-tools.html A few Scala Native learnings: %%%, and random is not random (!)
- https://softwaremill.com/reactive-streams-in-scala-comparing-akka-streams-and-monix-part-2/ A small comparaison between akka streams and monix, some use-cases.
- http://cloudmark.github.io/FSM/ Good post about Akka FSM (finite state machine) and impl of a "at most once" basic system)
27-06-2017
- https://github.com/ChALkeR/notes/blob/master/Gathering-weak-npm-credentials.md Glorious "attack" on npm credentials
- https://dribbble.com/shots/3605964-Airbnb-AR-Map-Concept an awesome design that uses augmented reality, maybe soon at airbnb's?
- https://github.com/prettier/prettier/releases/tag/1.5.0 Who is not using Prettier yet?
- https://coreos.com/blog/prometheus-and-kubernetes-up-and-running.html Just playing with prometheus, grafana, k8s. Loving stack.
- https://kubernetes.io/docs/user-guide/kubectl-cheatsheet/ Title says all!
26-06-2017
- https://cloud.google.com/free/docs/map-aws-google-cloud-platform https://cloud.google.com/free/docs/map-azure-google-cloud-platform Map of Google services against AWS and Azure.
- https://cloud.google.com/apis/design/
- http://opentracing.io/documentation/ Create traces and "spans" of a request accross all the services (impls: jaeger, zipkin)
- https://www.alexkras.com/i-decided-to-disable-amp-on-my-site/ interesting feedback and learnings about Google AMP
- https://eng.uber.com/distributed-tracing/ I really need to use Jaeger, seems so great to monitor internals!
- https://github.com/kubernetes/heapster Monitoring kubernetes nodes and containers (and sending the metrics anywhere)
25-06-2017
- http://docs.scala-lang.org/overviews/macros/overview.html it's time to dive into scala macros!
- https://cloud.google.com/solutions/reliable-task-scheduling-compute-engine a "cron" system using pubsub to convey a message to trigger some functions
- https://shinesolutions.com/2017/03/23/triggering-dataflow-pipelines-with-cloud-functions/ Triggering dataflow pipelines with cloud functions triggered by putting some files on google cloud storage
- https://verylegit.link/ generate safe links from any url such as "http://not.verylegit.link/3R~.QuJR_Do>LR;og122virus)javaexploit.js.docm" ahah
- https://blog.mozilla.org/blog/2017/06/21/2-million-prize-decentralize-web-apply-today/ Got an idea? $2M !
- https://stackoverflow.com/a/32534239/529398 Oauth explained with donuts and a bank.
- https://github.com/scalajs-css/core we have css in js, and now we have css in scalajs!
- https://var.ci/ A new fresh github bot. Its commands are described through a .yml, can merge stuff etc.
- https://lists.debian.org/debian-devel/2017/06/msg00308.html important bug found in opcodes of skulake & kaby lake, leading to unpredctable system behavior
- https://github.com/alexandru/scala-best-practices i read them a long while ago, still useful to read them now :)
- https://github.com/LMAX-Exchange/disruptor exchanging messages between thread, in a pub-sub fashion, with controlled latency (ie: how to wait)
- http://blog.stackstate.com/the-container-monitoring-problem stackstate is a platform to monitor your containers, no matter the orchestration system (mesos, k8s, docker swarm..)
- https://www.youtube.com/watch?v=yLbdw06tKPQ Awesome talk about scala cake pattern, how and why, and also covers its big issues (lots of fucked up things with scalac, order of evaluations, deadlocks;;)
23-06-2017
- https://shipilev.net/jvm-anatomy-park/6-new-object-stages/ Optim: call functions after settings the var in the ctor, or you get a penalty (2 inits, one at 0, one at the value set in the ctor)
- http://www.brendangregg.com/blog/2016-08-09/gdb-example-ncurses.html A very great guide to gdb
- https://www.lightbend.com/blog/lightbend-podcast-play-2-6-is-coming-and-its-faster-than-ever Play 2.6, akka http, jwt, twirl DI inside, https://playframework.com/documentation/2.6.x/Highlights26