HNHacker News
TopNewBestAskShowJobs

shawnps

602 karma · joined October 13, 2009

submissionscomments
shawnps··on How I learned to stop worrying and push to master
Right, basically this. If you're shipping something new that could affect production, put it behind a feature flag so the code paths that are already live are unaffected. Continuously ship small changesets so that it's easy to roll back if necessary.
shawnps··on How I learned to stop worrying and push to master
To make this process safer I usually recommend:

  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.

shawnps··on Google Groups kills RSS support without notice
I subscribed to the golang-announce Google Group RSS feed in a Slack channel and was wondering why I didn't see the Go 1.17 announcement.
shawnps··on Writing a Programming Book in 2021
We're enjoying LeanPub for publishing Production Go (https://leanpub.com/productiongo).

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).
shawnps··on Racket Compiler and Runtime Status
When I was learning in university, How to Design Programs was the textbook: https://htdp.org/2020-8-1/Book/index.html
shawnps··on Unit Testing Is Overrated
Early in my career I saw a large legacy project that was riddled with bugs turned around after a senior developer insisted on having unit tests. No one else believed in the value of unit testing, so he added them on his own in his free time. Occasionally another developer would push up some code that broke the senior developer's tests, and he gradually got the upper hand because he now had proof that his tests were finding real problems.

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.

shawnps··on Apple Mac Pro Wheels Kit
Thanks, that makes sense. If you don't mind me asking, what's your take on the cost of the wheels? As someone who has worked in sound/lighting, are they something you wouldn't have thought twice about buying?
shawnps··on Apple Mac Pro Wheels Kit
Genuine question -- how does adding wheels to the Mac Pro add value? I figured most people would just plop it on a desk.
shawnps··on Unimpressed by online classes, college students file lawsuits for refunds
Online classes can work, but it makes sense that students are frustrated by courses put together quickly due to unforeseen circumstances.

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.

shawnps··on Disney claims anyone using a Twitter hashtag is agreeing to their terms of use
This is not what many people here seem to think it is. A real lawyer's take: https://twitter.com/openargs/status/1254873718855208960
shawnps··on ITA's old “Hiring Puzzles” is still a treasure trove of good problems
ITA used to advertise puzzles on the MBTA (public transit) in Boston and I emailed in a solution when I was a university student. Looking back, it seems like an effective way to find candidates with a sense of curiosity for problem solving.

I eventually got an offer, but chose another job. They were acquired by Google soon after, and I sometimes regret not taking it!

shawnps··on Tech Interview Handbook
I stumbled across another amazing resource a while back - recorded mock interviews:

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.

shawnps··on Alan Kay's answer to ‘what are some forgotten books programmers should read?’
I don't think there's anything wrong with buying books that you intend to read in the future. I do this all the time, and when I want something new to read I pick something off of the shelf. There are worse things to buy than books.
shawnps··on The Lonely Work of Moderating Hacker News
I thought it was a surname Dang.
shawnps··on Build an Air Quality Monitor with InfluxDB, Grafana and Docker on a Raspberry Pi
If you're interested in purchasing an air quality monitor, Awair is nice:

https://getawair.com/

I learned about it from DHH's talk on air quality:

https://www.youtube.com/watch?v=MRqh8oLY7Ik

shawnps··on Masahiro Kikuno, Japanese Independent Watchmaker (2017)
For anyone interested in purchasing a mechanical watch, there are plenty of brands making affordable mechanical timepieces today. Hamilton, Seiko, Tissot, Swatch, Orient, and Timex are a few that come to mind for the sub-$1000 category. It's a fun hobby with a nice community of enthusiasts.

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.

shawnps··on Ask HN: Favorite nonfiction books of 2018?
Interesting, thanks for the comment. Unfortunately the post you linked is not about the book Longitude, and the blog the author links to for people who want to "discover more about what really took place" is a 404.

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.

shawnps··on Ask HN: Favorite nonfiction books of 2018?
Thanks for the recommendation. I agree, I wish the author had gone a bit more into practical tips and cognitive behavioral therapy for insomnia. I'll check out The Sleep Solution.
shawnps··on Ask HN: Favorite nonfiction books of 2018?
Favorites that I read in 2018:

* 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.

shawnps··on What a Real Train System Looks Like (2009)
I was curious what the map of all Tokyo train lines overlapping might look like, and found this post on Reddit:

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).

shawnps··on A day in the life of Lloyd Squires, Vermont's 'best' bagel maker
Is this glorification? It seems like they're just stating a fact. It's mentioned right before that he wakes up every day without an alarm, so this is part of his routine.
shawnps··on Apple sold more watches in Q4 2017 than the entire Swiss watch industry
This is interesting to me, because I've recently gotten into mechanical watches as a hobby. If you don't know how a mechanical watch works, I recommend taking a look at some of these links:

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...

shawnps··on Improving my productivity using Pomodoro: takeaways after 2 years of practice
Yes, see here for a download: https://apps.ankiweb.net/
shawnps··on Ask HN: How to approach testing in Golang?
Take a look at the Golang source for some examples of table-driven tests. When you need mocking you can usually use interfaces and then define a struct in your test that satisfies the methods of the interface.

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.

shawnps··on SoftBank’s $100B fund is in a league of its own
If you found the part that he's Zainichi interesting, there is a whole history to Koreans in Japan that I didn't know much about until a couple years into living in Tokyo. More here https://en.wikipedia.org/wiki/Koreans_in_Japan
shawnps··on Amazon Hub
In my experience, it is way more common in Japan to have one of these than it is in the US, though.
shawnps··on Show HN: Neural Japanese Transliteration
I agree. I use it on iOS with swiping enabled - it is way faster and less error-prone than the romaji keyboard.
shawnps··on How we invented new ways to teach Japanese
What about Chinese? As someone who's learning Japanese already, Chinese looks more difficult to me. To me it seems very subjective, some people will be better at learning one language vs. another.
shawnps··on How we invented new ways to teach Japanese
That's a good point. I can imagine it might be difficult for someone new to Japanese to understand who is the subject of the sentence, when pronouns are dropped so frequently.
shawnps··on How we invented new ways to teach Japanese
I'm a fan of the "Japanese" app on iOS for studying vocabulary - they have lists for each JLPT level. It's a great dictionary as well.
Page 1 of 5Next →