HNHacker News
TopNewBestAskShowJobs

jtolle

68 karma · joined August 31, 2010

My name is John Tolle. I'm an engineer who currently mostly does computer programming.

My main area of programming interest lately is model-building with a high level of non-programmer involvement. In practical terms, that means I build lots of spreadsheets...I even I wrote a set of Excel VBA libraries in order to build spreadsheet models like "real" software - that is, as modular, testable, maintainable computer programs. The libraries extend what is already a non-programmer-friendly, declarative functional calculation system into a true functional programming system. With them, a modeler/programmer can:

- define true functions using an Excel-formula-like syntax - treat functions as first-class values that can be stored in Excel cells, passed to functions, returned from functions, and - most importantly - participate in Excel's ordinary recalculation - work with lists and tables of Excel values in a functional way - unit-test functions, formulas, and spreadsheet modules

Please see the Background section of my Stackoverflow Careers profile for more information:

http://careers.stackoverflow.com/jtolle

The best way to reach me is by email:

    email = [name]@[domain]
    name = tolle.john
    domain = gmail.com
submissionscomments
jtolle··on Unions and Airlines (2010)
Not directly related to the piece (from 2010, although still interesting), but the first comment has a link to Brad Templeton's website, which was nice to discover!
jtolle··on A Path to Retirement, for Those Far From It
I've liked other stuff by William Bernstein. His book "The Birth of Plenty" is excellent. I haven't read the pamphlet mentioned in the article, but I just downloaded it.

I'll be interested to see what his advice is to younger people now. At least in the past, he was not quite the typical scold. I always liked this quote:

'An optimist might cite this as an example of the "magic of compound interest." Too much is made of this phenomenon. A pessimist would note that our industrious saver died an old man without enjoying his fortune; had he consumed even a few percent of it each year his estate would have been vastly smaller. Personally, I’d rather be a 26 year old roaming the boulevards of Paris with a few francs in my pocket than a rich old man. Everyone cannot be rich, but perhaps their grandchildren can.' (from: http://www.efficientfrontier.com/BOOK/chapter2.htm)

jtolle··on Don't be evil: Moving everything off of Google
Isn't there an old saw about every big "Web 2.0" business being something that took what people were already doing but made it "social"? So Facebook made blogging social, Twitter made texting social, etc.

10+ years ago I knew a bunch of people who had personal blogs, but of course most of them were filled with "sorry for the lack of posts recently" type posts.

I'm not on Facebook, but I understand why it's popular. The more people who might be reading, the more reason there is to post stuff. So it makes sense that everyone winds up in the same network.

jtolle··on 1987 Time Capsule Predictions by Sci-Fi Writers About 2012
A round of applause for the Clean Air Act!
jtolle··on Mass-scale Cold Fusion either becomes reality or proved a scam today
I remember being so excited that my brother and I skipped school and "snuck in" to the ACS meeting in Dallas. This was after their first announcement, but they came and gave a big talk to a packed hall. I seem to recall it was hurriedly put together because of all the interest. At the time I thought I was witnessing a huge historical event. I guess I was in the history-of-science sense at least.
jtolle··on The coffeeshop fallacy
This is an interesting article by someone who went through the actual coffeeshop version of the coffeeshop fallacy:

http://www.slate.com/articles/news_and_politics/recycled/200...

jtolle··on Search for your name in pi
How awesome would it be if pi + e were found to be rational? Maybe everything starts cancelling out past the zillionth digit...
jtolle··on Search for your name in pi
I am now going to lock myself in the bathroom until I can prove that pi + e is irrational. I mean, how hard can it be?
jtolle··on F# 3.0 Developer Preview Now Available
Relevant link:

http://www.johndcook.com/blog/2009/03/23/functional-in-the-s...

jtolle··on 74.1% yield on 2-year Greek government bonds
But Spain and Italy are in a much different situation than Greece or the other smaller "peripheral" Euro economies. Basically, Greece needs a bailout or must leave the Euro. Italy needs non-insane monetary policy:

http://krugman.blogs.nytimes.com/2011/08/07/a-self-fulfillin...

http://krugman.blogs.nytimes.com/2011/09/11/the-spanish-pris...

jtolle··on How to Design Classes (in Ruby, Python, Java or any OOP)
You need to go get yourself a recording of Rubinstein playing Chopin's Nocturnes. Hurry!

EDIT: I seek no arguments. Wikipedia says nocturnes are generally thought of as "expressive and lyrical". Surely that should be of interest to hackers...

jtolle··on Krugman on BitCoin
I was going to mention that article too. It's a great explanation.

Money and monetary systems are human creations, not laws of nature.

jtolle··on Making Wrong Code Look Wrong
Your point about language mattering is spot on. If your language has the right features (even just `typedef`), I don't think you need any flavor of Hungarian. In the right context, though, it can be useful.

For example, I do a lot of Excel+VBA programming. In VBA, the native data type is `Variant`. And if you pass something from Excel to a VBA function, that's what you get. But you also know that legal Excel values are just a subset of what VBA allows in a `Variant`. So I find it very useful to stick a clue to myself in the variable name, so say, `f(parm)` becomes `f(xParm)`.

I have libraries that work with the `x` subset of `Variant` (and subsets of that - i.e. `xs` denotes a simple value that can go in a single Excel cell). The prefixes provide useful clues that the language can't reasonably help me with.

jtolle··on John D. Cook: Usability versus composability
I don't have any particular profound comments myself, but this is a constant tension in my own work, and I'd like to see what others have to say.

I build a lot of one-off models in conjunction with end users. There is often managerial confusion between the models, the libraries I've used to help build them, and "applications".

jtolle··on $1 of every $5 in US wallets in 2010 came from programs like unemployment & SS
I don't know, maybe "20% of 2010 U.S. income came from..."?

I don't have editing powers, though.

jtolle··on $1 of every $5 in US wallets in 2010 came from programs like unemployment & SS
Actually the article is talking about income. The current HN title is wrong. According to the linked article:

"Close to $2 of every $10 that went into Americans’ wallets last year were payments like jobless benefits, food stamps, Social Security and disability, according to an analysis by Moody’s Analytics."

I do wonder what the figure would be for actual assets. Surely much lower than 20%, but I guess that would be hard to even calculate.

jtolle··on Tom Duff: Reading Code From Top to Bottom (1999)
This of course exemplifies why it's impossible to declare almost any technique categorically "good" or "bad". Sometimes early returns make code shorter and more clear. Sometimes the opposite. To borrow from Stroustrup, experience and taste matter a lot.
jtolle··on Why I’m Putting All My Savings Into Bitcoin
But surely the condition that it's hard to make more of something is necessary but not sufficient to make that something a good "money" candidate. People expect e.g. gold to continue to be money-like mostly because of its multi-thousand year history as money. So in that very large respect, gold is quite different from bitcoin.

I am interested in bitcoin, though, because of the obvious fact that it has something that neither gold nor dollars, euros, etc. have - it can be used anonymously over the internet. So it's possible to see it becoming popular enough to be "money", which is something important you can't say about something that is merely scarce. (I have to admit that I don't think it's likely, though, and I think investing all of your savings in it is a terrible idea.)

jtolle··on Why did the social prestige of science and engineering decline in the US?
Wait a second. Maybe I need some reeducation myself here, but you're pinning the mass-murders of the 20th century on "intellectuals"? And then saying that's the explanation for the present day trend of distrust in science? (Well, that plus the egg flip-flop.) I'm not granting the premise, but even if I did, it's quite a non-sequitur.

You blame scientists for "fail[ing] to resist politicization" without mentioning that one of our major political parties and it's major financial backers hate the policy implications of some important scientific conclusions. The coal lobby, etc. have to attack science as a discipline precisely because the science is so clear. (Part of that is of course claiming that those nasty scientists are raking in the big grant $$$ as a reward for their dishonesty.)

(Re: the murdering, I think it's giving the murderers way too much credit to take whatever intellectual justifications they offer at face value. Sure Stalin claimed to be furthering the revolution or whatever, but he exterminated an awful lot of non-Russians who had traditionally resisted the central Russian state. The rise of the modern state enabled ideological mass-killing, but that just added another reason to all the other ones - ethnic, religious, colonial conquest, etc. - that predate a literate class, let alone an "intellectual" one.)

jtolle··on The worst program I ever worked on
That's funny, because I look at that and think it's too bad I don't know anything about COBOL. It's not like I'm planning to learn it or anything, but it's quite different from anything I've ever worked with.

So, questions: I know I'll never program in COBOL. But I'm interested in programming languages in general. How much of a "quick intro" would be worth digesting just for the purpose of contrasting to C, VBA, Lisp, etc.? Is there a good one to look at?

jtolle··on Japan's Strict Building Codes Saved Lives
Plus, decent building codes can actually enhance overall efficiency. Lots of things in the code don't really "cost" anything. They just enforce hard-won "it's best to do it this way" knowledge that, shockingly, many builders are oblivious to. Think of things like hurricane straps or nailing plates that cost nothing compared to the materials and labor that go into a typical building. Baking some minimum standards into the law saves us all having to become experts, or hire our own experts. And not having the neighbor's roof fly off during the next hurricane and block the road is just gravy.
jtolle··on Why Stack Overflow Sucks and Participating There is Impossible
I think this is key. I answer questions to help other people. I also answer them to help improve my own ability to explain solutions to programming problems. Usually the problems are ones that I myself have dealt with before. I tend to answer questions pretty late, in a few relatively low-view tags, and I can tell from the view counts that maybe 10-50 people at most ever read any of my answers. But usually the asker of the question sees it and finds it useful enough to accept it.
jtolle··on Four-stages-of-functional-programming
After I read that I poked around and also saw this about using "push" and "pull" to describe "framework" vs. "library" and I like it too:

http://pchiusano.blogspot.com/2010/09/push-libraries-vs-pull...

And this...

http://pchiusano.blogspot.com/2010/07/reification-of-time-in...

jtolle··on A Physicist Solves the City
I thought it was an interesting article, and the research sounds interesting and worthwhile, but I also couldn't help thinking of this:

http://xkcd.com/793/

jtolle··on Changing your cultural armor is hard
Plus he's the only "mainstream" author I know of who regularly uses D&D/gaming references while making "serious" points, which is awesome. I just love this: "Inducing them, and those in between, to change class, to trade their plate for robes, to trade the broad-sword for a spell-book, is the real work."
jtolle··on Changing your cultural armor is hard
There is no mention of programming or technology in the piece, but it struck me as relevant anyway. I'm an engineer with one foot in the software world and sometimes I have trouble shifting smoothly. And as a bonus, there is a great D&D reference (all the way at the end).
jtolle··on Ask HN: After almost 30 years the romance is over - What now?
Hey, someone has to stick up for the lolcats!

I'm only half joking when I tell people that computers were invented so that my wife and her family and I can sit around drinking margaritas and watching Jan Terri videos on YouTube...