skysight-inc/HackerNews huggingface dataset:
For fun, I'm going to write my thoughts before reading what you said about it elsewhere in the thread.

What do you think of short methods?

I'm skeptical of them. I think it's a mistake to try to make functions short for the sake of making them short. It's a mistake because adding a new function also adds complexity (i.e. more code, plus opacity between the calling and called) - not a lot, but greater than zero - so introducing a function is not cost-free and its benefit needs to be greater than its cost. I found that once I started asking functions to justify themselves this way, I began creating fewer functions and the overall complexity of my code went down.

Factoring code into functions is one of the best tools we have, of course, but people commonly make the mistake of applying it mechanically. A function should exist when the program itself wants that concept, not because you had a block of code that was too big or some duplication and you wanted to rearrange the pieces. The way to address those symptoms is not by adding more code but by thinking until you see how you were looking at the problem wrongly. Then the new concepts, and finally the new functions, appear by themselves.

You only have so many conceptual cards to play and must play them sparingly if you don't want your program to succumb to runaway complexity. A good function is a logical construct that makes sense in the meaning of the program the way a good word makes sense and adds a unique meaning to a language, something you can't quite say as well any other way.

When all you're doing is shifting pieces around, you're missing the most important thing about functions, which is this conceptual payload. After you do that for a while, your program stops evolving as an expression of the problem being solved, because you've built it out of primitives that refer only to the internals of the program rather than to concepts drawn from the problem space.

Side note. I'm writing at such length here and in the GP because these questions are on my mind all the time. I've been working on a hard problem for over two years now in an utterly immersed way, the kind where you dream about it every night, where time itself begins to blur. Our approach has been to evolve the program many times until it converges on a solution. The only way to do this is if the program doesn't grow as you evolve it. How do you build a system such that you're constantly adding new information and behavior to it, and yet the overall code doesn't grow? We've had to figure this out just to stay alive.

One more thing about function length - Steve McConnell cites studies that suggest that short functions aren't easier to understand. IIRC the sweet spot was between 50 and 100 lines, depending of course on the language. I've posted references to this on HN before. One should be careful about believing these studies because the empirical literature on software development is so poor. But it's at least interesting that such experimental evidence as exists runs counter to the "OO short methods" school.
When the parent poster advocated having his children taught by a postmodernist, I think he more accurately wants teachers who can make students think for themselves. In the US you can be successful with a boring centrist mindset, you can go to graduate school and become part of the professional/political elite and not really think too much about things. Of course some elites are brilliant thinkers but DC is not exactly a hotbed of intellectual curiosity these days, and governance suffers.

Historical study can reveal a lot about the contradictions of ideology, the gap between political rhetoric/narrative vs reality. For this reason it can be a very politically charged topic. But even boring (to outsiders) topics are hotly contested—historical study is not ultimately the cataloging of facts, is it about the analysis of change in complex systems over time.
+1 to Mumbai
Of course Khan lectures are not all encompassing just like his lecture on IPOs aren't but they provide a great deal of entry level knowledge.

If the author ever imagined that WW2 could be explained in one short Khan Academy video his expectations were wrong not Khan Academy itself.

Personally, I believe he is a spiteful fool afraid of a revolution in education.
Indeed, when Infinite Loop was built a Mac looked like this:

http://en.wikipedia.org/wiki/Quadra_700
processes == algorithms, right? Doesn't seem very mind-blowing to me.
-- Ups, I forgot to scrape the TOS
What caught my challenged attention was the juxtaposition of this:

“Mr. Khan stands exposed as possessing a historical perspective steeped in academia’s standard issue, postmodern, left-leaning narrative of cultural relativism, multiculturalism, and moral equivalence.”

And then this:

“In a sense, that’s what Internet personalization filters are already doing, creating an echo chamber where we only hear what we already believe. We can’t think about what we’ve never heard of.”

And here I thought coherence was always a fashionable accessory.
If my credit card company can manage to shut down my credit card and not reinstate it until they talk to me because I make $300 worth of charges on vacation, it should be reasonable to expect a bank to provide that kind of anti fraud protection on commercial accounts. The difference is who is liable - if the banks were liable like they are with credit cards they'd certainly be much more diligent.

Banks, after all, pushed online banking with minimal client protections because it was cheaper than paying staff.

The risks may have been minimal when online banking rolled out, but the world has changed significantly in the last five years. The client is not secure, and it is borderline unreasonable to expect them all to be in this day and age. Pretty much any client machine will fall to a persistent targeted attack. Two factor authentication should be mandatory for electronic transfers outside of the institution.
Render a High Detail Leica M8 Camera
Mitchell and Webb have a great bit on this: http://www.youtube.com/watch?v=CS9ptA3Ya9E
How is the entry-interview different if you're an alumni? Do they even interview you or do you get auto-approved for the program?
You mean it "raises the question."

Begging the question means something completely different: http://begthequestion.info/
Maybe banks should be responsible for stronger protection than a simple password?
FYI, I went to this high-school too, and it's a science and tech magnet school. Granted the liberal arts there are a notch above average, but it wasn't what the school was focused on, and from my experience, the history class was not on the level of a good AP class at other schools (though there certainly are plenty of bad AP classes out there).

I don't think this contradicts Matt's point, since the history classes he took were likely better than average for the US, but I feel he was overstating the quality of them.
Hackers target Govt site in support of Ramdev's movement against corruption
twisted - "A completely different set of batteries included."

I have deployed services using both twisted and node - some off the cuff points:

- Twisted is large, and includes many new concepts and vocabulary, with somewhat patchy documentation. There is a big hump to climb over before being productive. I was pretty much there with node on one 35 minute train ride.

- The twisted async. mantra only flies within the (albeit large) twisted cloud of classes. I often find myself deferring to threads etc. for synchronous file IO etc.

- Writing plugins for node is very approachable (including things that interact with the event loop). I use ctypes + .so for the same work in python land, but it took some experimentation and discovery (albeit not very difficult) to arrive at a good pattern for this.

Once you understand it - twisted is an enormously powerful resource, and I am still writing complex services using it. Node gets used for wrapping up computation services.
"Yes, delivery. We can do it."

Edit: - I should point out that the French word for delivery is livraison; but like most languages, day-to-day Quebecois French is porous enough to borrow words from other languages where expedience warrants. Hence le week-end (not le fin-de-semaine), frencher (to French kiss), etc.

As a further digression, I should point out that it seems less common (i.e. less acceptable) to drop anglicisms into informal Quebec French than in Europe, where native French speakers do not feel threatened by a dominant continental Anglo culture. I was amused on a recent trip to France to learn that the French word for wifi is "wifi" (pronounced wee-fee). Since wifi is short for "wireless fidelity", a more canonical French term would be something like fidélité sans fil.
History is replete with narrative fallacy. The only semi-accurate sources are from people who witnessed an event as it happened and wrote a blow-by-blow account of it as it was happening with little to no interpretation or explanation - a liveblogging/tweetstream of it, if you will.
Are you starting to use videos from other people? I'd love to see 3rd party content on the site provided it scored well with both students(attention) and teachers(content).
Testing software before shipping found to help reduce undesired behavior in the field, film at 11.

Also, unconditionally opening a connection before finding out if they even have data to shoot across?
They have one more thing in common; the text is read by other people. And the better written, the more effortless it is to understand.

I think this aspect of it is what the slashdot author is mostly talking about, suggesting that if you write code as if you were writing to the next programmer, rather than to just the computer, your code will be better for it.

Clearly, programming and writing isn't the same thing. Nobody is claiming that and, guaranteed, nobody here thinks that. It's a metaphor and like any other metaphor it breaks if you bend it enough.
"Yes, Delivery, We can do that"

Or at-least I think that is what it means.
I have a bunch of friends at Apple. What you call Google's style is exactly what Apple's style is today, and it sucks. The best amenities are in 1 Infinite Loop, but employees in different groups are in random buildings all around Cupertino. Among other things, it means people end up walking 15-20 minutes just to meet coworkers for lunch.
Yeah....that's a problem ;-)
A Marie Antoinette.
I think the Khan methodology works very very well for elementary math, and I'm a huge fan of the automatically-generated practice problems. These are more valuable than the videos IMHO.

It's valid to point out that other subject matter may not be well presented by this kind of approach.

On the other hand, it's early days. So fast-forward 20-years when you can download a video-game from Khan Academy that will teach you about Vietnam or the Korean war that is exhaustively researched and curated by a hobbyist and veteran (from both sides) community.

Imagine downloading an interactive demo that shows that even if you target an airstrike to within 1m in an urban area, fragments will travel 500 m into neighbouring apartment blocks.

That would be better than kids learning their military history from CoD.
Pusher has a new website
David Clemens (the author of the article) should read the text books presented in American high schools.

People who live in glass houses shouldn't throw stones.
Super creative Ruby on Rails engineer needed to redefine Bollywood.
Awesome product muvi will change how the culture called Bollywood brings connected people together. And we need you on this journey.
Designing Apps using Open Data
It takes a liberal arts major about a second to find the metaphor. ;)
Xygnal is coming: An immersive news experience
Nintendo stock plunges amid doubts about new Wii
Personally I do not believe you could launch a successful currency (long term) based on investments. For now bitcoin early investors (obviously) make more from its success, so they have a financial interest in making the currency successful and will therefore be intending on pulling out at some point to make money. You don't help drive the price from $1/BTC to $20/BTC just because you want to help a magical internet currency.

If someone launched bitcoins without this whole investing thing (where the value changes a lot and is based on how many people it involves) it would be much more stable and usable, but it wouldn't have the easy momentum thing where you can hit a point where people will flock to use it, you'd have to grow it very slowly.
At Georgia Tech up until 2000 or so.

In the class it was often referred to as psudocode, but unlike psudocode in examples in random books/specs, it had a real syntax and you had to put everything you would in a real language or you'd get points off.

It was a great way to learn programming (and teach it too).

*(To disambiguate for the left cost people, GT isn't like ITT, it's of quality closer to Caltech, but much cheaper. Best salary for the tuition school in the nation apparently today)
First paragraph doesn't make since - if there are 5 flips, there are 2^5=32 possible outcomes. If the "odds are low that even one person in the audience guessed it" then I'd expect less than 16 people to be in the audience. However, "about a dozen people" did guess it, implying that the audience is in the hundreds (there are >10 "random" looking sequences of the 32).
Carbonite Support: "Would you please explain about API a little bit."
I was curious to see if Carbonite had an API so I contacted them through their chat support system. Apparently they're not too familiar with what an API is:

Carbonite Support: Hi, my name is (removed). How may I help you?
Me: Hi, Im wondering if you guys have any sort of API?
Me: so if I wanted to write something to access my files, I could
Carbonite Support: Would you please explain about API a little bit.
Me: I was just wondering if there is any sort of API that would allow me to access my files stored with Carbonite. So if I wanted to write a program to access them, I could.
Carbonite Support: Yes, you can certainly access the files using Carbonite's remote file access.
Carbonite Support: With Carbonite's "Remote File Access" you can remotely download individual files to any internet enabled computer.

1. Log into your account at https://account.carbonite.com
2. Click 'View Files' for the backup you wish to access remotely.
3. Navigate to the file you wish to restore by clicking on the folder names to display the contents and subfolders.
4. Once you have located the file you wish to restore, click on it and a dialog box will open.
5. Save the file on your computer to a location of your choosing.
6. Open the file and view or edit the contents.

Me: But if I wanted to write my own program to access them...do you have any sort of system that allows this?
Carbonite Support: Unfortunately, Carbonite does not backup the program files and system files. So, I do not think you would be able to access the files for a writing a program. However, if you can download the files and then try to write the program. This is definitely possible.
Me: ok thanks
You have disconnected.
If the BCS is found to be in violation of the Anti-trust law, what consequences would they face?
Bitcoin is Up Over $30USD -- You Still Think it's Worthless? :)
Does this mean that we're now nearing a solution to the Zombie Nutrition Problem?
Thank you Sal for great videos! You are inspiring me to study maths.

I have a Ba in history and agree with the criticism raised in the article, however I also think it is a problem that many people dont even have a basic scaffold of world events.

History is about making choices, what to say and what not to say, and the way to say it, it is not merely about being familiar with major world events. What is a major world event? Lets go with WW2 , then when you dig into WW2, what would you say is a major event? Fall of France, D-Day, Fall of Yugoslavia, or Stalingrad? Whatever you choose you exclude another event, your choices influences the further storytelling. You have to make choices.

The solution for this problem is very difficult, since you have to begin somewhere in your story-telling, and even when choosing where to begin you take a side. And that side is with you for the rest of the story telling.

History is not merely about events it is also about connecting dots, you can begin by choosing any event and really digging into it until you begin to see the wider picture. Going the other way around is far more difficult, when you attempt to give an overview of the wider picture. You get exactly what you would if you picked 2m wide brushes to draw on a wall.

My suggestion instead is to pick really small pencils and draw thinner lines, introduce the students to any event in world history and work out from there. Only then the students could enjoy seeing (and make themselves) the wider connections.

A teacher in a classroom faces the same problems as you (and more, imagine 20 teenagers), so dont worry about it. :)
Apple plans to hide parking underground instead of leaving vast expanses of asphalt above ground like The Pentagon: http://www.bing.com/maps/?v=2&cp=qgbkxj8kbvq8&lvl=17...
Traditional resets require the CSS author to build styles for every element back up from nothing, or to remove the corresponding rules from the reset. In practice, you get into the situation where the designer doesn't encounter all those tags on a limited mockup page. Then when it comes time to build out the site, and the developer or author tries to format a list, or emphasize text with a <strong> element, neither has any effect at all. When it comes to visual style, any element not explicitly allowed by the CSS designer is denied.

<strong> elements should generally show some kind of emphasis, probably boldface, but a full CSS reset sets them back to plain text. If all you've gained from the full reset is the opportunity to forget to set them back to boldface, what was the point?

This project looks like an attempt to retain the most useful properties of a CSS reset (like consistent default element margins) while forestalling the process of redefining each element piecemeal to look pretty much like what the browser would have shown in the first place.
Completely and totally off topic, but I find the popularity of the "filter bubble" concept fascinating.

It's not as if the vast majority of us didn't already manually create deeply effective filter bubbles, after all; but now that we can blame it on algorithms rather than our own nature, it's much easier to talk about.

(( Once upon a time I thought the internet would be a cultural/ideological melting pot, but it was clear a decade ago that it was having the opposite effect.... ))
Ask HN: How to split company ownership
Company was originally started 2 years ago. Just now starting to get some traction but we haven't figured out who owns what percentage of the company yet. No revenue yet. The only expense so far has been paying Person 2 for time working. No outside funding.

Person 1: Had the original idea. Has been paying person 2 for developing the site out of pocket. This person wants 51% ownership and no less so that they will never lose majority ownership in the company. This person has the money to cover expenses up to a point.

Person 2: The programmer/marketer/designer. Has contributed a lot of time to the company but has been partially compensated by person 1. This person considers themselves an original founder and wants a large percentage of ownership but doesn't have the money to pay expenses when they arise.

Person 3: A potential investor that came into the picture only recently. Has not yet contributed to the company yet.

We are currently at:

Person 1: 51%
Person 2: 30%
Person 3: 18%

Obviously this isn't very fair as person 3 hasn't yet contributed but owns 18%.

What happens if we accept investing at a later date? How does that effect ownership pct?

Looking for some advice...
I disagree. They shouldn't do that.

The price of dealing with the restrictions is justified by the exposure you get to a market willing to pay for goods. The few apps I've had that were rejected were done so justifiably, and when they weren't, we worked it out with them.

Most of this is hearsay, not fact.
He's not arguing that the Smart gets better mileage than the Elantra. He's arguing that the size of the Elantra is unnecessary, and that the Smart's microcar size is better.
Deploying a PHP symfony 1.4.x application onto DotCloud
I'd be extremely interested to see actual statistics on these things, if only they were available. Even more interesting would be to see how it breaks down brand by brand.

Frinstance I'm guessing that the majority of the watches made by certain well-marketed and expensive watch manufacturers (I shan't name any names lest someone glance at their own wrist and feel the need to make an impassioned defence) are bought by people who really can't afford to spend that much on a watch. On the other hand, there are watches in the same price range which are probably only getting bought by people who can afford them, and most of 'em are probably brands that most people have never even heard of.
If interested in reading more, I highly recommend Dan Gardner's "Risk: The Science and Politics of Fear". (Also named "Science of Fear" in some markets.) It's a very good examination of risk perception and the cognitive faults we fall into.
Khan Academy is mostly about math, and it shouldn't be judged almost solely on the basis of one history video. I have my 7 year old doing math well beyond what they've taught him in school using Khan Academy.
Hide Files With Steganography
Awesome ScalienDB tutorial (Twitter + Python)
I realized that the $25 per year was a form of piracy amnesty the moment I heard about it. The way I see it, people pay $25 per year to get an all-you-can-eat music service, since they can always legitimize content they keep on downloading from illegitimate sources.

My question, however, is whether it is even necessary to download any illegitimate content. Nobody needs to upload any music to any servers (iTunes Match claims not to), all they need to do is to trick iTunes to make it look like "Song X.mp3" is actually on their hard-drive. In order to do that all people need to find out is what data iTunes sends to mothership about a particular song. A similar feat was achieved by Dropship.
We're trying our best right now to find potentially interesting instructors. There are 2 or 3 people who might be adding content in the near future. YouTube and TeacherTube (and other sites) already exist for anyone to post a lecture. We think our value is in providing a handful of lecturers that really resonate with students. If I had to guess, we'll have 10-20 lecturers in English within the next 5 years.
As Steve Jobs talked about during the keynote, the idea is to mostly remove the paradigm of files and folders from people's minds. I imagine the iCloud APIs will allow you to hook into iCloud as easily as you would local storage. Which means developer wouldn't need to learn much more to enable it. Plus, it will be single sign-on and you know that every one of your users has it. (no need to explain what Dropbox or cloud storage is)

And of course, for users, it'd be much easier because you don't have to learn what Dropbox is, what syncing is, etc. You open an app you know well and your documents are there. Period. No worries about what device you're actually using, or what file you want to sync or not.

The keyword really is "seamless", for users mostly but for developers too.
Apple shows off its networking savvy at WWDC
Managing and monitoring your Ruby application with Foreman and Upstart
Those who would like a very small, efficient car that actually has back seats and suchlike, might like to check out the Renault Twingo.

https://secure.wikimedia.org/wikipedia/en/wiki/Twingo

Doubt you can get it in the US though.
Buying every existing phone that is sold in reasonable volume across all major networks in all major countries and testing them individually on each release is probably not the testing plan I would go with.
It wouldn't be a ponzi scheme if the value didn't go up, at least for a little while.