tim_h

Joined 15 years ago

Karma
46
Submissions
25
Member since
Jan 27
Problem solver, generalist, full-stack programmer

http://hnofficehours.com/profile/tim_h/

View on Hacker News

Recent submissions

Comment · 14 years ago
The difference between doctors and programmers is that programmers get to build/leverage tools that are abstractions of other tools, hence you can have orders-of-magnitude differences in productivity between programmers who use the best tools and those who don't. I assume that there's not that much variation between the way two different doctors carry out the same task like there is with programmers.
Comment · 14 years ago
Probably the availability of people with 5+ years of programming experience. It was 1959! :)
Comment · 14 years ago
Basically, in a client-server relationship, use persistent buffering on the client-side so that the client can tolerate server downtime.

I like the simplicity of this approach. It's best to keep the low-level stuff as simple as possible when building distributed systems. It will get complicated soon enough at the higher levels.

Comment · 14 years ago
If an ISP starts openly inspecting content like this will it become liable for all content that passes through it's network?

Edit: I'm surprised to see this downvoted. Care to comment why?

Comment · 14 years ago
Just curious, what specifically is the indicator that a person doesn't care for the company? I didn't get that impression from reading the GP.

Is it not paying attention to the news cycle? Or knowing that the company is on a bad trajectory but still working there? Surely it's not the focus on work-life balance.

I could see myself working at Yahoo. I bet they still have interesting problems to work on. Yahoo Research does awesome stuff with computational advertising. Hypothetically speaking, would this opinion disqualify me from your hiring consideration?

Comment · 14 years ago
I wasn't suggesting that that C++ is somehow outdated or inferior. I'm just wondering if the percent usage of C++ is declining with respect to other languages.

I'm trying to estimate the chance that me not knowing C++ will pose a problem later in my career. I normally pick up languages quickly, but the C++ learning curve seems a bit steeper, both in terms of language nuances and libraries. So my normal approach of "wait until I need it" may not work that well.

Comment · 14 years ago
Is C++ usage on the decline? I've used a lot of different languages, but I've never had the occasion to learn C++. I work in web search and we tend to use interpreted languages. The argument is that Java or C# is much easier to write/maintain and that we can make up for performance shortcomings by scaling out.
Comment · 14 years ago
Comment · 14 years ago
The right balance between technical and pragmatic is project specific. Here are a couple of heuristics I use to find it.

1) Minimize the overall time investment required to have an acceptable solution to the problem. Time investment includes maintenance and debugging.

2) Make sure the marginal benefit to additional time spent in one area of the project exceeds the opportunity cost of focusing on other areas. E.g. It's good to spend a lot of time on getting the overall architecture right but it matters far less to optimize the business logic (for one thing it tends to change more often and for another it's hardly ever the performance bottleneck).

Comment · 14 years ago
In software engineering the "thinking beforehand" approach is probably riskier than the "think as you go" approach. For example, often the requirements aren't well-defined when the project starts.

Contrast this with physical-stuff engineering (which I think is what you're referring to by saying "engineering background"), where the requirements tend to be better-defined and the cost of experimentation/refactoring is a lot higher.

Comment · 14 years ago
This resonates:

> The most important characteristic of a suffering-oriented programmer is a relentless focus on refactoring. This is critical to prevent accidental complexity from sabotaging the codebase.

I can't tell you how many times I've seen accidental complexity creep in because someone adds a new feature without taking the time to refactor to the simplest set of abstractions. But - and here's the flaw in the approach - you have to be an expert in the code to produce such a set of abstractions, which is a potential bottleneck when your codebase is big enough to require multiple developers. Not everyone has the time/capability to be an expert.

Comment · 14 years ago
The article mentions that "Tokyo" DC was taken offline by disconnecting the data center from the "New York" and "Paris" DCs. Then writes were performed, Tokyo was reconnected, and the writes replayed, effectively re-syncing the DCs.

My question is: how was consistency maintained? What mechanism prevented the same record from being changed both in Tokyo and in New York while the network was split? Or, what mechanism resolved the conflicts? I think the article might be glossing over some details here. I'm guessing that either one side of the split was offline (or at least read-only) during the outage or that the writes were made without guarantees.

Comment · 14 years ago
I don't know how similar/dissimilar Dexadrine and Adderall are, but they have really different effects on me. Adderall made me feel high, and seemed to encourage me to focus like a laser beam on low-level details. Dexadrine, on the other hand, has a very subtle effect on me. I've never felt high when taking it. It's more like a gradual transition into being able to focus at will. When it wears off I can no longer focus easily. On weekends I usually take half the usual dosage, and sometimes I skip taking it all together. When I skip it, aside from difficulty paying attention/focusing, I have mild withdrawal symptoms like feeling tired, headache and an increased appetite.

Having said all this, I want to point out that my doctor told me that different medications work for different people. I may just be lucky enough to have the right body chemistry for a drug like Dexadrine to work well for me.

Comment · 14 years ago
Why is it that people will hold against you an immature act that you did years ago, ignoring the fact that people tend to mature as they age?

Perhaps the timeline will help overcome this tendency. By making everyone's history more visible, maybe people will become less sensitive to seeing past examples of immaturity and therefore weigh them less when making judgements about a person.

Comment · 14 years ago
First, even if natrius cannot answer your question, absence of a counter-example does not constitute proof of your argument. Second, I've been taking an ADD medication called Dexadrine for about 10 years now, and in my opinion the effect on me has not diminished.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton