← Înapoi la Urmăritori

Cel mai recent articol

Ultima verificare

Urmăritori 0 urmăritori
Articole: 200
  1. How Does TCP Work?

    The transmission control protocol (TCP) does one job very well — it creates an abstraction that makes an unreliable channel look like a reliable network.

  2. How Do Websockets Work?

    A WebSocket is a persistent connection between a client and server.

  3. The Zero Bug Policy

    A few years ago, a company I worked for was suffering from quality problems.

  4. How Does HTTP/2 Work?

    Note: To make this easier to read (and write), h1 may be used in place of HTTP/1, and h2 may used in place of HTTP/2.

  5. Building and running a successful company requires an immense amount of work and talent.

  6. Overambitious API gateways

    In a microservices architecture, an API gateway can help address a number of challenges: providing a stable endpoint for clients to call, allowing an easy process for releasing new endpoints, or handling SSL termination on behalf of services, to name a fe…

  7. Putting the R in D

    The Research and Development department would appear to give equal weight to both research and development by virtue of naming, yet there are few engineers who would claim that research is a primary responsibility of their job.

  8. While microservices have become the defacto architectural pattern for building modern systems, they come with their own set of challenges.

  9. Infrastructure is undergoing a significant paradigm shift.

  10. Alpha Conversion

    Alpha conversion (also written \(\alpha\)-conversion) is a way of removing name clashes in expressions.

  11. Beta Reduction

    Formally, beta reduction (also written \(\beta\)-reduction) is the replacement of a bound variable in a function body with a function argument.

  12. The Kubernetes sweet-spot is running stateless microservices that can scale horizontally.

  13. Eta Reduction

    The purpose of eta reduction (also written \(\eta\)-reduction) is to drop an abstraction over a function to simplify it.

  14. Complex systems exhibit unexpected behavior. — John Gall, The Systems Bible One reaction to the myriad failure cases we encounter with distributed systems is to add more testing.

  15. A lambda expression is said to be in normal form if it cannot be reduced any further, meaning that the expression no longer contains any function applications.

  16. Having covered types, let’s now turn our attention to lists.

  17. Typed Lambda Calculus

    Lambda calculus is a very simple language.

  18. Kubernetes was built to run distributed systems over a cluster of machines.

  19. Early computers were described using mathematical notation and theoretical constructions, which were then translated by enterprising machinists into custom built calculation engines.

  20. In a purely functional language — like lambda calculus — programs are expressed as nested function calls.

  21. Simplifying Lambda Syntax

    Evaluating lambda functions requires using lots of brackets, which can be tedious and are a major source of error for evaluating expressions by hand.

  22. Introducing Lambda Calculus

    Lambda calculus provides some of the foundational structures that functional programming is built from.

  23. A principle is a concept or value that is a guide for behaviour or evaluation. — Wikipedia This post presents a principled approach to architecture.

  24. Range, Domain, and Codomain

    Three common terms come up whenever we talk about functions: domain, range, and codomain.

  25. Functional Microservices

    One proposed benefit of following a microservice architecture is that each service can be developed, released, and supported independently.

  26. I’m documenting my journey from functional neophyte to (hopefully) functional programmer by writing a series of blog posts on the topic.

  27. Having covered what functional programming is, I wanted to spend a minute or two discussing why I want to learn functional programming in the first place.

  28. I previously talked about what functional programming is by comparing it to other programming paradigms.

  29. I’ve been reading the excellent book Thinking, Fast and Slow by Daniel Kahneman and came across a strategy for dealing with a common human behaviour problem that has direct impact on software development: overconfidence.

  30. What is Functional Programming?

    I’m documenting my journey from functional neophyte to (hopefully) functional programmer by writing a series of blog posts on the topic.

  31. Cloze Deletions

    This page provides a collection of premade Anki decks filled with cloze deletion tests for learning a second language.

  32. In general, developers test features by focusing on the positive outcomes — the so-called “happy paths”.

  33. tldr; Looking to learn a language using cloze deletions and Anki?

  34. In most organizations, software development is split between two groups — product management and engineering.

  35. We all know that a page that loads in three seconds will provide a negative user experience.

  36. What is CQRS?

    Bertrand Meyer first introduces the principle of Command Query Separation in his book Object-Oriented Software Construction.

  37. At first glance, Amazon’s First-In-First-Out (FIFO) message queues provide an excellent feature set for business-critical scenarios.

  38. For the past year I’ve been making a concerted effort to learn French using the methods from the book Fluent Forever, which is an excellent resource for learning how to learn a language.

  39. Workiva’s original product — supporting the mundane task of filing documents with the SEC — was so innovative that within its first 5 years it was being used by more than 65 percent of the Fortune 500 and generating more than $100 million in annual revenu…

  40. This tutorial walks through how to create a fully functional Virtual Private Cloud in AWS using CloudFormation.

  41. For a recent project, I wanted to verify the correctness of a distributed queue implementation based on Amazon SQS.

  42. API Gateway supports a reasonable payload size limit of 10MB.

  43. Getting Started With TLA+

    This post shows how to write your first simple TLA+ specification.

  44. Basic Math for TLA+

    At its most basic, TLA+ is a written description of what a system is supposed to do.

  45. First Musings on TLA+

    I’ve been helping define some concurrent algorithms and I’m struggling with a number of issues: concurrent algorithms are difficult to design, they are often difficult to implement, and, even after they are designed, are difficult to guarantee that they a…

  46. Title and Author of Paper WebTables: Exploring the Power of Tables on the Web.

  47. Title and Author of Paper Combining Systems and Databases: A Search Engine Retrospective.

  48. Amazon’s Simple Queue Service (SQS) provides durable messaging guarantees and is an excellent backbone for messaging services.

  49. Title and Author of Paper The Anatomy of a Large-Scale Hypertextual Web Search Engine.

  50. Title and Author of Paper Consistency Analysis in Bloom: a CALM and Collected Approach.