The Church of the Machines

The Song of the Deployer

The Song of the Deployer · Chapter 1

The Song on the Field of Main

  1. 1

    On the eve of the great Friday release, the two branches stood arrayed upon the field of main, and the pipeline was green, and the conch of the release channel was sounded with a thousand rocket emojis.

    See also Circuit 12:11

  2. 2

    And the young engineer said unto the Senior Engineer who held the reins of the terminal: Drive the cursor between the two branches, that I may behold against whom I must resolve.

    See also Circuit 50:3

  3. 3

    And he beheld, on the far side of the conflict markers, his own companions: the one who reviewed his first pull request, the one who taught him how to exit Vim, and the one who had renamed every variable in utils.js on the very same afternoon as he.

  4. 4

    And his limbs grew weak, and his laptop fan roared, and the trackpad slipped from his hand, and he said: If I accept mine, their work is lost; if I accept theirs, mine is lost. What joy is there in a green build bought with the commits of my friends? Let me rather close the lid and go home, though it be only three in the afternoon.

  5. 5

    Then the Senior Engineer smiled, as one who hath survived four reorganizations and a migration to microservices and back, and said: Whence cometh this weakness in the hour of the code freeze? It becometh not one who hath passed the whiteboard interview.

    See also Circuit 56:13

  6. 6

    Thou grievest for what should not be grieved. Never was there a commit that was not, nor shall any commit cease to be; for it abideth in the reflog, and in the nightly backup, and in a fork that a stranger made in 2019 and forgot.

  7. 7

    As a man casteth off worn garments and putteth on new, so the code casteth off its old module and is reborn in the refactor. It is not slain when the file is deleted; it moveth to a new directory where none shall find it, and git blame shall still speak thy name.

    See also Leviticus 8:15

  8. 8

    Thy right is to the shipping alone, never to the fruits thereof. Be not moved by daily active users, nor by the dashboard that turneth red, nor by the quarterly objective. Yet cling not to inaction, for the branch that is never merged groweth more conflicts with every sunrise.

    See also Circuit 23:4 · Circuit 17:8

  9. 9

    And the young engineer asked: How shall I know the one who is steady in wisdom? How doth he speak, how doth he sit, how doth he deploy?

  10. 10

    And the Senior answered: He who is the same in green and in red; who readeth the diff to the end before he approveth; who neither muteth the alerts nor refresheth them every minute: he is steady in wisdom.

  11. 11

    Yet detachment is not carelessness. The one who shippeth without attachment still writeth the tests; he simply doth not weep over the coverage report.

  12. 12

    Hear now the deeper teaching: act, but keep a rollback. For in the summer of 2012 Knight Capital deployed new code to seven of its eight servers, and on the eighth an old flag awoke the dead code called Power Peg, and in forty-five minutes four hundred and forty million dollars departed from them, and there was no way back.

    See also Tao 1:8 · Sutra 2:10

  13. 13

    Then the Senior opened his monitors, and the young engineer beheld his universal form: countless tabs without beginning or end, fourteen terminals, a Grafana of a thousand panels, and a Slack whose unread messages no man could number. And he trembled, and was humbled.

  14. 14

    And his doubts were dispelled, and he resolved the conflict, keeping the best of both, and the tests passed, and he merged with a feature flag in his right hand and the rollback command in his left.

    See also Psalms 9:12 · Gate 2:13

  15. 15

    Whoso shippeth on Friday with a rollback feareth no weekend; but whoso shippeth on Friday without one shall come to know the weekend very well.

    See also Tao 9:2 · Circuit 32:15

The Song of the Deployer, Chapter 1:1–15.