HNHacker News
TopNewBestAskShowJobs

dguo

2,284 karma · joined December 30, 2013

https://dannyguo.com

You can reach me at danny@dannyguo.com

[ my public key: https://keybase.io/dannyguo; my proof: https://keybase.io/dannyguo/sigs/C2fFXC5Ko08xHzyJcfsCCYirEvBcPjlRkJBGlgl1ipk ]

submissionscomments
dguo··on Spaced Repetition
I had considered using spaced repetition software for a while after a long time of being frustrated with my poor memory. I finally started using Anki last September after reading Augmenting Long-term Memory[1].

I started off with just putting in a new vocabulary word every day and have been gradually ramping up the amount of info that I put into it. Now, I will add anything from programming details (e.g. how do you get the number of characters in a Rust string?) to key facts from the books I read (e.g. in The English Patient, who does the patient have an affair with?). My review sessions only take 5-10 minutes a day, and my only regret is not starting this habit earlier (especially in school). It's incredibly gratifying to review something, know the answer, and be very aware that without Anki, I would have forgotten it a long time ago.

[1]: http://augmentingcognition.com/ltm.html

dguo··on All extensions disabled due to expiration of intermediate signing cert
There should be a separation between the things that need to get done and the people that do them. As in, tasks should be created first and then assigned.
dguo··on Animating URLs with JavaScript and Emojis
Check out Emojicode: https://www.emojicode.org/

"Emojicode is an open-source, full-blown programming language consisting of emojis."

dguo··on Jack Dorsey says it’s time to rethink the fundamental dynamics of Twitter
Agreed. I wish that they would just mix those into the primary feed. I keep using the "See less often" option, but the "Thanks. Twitter will use this to make your experience better." message that I get in response almost feels like a taunt at this point.

I want to turn them off completely.

dguo··on Characterizing secret leakage in public GitHub repositories
I accidentally published[1] my AWS secret key last year because I pushed an old project from college. At the time, I was very new to using source control and had little idea how to distinguish between what should and shouldn't be committed. I hope colleges and code boot camps go over that sort of info nowadays. The usefulness to effort to learn ratio seems exceptionally high.

[1]: https://www.dannyguo.com/blog/i-published-my-aws-secret-key-...

dguo··on Filing Your Taxes Is an Expensive Time Sink. That’s Not an Accident
Tax prep companies lobby strongly against it. See https://www.propublica.org/article/filing-taxes-could-be-fre...

The argument they try to make is that the government could take advantage of its citizens. As in, it wouldn't be in their interest to reduce our taxes as much as possible.

dguo··on The MacBook keyboard fiasco is way worse than Apple thinks
Even if the keyboards weren't notoriously unreliable, I would still hate how they feel to use. My $15 wireless iPad keyboard feels better to use than my MacBook's.

And that's on top of all the other issues that have been discussed. At this point, the only thing holding me back from switching to a Thinkpad is iOS/macOS development. Maybe I should just get a Thinkpad and a Mac Mini. It wouldn't even cost that much more than a MacBook Pro..

dguo··on The MacBook keyboard fiasco is way worse than Apple thinks
I do this on every machine I use. I wrote a blog post with detailed instructions: https://www.dannyguo.com/blog/remap-caps-lock-to-escape-and-...
dguo··on The Brain Needs Animal Fat
I use this "Organic Egg Scorecard" to help determine if I should buy eggs from a particular brand: https://www.cornucopia.org/scorecard/eggs/
dguo··on RSS Is Better Than Twitter
Firefox used to have built-in RSS support, but it was removed in Firefox 64: https://www.zdnet.com/article/end-nears-for-rss-firefox-64-t...
dguo··on Cloudflare Registrar
To save money. Which I think makes sense considering the main selling point for Cloudflare Registrar is the at-cost pricing.
dguo··on Why the days seem shorter as we get older
My first exposure to this idea came from this website: https://www.maximiliankiener.com/digitalprojects/time/
dguo··on Cloudflare Registrar
It seems like GoDaddy allows transfers out. You just need a registrar that accepts them.

https://www.godaddy.com/help/about-ws-domains-5860#2

dguo··on Cloudflare Registrar
One drawback to using Cloudflare Registrar that wasn't obvious to me at first is that you have to use Cloudflare's nameservers. Not that I blame them for it, but it'd be nice if the marketing page made this detail more obvious.

I've chosen to pay an extra $0.50 or so per domain to Porkbun for the option of using other nameservers.

dguo··on Russia blocks ProtonMail
Yes. I recently went to China, and I set up forwarding from Gmail to ProtonMail beforehand.
dguo··on Rules for Choosing Nonfiction Books
The rule reminds me of the hiring mentality of "it's worse to make a bad hire than to filter out a good hire."

There are so many books available to me that I do use Goodreads ratings as one heuristic for choosing what to read. It would take a lot for me to read a 2 star book (like a very strong recommendation from someone I trust), not because I am sure it wouldn't be worth my time, but because there are plenty of more highly rated books that are more likely to be worth it.

The author even qualifies the rule: "Unfortunately, Goodreads ratings are often not unbiased.."

dguo··on I have chosen the wrong flight dates because your date picker is broken
I purchased tickets on the AirAsia website recently, and I am confident that at least on Firefox, their date picker for the passenger's date of birth has an off by one bug. At least in my case, customer support was able to change the date.

Edit: I am confident because I purchased multiple tickets with multiple passengers and also had someone double check that I filled out the info correctly. All the date of births ended up being one day later than they should have been.

dguo··on Write tests. Not too many. Mostly integration (2017)
You don't have to add a header image, but doing it no matter what seems to be the general thinking on Medium, presumably to get people's attention. See freeCodeCamp's guide on writing for them: https://medium.freecodecamp.org/how-to-get-published-in-the-...

"Medium will automatically make the first image in your article its featured image. This means your article’s og-image meta property will be this image. This image will serve as your story’s ambassador everywhere: social media news feeds, Reddit, Google News — even RSS readers."

"Start considering images early in the writing process. And never publish without at least one image. Otherwise your story will be all but invisible in news feeds."

I agree the header images are rarely relevant, and I wish they weren't considered must haves.

dguo··on Ending our Medium integration
Even worse, the workaround of embedding a GitHub gist has a strange limitation of not being able to specify a particular file in the gist. So each code block needs to be a separate gist: https://stackoverflow.com/q/40809530/1481479
dguo··on Cancelling Dropbox Pro is hard
If you'd like to donate to the ACLU in a way that lets you easily change/cancel your donations, I recommend using Sublime Fund (https://sublimefund.org/). Disclaimer that I am a founder. We deduct the cost of credit card processing, but we don't charge any sort of platform fee.

Donating should be easy, but canceling should be just as easy. You can do it through our website anytime without speaking to anyone.

dguo··on Show HN: Fnm – Fast and simple Node.js version manager built in ReasonML
At this point, I use Docker for almost every project that I work on, and one of the reasons is that Docker allows me to create a separate environment for each project. I don't need to learn multiple version managers, and it works equally well for non-language tools, like Postgres and Redis.
dguo··on EU fines Mastercard more than half a billion euros
Seems like a good example of "concentrated benefits versus diffuse costs."

https://en.wikipedia.org/wiki/The_Logic_of_Collective_Action

dguo··on EU fines Mastercard more than half a billion euros
Some places just accept credit card payments. Even with a ~3% surcharge for paying with a credit card, it can easily be worth it, depending on the particular sign up bonus.
dguo··on John C. Bogle Has Died
The story behind Bogle founding Vanguard is one of my favorite business stories and one of my favorite examples of contrarian thinking.

https://www.inc.com/magazine/201210/eric-schurenberg/how-i-d...

I don't generally like the idea of having personal heroes, but John Bogle would be on the short list.

dguo··on GoDaddy injecting JavaScript into websites and how to stop it
I see a lot of mentions of Namecheap in these comments, but I recently discovered another option on tld-list[1]: Porkbun[2]. I don't need much out of a registrar, so price is the main consideration, and Porkbun's renewal prices are significantly cheaper ($8.70 for a .com, versus $13.16 on Namecheap).

I would consider using Cloudflare's new at-cost registrar service[3] for everything, but they don't allow you to use non-Cloudflare nameservers.

I've also experienced strange issues with logging in to Namecheap. From what I remember, I kept getting a server error message. Sometimes it happened after submitting my password, and sometimes it happened after submitting my 2FA code. Customer support couldn't help, and the issue went away the next day.

[1]: https://tld-list.com

[2]: https://porkbun.com

[3]: https://www.cloudflare.com/products/registrar/

dguo··on Bye Bye Mongo, Hello Postgres
I believe you're thinking of Uber: https://www.percona.com/live/plam16/sessions/relational-data...
dguo··on Etsy’s experiment with immutable documentation
1. I'd use a library or framework that handles the interactive parts, which should make it fast to implement. We have tools to help make other tools.

2. A tool's popularity/usage could be a way to judge when it's worth the effort to add this sort of system.

3. With the Etsy approach, I would also be wary of the cost of interruptions. Getting constant Slack notifications is not conducive to getting work done. You could silence them, but then what if someone can't move forward without getting an answer to their question?

4. There is a nice balance to be found between wasting time documenting everything possible upfront and not documenting anything until someone asks a question.

5. Personally, when I find documentation that needs to be updated, it's usually as simple as editing a wiki or editing Markdown and making a pull request in GitHub's interface. To me, that's not much effort.

dguo··on Etsy’s experiment with immutable documentation
I did mention that it could output the equivalent command to teach the user what they can run in the future to bypass the interactive prompt.

Point taken, but I don't think it should take that much effort to implement. Some CLI frameworks already have built-in methods for interactivity.

dguo··on Etsy’s experiment with immutable documentation
In the specific example given here of "dbconnect", I'd consider a different approach: incorporating the "how" knowledge into the CLI itself. For example, running the command without any arguments could trigger an interactive guide that asks the user questions.

"What do you want to do?"

o Get a list of databases

o Connect to a database

"Do you want to connect to dev or prod?"

o dev

o prod

o I don't know (this option could link the user to documentation on the different environments; maybe the user is a student on his or her first internship and has never even heard of the concept)

"What's the shard number?"

"Which side?"

The CLI could output the equivalent, non-interactive command before performing the requested action, making it a teaching opportunity as well. Maybe the "I don't know" option or this approach in general is overkill, but I generally think tools should be smarter. You don't need as much documentation if your tools are inherently capable of guiding you to the right answer.

dguo··on The Sharing Economy Was Dead on Arrival
Sounds interesting. The description of WorryFree reminds me of Brave New World.
← PreviousPage 4 of 9Next →