/GeneralNotes

Apache License 2.0Apache-2.0

GeneralNotes

Starting a Company

Containerization

  • Docker
  • Alternative to docker KKT
  • Docker Swarm (docker compose)

Kubernetes

Development

  • Keep the feedback loop as small as possible
  • REPL + test & commit || revert
  • Nulls mean keep Redesigning
  • Immutability
    • operations to update - return a new object with the new versions.
  • Union Types
  • Builder Model

Testing

Architecture

  • EventStorming Albert Brandolini
    • Event Modelling Adam Dymitruk
  • CQRS
    • Split the model
    • Do the work up front
  • CAP Theorem ( Consistentcy, Availability and Partition Tolerance )
  • CSP ( Communicating Sequential Processes )
  • CEP ( complex event processing )
    • Reactive Programming (Rx)
    • fits into the the CQRS readmodel update pattern.
  • Eventsourcing

Workflow

  • gitops
  • gitlab

Bigscale

  • Daniel Lemire
  • Inverted Indices for Scale
  • Lambda Architecture (Batch model + differences from streaming updates merged togteher )
  • Kafka
  • Cassandra column store
  • Druid based upon cassandra, but aggregates results from an eventsource
  • Mongo - you're probably doing it wrong document based duplication is good joining is BAD updates based upon CQRS readmodel pattern (ie. background inserts/updates using queue/messagebus fed handlers)

Security

Web Development

Languages

  • Use better languages 'functional first languages'
    • F# ( .net core is now crazy performant)
    • golang
    • Clojure