HNHacker News
TopNewBestAskShowJobs

samg_

37 karma · joined August 20, 2010

submissionscomments
samg_··on PivotTable.js: a JavaScript Pivot Table implementation
Hey, I agree with a lot of what you are saying here, but it seems unfair to cherry-pick a single method like you are doing here. There's a lot of confusing JavaScript out there, too.
samg_··on Andrew Ng and the Quest for the New AI
In case this comment dissuades others from checking out Dr. Koller's class, I will add that I found her class challenging and well-constructed. I recommend it.
samg_··on Announcing TypeScript 0.8.1 with Source level debugging
Google's Closure Compiler
samg_··on Large Scale Distributed Deep Networks (by Jeff Dean et al)
I've taken Andrew Ng's Machine Learning class, Daphne Koller's Probabilistic Graphical Models class, Dan Jurafsky and Christopher Manning's Natural Language Processing class, and currently Geoff Hinton's Neural Networks class.

I have spent a lot of time on Khan Academy to learn the calculus. In my experience you can get by with a surprisingly small amount of calculus, but it happens to be a small amount from a high level.

For example, backpropagation is just repeated application of the chain rule. Did take a while to get a handle on the derivatives, but it's worth it.

samg_··on Large Scale Distributed Deep Networks (by Jeff Dean et al)
A year ago, I would have no idea what this was about. I'm very thankful that I live in a world where I can take high quality classes from Coursera that have given me the foundation to at least understand the abstract. :)
samg_··on Why becoming a data scientist is not easier than you think
If I have learned anything from ml-class, pgm-class, nlp-class, and now neural-nets, is that becoming a data scientist is one of the hardest things I'll ever eventually succeed in doing.
samg_··on Amazon Orders More than 10,000 Nvidia Tesla cards
Yeah, I did a few trial runs on the cluster gpu instances maybe 4 months ago. I found that, while the gpus themselves were really quite fast, moving data in and out of gpu was not. Maybe amazon will focus on increasing bandwidth to the gpu for the new boxes.
samg_··on What Americans Actually Do All Day Long
"The numbers are, of course, averages. So parents may spend much more time, say, caring for children, while people without children will spend no time at all."

Stuffed at the bottom, of course. Averages lie!

samg_··on Twss.js
I don't think that would be a classifier, or at least not reasonably. You could have "In Soviet Russie X Y you" for each X,Y as your classes, but that would be unreasonable.

Yakov Smirnoff is a structural joke. You would need to parse sentences, pattern match, transform it, and then do some kind of regression on the phrase to get its humor quotient.

The Stanford Parser for structural parsing, then some custom pattern matching and transforming code, might get you somewhere.

samg_··on Designing Great API Docs
It's in a very early stage (not production ready), but some colleagues and I have been working on a automated testing DSL built on top of RSpec that lets you generate API documentation from tests which validate the documentation is correct. It requires RSpec and a Rack-compatible service (incl. Rails). I think the idea has legs.

https://github.com/zipmark/rspec_api_documentation

samg_··on Rails 3.2 RC1: Faster dev mode & routing, explain queries, tagged logger, store
Just upgrading to rspec 2.8 made my test suite run 10x faster. You might have David to thank for a lot of that speed up. :)
samg_··on How to read Haskell like Python
For me, one of the biggest obstacles to understanding lots of Haskell code is opaque infix operators.
samg_··on [dead]
It would require an Internet connection, but GPS + some weather API would do.
samg_··on Show HN: AI tool reads privacy policies, tells you which sites sell your info.
I am just learning some of these machine learning tools and am rapt, so forgive me for asking, but would you be able to explain a little about what you are doing?

How are you generating features? Stanford parser? Are you using logistic regression or something more advanced?

I love the idea. I am interested in applying some of these concepts myself. Do you have any ideas that you are not able to pursue yourself, that I might take a crack at?

samg_··on Google+ as your blog (using G+ API)
I would happily use G+ as my blog for programming related things, but I would need to be able to make posts public and not spam my non-technical circles. Is that possible?
samg_··on [dead]
There's a lot of room to grow here. Mostly the choices in channels are limited. I think that if people could write and share channels through some API, a ton of use cases could pop up.

This reminds me of Yahoo Pipes, but with webhooks instead of pubsub. Although, it seems they are using polling instead of webhooks.

samg_··on My Year of Riak
It's so important to evaluate whether you need range queries before picking a tech like Riak.

They are coming, though. That's what I hear, at least.

samg_··on Glasgow Haskell Compiler 7.2.1 released
You are right about query languages being a good for for monad comprehensions. See Torston Grust's dissertation[1], specifically "Combinators from Monad Comprehensions."

1. http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.88.9...

samg_··on Poll: How much of your work time is typing code?
Last week I spent 17.5 hours in MacVim, 7 hours in a shell, and 2 hours on Github. That's out of 42 total recorded hours. On a related note, I love RescueTime.
samg_··on OS X Lion Now Available in the US Mac App Store
There is a great post on the macports mailing list that identifies and explains some issues installed software might have after upgrading:

http://lists.macosforge.org/pipermail/macports-dev/2011-July...

I got bit by the Libc part, and I bet a lot of homebrew users will be as well. FWIW, on macports svn at least, these issues are resolved.

samg_··on The Trouble with Nathan Myhrvold’s Pro-Patent Arguments
1. Ad hominem 2. Begging the question 3. Unsubstantiated generalization 4. Mis-quote 5. Misunderstanding the original comment

I don't necessarily agree with Myhrvold, but I don't think this guy is giving him enough credit.

The problem Myhrvold gives is real: large companies with lots of resources can, if they choose to, steal your idea and try to compete. This problem comes up on HN periodically, and I think the canon is to simply have the better product. I would call this playing field more level than the one where entrepreneurial teams can't compete at all.

samg_··on The lsm command for Latent Semantic Mapping
I've been playing with some clustering stuff in my free time for the past few months.

What I've found is that the problem seems to get a lot more reasonable if you know how many clusters there are.

K-Means requires this information, but afaict agglomerative techniques don't. I wonder why this tool's agglomerative clustering method requires the number of clusters as an argument.

samg_··on An Intro to Backbone.js: Part 3 - Binding a Collection to a View
I didn't meant to say that Donut was itself a mapping from data to representation, just that there is some kind of mapping somewhere. I absolutely agree that Donut should not be concerned with its representation(s).

In Flex, this is managed by a 2-part view consisting of the collection view (List) and the item view (ItemRenderer). When creating the List you pass it its data provider (oft. ArrayCollection) and its ItemRenderer.

Perhaps this example could benefit from a similar separation.

samg_··on An Intro to Backbone.js: Part 3 - Binding a Collection to a View
Contrived examples like this have a problem, where the code example is too complex compared to the very simple task, in this case keeping a HTML list populated with items from a JS object.

I have used binding mechanisms in the Flex framework, which act in a similar way. The model object dispatches events which the view listens to and updates its own representation. In Flex the model object is often an "ArrayCollection," in this example, "Donuts." In Flex the view would often be some kind of "List" object, in this example, "DonutCollectionView."

The Donut aspect of this example is the contrived bit. It's just a generic list. Donut could just be any Object that maps to some kind of HTML representation. DonutCollectionView could just be a CollectionView, that passes along that representation to a HTML list.

The plumbing in this example is something I don't really want to write if I am using a framework. If I had to write it, I wouldn't write it like this. Am I misunderstanding something?

samg_··on What OOP Isn't
I find that it can be valuable in a GUI toolkit. If I want to change a small part of a UI component, I can subclass it, change what I want, keep the rest, and classes that used the old component can use the new one too, because of subtype polymorphism.

Composition can work for a lot of these problems too. It depends on the scale of the modification, I guess.

samg_··on The language I wish Go was
The fact that the subjunctive mood really only matters for one verb to me is an equally compelling argument that a) it's not a big deal that people forget and b) people should just remember it.
samg_··on This is my in-progress collection of CSS3 buttons. Any ideas for more styles?
Navigation buttons: Back, Forward, Up, Top, etc.
samg_··on Geekiest Hacker News comments from the last month
Can you be more specific about the cluster membership testing? Sure it is based on some "distance" calculation, but how do you avoid long chain problems inherent to clustering algorithms? And to reiterate, do you need to know the number of clusters ahead of time?
samg_··on Homeless Experiment
This guy needs to watch Preston Sturges's "Sullivan's Travels."
samg_··on Geekiest Hacker News comments from the last month
What algorithm is used to get the centroid clusters? Do you need to know the number of clusters in advance? I am familiar with max-link/min-link/avg-link hierarchical algorithms, but not centroid related ones.
Page 1 of 2Next →