602 karma · joined October 13, 2009
1. Put all new code behind feature flags that are off by default in production.
2. Make rolling back easy.
3. Have extensive unit and integration tests.
Some of the deployment steps could be automated even further -- maybe the CI server automatically deploys Staging after a successful build.See the books Accelerate: The Science of Lean Software and DevOps, and The Toyota Way for more.
You can write in Markdown, and sync with git. You can set a minimum price, but in our experience people often pay more.
A couple of notes:
1. The ability to have a book be "in progress" is not necessarily a good thing, because you can get stuck in unfinished mode (like our book :().
2. You can publish a print-ready PDF (https://leanpub.com/productiongo/print) but you'll need to purchase an ISBN separately (if you want).Everyone started writing unit tests, and the code broke less. Developers became more confident in deploying, and eventually most PRs looked roughly the same: 10-20 line diff on the top, unit tests on the bottom. If there were no tests, the reviewer asked for tests. It became a fun and safe project to work on, rather than something we all feared might break at any moment.
I've since started insisting on having them as well, especially when I'm using dynamically typed languages. A lot of the tests I write in Python for example are already covered in a language like Go just by having the type system.
I've been a student of Georgia Tech's online Master's program for a few semesters now. They've had years to iterate based on previous students' feedback. I am learning an incredible amount for a decent price. But it is a Master's program and involves a lot of self-motivated research. Also, it costs roughly $850 per semester (if you take only one course). I'm not sure I'd have done it if it had cost thousands.
I eventually got an offer, but chose another job. They were acquired by Google soon after, and I sometimes regret not taking it!
https://interviewing.io/recordings/Python-Google-6/
I'm not affiliated with this site, I just thought this was a great idea and well executed.
I used to lean toward the "studying algorithms, data structures, whiteboarding, etc. is useless since I'll never actually need them" ideology until later in my career when I realized that worst case (for me) I can take a break from building CRUD apps and refresh my CS fundamentals. I enjoy speeding up code and then asking myself, "can I do better?" each step of the way, trying to make further improvements.
I learned about it from DHH's talk on air quality:
Some advice:
* If possible, wear the watch before buying it. Seeing a watch on your wrist is different from seeing photos of it.
* Avoid the "grey market" and buy from an Authorized Dealer. Grey market watches won't have the manufacturer warranty.
* Avoid replicas and fakes (https://www.youtube.com/watch?v=WHgKMA6Bh6U)
Some links:
* The Urban Gentry (https://www.youtube.com/user/theurbangentry) is a YouTube channel run by a horology enthusiast with a positive attitude who does lots of watch reviews.
* The r/Watches subreddit (https://www.reddit.com/r/watches/) has lots of photos of watches contributed by the community.
* A video on how mechanical watches work: https://www.youtube.com/watch?v=G1XBb7kJJWg
* S-Town podcast (https://stownpodcast.org/) is an intriguing story about a man who repaired antique clocks.
* Affordable Wrist Time (https://www.instagram.com/affordablewristtime/?hl=en) the tagline is "Promoting watches under $1000."
Some terminology:
* A quartz watch is usually powered by a battery. They tend to be cheaper and more accurate than mechanical watches.
* A mechanical watch is powered by a mainspring.
* An automatic watch has a semicircular rotor inside which automatically spins when the watch moves, winding the mainspring.
* Hacking is a feature that stops the second hand from moving when the crown is pulled out.
I'll have to do more research, but at first glance I don't see any criticism (yet?) on Wikipedia: https://en.wikipedia.org/wiki/Longitude_(book).
I'd like to see a breakdown of the facts vs. what Sobel wrote. I read the book because I'm a mechanical watch enthusiast, and I was not disappointed in any of the descriptions of the Harrison timepieces or what made them work. I plan to go see them next time I'm in London.
I still recommend the book, especially to watch enthusiasts.
* Why We Sleep: The New Science of Sleep and Dreams by Matthew Walker (https://www.goodreads.com/book/show/34466963-why-we-sleep)
* Longitude: The True Story of a Lone Genius Who Solved the Greatest Scientific Problem of His Time by Dava Sobel (https://www.goodreads.com/book/show/4806.Longitude)
* Never Split the Difference: Negotiating As If Your Life Depended On It by Chris Voss (https://www.goodreads.com/book/show/26156469-never-split-the...)
* Evicted: Poverty and Profit in the American City by Matthew Desmond (https://www.goodreads.com/book/show/25852784-evicted)
* Steve Jobs by Walter Isaacson (https://www.goodreads.com/book/show/11084145-steve-jobs)
PSA: if you use an e-reader or like audiobooks, check out Libby: https://meet.libbyapp.com/
I'm not affiliated with them. Nice app for borrowing ebooks and audiobooks from your local library.
https://www.reddit.com/r/MapPorn/comments/53yuxd/heres_a_ful...
Quite impressive! It even includes the Disney Resort Line (small orange loop toward the right-hand side).
https://www.youtube.com/watch?v=uGcoIue1Bs8
https://www.youtube.com/watch?v=Fh_8BFDcEkg&feature=youtu.be
https://torgoen.com/blogs/blog/mechanical-vs-quartz-watch-mo...
I'm currently co-authoring a book called Production Go which includes a chapter on testing. That chapter is available in the free sample: https://leanpub.com/productiongo/ and might cover some of your questions.