HN user

kablamo

104 karma

I write code and build websites and do devops things. I've lived and worked in Minneapolis, Beijing, Singapore, London, and am currently in Chicago. I am learning Chinese, running, and writing code. I'd love to chat. Send me an email! hackernews at nospamthanks dot iijo dot org.

  Blog:               http://blog.kablamo.org
  Personal finance:   http://networthify.com
  Chinese flashcards: http://iijo.org
  About me:           http://kablamo.org
  Github:             http://github.com/kablamo
  Twitter:            http://twitter.com/kablamo_
Posts11
Comments76
View on HN

Leadership:

- Turn The Ship Around (Marquet) - make everyone a leader - The Effective Engineer (Lau) - leadership for engineers - Leadership, Strategy, and Tactics (Jocko) - leadership in military/business - Good To Great (Collins) - good companies vs great ones

How to get better at everything:

- Mindset (Dwek) - growth vs fixed mindset - Atomic Habits (Clear) - automate good decisions w/habits - Change Your Habits, Change your life (Corley) - data driven selection of which habits matter - Ultralearning (Young) - how to learn anything faster - Anything You Want (Sivers)

How to talk to humans

- Difficult Conversations (Stone) - how to talk to humans - Never Split the Difference (Voss) - every conversation is a negotiation - Death By Meeting (Lencioni) - short fable - anything else by Patrick Lencioni

Prioritization and focus:

- The One Thing (Keller) - prioritization - Deep Work (Calport) - focus - Indistractable (Li) - focus

See also anything by: Jason Friedman, Jim Collins, Patrick Lencioni, Peter Drucker and biographies in general

You rock.

You have high fidelity repls for python and ruby. The Perl hi fi repl is called Reply (https://metacpan.org/pod/Reply). If you are interested check out the plugins -- especially for Term::ReadLine::Gnu. If you have questions, let me know.

Most languages probably don't have the ability to download dependencies from the internet on the fly. That might be a nice feature to have.

Great response. I'll pile on:

Many people retire at 50 or 60 and don't die until 80 or 90 these days. Thats 20 - 30 years of living often while dealing with very high medical bills and health problems which can make work impossible. Everyone (not just programmers) should realize that their retirement situation is similar to professional athletes.

Programming is a hot field now and won't be in 20 years. Everyone in every country in the world is learning to program. Thanks to the internet its going to be a global employment market. Competition is going to go up. Salaries are going to go down.

Movies and popular culture say you have to enjoy your youth. I can sympathize with that, but as much as it sucks to work hard during your twenties, it would suck a lot more to work hard during your 60s or 70s when you are less healthy. Don't procrastinate.

If you save 60% of your salary you can retire in 13 years. If you save 80% of your salary you can retire in 6 years.

I built a tool that does this math for you: http://networthify.com/calculator/earlyretirement

TDD your API 12 years ago

I struggle with this all the time. Data driven tests are awesome because you write so little code. But the code is often abstract and the data is long and hard to read.

I have never been a big fan of Cucumber either and I'm not convinced its more readable -- isn't it just more verbose? Interesting point about it being language agnostic though.

I guess I don't have a better solution to contribute. Just wanted to say yeah I have that problem too.

Excellent app! This is the writing style my high school composition teacher drilled into my head. Everything I write now is influenced by her.

I also try to write my code using this style. In fact, code and documentation and email should be:

1. As short as possible: Less words mean less stuff to maintain and comprehend.

2. Simple: The goal in business is to communicate well. Not to impress. And if I haven't communicated clearly, maintaining that code is going to be hard for the next person who has to read it.

HN navel gazing aside -- I think this is really good advice. Rather than trying to impress your coworkers -- try to impress your users.

I think the challenge in many companies is getting enough access to your users that you can tell if they are impressed or not.

I'm going to try to think this way more.

Thats a great point. I do mention it in my blog post on withdrawal rates! (http://blog.networthify.com/withdrawal-rates/)

Its worth nothing that you could end up with an ever widening gap, but you could also end up with an ever growing surplus if your early years get > 4% return.

I don't think any calculators really deal with this other than http://www.firecalc.com/ (which has a terrible ui -- look for the big red 'Start Here' text and then click the 'Submit' button). Building a user friendly firecalc clone has been on my todo list for while. I'm not sure where they got their data.

With regards to my other calculators on Networthify, I'm not sure how to create a usable ui that reflects this reality.

Also there are at least 2 other big unknowns -- taxes and inflation. So when I'm calculating how much money future-you will have I'm not too worried about ROI. I agree that people need to understand these calculators are just educated guesses. Still -- you do the best you can with the information available. Its better than closing your eyes and not even examining the possibilities. At least you can calculate some worst case and best case scenarios.

-- UPDATE

Oh hey, do you mean there is some sort of formula for expected annualized return?

Yeah $2 can add up. I like to read the early retirement blogs and would like to somehow someday be financially independent.

The way I like to think about it is to figure out how big of a nest egg do I need to earn enough of a return to cover that expense in retirement. For example, I would need an investment of $18,000 which earns 4% avg annual interest to cover my $2 daily coffee expense forever.

Its fun to think of all your expenses this way and as you build your investments you can see how much of your lifestyle is paid off forever!

I built a little calculator to do this math for me: http://networthify.com/calculator/recurring-charges

Git? tig 13 years ago

Agreed. Fugitive rocks. I use it more than I do the command line. However I've never been happy with its ability to review history.

tig is one way to cover that gap, but I wanted to do my git log viewing in vim so I can more easily cut and paste. I wrote this git log viewer (vim plugin) to cover that gap:

https://github.com/kablamo/vim-git-log

Non code parts of Perl including the perlfaq and some of the Perl community infrastructure are available on github here for people wanting to do drive by fixes:

https://github.com/perl-doc-cats

Probably this should be more widely known. Unfortunately I think some of these repos are old forked copies? For example the PAUSE and YAPC repos. I'm not sure why that is. Its not clearly documented how it all works exactly.

Sorry but I've become a bit of a personal finance nerd recently. :) Here is the story on withdrawal rates:

The 4% number comes from a study that discovered that a portfolio with a constant 4% rate would survive any period in US stock market history -- even the Great Depression. But past performance doesn't guarantee the future performance. Try to do this with European markets and there are periods where a nest egg won't survive a 0% withdrawal rate. But yeah 4% is the guess people use when planning retirement.

Thats fine, but in real life you have to be flexible as you approach retirement and keep an eye on the math. The first 10 years of retirement are the critical ones. After that you hopefully built up a buffer and don't have to worry due to the nature of compound interest.

More info:

    http://blog.networthify.com/withdrawal-rates/
    http://www.mrmoneymustache.com/2012/05/29/how-much-do-i-need-for-retirement/
    http://financialmentor.com/free-articles/retirement-planning/how-much-to-retire/are-safe-withdrawal-rates-really-safe
    http://firecalc.com/

Winning the startup lottery would be awesome but probably requires some amount of luck. If you save (for example) 80% of your savings you can retire after 5 years and never have to work again. Its not for everyone but you might be surprised at how little suffering is required. There is a community of "early retirement extremists". Try MrMoneyMustache or the Networthify blog if you are interested:

    http://www.mrmoneymustache.com/2012/01/13/the-shockingly-simple-math-behind-early-retirement/
    http://blog.networthify.com
Travel is cheapest when you live abroad rather than taking short trips and staying in hotels. I'm from Minnesota and I've lived and worked in Beijing, Singapore, and London.

Disclaimer: Networthify is my side project and my savings rate is not 80% but its a lot higher than 25%.

The interesting part to me is they are selling their service via mashape.com which is new to me. Its a neat marketplace for "cloud APIs". Some of the APIs are free or freemium. Here is a list of the most popular APIs:

  - Facial recognition API
  - Yahoo weather API
  - Multilingual sentiment analysis of text
  - IP utils
  - Barcode / QR code generator
  - DuckDuckGo Zero-click Info
  - Bitly url shortner
  - Whois
https://www.mashape.com/explore/All?page=1&filter=popula...

I'm a Perl guy and don't know Ruby. Jekyll is excellent, but I ended up going with http://ruhoh.com which is based on (forked from?) Jekyll. That worked great. Ruhoh is sort of language agnostic. My biggest hurdle was grokking Mustache.

On a side note, I also had a problem with the RSS generator. I managed to submit a patch for my problem. I was pleased to discover Ruby is so Perlish! I guess thats obvious given that a lot of Ruby is inspired by Perl. I suspect switching back and forth between the two would not be hard.

The stats in the link are interesting. I recently discovered the Code::Statistics module (https://metacpan.org/module/Code::Statistics). It tells you the cyclomatic complexity of your code which wikipedia tells me is basically the number of possible paths through your code.

It might be fun to see that run against the Perl core.

I also like looking at the number of lines of code. If your features go up while complexity and lines of code go down -- that could be a good sign.

The calculator assumes you never want to draw down your nest egg -- ie your savings will only grow larger. It also assumes you will spend the same amount in retirement that you spend now. Your rate of withdrawal is pretty much a wild guess as it depends on your rate of return, taxes in the future and inflation in the future. Historically 4% has been a good bet. See this article for a summary of this topic:

http://www.mrmoneymustache.com/2012/05/29/how-much-do-i-need...

and this article for more in depth writing:

http://financialmentor.com/free-articles/retirement-planning...

Thanks! I like the idea of a chart for annual rates of return.

The withdrawal rate is a little tricky. The withdrawal rate is the percentage of your retirement nest egg you will be spending each year. If you decrease your withdrawal rate you will need to save a bigger lump sum to compensate for the smaller amount of income you are generating. Therefore it will take longer for you to retire.