skysight-inc/HackerNews huggingface dataset:
Yes, yes, I get the point about not having to write a huge amount of code to account for multiple platforms because of, say, differing levels of OpenGL support.

But IMHO this is a pretty narrow definition of cross-platform success. In this case shipping this wonderful cross-platform package on multiple phones results in many customers being unable to play - either due to excessive poor performance or just plain lack of input devices.

So, what's a dev to do at this point? Well, that's easy, start writing device-specific code. That phone has a convoluted direction pad that doesn't work for the game? Well, switch to something else. This one has a poor graphics chip? Let's gracefully degrade quality to get some speed.

But wait, we just nuked the primary benefit of standardization!

This is my original point: when you standardize it can't just be half-assed, and that's what I see on Android right now.
Tail recursion optimization, not all calls. So no continuations, etc.

And it's probably slow as hell.

And I'll knife you if I see you using Python like this.
"No interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple’s Published APIs and built-in interpreter(s)."

-- Apple iPhone SDK agreement
I think that maybe I could have stated my point more clearly. I was just pointing out that except for a few examples, RBP does not talk much about Rails at all. I can say with near certainty, however, that the dynamic toolkit chapter will really help folks understand how Rails implements domain languages and does its meta-programming magic.

What my book won't tell you is anything about Rails's API.
Yes But its all offset - so that makes it okay!
;-P
IE 6 supports HTTP 1.1 and HTML 4. If your resources are completely unusable (not merely ugly) whenever optional features like scripting aren't available, maybe you can cost-justify not finishing the work, but don't blame IE when your resources don't even work in ELinks.
Being able to brute-force mentally these kind of vans/cars problems is a useful skill in life, but it's not going to be learned by solving systems of equations.

Actually, if you fudged the numbers a bit, you'd end up with equations that yield non-integer solutions, which you'd then have to play with in order to get an acceptable solution in real life.
The corollary is that it ought then be more important to teach how to recognize what specialisms different situations require than to teach the specialisms themselves. That way, more people benefit from the powers of delegation and specialization.
Perhaps not - but I rather like the idea of four personal hand written notes in our four missile subs, which are hopefully never opened and destroyed when the PM changes.

I rather hope they say "Don't fire your missiles at anyone, you will just make things worse".
In most of the US, "wrongful termination" is an urban legend. In over 40 states, employment is "at-will". You can be fired for any reason or no reason.

The exception is for people working under a contract that explicitly spells out remedies for termination without cause. Almost nobody has a contract like this.
Weekend Reading: The Dip by Seth Godin
It's about time. If Google is willing to take a stand against China this is the least it can do back home.
Of course, but I'm not saying that computers shouldn't become easier to use and more elegant--they absolutely should. I'm saying that they should become more capable at the same time, not less capable.
For anyone interested in this kind of stuff I can recommend this book:

http://www.amazon.co.uk/Secret-State-Whitehall-Cold-War/dp/0...

The story of how the government planned to communicate with the V bomber fleet is wonderful...
> Lifeboat Ethics: the Case Against Helping the Poor essay: http://www.garretthardinsociety.org/articles/art_lifeboat_et....

I can't believe I never read that before - thanks for link. Disagree with a good bit (I'm very pro-immigration/open borders to anyone who can support themselves) but the discussion on how programs like Food For Peace are lobbied hard and silently for by businesses who stand to profit was crazy. Wow, what an interesting summary. Can't believe I haven't seen that one before.
I'm still in education, doing my A levels - and I experience questions of a fixed form all the time.

Now this seems quite good in principle. In lessons you learn about the same ladder against the same wall or whatever, with very slightly changed values each time. Then you do the past papers - and it has the same problems - so you end up with a nice qualification at the end.

The problem with this is what I experienced today. The examiners changed the exam - not massively - just enough so that the standard solutions people had learned became worthless.
I think it's somewhat dishonest about the uniqueness of visitor's fingerprints. I've tried it three times and been told I was unique each time. However, the last two times consisted of me visiting the site and, without doing anything else at all, refreshing.
;; Any programmer reading HN long enough to experiment with some lisp / clojure ;)
(defn factorial [n]
(apply * (range 1 (+ n 1))))
This for me officially means I no longer have to support IE 6 for my app. Whew, bullet dodged. Sure wasn't looking forward to fixing those bugs.
"I've got a lot of memory" or "runtime is more importatant than initialisation" programmer

fact = init_fact()
...
res = fact[x]
Cool, it's like the data is surfing a web made of people (or inanimate actors), carrying a browsing history with it.
24/7 Programmer
Guys, my typical day is work 9-10 hours, get home, code another 6-7 hours for my own private iPhone apps. Friday or Saturday I usally get drunk - Sunday is a full day of coding. Been doing that for half a year and doing great so far, anyone else has that lifestyle?
The only hope is a javascript-based interpreter, which bypasses the SDK. We'll see how fast the A4 is, I guess.
I tried adding a comment to one of those posts and it didn't work.
Tell HN: someone hacked thesixtyone
In what appears to be an immature backlash from a disgruntled user, someone hacked thesixtyone. Although I agree thesixtyone's new design has adversely affected its usability, this was probably not the way to protest that fact. What do you guys think; is this a harmless form of protest or are there other more effective ways to express disgruntled feelings?

Edit: It looks like it has been taken down, but there was a page that had discordant noise with statements protesting the 'sucky' new design.
Yes, rights with respect to Government. Article III addresses the power of the courts.
Emacs is designed to be used 100% by keyboard... one way it has evolved is to support chords (holding down multiple keys then pressing another)... This keyboard is flat and the keys do not have big "trenches" between them, which makes it easy to hold down (for example) shift and ctrl at once.

I have not experienced eye strain from the display brightness, though a few times I have temporarily made the font larger (I find that sometimes I just feel like using a 12pt font to write code)...

The netbook is somewhat slow (about 70% the speed of my regular laptop for things like running a test suite, etc. I have actually enjoyed this and taken the extra time to take a few deep breaths and practice mindfulness :) I know it sounds weird but it's easy to get caught up in the rush to write more code -- to the point where even a very fast laptop will feel mind-numbingly slow at times... I know this one is a bit slower, and by accepting that and enjoying the occasional moment of patient waiting I have come to enjoy some of those previously annoying slowdowns...
Hulu’s Plans for the iPad, the Mobile Internet
Well, of course this is not a harmless protest, all users of that site suffer from this, and it does big time damage to that company.

I can't see in what way it has been 'hacked' (defaced?) though.

It doesn't matter what you change to a website, there will always be a portion of the users that dislikes it.

Some people simply don't like change some people simply like to be jerks and will use any excuse.

The site belongs to the owners to do with as they please, it is not exactly a community. Communities are different in the sense that I believe they belong to the participants, not to whoever built it.

They get to reap the benefits, but you mess with communities at your peril if you do not involve the users in the decision making process.
Maybe it's only in the UK, but here she's constantly joked about as being a man by comedians/comedy TV shows etc. Cruel, but quite funny really :/
I can deal with hardware fragmentation, but I am still concerned with software fragmentation. For instance, we (Bump) have different contacts code for Android 1.x, Android 2.x (yes they were supposed to be compatible), and HTC. Bump is not stable on several devices that have changed the contacts subsystem but that we do not have time to support individually (and we can't compile to install on only a subset of known working devices). And I am sure there are problems on handsets we don't know about (there seems to be a new Android handset that we have never heard of on our servers every week). This may be a bigger problem for us since we are so tied to the contacts database and it seems to be a popular subsystem to change but an unpopular one to developers. In the end it means more time bug fixing than feature developing which is too bad.

That being said we are extremely excited about the openness of the platform and the features that enables us to build. :)
Bruce Eckel's Free Electronic Books
Ask HN: Why should programmers/developers should blog?
I was having a talk with one of my good buddies and he was adamant that if you (aka myself) plan on having any part in tech (I'm studying CS) that you should blog, use Twitter and it seemed like he mentioned ever other social networking device.

My Questions:
-Is doing so a definite must? and why
-If so what social "channels" are "best"

Thanks!
Visiting the site sets a cookie on your machine. It would appear they are checking that cookie to determine if you get counted again.
Why on earth would you want to build a website using four different languages?

Isn't the fact that you always get HTML+CSS and JavaScript tossed in for free enough of a nightmare?
Why would this be a problem? If your app costs a certain amount, Apple gives you your 70 percent cut when anybody buys it, regardless of what device it runs on.

So the fact that iPhone apps will now run on the iPad as well seems like a good thing for developers.
I completely agree actually. I'm not a huge fan of her music (or the genre), but she's an absolutely brilliant businesswoman, musician and designer. She meticulously engineered herself to be sellable, and was extremely successful at it.
You still have to either hold the thing up somehow, or look straight down at it in your lap / on the table.

If you use it in a dock, you have to hold your arm out straight in front of you to poke at it (no mice, even with a keyboard).

Apple didn't do anything to address Gorilla Arm. They even made the thing weigh 1.5 lbs by stuffing it full of lithium-polymer to get that 10 hour battery life.
Mysterious Gamma-ray Flashes in Earth's Atmosphere
Tesla Files For $100 Million IPO
I was torn between those two formulations, but decided on the reduce because the academic purity of an implicit hylomorphism ;) However, your formulation is more idiomatic of a lispy solution.
This is a similar issue to Journalists writing stuff they retained copyright on and then saw re-used for other media.

Personally, if I were an iPhone developer (which I'm not) I wouldn't have much a problem with it, and I'd do my best to release an iPad version with some extra bells and whistles that only works on the iPad, then give users that buy both a discount.

Everybody wins like that.
"definite must"? If I find a successful developer, for some value of successful, that doesn't blog, would that prove your friend wrong?

You need to decide what your goals are. Are you striving to optimize your career for followers/notoriety? Than yeah, having a blogging/twitter/social media presence is a must. If you're striving to optimize your life for maximum profits and earnings, than having an online presence can help, but is probably not a must. If you're striving to become a great developer/programmer and are doing it for the love of the craft, then spending time blogging/twittering/etc will probably get in your way.
> Not big of a deal, until someone who is pregnant, immunocompromised, or of adult age with lowered/no immunity to chicken pox gets

Immunocompromised and old people (and high risk people such as doctors and nurses) should be vaccinated if they did not have Chicken Pox as a child. The same goes for yearly flu vaccines (which are only given to people that are immunocompromised or old).

But there is no reason to immunize everyone else.

> but it is quite selfish to think it's only about the child in question.

That is an extremely bad argument (and usually used to justify the removal of a parent's responsibility over his child).

> But parents will take that as an excuse to not vaccinate their kids until their kids have probably had sex, at which point it might be of reduced use as your kid might already have been exposed. Is that really something that should be acceptable?

A parent is a child’s guardian until the child is of age. You mentioned HPV. Yet that is a perfectly preventable disease. Why not let the parent’s decide for their children – and then let the child decide for him/herself when they are of age.

Btw, the phenomenon of teenagers having unprotected sex with multiple partners is a consequence of dysfunctional American culture. In many other countries it does not happen this way. I recently read a story about a school in Oregon (if I recall correctly) that gave out condoms to 13 year old children. This is fairly shocking.
FTFA:

Glass hurts, but it gives. So does grass. Haystacks and
bushes have cushioned surprised-to-be-alive free-fallers.
Trees aren’t bad, though they tend to skewer. Snow?
Absolutely. Swamps? With their mucky, plant-covered
surface, even more awesome. Hamilton documents one case of
a sky diver who, upon total parachute failure, was saved
by bouncing off high-tension wires. Contrary to popular
belief, water is an awful choice. Like concrete, liquid
doesn’t compress. Hitting the ocean is essentially the
same as colliding with a sidewalk, Hamilton explains,
except that pavement (perhaps unfortunately) won’t “open
up and swallow your shattered body.”
Just because Google did it on a couple of their minor properties doesn't mean doing the same won't bight you in the butt. Don't be foolish, they haven't discontinued IE6 support on their search service so obviously they still like having those customers.

Edit: spelling
The other day I found out that MSN games don't support IE6. Google and Microsoft are allies on this one.
Well, that is a fundamental problem, not a problem specific to Android.
For years, pc game makers have complained about the costs of developing for PC due to varying support from graphic cards.

So, you end up having to write various rendering engines with a lot of conditionals and the ability to change the setup via a menu.

Now, add to this a crap-load of varying input devices, single/multi touch screen, and you've got the same problem that PC game makers have but worse.

It's not the API that needs to be standardized, but the hardware. The only reason that the iphone doesn't have this problem is because they only have 2 or 3 devices and they're all pretty standard hardware-wise.

Most console game makers site the reason of developing for a console is the standardized hardware. However, you get lock-in with that.
So, it really is a fundamental flaw/problem.

Beside, that's why programming languages have 'if/else'.

Yes, you have to do a lot of testing on your end, but you're not stuck to one platform.

Also, if you want to program your run of the mill program, then the standardized API is more than capable. But like I said, if you're making a (high-performance) game, you have to sacrifice things, this is true for ALL platforms.
While you're waiting for PFDS, here's Okasaki's thesis (http://www.cs.cmu.edu/~rwh/theses/okasaki.pdf). It's the seed of the book.
Maybe it's an attempt to flush their database (and pages) of the various spam people have left all over it.
"Tinkerable" and "steep learning curve" are orthogonal.

In fact, what the article's author is decrying is that this thing without a steep learning curve is completely un-tinkerable. That, per his argument, is what will cost us some chunk of the next generation of programmers -- that, in pursuit of ease of adoption (and/or control), Apple has lopped off tinkerability.

You're absolutely right: if I want to tinker, I have more options available to me today than anyone ever has before. But it's not me that's being cut off from tinkering. It's the novice computer user, who's only beginning her journey of discovery into the possibilities these incredible tools can offer -- because the tool she has in front of her, as it's been given to her, explicitly excludes those possibilities. She doesn't know what Arduino is; she doesn't even have a concept for it. As far as she's concerned, FPGA is something a golfer might join. Those are things for people already at least knee-deep in tinkering.

All she knows is, "Wouldn't it be cool if my iPad had ... ?" or "Wow, I wish I could ... " And the tool she has not only gives her no ability to explore those possibilities, it looks like it's designed to actively impede her from exploring them.
You can target specific hardware features (keypad, touchscreen, etc.) in the package manifest. The Android Market uses this to filter out apps that can't be run on your phone.

It's not a really a matter of 'least-common-denominator' design; it's a trade off between how wide of an audience you want to reach and how many features you want to use.
That would hurt Google earnings a lot since IE6 is ~20% of global browser market share (http://en.wikipedia.org/wiki/Template:Msieshare1)
I see that. I'm totally on board with what you are saying now. Cheers :)
It's more of a computer for the present then, not the past.

It will make money for Apple in a similar fashion to the way the Wii made money for Nintendo. If it truly is for the masses then the only success or failure is based on if those masses adopt and use it.
Your link includes a flag indicating the browser allows JS.

For those who run NoScript or disable it:

http://panopticlick.eff.org/
I prefer not to think of it as "calling out" someone because I think that phrase has confrontational connotations. Rather, I just highlighted a problem in an otherwise valid point. maxwin edited is comment and now I'm in full agreement with him. Rather civil discourse if you ask me. :)
So, does this mean that Google will no longer be testing on IE6, or that they will actively block/disable their products on it?
Well, who is going to feel the knife is the IT departments that keep prohibiting FF, etc. on their employees' systems.

...and the poor slobs who got sold software that would only work via IE6.
We spent 10X this number of bank bailouts and such. That didn't piss normal people off because the messaging was that it was needed to fix the economy.

I think you're out of touch. Virtually 100% of the Republicans I know were completely opposed to the bank bailouts, and a huge portion of the liberals I know were as well. Almost every poll I saw showed that the majority of Americans opposed bailing out Wall Street and the auto industry.
In case you haven't seen it before: Star Trek's PADD
I like the 2nd junior version best.

fac 0 = 1
fac n = n * fac (n-1)
A special report on social networking: A world of connections
keep a journal. whether or not you post that online is up to you.
> The exception is for people working under a contract that explicitly spells out remedies for termination without cause. Almost nobody has a contract like this.

You can negotiate for it or look for a job with it if it's important to you. A secondary effect of making it harder to let personnel go is that it makes companies more cautious when hiring. I'm thinking of situations you get in places like France, where a company isn't sure if they'll need the extra personnel in a while, so they rely on temp workers or go understaffed so as not to risk having problems letting people go later.

Tangential: I think people feeling more comfortable freelancing and doing entrepreneurship and transitioning in and out of salaried jobs and freelancing and building companies will greatly reduce employee/employer tensions. Lots of people tend to think of it as "their job" as in their property and a huge part of their identity, which I think is bad for their personal and economic growth.
Norvig posted a similar algorithm using a hashtable instead of a trie: edits() in ngrams.py at http://norvig.com/ngrams/

You use a table of all prefixes of all dictionary words. This might be more or less efficient than a trie, depending on implementation; but in interpreted Python the built-in hashtables are bound to win.

(It's descended from code I sent in response to http://norvig.com/spell-correct.html, rewritten to return a dict of candidates each paired with a description of how it's different from the original word. There's a bug of sorts in that the result set misses a very few candidates his first article's code finds, unless you extend the edit-distance cutoff; I only noticed the problem after I'd mailed him the code. I'm not sure if the OP's algorithm has the same shortcoming -- I haven't read it closely.)
Let's take it as a given that the iPad and like devices won't kill normal computers any time soon, if ever, so those of us who know we want to tinker will have a place to do it.

The question, then, is if one is designing a mass-market computing device, is the ability to tinker with it going to produce enough good in the world to offset all the misery it causes to other people? For every person that saves ten hours using VBA to program their spreadsheet, how many other people lose hours because they get a virus or install incompatible programs or corrupt some obscure system file?

In other words: you're 100% correct that there will be negative consequences, but don't forget that there will be positive consequences as well. It's a judgment call as to which side you think weighs more heavily and where the overall balance will be. Yes, you lose something important and valuable when you lose the ability to tinker. Yes, the world would be better if you could have that AND not have people frustrated and crippled by their technology. But no one has figured out how to do both yet.

I think it's fair to say that you have to make the choice, and you can't have it both ways. And given that choice, my personal accounting tells me that we gain a lot more by removing the frustration than we lose by removing the power. While we lose something, I think we gain a lot more, and I don't see any way to gain it without giving something up.
Seriously. "No flash = no porn" is a pretty base move (also, HTML5 video is surely only a matter of time...)
I'd like a source for that claim, because there are some free DLCs for XBOX 360 ...