HNHacker News
TopNewBestAskShowJobs

rleisti

54 karma · joined June 3, 2009

submissionscomments
rleisti··on Expensify and the surprisingly difficult challenge of finding the right people
It probably doesn't help when you insult the entire .Net community and imply that anyone unwilling to work ridiculous hours is lazy.
rleisti··on Dynamic languages are static languages
One of the things that a 'dynamic' type system (or as the author would see it, a restriction to a single type) imposes on its creators is the need to make that single type as useful as possible. This includes things like being able to easily lookup an object's class, documentation, methods, properties, uses (is it a sequence? is it a map?, etc.). As a result, I find the design of the core libraries of dynamic languages like Clojure more well thought-out than say something like .NET. It's simple things like being able to treat a string as a sequence (Haskell, a statically-typed language, does this), an 'object' as a map, a map as a sequence, etc. I wonder if it has to do with a sort of de-centralization of control; being dynamic seems to make a language more malleable and open to experimentation. Accomplishing the same things in a statically-typed language requires more planning (which means that after it ships, its too late).

I really appreciate a well-thought out static language like Haskell, but it still has some way to go for the common programmer. For now, I don't think that the practical outcome of this article is for programmers to abandon dynamic languages.

rleisti··on Reading the Mind in the Eyes Test (Do You Have Asperger's?)
I got 21. I have a feeling that if I took this test a bunch of times (with different faces) that I'd probably get better at it.
rleisti··on Ask HN: Free weights, do you use them?
At the beginning of April, I picked up a book called "The New Rules of Lifting". I like it, because it explains how to do a variety of exercises of six kinds: squat, deadlift, lunge, push, pull, twist. Also, it describes a few programs, which I find very good for motivation as it gives you specific things to do on a regular basis.

When I started, I acquired a barbell, two dumbells, a swiss ball and about 80 pounds or so of plates. I quickly got a squat rack (just something simple; you can only lift so much up to your shoulders and drop it back down safely), but I only recently got a bench. I now have over 200 pounds of plates, which I got at a used-equipment store. I've found that you need a lot of weight for a) squats and b) so you can move from one exercise to another quickly without having to move plates from the bar to the dumbells.

I also got a "power gym": the pull-up device that hangs in a door frame. With slight modification to one of my door frames in the basement, I found it works pretty well.

rleisti··on Step 1 For Sustainable Innovation: Stop Overpaying Employees, says Trip Hawkins
Step 2: Don't follow random advice that doesn't take into account the particulars of your situation.
rleisti··on We will be able to live to 1,000
I wonder if this would change the popular morality of suicide? What if you're 800 years old, and you truly feel that you've had enough? Should you be forced to keep on going, potentially indefinitely?

Or even just knowing when to step aside and let the next (evolved) generation take over? (or will that still naturally just happen, via accidental death or death by lack of resources to live)

rleisti··on Really? Porn In The Workplace Is Now A Major Board-Level Concern For Business
Problem: board members want to pretend the problem doesn't exist.

Solution: install token software and pretend that the problem is solved.

rleisti··on Nathan Myhrvold: Funding Eureka
An invention market for software is complete BS. All the effort involved in producing a software patent can be summarized as a small amount for the idea, and most for wordsmithing. The real value comes from the implementation, which is only loosely connected to the patent; just as the relationship of any software to its initial specification.
rleisti··on Why the Windows Registry sucks … technically
It would mean that if you port windows to a large endian machine, then you can't share registry files (ie. as in roaming profiles). It's not as much about the file format as it is about the implementation (simply dumping C structures to disk). I think what the author is saying is that it's just a crappy implementation.
rleisti··on Why the Windows Registry sucks … technically
It isn't really the same. Anyone that needs access to something in /etc can get what they're looking for without having the first pierce a difficult binary format. Deciphering what they get back is another issue, but typically it's just a text file, so you can generally figure out how to parse it if you need to.
rleisti··on Why the Windows Registry sucks … technically
You could create a library to read the setting, and everyone could just use the library.

I like the Unix way better myself, as it's more about building up functionality through composition, rather than setting out to create grand unified architecture. Speaking (possibly too) generally, I find large architectures tend to be harder to fix.

rleisti··on The fallacy of fairness
'Fair' is tied to a moral context, as in "morally pure, unblemished" (from http://www.etymonline.com/index.php?term=fair). So an argument about what's 'fair' is an argument about what is morally "pure" (or good). Then that depends on your beliefs about morality.
rleisti··on The Growing Underclass: Jobs Gone Forever
In a more general sense, increased productivity means more value is created per unit cost. This could mean the same value with less jobs; it could also mean the same amount of jobs with more value.

A growing pool of displaced labour is also a growing un-tapped resource (or a growing revolution, depending on how well society manages it).

rleisti··on Geek behaviors present during conversations
Furthermore, I do it myself to prevent complications down the road. I've found that it's all to easy for one piece of misinformation slipped into a conversation to snowball into something much bigger, and based on a false premise.
rleisti··on Why Are Homeowners Idiots?
While reading this article, I felt there was as strong connection to this one (recently posted on hacker news):

http://www.economist.com/sciencetechnology/displayStory.cfm?...

...which basically says that entitled people in positions of power tend to hold others to a higher moral standard than themselves.

rleisti··on RockYou.com database breached, 32 million unencrypted passwords obtained
You can hope that they encrypt your password; but never trust that they do. Use your own password database.
rleisti··on [dead]
Are you saying Turing didn't invent the hourglass notation? j/k
rleisti··on The Dark Side of Customer Development and Lean Startups
It seems to me that a central part of this argument is having "...suddenly had to allocate a bunch of resources to customer support and bug fixes...".

Building the smallest possible marketable product doesn't mean building a low quality product.

rleisti··on Ask HN: How do you explain closures?
Doh!

It would have made more sense if I had some other piece of information to inject in, like if you had a database reference that needed to be passed in to the Delete() method.

Then:

  AddButton("Delete " + obj.ToString(), () => obj.Delete(db));
Vs.

  var d = new DeleteHandler(obj, db);
  AddButton("Delete " + obj.ToString(), d.DoDelete);
EDIT: fixed
rleisti··on Ask HN: How do you explain closures?
You could try an example showing what a closure does 'under the hood' by showing an equivalent non-closure example, like:

With Closure:

  foreach (var obj in objects) {
    AddButton("Delete " + obj.ToString(), () => obj.Delete());
  }
Without closure:

  class DeleteHandler {
    public DeleteHandler(TYPE obj) {
      _obj = obj;
    }
    private TYPE obj;
    public void DoDelete() {
      obj.delete();
    }
  }
  ...
  foreach(var obj in objects) {
    var deleteHandler = new DeleteHandler(obj);
    AddButton("Delete " + obj.ToString(), deleteHandler.DoDelete);
  }
rleisti··on Network Effects And Scale Economies (aka Spolsky vs. Heinemeier)
Agreed. But the amount of value you get out of the product vs network is subjective to the user and to the product. It depends on how independent you are as a product user, and how easy the product itself is to use.

Take Microsoft Windows for example. Regardless of its own intrinsic value, I think that a lot of people would chose it over, say, a Mac (or Linux) purely based on their own social network, due to the ease of which they might be able to get help and share experiences. The opposite is also probably true (if everyone you know uses a Mac, you'd be more inclined to use one yourself).

For those that like what some other OS has to offer, and they aren't afraid of figuring things out for themselves, then they would go with that regardless of any network effect, because they're more interested in the value of the product itself.

rleisti··on Network Effects And Scale Economies (aka Spolsky vs. Heinemeier)
The network affect of a bug tracker is that having a larger user-base means:

(a) more people have run into the same problems as you, and have either posted their own solutions or pressured the company into fixing them (b) more people may have built extensions on the product (c) more people may have written helpful tutorials on the product (d) more people will know what you're talking about when you speak in the product's language.

I think there needs to be more 'marketing' around the idea of simple software that's easy to use and doesn't screw up. Not enough people really appreciate these things in the quest for more features.

rleisti··on Insurance on Rails
Ruby does have libraries for dealing with real numbers with an arbitrary precision.
rleisti··on Set Based Filesystem idea
Maybe some sort of namespacing on tags would fix that; ie. so that your 'conf' tag for a software project doesn't conflict with the system 'conf' tag, which may have a different set of permissions.
rleisti··on SQL Databases Are An Overapplied Solution
CouchDB is ACID compliant
rleisti··on Ergoemacs Keybindings
I've seen some people suggest hitting the ctrl key with the 'side' of your hand instead of your pinky. I've found that using the bone directly below your pinky (towards your palm) also works (at least in my case), and is fairly comfortable.

I was inspired to do this by Aikido, where one of the techniques is a pressure-point application using the bones on the inside of your hand to apply specific pressure while holding someone's wrist in a grip.

rleisti··on Ruby has entered the Enterprise thanks to the Enterprise gem
What I'd really like, is a way to express xml in xml, so I can be super-productive all day long recursively writing a single xml document.
rleisti··on [dead]
http://www22.wolframalpha.com/input/?i=what+is+best+in+life%...

What is best in life?