HNHacker News
TopNewBestAskShowJobs

pgroves

935 karma · joined November 17, 2010

http://designbyrobots.com http://petergroves.com
submissionscomments
pgroves··on Amateurs beat specialists in data-prediction competitions
I still find it hard to believe the people in the top 10 aren't all at the theoretical limit of predictive accuracy with their final order being determined by nuances in the experimental design (things like how the raw data was collected).

Which would be the sort of thing statisticians live with all the time, except that Kaggle then makes it winner take all.

pgroves··on Amateurs beat specialists in data-prediction competitions
If I create 1000 predictive models, with random parameter settings, some of those models will outperform others. In fact, the accuracy rankings of the models given a single hold-out validation set will form their own distribution. It is difficult, if not impossible, to tell if one model outranks another b/c it is actually better or just occupies a different place in that distribution due to the random properties of the hold-out set.

So, why do you believe this isn't happening when hundreds of people submit their models to be scored against a secret hold-out set? Is there any evidence that the hundreds of entries are forming a better distribution of accuracy scores than random models? Is there evidence the winners of these competitions truly have better models and don't just have a luckier placement in a random distribution of accuracy scores?

pgroves··on How To Land Any Major Brand For Your Startup
This is currently #1 on the frontpage. I have to assume it got there by skeezy methods like those described in the article.
pgroves··on Facebook's Gen Y Nightmare
I don't think this scenario could play out that way.

- Facebook profiles can be made inaccessible to non-friends. People who post pictures of themselves naked and using drugs use this feature.

- The hypothetical conclusions drawn are only possible if users post extremely frequently and in great detail. Otherwise, the predictive analytics will suffer from garbage-in-garbage out. Huge companies spend millions of dollars collecting decent data, and the claim here is that a 16 yr-old's facebook profile will have high quality data.

- If the situation presented in the article gets even close to coming true, people will know about it and compensate. The end game won't be all-knowing companies, it'll be SEO for social media profiles that make people look good for a fee.

[edit: removed meanness]

pgroves··on Ask HN: Freelancer? Seeking freelancer? (September 2012)
Seeking Work. Custom machine learning development.

I typically build full stack prototypes or the "analytics" component of early stage products.

Primary Tools: Java, Ocaml, Ubuntu, Rackspace Servers, Git, SVN, J2EE/Maven/Jetty.

Secondary Tools: Ruby, Python, Django, Mercurial, Postgres, MySql, Twitter Bootstrap.

Up to 6 month contracts.

I'm doing freelance work to bootstrap my company, designbyrobots.

Demo Video:

http://designbyrobots.com/2011/09/06/automated-design-of-tra...

Resume:

http://petergroves.com/20-Resume/Overview.html

pgroves··on Kickstarter hides failure
>>> First, failed projects aren’t actionable. No one can back a project that’s already missed its funding goal.

Right. This is common-sense UI design. Why would it be better to see a lot of information that no one can do anything with?

The successful projects also aren't actionable, those probably get displayed for purely marketing purposes. That seems like a pretty normal sales tactic (like testimonials on an infomercial).

pgroves··on I put my family business on Facebook. Here’s what happened.
IMO, this experiment would have worked on LinkedIn. The targeted ads I see when I'm in there are way applicable to the "professional me" than FB or Google ads. LinkedIn just makes more sense for a B2B marketing campaign. I'm sure the numbers (of users) are all smaller, but the user characteristics that lead to getting shown an ad are better discriminators in the B2B case.
pgroves··on All the oxygen trapped in a bubble
They invented Ruby on Rails.
pgroves··on Ask HN: (Self hosted) App Hosting platform for developers?
Why can't you set up a virtual server with your default setting and applications and then clone it? (I'm really asking for more details, not making a suggestion in the form of a question.) You also get little benefits like having your .vimrc and ssh keys copied over.

That's pretty much what I do, and I wouldn't want to have to maintain an additional "personal heroku server" that would automate the deployments in the way you're talking about.

pgroves··on What's The Best Language For Safety Critical Software?
It's worth pointing out that Airbus has a large presence in France and Ocaml is from a French research institution (INRIA). I highly doubt that's a coincidence.

Disclosure: Ocaml is my favorite language by far.

pgroves··on Want good programmers? Then pay them.
But the point is that if you drive to a gas station, there is gas to buy. Imagine you drive a delivery truck, the price of gas goes up, and you go out of business. It means you didn't have a profitable enough business to handle the reality of the market you operate in.

Companies that complain about not being able to afford decent developers are just saying they don't have a strong enough company to cover the costs of the inputs to their business. It doesn't matter if the input is oil, steel, baking powder, or software developers.

Companies that can afford high developer salaries when there is a shortage are the ones that get a high enough ROI on a developer's time that they can actually buy more of that time at the current market rates, and still have enough left over to pay the executives.

It's not about being cheap vs. generous.

pgroves··on Big Data's Big Problem: Little Talent
I think there will be a day when this will work. But right now my concerns would be:

1) The people looking for outside help probably don't have ANY model, so baselines are difficult. (I use synthetic baselines like just predicting the average of the predicted variable every time, and that's a very valuable tool, but I don't think you could get paid by beating them.)

2) When would you cut your losses on a failed project and move on? That would be incredibly difficult to do on a project that you had spent weeks or months on and not been paid. It's like cutting your losses on a failed trade in the stock market... it seems like it would be easy and obvious until you actually experience it yourself.

3) Once a company was in a position to take you up on their offer, they might as well post it on Kaggle and get a hundred people to work on it for peanuts. I'm really rooting for Kaggle b/c one of their long term goals is to let people like you (and me) make a living doing analytics work like you describe. But right now they just don't have the volume and all the projects pay out just a few thousand dollars (and only if you beat the other hundred participants).

4) If I was a company, and didn't have the expertise in house to build the model myself, I'd be wary I was really getting what I paid for. If I'm paying for a 10% boost in accuracy, how do I measure it rather than just taking your word for it?

pgroves··on Big Data's Big Problem: Little Talent
Man, this is statistics. You should be able to get any result you want!

I'm only half kidding. I can remember writing my first report (project summary) when I did a contract right after grad school. I put in maybe 5 graphs. Two looked good, three looked bad. The project manager just deleted the bad looking graphs and sent it on to the client.

pgroves··on Big Data's Big Problem: Little Talent
deadline because for 500th time someone promised something impossible to the client

This is a killer in machine learning applications. The toolsets rarely cover the entire extent of what needs to be done, so at least some custom code needs to be written. But results aren't deterministic - you don't really know if it's going to work until you run it. Several iterations are often needed to get to the first useable results. It has all the problems of building any piece of software, plus another layer of risk that the accuracy just won't be there with the first thing(s) you try.

My point is... actually agreeing to be the machine learning guy on a project totally sucks because time estimates are almost meaningless, and the modern business culture is to label anything late as a failure.

pgroves··on Ask PG: Can you start a HN crowd-funding venture?
...CD ladders, reinvesting dividend portfolios, index investing, life insurance, health insurance...

advertising securities to the general population isn't guaranteed disaster.

pgroves··on Ask PG: Can you start a HN crowd-funding venture?
I don't think it can be a bubble when up until very recently it was illegal for 'crowds' to invest in private equity deals at all. How can there be over investment from small investors when there is currently zero investment from small investors?
pgroves··on Technical = Coder. Non-Technical = Non-Coder.
The more painful part of the article is the subtext that a startup's "product" is by definition something built in a few months with RoR or Django.

For all the talk of how much angel and V.C. money is available for young companies, it's not going to do much if investors won't branch out into ACTUALLY new product areas.

pgroves··on Stop A/B Testing And Make Out Like A Bandit
This is true in any practical machine learning problem and it doesn't cause as much of a problem as theoreticians would have you believe. Having independent variables, or detecting and accounting for all dependencies, will typically lead to a better result. But when there are dependencies it merely degrades accuracy. It does not destroy the accuracy altogether.

If you were to try to address every possible independence assumption in practice, you'd never get through a research project, let alone get a real product out the door as this company has done.

[Edit: syntax]

pgroves··on Why The US Can Beat China: The Facts About SpaceX Costs
This is how a CEO gets engineers to want to work for his company.
pgroves··on Why The US Can Beat China: The Facts About SpaceX Costs
While I appreciate the sentiment, it's not exactly a fair comparison. The first government rocket launches surely had cost overruns. But were the most recent shuttle launches vastly over-budget?

Launching a satellite these days is a relatively known quantity whereas many horrifically over-budget government projects are doing things no one has ever done before.

pgroves··on Shouldn't Robots Be Doing My Taxes By Now?
I work on optimization software and I'm pretty sure you could do some serious damage to the government's tax collection efforts if you hooked up a genetic algorithm to some very good accounting software to minimize taxes.

The problem with GA's is that they frequently exploit loopholes in their setups, so you get solutions that technically satisfy your evaluation criteria but it's not what you really want. This process is basically what corporate accountants do manually to get ridiculously low tax rates for big companies. Congress writes the tax code but it will always have loopholes, and GA's will definitely find them.

Here's a recent blog post of mine that goes into some of the problems with GA's, which when you're looking for loopholes is actually a huge advantage:

http://designbyrobots.com/2012/03/29/evolution-is-cleverer-t...

pgroves··on Show HN: Firebase, a scalable real-time backend
I'd like to see a term that emphasizes that what web developers consider real time is "so fast it looks instant to humans," rather than guaranteed low latency that another system can rely on (or whatever you consider the true definition of "real time" to be).

So maybe something like "blink speed." (Then we'd have blink speed apps on retina displays.)

pgroves··on Tmux, for fun and profit
I do this a lot, particularly with projects that use a database that might be hard to configure (and the configuration isn't fully scripted). Just get the development version of the DB right once, and then make a copy of the machine in case you mess things up later and need to revert. It's saved me a lot of DB rebuilds, and I don't have to do DB migrations on both my laptop and desktop to keep them up-to-date so that I can run tests from either.
pgroves··on One hiring filter that works
So with all the how to hire threads lately, may I make a suggestion:

Focus on how good your company is on running an engineering department. Especially if you're a startup.

Do you have a VP of engineering who knows what the hell they're doing? Do you insulate the devs from sales people making ridiculous promises? Is your code base in good shape so someone can come in and make a difference without having to learn the complete spaghetti stack? Do you have a well designed deployment procedure that has dev, test, and production environments?

How do you approach scheduling? I'd say this is the number one issue that leads to bad experiences for developers, so tell us up front that you have this under control. Do I ever have to hear a business guy say "I don't see why that would take more than a few minutes..."

In other words, prove that every problem isn't solved with "developers work more hours."

Say something that at least implies you know that these issues exist. They are much more important than ping pong tables and calling each other ninjas. I bet you'll find plenty of pro developers who are sick of their current employer if you do.

Imagine if developers actually learned something about running a software company just from your job ad itself. That would be amazing. I would point to JoelOnSoftware as proof it would work.

pgroves··on Poll: What's Your Most Disliked Programming Language?
I don't know of a good alternative. Thus my grumpiness.
pgroves··on Poll: What's Your Most Disliked Programming Language?
The goal of Java was always to be able to "write large programs quickly." In some ways that sounds terrible by itself, but I think it turns out to be legitimate.

I've been on python projects that need to grow but struggle b/c all the things that make it easy to get a lot done the first few weeks become liabilities very soon. Adding developers to a project that doesn't declare types and encourages just passing around hashmaps is brutal. All the stuff you can't do in Java makes it easy for someone else to understand it and edit it.

I would believe that C# might be a bit better but only being fully supported on MS is a non-starter for many server side situations.

pgroves··on Poll: What's Your Most Disliked Programming Language?
I wish there was some way to vote for that abomination in the poll. Personally, writing Java/Html hybrid templates that are served as html documents and then further manipulated by dynamically altering the DOM in javascript on the client is the stupidest programming style I can imagine.
pgroves··on My 2 Co-Founders Are Being Head-Hunted By Apple, Google and Facebook. Advice?
Getting a call from a headhunter doesn't really mean that much. They are just trying to get someone with a decent resume into the interview pipeline where they will actually be evaluated. I get contacted somewhat frequently by people looking for machine learning devs (including facebook in the past and google quite recently) but there's never any specifics about position, salary, or project. After taking a few calls with headhunters just to see what it was like, I can't imagine someone who is not looking for a job anyway giving them serious attention. It's not a job offer; it's an offer to trudge through their interview process.
pgroves··on The NSA Is Building the Country’s Biggest Spy Center (Watch What You Say)
If this will be one of the most powerful encryption-cracking facility in the world, can we just set our key strength based on it's computing power? So if they end up being able to crack 1024 bit keys, can we just set our keys to 2048 and be ok? And then when they upgrade, everyone goes to 4096?

I'm not a security expert (obviously), so maybe I'm wrong, but in general I don't see how they'll be able to build new monster computing facilities as fast as consumer hardware can be upgraded to use slightly stronger encryption.

pgroves··on JSON.org License Literally Says it "shall be used for Good, not Evil"
Just don't try rebranding Linux b/c you'll end up trying to sell something called Penux.
← PreviousPage 4 of 8Next →