We did a pre-launch at Okta's conference in Las Vegas in August, and it's taken a bit longer to sort out the details of actually listing it for sale. It's available for purchase right now at the website, and will be visible on Amazon.com in 6-8 weeks.
Next I'm working out the logistics of publishing an ePub/Kindle version, which it turns out is not just pushing the "ebook" button. This has been a fascinating process to learn about!
Example delete and undelete flow when storing posts as flat files:
• Create a post on disk stored at e.g. `/web/2017/10/15/1/post.txt` which has a public URL of `http://example.com/2017/10/15/1/` • When the client deletes the post, the server moves the file to `/web/.trash/2017/10/15/1/post.txt` • If the client sends an undelete request, the request will include the former public URL of the file `http://example.com/2017/10/15/1/` • Similar to how the server knows where to find the file for live posts, it should know how to find the post in the trash folder if it's been deleted • The server can move the file back to the public folder `/web/2017/10/15/1/post.txt` to complete the undelete