HNHacker News
TopNewBestAskShowJobs

scottfr

1,349 karma · joined May 29, 2012

submissionscomments
scottfr··on How to write a PhD thesis your committee will not approve
The best way to write a PhD thesis is to not write one.

Instead, spend your time writing articles and getting them into journals. You should be able to produce roughly one published article a year [0]. When you have 3-4 published or near published articles, take them and put them together into a dissertation.

Most universities will allow this and it's the approach to developing a dissertation that minimizes your risk (you don't bet everything on one experiment, you minimize the risk of last minute critiques and requests for changes, etc...).

[0] This might seem intimidating when you start out, but if you want a promising future in academia you will eventually need to be producing 5, 10 or more articles a year (with admittedly a lot of collaboration and assistance from other). Setting a strict goal of one article a year as a grad student should be obtainable in most fields and get you on the right track. It will also force you to be disciplined and to produce. When of the biggest risk for grad students is trying to be too perfect or too "big" in their work.

scottfr··on Publishing: The peer-review scam
Of course. The primary goal of academia is the advancement of human knowledge.

Unfortunately, the current ecosystem of journals is to a significant extent failing at that. Possibly introducing a clear [0] profit motive into that system would result in it working more efficiently and better serving academia's primary goal.

[0] I say "clear" because a lot of the current system of journals is primarily driven by profit motives that are only slightly veiled. There are notable exceptions to this, e.g. PLoS, Journal of Statistical Software, etc...

scottfr··on Publishing: The peer-review scam
The fundamental issue with the current peer review system is that most academic research is "valueless" to those involved in the system.

I use the term "valueless" in a very careful and specific meaning. It does not mean the work is without merit or doesn't have large impact or benefits to society, rather it simply means the quality of the work has no value to the peer reviewers or to the journal itself.

* The peer reviewers are donating their time and generally getting nothing in return from reading the work other than seeing what other developments are going in in the field.

* The journal gets nothing from work itself. They are solely in the business of collecting author fees and fees from library.

In this context, I think it is accurate to describe most work as "valueless" to those involved in the system. This naturally leads to sloppy peer review and publishing practices.

What I would like to see is a system that makes all players have skin in the game for the quality of the work.

How to do this? One way would be a new kind of journal where everything published has to be patentable. The journal would pay for the patenting costs and the split any potential licensing fees with the authors/funding institutions in some way. Peer reviewers would be paid and/or get a small cut of the patent.

This would make everyone in the process have "skin in the game" in the value and quality of the work being published. I don't know if the economics of such a model would work, but I think it would be a fascinating experiment.

scottfr··on Starbucks to Revise Policies to End Irregular Schedules for Its 130,000 Baristas
It really is a truly excellent piece of writing.

There's not an ounce of apparent judgement or subjectivity in it. Rather the article is purely an enumeration of causes and effects that leads to a scathing critique of these scheduling practices and the effects they have on people's lives.

scottfr··on IPLANG – an optimization-based language
For those looking for examples of actually used languages designed specifically for optimization problems, there are several out there.

AMPL is one such language [1]

[1] http://www.ampl.com/EXAMPLES/

scottfr··on Ask HN: As a software developer, how do I get into brain research?
Ok, I think you need to decide what you are really interested in.

ML and neural networks research are very different from projects like openworm both of which are very different from neuroscience work and modeling.

So you have three very distinct areas of research and work. Which one are you most interested in?

Of the three the ML side probably has the most guaranteed value to you. Things like openworm are shoot-the-moon type projects that are frankly unlikely to succeed in achieving their ambitious goals. Neuroscience research can be incredibly difficult due to the fact you're dealing with live people and there is unfortunately a lot of hand-wavy, "voodoo-esque" statistical and modeling techniques currently being employed in the analytical side of the field.

scottfr··on Data mining Reddit posts reveals how to ask for a favor and get it
Random pet-peeve. I dislike how the graph in the article has markers at each decile.

This is model-generated data so they could put an infinite of markers at arbitrary locations. The use of markers implies to the viewer that is a data-generated figure, which it is not.

scottfr··on Fab Lays Off One-Third of Global Headcount, Slashing New York City Staff
Remember the CEO's idiotic (and apparently now deleted) blog post: "It's a fucking startup, why are you here" [1].

I guess 1/3 of the staff couldn't come up with a good enough answer. It's a shame they're the one's getting axed and not the CEO.

[1] http://www.fastcompany.com/3029439/most-innovative-companies...

scottfr··on Discrimination starts even before grad school, study finds
"poor work-life balance" is a greater issue for women than men due to childbirth and general fact that childcare and elder care burdens generally fall primarily on the woman in a couple.

"lack of mentors" and "occasionally over discrimination" affect both women and minorities more than white males.

scottfr··on OpenWorm: A Digital Organism In Your Browser
I spend a lot of time working on models. This is not a "poisonous and anti-intellectual" statement, it is simple a statement grounded in experience.

There are dozens of failed projects to make different models work together. It would be such a beautiful concept if we could "snap" different models people built together like legos and watch how they interact and develop together. It is also a concept very inline with the hacker mindset where we all observe the phenomenal success of the UNIX building block approach to getting things done.

It is a great idea in theory, but in practice making models work together is incredibly difficulty. You have massive issues of scale (specifically in regards to temporal scale with process going on at very different rates) and context. This has been tried again and again. There are many software packages designed to make this easy. As a general rule, they simply do not work outside of narrowly focused domains.

What is "poisonous" to science (and science funding) is to overpromise and underdeliver. What is also "poisonous" is to ignore a long history of modeling and simulation work and the hard-earned lessons and failures gained from that work.

scottfr··on OpenWorm: A Digital Organism In Your Browser
I'm sorry, but this sounds like a fantasy land. I am extremely skeptical that you could get a detailed and accurate enough simulation to reveal any useful novel results.

The list of "unknown unknowns" that we don't even know about, yet alone are able to attempt to simulate, is impossibly large.

This reminds me of the old Star Trek episodes where they would simulate the effect of the new-fangled quantum-slipstream-tachion-whatever-warp-drives in their Holodeck and then obtain meaningful results.

Of course, that was nonsensical fiction. I don't see how this could be different.

Simulations and models need to be incredibly focused. The art of modeling is figuring out what to exclude from the model, not what to include. Any attempt to make a really general purpose model/simulation is almost bound to overreach and fail.

scottfr··on How we solved an infamous sliding bug
Could you resolve the issue by introducing an element of stochasticity into the distance players are displaced to avoid collisions?

That way, one player would move right (or left) more than the other player and the collision would still resolve itself.

scottfr··on Show HN: Stencils.io – Graffletopia alternative for free OmniGraffle stencils
What are the pro/cons as compared to Graffletopia?

Graffletopia seemed to be perfectly functional to me.

scottfr··on The Parable of Google Flu: Traps in Big Data Analysis [pdf]
The Google model is designed to predict the CDC levels, not predict actual flu prevalence (which is unknown).

Error in the Google model is by definition the difference from the CDC levels.

scottfr··on The Parable of Google Flu: Traps in Big Data Analysis [pdf]
One issue is that the number of historical data points used in the model is really very very small. The author's point out that the model initially was fit to 1,152 CDC data points.

However, these 1,152 data points are highly temporally correlated (the value at time t is a strong predictor of the value at time t+1). As such, they aren't "worth" very much when building a model. Therefore, the effectively independent number of points (what you generally need to build a good model) is in reality much smaller.

Looking at the graphs, it appears that for each flu season there is a pretty regular spike of flu incidences. This spike could probably be summarized effectively by four parameters:

- Mean

- Standard Deviation

- Skewness

- Kurtosis

Looking at it this way, the number of "independent" data points of a flu season is not 365 (one for every day the year), 52 (one for every week), or even 12 (one for every month). Instead it is only 4.

Thus the total amount of data they had to build their model was 4*(# years). When you have such small data sets, you can't expect to obtain good results.

TL;DR. Time series are very hard to use in predictive models. It is often impossible to generate good predictive models based off them.

scottfr··on Free static page hosting on Google App Engine in minutes
I believe App Engine actually has specific handling for files you identify as being static. This bypasses much of the dynamic overhead.
scottfr··on Honest Android Games
This may just be a function of the blogger's particular interest.
scottfr··on Money can buy happiness
Abstract of the cited article (http://www.nber.org/papers/w18992?utm_campaign=ntw&utm_mediu...):

Many scholars have argued that once “basic needs” have been met, higher income is no longer associated with higher in subjective well-being. We assess the validity of this claim in comparisons of both rich and poor countries, and also of rich and poor people within a country. Analyzing multiple datasets, multiple definitions of “basic needs” and multiple questions about well-being, we find no support for this claim. The relationship between well-being and income is roughly linear-log and does not diminish as incomes rise. If there is a satiation point, we are yet to reach it.

scottfr··on Judge Approves Interchange Fee Settlement with Visa, MasterCard
I expect this will be used as another tool to obfuscate prices. Just like sales tax is effectively a semi-hidden last minute fee in America, I think we are going to start to see all sorts of purchasing method fees at the cash register.

It will start with credit cards but soon it will be for debit cards and there will eventually be a "cash handling" fee if you insist on paying with cash.

These will never be included in the listed prices and they will be just small enough that its not worth it for you to put the items back.

scottfr··on Okay, Google, you officially beat Siri
The author brings up an interesting example where Google Now provides him a tool to automatically identify and describe a TV show he is watching at night. When he later tries to demo this feature to his friend during the day, it simply does not appear.

The author takes this as an example of Google Now being very smart and learning from his behavior. It knows he watches TV at night so it provides him the identification feature during that time period. It doesn't provide it to him during the day, because it knows he isn't usually watching TV during the day (at least this is the author's assumption).

I take away a different message from this example and it is part of the reason I am very skeptical of software like Siri or Google Now.

Fundamentally I believe the one of the most important features of a software application is that it is predictable. When I do 'X', I expect the program to do 'Y' always. If it can't do 'Y' because of certain situations, I should get an explicit, informative error message.

The author's TV example is an illustration of deep unpredictability. It is quite possible that he is right and there are powerful learning algorithms driving the Google Now's behavior in this case. But all I see is unpredictability.

Yes, I want to customize and shape software to my own identity and patterns. But unless I control that process, I am likely to become very frustrated, very fast as a software application changes under my feet.

scottfr··on Create diagrams in the browser
I use the underlying product [1] for a graphical online simulation and modeling program [2].

It really is a top notch diagramming library for JavaScript. It is very customizable and they support it back all they way to IE 6. When I was looking for something in this space a few years ago to build Insight Maker, it was the only thing that was flexible enough for my needs.

[1] MxGraph - http://www.jgraph.com/mxgraph.html [2] Insight Maker - http://InsightMaker.com

scottfr··on No more CSS and HTML, just JS
Similar to something like ExtJS. Using Ext you declare the UI purely with JavaScript (CSS and HTML can be inserted if desired but that is antithetical to the standard practices).

It works pretty well. But when you have complex layouts, your JavaScript files can become very complex with many layers of nested object definitions. I use Ext and love it, but personally I think an HTML markup approach to defining UI's is cleaner.

scottfr··on I'm Building a GitHub for Writers
I'm currently using GitHub to collaborate on writing a book with a non-technical coauthor. Generally it works great, but there are two key issues:

* Changes are tracked by line which is equivalent to a paragraph in a book. If I go in and add a comma to a paragraph and my coauthor simultaneously changes a word in that paragraph that can create issues.

* Errors are very difficult to solve for my coauthor. When Github Window's app encounters an error, it basically says "Just open up the command line and you should be able to figure out how to solve this". Of course this isn't feasible for a non-technical audience.

If your product can fix these two issues (which it looks like it is trying to) it could be very valuable.

scottfr··on Announcing pqR: A faster version of R
Looks great!

One thing R really needs is some sort of dead simple pass-by-reference mechanism for functions. Creating copies object copies every time you call a function on an object is a real performance killer.

scottfr··on Statistical Formulas For Programmers
Just as a rule of thumb, in general the most important assumption that is violated is independence. If the data is not independent and is instead positively correlated (the most likely form of correlation in practice) most equations will overestimate statistical significance.

A small amount of correlation can lead to very biased estimates of significance.

Correlation between observations will generally appear in any time series data or data that is arranged spatially.

Again, just a rule of thumb, but you should be very wary of the lack of independence between observations.

scottfr··on Show HN: jsdares – learning programming visually
Looks similar to what I've tried to do with Modelian [1].

With Modelian, I went the route of developing a Domain Specific Language designed to be simple to learn (which has an interpreter built all in JS). It has things like case-insensitivity that I think make learning simpler.

[1] http://modelian.com

scottfr··on Academia Is Eating Its Young
It seems to me that Microryza itself is an example of one of the key problems facing Academia.

You have very successful sites in this space, and Microryza doesn't seem to offer much beyond these in exchange for their smaller user base and less validated templates and formats (please correct me if I am wrong). It seems to me that everyone on Microryza would have been better served by using Kickstarter or one of the other more established options in this space.

So why don't they? Why does Microryza exist?

To me the answer is the standard academic elitism. A persuasive thread in academia is that everything outside academia is inferior to what is done by the elite in the ivory tower. So accept the long hours and long pay, because you are a member of the elite. Research this arcane irrelevant problem, because you are a member of the elite. Submit to only these few journals and conferences, because you are a member of the elite. Etc. Etc. Mycroryza seems to be embracing this elitism.

Now, this isn't to bash on Microryza; if they can pull academia into this space, that would be fantastic. But I think the fact that they need to exist to make it happen is a shame.

scottfr··on My Amazon bestseller made me nothing
Yes, I'm surprised by that myself.
scottfr··on My Amazon bestseller made me nothing
And I just raised $27,000 to fund writing my first book [1]. I'm a first time author and despite my best efforts agents and publishers wouldn't touch the project.

The world is changing rapidly, and traditional publishing just doesn't make sense for many authors anymore. Also of course refer to the recent discussion on O'Reilly's changing practices [2].

[1] http://www.kickstarter.com/projects/605480326/beyond-connect... [2] http://www.perceptualedge.com/blog/?p=1521

scottfr··on Mathics - A free, light-weight alternative to Mathematica
Looks, very nice. I tried some basic Mathematica functions (D[], Plot[], ...) and at least that subset all worked as expected.

I couldn't find a full table of compatibility with Mathematica though, anyone know where one is?

← PreviousPage 4 of 5Next →