HN user

oracardo

32 karma
Posts1
Comments13
View on HN

Below are my current feelings having worked with it as my primary language over the last 16 months. My previous 7 years of development focused on Java, C++, Python, and JavaScript.

Like:

- Standard Tooling: formatting coverage, dependencies, BIN install, versioning, vendoring all done in Go CLI

- Opinionated, minimal design: often I feel like there are fewer ways to do things in Go than in other languages.

- Readability: fewer operators and minimal language design make it feel easier to ramp up and read most go programs

Dislike:

- Hard to master: some elements are very unintuitive coming from other languages (interfaces). I feel like a lot of content on go.dev is out of date (Effective Go). The Google Style guide is helping to light a path and when they publish Go Tips I think it will get better.

- Too Minimal: in some cases it feels like Go went too far in not building language features (no set, use map[$TYPE]bool instead or map[$TYPE]struct{} for more efficiency but less readable imo)

Go Style 4 years ago

In my opinion the hardest style rules to accept when trying to use this guide are:

  1. Do not create "assertion libraries" like `assertEqual(x, y)` [1]
  2. Leave testing to the Test function [2]
  3. Intialisms (HTTPURL, IOS, gRPC) [3]
  4. Function formatting [4]
For the record I'm not saying I disagree with these. I just think that folks coming from other languages have a lot of built in muscle memory to do it other ways.
  [1] https://google.github.io/styleguide/go/decisions#assertion-libraries
  [2] https://google.github.io/styleguide/go/best-practices#leave-testing-to-the-test-function
  [3] https://google.github.io/styleguide/go/decisions#initialisms
  [4] https://google.github.io/styleguide/go/decisions#function-formatting

I wanted to undergo a medical treatment but it required me to stay off alcohol for the treatment duration. I wasn't sure if I could do it so I deferred it for a long time. Eventually I worked up the courage and did it for ~10 months.

I started buying 0 calorie fizzy water (Bubly) as my go-to replacement for alcohol. Opening up a can fulfilled part of my prior habit. Swapping one habit for a more healthy variant is one tip.

I was also held accountable by my doctor reviewing my monthly blood test. If I drank alcohol I assumed they would catch it. There are other people that you can ask to hold you accountable like this.

I'm not sure how to get over the self-hatred after a binge. In one respect I think it's healthy in a small dose. But if it's so large that you don't want to restart your sobriety then it's a problem.

The Overstory by Richard Powers: this book changed the way I look at trees. I'll be driving some days and out of nowhere notice a tree and appreciate it. This book inspired me to consider that there is an objective meaning to life.

The Incerto Series by Nassim Nicholas Taleb: where to start...I started reading this series over a decade ago and I still think about it weekly. It can be very dense to get through as I took a lot of notes. But I think it's worth the trouble. One of my favorite chapters is via negativa. This is the concept that it is easier to know what NOT to do than what should be done. Many interested ideas flow out from that when it comes to personal health, public policy, and morality.

Thinking Fast and Slow by Daniel Kahneman: this book opened up my eyes to a host of mental biases. It's similar to some of Taleb's work but IMO easier to read. My favorite chapter surrounded the idea of the self as your memory vs your experience. Thought experiment: if you could take your dream vacation at no expense but would have no memories or photos/videos of the trip would you do it?

I've been using ledger for the last 5 years. I started playing around with it when I got tired of Mint failing to connect to 1 of my accounts and it lacked support for several others. My primary drive to use Mint was to have 1 place to view all of my accounts. The analytics to show spending on groceries vs restaurants was a nice-to-have. I'd never been fully comfortable with the security model but I didn't have much money at the time.

If I had to summarize my favorite features I'd say:

1) Strong support for multiple currencies/commodities including cost-basis,historical-market,current-market price conversions.

2) Advanced reporting options to support various filters, mutations, conversions, outputs. One of my favorite reports is total net worth in CAD converted using latest market prices

  ledger bal Assets -V -X CAD
Another might be top expense accounts in decreasing cost:
  ledger bal Expenses -H -X CAD --flat -S -T
3) Error detection: by enforcing double-entry accounting it has helped me identify hidden fees. It also helps when I make a mistake balancing a transaction.

4) Better than 2 decimal precision. This helps with crypto where your crypto balances can look something like 1.23456789 BTC

Plague 12 years ago

Description on the app store is better than the website imo https://play.google.com/store/apps/details?id=io.plague

"Plague is an essentially different way to spread information. The idea for Plague is to create a perfect medium for spreading information as wide as it deserves to be spread, without any boundaries. Plague works like a virus. When you spread information, it goes to the users who are closest to you physically. The infected users can spread information exponentially further or they can resist the epidemic by keeping the information to themselves. Everyone has a fair and equal chance to be heard by the whole network right from the start - there is no friending or following on Plague. If your information is interesting to people, it can eventually spread to the entire world."