Building Microservices

Microservices Intro Emerged in context of domain driven design, CI/CD, on-demand virtualization, infrastructure automation, small autonomous teams, systems at scale more flexibility to respond faster is goal What are microservices? small autonomous services that work together service boundaries based on business boundaries shouldn’t be too big (~2 weeks to rewrite) separate entities ideally own own… Continue reading Building Microservices

What We Actually Know About Software Development, and Why We Believe It’s True

Notes from talk have high standards when evaluating new methodologies / look for citations 10-100x developer study based on a small number of developers in the 60’s newer study looked at ~50 and each person for less than 1 hour Lutz Prechelt has done many studies here Study has shown errors correlated to lines of… Continue reading What We Actually Know About Software Development, and Why We Believe It’s True

Design Patterns in Ruby

Building Better Programs with Patterns people develop solutions for common problems in all domains GOF popularized idea of prepackaged solutions and defined 23 patterns Separate things that change from things that don’t change is given ideally changes are local and don’t require updates everywhere Program to an interface not an implementation polymorphism decouples code is… Continue reading Design Patterns in Ruby

Think OS: A Brief Introduction to Operating Systems

Compilation Compiled and interpreted languages programs translated into machine code and executed by hardware interpreted code is read and executed by a software interpreter some languages can be both or hybrids (java/jvm) static types in static, you know what type each variable is in dynamic language, don’t know until program is running static language don’t… Continue reading Think OS: A Brief Introduction to Operating Systems