From 90e4885d7ca8e9d4a5e18f898fc172da900015c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Wed, 1 Jul 2020 17:05:11 +0200 Subject: Add the new Erlanger Playbook landing page --- _build/content/erlanger-playbook.asciidoc | 117 + .../layouts/erlanger-playbook/single.html | 25 + _build/themes/ninenines/layouts/index.html | 2 +- .../themes/ninenines/layouts/services/single.html | 2 +- donate/index.html | 8 +- erlanger-playbook/index.html | 2334 ++++++++++++++++++++ index.html | 4 +- index.xml | 12 +- services/index.html | 8 +- sitemap.xml | 15 +- 10 files changed, 2512 insertions(+), 15 deletions(-) create mode 100644 _build/content/erlanger-playbook.asciidoc create mode 100644 _build/themes/ninenines/layouts/erlanger-playbook/single.html create mode 100644 erlanger-playbook/index.html diff --git a/_build/content/erlanger-playbook.asciidoc b/_build/content/erlanger-playbook.asciidoc new file mode 100644 index 00000000..795739bd --- /dev/null +++ b/_build/content/erlanger-playbook.asciidoc @@ -0,0 +1,117 @@ ++++ +date = "2020-07-01T00:00:00+01:00" +title = "The Erlanger Playbook" +type = "erlanger-playbook" ++++ + +The Erlanger Playbook is an upcoming book written by +Loïc Hoguin, author of Cowboy, Ranch, Gun, Erlang.mk +and other Erlang/OTP projects. It provides a general +exploration of Erlang/OTP; advice on writing Erlang +code, writing tests and documentation and provide +other Erlang-related insights. + +In the _Erlang_ section of the book, we learn about +the building blocks of the Erlang language; we introspect +a running Erlang/OTP system to understand how it functions; +we learn about behaviors by writing our own `gen_server` +and `supervisor` modules; we explore `gen_statem`; and +we build and discuss process regitries and process groups. + +In the _Code_ section of the book we learn how to +start a project; we discuss version control, project +structure, code style and best practices; we +delve into various technical topics such as the +"enter loop" mechanism, special processes, IOLists +and the process dictionary; and we discuss how to +deal with compilation warnings across Erlang/OTP +versions. + +In the _Tests_ section we cover success typing analysis, +manual testing, unit testing and functional testing; we +also learn what to do about timeouts when testing an +application and how to write client/server tests. + +In the _Documentation_ section we gain insight on +how to write better tutorials, user guides, manuals +and README files. + +The _Design_ section covers public interfaces, REST +APIs and other lessons learned. The _Workflow_ and +_Selling Erlang_ sections end this book with short, +non-technical advice. + +The book is roughly: + +* 80 pages for the _Erlang_ section +* 60 pages for the _Code_ section +* 70 pages for the _Tests_ section +* 20 pages for the _Documentation_ section +* 20 pages for the _Design_ section +* 10 pages for the final two sections + +You may currently buy lifetime access to the book's +git repository. This lifetime access will give you +access to the pre-release builds and to any future +release of the book. + +The plan is to continue to add content to this book +for a long time after its initial release, and to +occasionally produce a proper edition of the book. +The _First Edition_ will feature the same content as +is currently available in the most recent pre-release +build. The _First Edition_ will be released after an +editing pass has been done. + +The _First Edition_ and any subsequent editions +will be available both as an ebook and on a +print-on-demand service. It will be possible to buy +the _First Edition_ at a price lower than the lifetime +access, though the price remains to be determined. + +Buyers of the lifetime access of the book will +receive all releases and pre-releases as ebook +versions. A coupon code will also be provided on +demand for those that want to print the book. The +coupon will reduce the price to the printing +costs (you do not have to buy the content twice). + +The lifetime access costs 50€ (EUR) and may be +bought using Paypal: + +++++ +
+ + +++++ + +There will be a *delay* between payment and delivery of +the credentials to access the git repository and download +pages for the book. This process is currently manual. + +As the book is a pre-release, feedback is more than welcome. You can +send your comments to the contact address at the top of this website. diff --git a/_build/themes/ninenines/layouts/erlanger-playbook/single.html b/_build/themes/ninenines/layouts/erlanger-playbook/single.html new file mode 100644 index 00000000..ed3264c2 --- /dev/null +++ b/_build/themes/ninenines/layouts/erlanger-playbook/single.html @@ -0,0 +1,25 @@ +{{ partial "header.html" . }} + + +
+
+
+
+ +

{{ .Title }}

+ +{{ .Content }} + +
+
+{{ range $.Site.Pages }} + {{ if eq .RelPermalink "/donate/" }} + {{ .Content}} + {{ end }} +{{ end }} +
+
+
+
+ +{{ partial "footer.html" . }} diff --git a/_build/themes/ninenines/layouts/index.html b/_build/themes/ninenines/layouts/index.html index 0bf475f4..809a76a6 100644 --- a/_build/themes/ninenines/layouts/index.html +++ b/_build/themes/ninenines/layouts/index.html @@ -13,7 +13,7 @@ {{ $.Scratch.Add "projects" 1 }} {{ end }} -
  • The Erlanger Playbook
  • +
  • The Erlanger Playbook
  • diff --git a/_build/themes/ninenines/layouts/services/single.html b/_build/themes/ninenines/layouts/services/single.html index e7df4440..ed3264c2 100644 --- a/_build/themes/ninenines/layouts/services/single.html +++ b/_build/themes/ninenines/layouts/services/single.html @@ -6,7 +6,7 @@
    -

    Services

    +

    {{ .Title }}

    {{ .Content }} diff --git a/donate/index.html b/donate/index.html index 2668c7c3..45da96d5 100644 --- a/donate/index.html +++ b/donate/index.html @@ -60,7 +60,7 @@
    -

    Services

    +

    Donate

    Like my work? Donate!

    Donate to Loïc Hoguin because his work on Cowboy, Ranch, Gun and Erlang.mk is fantastic:

    @@ -725,6 +725,10 @@ + + + + @@ -2256,8 +2260,6 @@ - - diff --git a/erlanger-playbook/index.html b/erlanger-playbook/index.html new file mode 100644 index 00000000..f2f6bfce --- /dev/null +++ b/erlanger-playbook/index.html @@ -0,0 +1,2334 @@ + + + + + + + + + + Nine Nines: The Erlanger Playbook + + + + + + + + + + + + + + + + +
    +
    +
    +
    + +

    The Erlanger Playbook

    + +

    The Erlanger Playbook is an upcoming book written by Loïc Hoguin, author of Cowboy, Ranch, Gun, Erlang.mk and other Erlang/OTP projects. It provides a general exploration of Erlang/OTP; advice on writing Erlang code, writing tests and documentation and provide other Erlang-related insights.

    +

    In the Erlang section of the book, we learn about the building blocks of the Erlang language; we introspect a running Erlang/OTP system to understand how it functions; we learn about behaviors by writing our own gen_server and supervisor modules; we explore gen_statem; and we build and discuss process regitries and process groups.

    +

    In the Code section of the book we learn how to start a project; we discuss version control, project structure, code style and best practices; we delve into various technical topics such as the "enter loop" mechanism, special processes, IOLists and the process dictionary; and we discuss how to deal with compilation warnings across Erlang/OTP versions.

    +

    In the Tests section we cover success typing analysis, manual testing, unit testing and functional testing; we also learn what to do about timeouts when testing an application and how to write client/server tests.

    +

    In the Documentation section we gain insight on how to write better tutorials, user guides, manuals and README files.

    +

    The Design section covers public interfaces, REST APIs and other lessons learned. The Workflow and Selling Erlang sections end this book with short, non-technical advice.

    +

    The book is roughly:

    +
    • 80 pages for the Erlang section +
    • +
    • 60 pages for the Code section +
    • +
    • 70 pages for the Tests section +
    • +
    • 20 pages for the Documentation section +
    • +
    • 20 pages for the Design section +
    • +
    • 10 pages for the final two sections +
    • +
    +

    You may currently buy lifetime access to the book's git repository. This lifetime access will give you access to the pre-release builds and to any future release of the book.

    +

    The plan is to continue to add content to this book for a long time after its initial release, and to occasionally produce a proper edition of the book. The First Edition will feature the same content as is currently available in the most recent pre-release build. The First Edition will be released after an editing pass has been done.

    +

    The First Edition and any subsequent editions will be available both as an ebook and on a print-on-demand service. It will be possible to buy the First Edition at a price lower than the lifetime access, though the price remains to be determined.

    +

    Buyers of the lifetime access of the book will receive all releases and pre-releases as ebook versions. A coupon code will also be provided on demand for those that want to print the book. The coupon will reduce the price to the printing costs (you do not have to buy the content twice).

    +

    The lifetime access costs 50€ (EUR) and may be bought using Paypal:

    +
    + +

    There will be a delay between payment and delivery of the credentials to access the git repository and download pages for the book. This process is currently manual.

    +

    As the book is a pre-release, feedback is more than welcome. You can send your comments to the contact address at the top of this website.

    + + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Like my work? Donate!

    +

    Donate to Loïc Hoguin because his work on Cowboy, Ranch, Gun and Erlang.mk is fantastic:

    +
    + + + + + + + + + +

    Recurring payment options are also available via GitHub Sponsors. These funds are used to cover the recurring expenses like food, dedicated servers or domain names.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    +
    + + + + + + + + diff --git a/index.html b/index.html index 1aa0b169..4a6a409b 100644 --- a/index.html +++ b/index.html @@ -90,7 +90,7 @@ -
  • The Erlanger Playbook
  • +
  • The Erlanger Playbook
  • @@ -870,6 +870,8 @@ + + diff --git a/index.xml b/index.xml index ab2fdb45..02378b8a 100644 --- a/index.xml +++ b/index.xml @@ -6,7 +6,7 @@ Recent content on Nine Nines Hugo -- gohugo.io en-us - Wed, 01 Jul 2015 00:00:00 +0100 + Wed, 01 Jul 2020 00:00:00 +0100 @@ -3147,6 +3147,16 @@ Compatibility Compatibility with Erlang/OTP R16, 17 and 18 has been dropped. Erl HTTP IANA Registries HTTP Method Registry HTTP Status Code Registry Message Headers HTTP Parameters HTTP Alt-Svc Parameter Registry HTTP Authentication Scheme Registry HTTP Cache Directive Registry HTTP Digest Algorithm Values HTTP Origin-Bound Authentication Device Identifier Types HTTP Upgrade Token Registry HTTP Warn Codes HTTP/2 Parameters WebSocket Protocol Registries Current CORS: Cross-Origin Resource Sharing CSP2: Content Security Policy Level 2 DNT: Tracking Preference Expression (DNT) eventsource: Server-Sent Events Form content types: Form content types Preload: Preload PROXY: The PROXY protocol REST: Fielding's Dissertation RFC 1945: HTTP/1. + + The Erlanger Playbook + https://ninenines.eu/erlanger-playbook/ + Wed, 01 Jul 2020 00:00:00 +0100 + + https://ninenines.eu/erlanger-playbook/ + The Erlanger Playbook is an upcoming book written by Loïc Hoguin, author of Cowboy, Ranch, Gun, Erlang.mk and other Erlang/OTP projects. It provides a general exploration of Erlang/OTP; advice on writing Erlang code, writing tests and documentation and provide other Erlang-related insights. +In the Erlang section of the book, we learn about the building blocks of the Erlang language; we introspect a running Erlang/OTP system to understand how it functions; we learn about behaviors by writing our own gen_server and supervisor modules; we explore gen_statem; and we build and discuss process regitries and process groups. + + Ranch 2.0 https://ninenines.eu/articles/ranch-2.0.0/ diff --git a/services/index.html b/services/index.html index a3974d23..cea946e4 100644 --- a/services/index.html +++ b/services/index.html @@ -60,7 +60,7 @@
    -

    Services

    +

    Consulting & Training

    If you are interested by any of these opportunities, send me an email.

    Consulting

    @@ -751,6 +751,10 @@ + + + + @@ -2282,8 +2286,6 @@ - - diff --git a/sitemap.xml b/sitemap.xml index d80c71da..4b1d713d 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1146,6 +1146,16 @@ https://ninenines.eu/docs/en/cowboy/2.8/guide/specs/ + + https://ninenines.eu/ + 2020-07-01T00:00:00+01:00 + + + + https://ninenines.eu/erlanger-playbook/ + 2020-07-01T00:00:00+01:00 + + https://ninenines.eu/articles/ 2020-06-25T07:00:00+01:00 @@ -1341,11 +1351,6 @@ 2015-07-01T00:00:00+01:00 - - https://ninenines.eu/ - 2015-07-01T00:00:00+01:00 - - https://ninenines.eu/talks/ 2015-07-01T00:00:00+01:00 -- cgit v1.2.3