Live data from Hacker News

Show HN: I wrote a book on web application deployment

deploymentfromscratch.com

91–100 of 129 posts

Re: Show HN: I wrote a book on web application deployment

#92

For a book on deployment, I feel there is too much content on setting up a server. Would have like to see pros and cons of differing ways to deploy. Also, for taking apps to production, there should definitely be a part on high availability.

Without addressing deployment canaries, exponential deployments, exponential rollbacks, traffic steering, API load duplication to staging, IaaS/PaaS, 12factor apps, HA, scaling, fault injection, hot backups, cold (and tested) backups, DR/BCP, configuration management, CI/CD, monitoring, troubleshooting the entire stack, and SLAs, it doesn't seem to me like a professional-enough treatment to celebrate.

I have not read all the book yet, but it definitely talks about some of these things (12factor app, canaries, scaling, logging, etc.).

It is a review of the most fundamental tools and strategies in Red Hat flavored Linux distros. Things like troubleshooting the entire stack would be far too advanced and specific.

Re: Show HN: I wrote a book on web application deployment

#93

For a book on deployment, I feel there is too much content on setting up a server. Would have like to see pros and cons of differing ways to deploy. Also, for taking apps to production, there should definitely be a part on high availability.

Without addressing deployment canaries, exponential deployments, exponential rollbacks, traffic steering, API load duplication to staging, IaaS/PaaS, 12factor apps, HA, scaling, fault injection, hot backups, cold (and tested) backups, DR/BCP, configuration management, CI/CD, monitoring, troubleshooting the entire stack, and SLAs, it doesn't seem to me like a professional-enough treatment to celebrate.

Do you have an up-to-date reference that handles all those concerns in one place?

Re: Show HN: I wrote a book on web application deployment

#94

For a book on deployment, I feel there is too much content on setting up a server. Would have like to see pros and cons of differing ways to deploy. Also, for taking apps to production, there should definitely be a part on high availability.

Without addressing deployment canaries, exponential deployments, exponential rollbacks, traffic steering, API load duplication to staging, IaaS/PaaS, 12factor apps, HA, scaling, fault injection, hot backups, cold (and tested) backups, DR/BCP, configuration management, CI/CD, monitoring, troubleshooting the entire stack, and SLAs, it doesn't seem to me like a professional-enough treatment to celebrate.

I got the impression that the book is oriented to solo entrepreneurs building their own Saas (perhaps I got that wrong). What you have described sure sounds like good standards to follow by an entire infrastructure team, but a bit too much for solo devs doing infra stuff.

Re: Show HN: I wrote a book on web application deployment

#95
post #50
post #17

Earlier quoted context omitted.

Show HN has a major problem with that these days. The comments that are just like "perfect timing! I have never seen a resource for this and I'm just learning it now" are really facile, no one actually interacts with people selling you things like this, and it's contrasted starkly with the one comment giving feedback on the page which is that it has no content at all unless you buy it. I find it very hard to believe…

> no one actually interacts with people selling you things like this There's a whole successful social network (Goodreads) built on people's desire to talk about books, frequently in the form of effusive praise. I think being able to trace the product to a single individual (e.g. a book's author) helps make it particularly appealing to leave that sort of feedback: we know it feels great to hear that someone values a…

> frequently in the form of effusive praise

I somehow doubt it's in the form of 5:1 ratio of effusive praise to questioning/criticism outside of the true top books there, and then to see this on a random ad where the OP swears he's not contacted anyone about the Show HN and yet all his "happy" "lurking" "customers" pop up with really sweet words within an hour is comical

I understand people are nice sometimes, but it's clearly not organic here.

Re: Show HN: I wrote a book on web application deployment

#96

I'd love to give this a read from someone with a lot of experience in the source material, but given a $50 pricetag for a book I don't need to read I'm not into it. Who are your editors?

Agree. I'd buy a $50 book only if it has consistent excellent reviews.

Re: Show HN: I wrote a book on web application deployment

#98
post #46

This might just be paranoia but a couple of the early comments on this thread feel very astro-turfy. For example: https://news.ycombinator.com/threads?id=vich (hasn't commented since aug 2020) https://news.ycombinator.com/threads?id=matthieuchabert (hasn't commented for 10 months) https://news.ycombinator.com/threads?id=vivty is slightly sketchy as well but not super cut and dry

Aside: Is HN so fragile that it requires end-users to police anomalous activity? Given the age and influence of the platform I'd assume dang and co. who moderate and maintain the board are old hands at staying on top of manipulation of the platform. Could any mods comment on this? _Should_ we be keeping an eye out and calling out odd activity? It'd be nice to avoid posts like __blockcipher__'s; while well intentioned…

I don't think it's fragile, but astroturfing is a serious problem for any popular platform. I actually appreciate the time that end-users take to check for inappropriate behaviour.

Re: Show HN: I wrote a book on web application deployment

#99
I would not suggest this book to people who want to practice professional software deployments in 2021. This book is setting you up with a limited set of skills that are over-complicated and not best practice. For instance:

Server configuration. You should not be monkeying around with OS configs. If you do, it should only be in something like a Docker container, which is an easily tested/updated versioned immutable repeatable closed environment that runs everywhere. Monkeying with server configuration is a quick path to becoming a systems administrator, introducing unnecessary bugs, and increasing complexity. Try to avoid using software that is platform-specific (see next point).

Services with systemd. You should probably not use systemd to manage services. The primary reason is that you might not fully control the system you run services on if it's a multi-user system, and you need to have system control to modify systemd. It's also generally not portable outside of a Linux system. In the cloud you would ideally be using a deployment or orchestration system which has its own configuration format and method to run services, obsoleting systemd. The most portable service manager you could learn to use would be runit (even Busybox has an implementation of it), and after that, whatever one you choose that you can run as an unprivileged user. You can then run your preferred service manager as a systemd service, or in a container, etc.

Databases. Try not to get into monkeying around with backups and restores. Find some kind of managed provider that can do simple snapshots before deployments and easily restore them. Doing it manually is painful, and automation could be done better by a managed provider than trying to roll it yourself. However, you should be familiar with Flyway-style database deployments.

SELinux. You should not have to learn how it works to deploy. But if you do, get a dedicated book on it.

Storage concerns. Don't use networked filesystems for production. You can, in the sense that you can toast bread in the bathtub, but I wouldn't recommend it.

Backups and restores. Use versioned immutable artifacts in an artifact repository. Use a managed backup service/tool/etc for whatever doesn't work that way.

I don't see mention of caching proxies, reverse proxies, or CDNs. These can get tricky, from being careful about headers to preserving source IPs to invalidating stale caches to load balancing and resource limits.

I don't see any mention about continuous deployment, continuous integration, the 12 Factor App, or Immutable Infrastructure. All these are core components of modern deployments.

And as much as I hate it, Kubernetes is slowly of eating the entire world of modern systems, so learning how deployments work on it is essential to working in modern professional settings.

Re: Show HN: I wrote a book on web application deployment

#100
Looks like a great work, not much to say, was long looking for such a comprehensive book. Exactly missed a single source which lists all deployment related topics, not too shallow, not too deep. In other words, saw it like an area map of the exact scale I was looking for. Bought instantly.
Post reply on HN