hacker news with inline top comments    .. more ..    16 Sep 2012 News
home   ask   best   6 years ago   
Things I've quit doing at my desk justinjackson.ca
31 points by mijustin  1 hour ago   8 comments top 5
jaysonelliot 27 minutes ago 1 reply      
I would add "Eating" to the list.

I eat at my desk all the time, and I really need to stop. When I eat at my desk, I'm generally eating things that aren't that healthy to begin with, snacking unnecessarily, and/or eating too quickly, and doing it in some misguided notion that I'm able to work and eat at the same time. I'm not actually productive at times like that, it just lets me deal with some illogical guilt I feel when I get up to go eat at a table with other people, or out by myself in the park near the office.

When I get up and go to lunch instead of eating at my desk, I'm taking a real break, I'm socializing, or taking time to think.

I gotta stop eating at my desk.

ChuckMcM 16 minutes ago 0 replies      
I disagree about the socializing part, in part because so much of our socializing is driven through the same mechanism we might otherwise do work at. Perhaps Justin might have two desks, one that is the communication/socializing desk and one that is the execution/work desk.

Of course a number of people would love to do that where the TV ends up the display for your socializing function.

praptak 13 minutes ago 1 reply      
Ad procrastinating: I remember someone (Paul Graham?) reporting that he configured a separate machine for procrastination-inducing activities so as to avoid the "just quickly check my feed while this is compiling" syndrome.
_delirium 17 minutes ago 1 reply      
#1 (thinking elsewhere, especially while taking a walk) is definitely true for me, but it does require being in a setting where you're allowed to leave the office for a few hours in the middle of the day to go for a walk in a nearby park. In academia, probably not a problem, but many companies aren't very accommodating.
poblano 14 minutes ago 0 replies      
Has anyone else switched to a standing desk setup? Do you like it?
Want to learn Rails? Start here. zackshapiro.com
10 points by kine  28 minutes ago   2 comments top
nwmcsween 7 minutes ago 1 reply      
Usual things in rails is really simple but doing unusual things requires going down a rabbit hole of google searching, rdoc, blogs, etc due to the modularity (I had this issue with thor) of rails.
Show HN: BuddyHack - Mess with your friends' Facebooks buddyhack.com
16 points by gailees  1 hour ago   35 comments top 8
eugenez 23 minutes ago 2 replies      
I am an engineer working on Platform Integrity at Facebook. Just as friends can't consent to transferring friend data outside of an app, they also can't consent to an app taking actions on their friends' behalf (such as posting a story when the friend didn't consent to it). Even if it's funny.
kurtvarner 47 minutes ago 1 reply      
I appreciate how they were mature and stayed away from inappropriate content. The hack can still be funny without the need to be gay, racist, sexest, etc. I personally like the "It's Your Birthday" one. Props guys!
artursapek 10 minutes ago 0 replies      
How would you "quickly undo" an action that defriends everybody?
freeslave 42 minutes ago 1 reply      
It would appear it's already been blocked by FB: "An error occurred with Buddy Hack. Please try again later."
TobbenTM 1 hour ago 2 replies      
Would anyone care to explain roughly what it does?
gailees 53 minutes ago 1 reply      
Let's say your friend just left their Facebook logged in at your house or got up from their laptop to go to the bathroom for a minute. You're tempted to mess with their Facebook, but don't know where to start or don't have enough time. Just go to http://buddyhack.com, sign in with Facebook, and we will help you hilariously mess with your friend in under a minute!
gailees 38 minutes ago 1 reply      
We just got reported by several users and got temporarily restricted on Facebook.
interg12 53 minutes ago 2 replies      
And API access will be revoked in 5...4...3...2...
Smashing Node.JS book is out. smashingnode.com
6 points by Rauchg  19 minutes ago   1 comment top
terinjokes 1 minute ago 0 replies      
I've always been a bit weary of purchasing technical books for the Kindle: the few I've done that way are largely unreadable. What's the case here?

As for the content itself, I'm pretty good with JavaScript, both for the web and for node. Does this add anything new?

Aaron Swartz Legal Defense Fund aaronsw.com
85 points by sethbannon  2 hours ago   89 comments top 14
edw519 1 hour ago  replies      
Now let me see if I got this right:

  1. Brilliant programmer gets chance of a lifetime.
2. Turns that into lots of money early in life.
3. Decides to change the world in his own way.
4. Consciously & purposefully breaks the law.
5. Has a webpage to get others to pay his legal bills.

I've never met Aaron but I've always enjoyed his writing and looked forward to meeting him one day. But there is something seriously wrong about this.

Aaron should man up, take responsibility for his actions, and pay his own bills.

And if this is his idea of changing the world, perhaps he should reconsider his choices and find a better way of paying it forward to other brilliant programmers who never got the breaks he did.

citricsquid 2 hours ago 0 replies      
They really should include some sort of background or link on this page. For anyone else that has little idea who he is or why he needs money: http://en.wikipedia.org/wiki/Aaron_Swartz#JSTOR

More complete background: http://arstechnica.com/tech-policy/2011/07/reddit-founder-ar...

lhnz 1 hour ago 0 replies      
Why are they prosecuting a man for publicly making available beneficial scientific knowledge that the public have effectively paid for? Is personal gain of a few companies really more important than education, and should it really be enshrined in law?
nostromo 1 hour ago 1 reply      
I wish someone would make a KickStarter for legal stuff.

I've seen enough of these that it could be a real business. (Ex: help pay for a defense against some government intrusion, or RIAA overreaching, or to bring a case to challenge an unconstitutional statute, or to overturn a dumb pantent, or whatever).

It could even evolve into a platform for the political moneybomb we've seen before. (A bounty for the first person to introduce some bill, for example: patent reform.)

bcl 1 hour ago 2 replies      
If you want people to donate to your cause you need to do a couple things:

1. Include some background on why I should care.
2. Provide some level of assurance that this page is actually linked to the issue at hand and isn't just a phishing scheme.

david_shaw 44 minutes ago 2 replies      
I don't necessarily disagree with the motives behind Aaron's actions, but if you're going to break the law in what may be perceived as "civil disobedience," you need to be willing to "do the time," too.[1]

I'm neither encouraging nor discouraging people from donating, but I do think that it's a little off-putting that Aaron's taking what could have been a selfless, martyrdom-filled act of civil disobedience and then changing it into "silly mistake," from which he's asking for help recovering.

[1]: 'Doing the time' as a turn of speech. I doubt Aaron would get actual jail time for this. Then again, I am not a lawyer.

markbao 2 hours ago 1 reply      
Is it just me, or does that payment box look kind of dodgy? I think there's a reason that so many people use PayPal and services like it"people trust a familiar face. But this one doesn't really have any padlocks or any details like address or zip code or anything, and just looks out of character for a checkout page.

As a person that knows about Aaron, I know it can be trusted, but it might not be the same for others. Just a reaction that the folks supporting Aaron might want to be aware of.

adastra 21 minutes ago 1 reply      
If people want to help Aaron, I'd recommend a political strategy as well as a legal one. I'm not a lawyer and certainly no expert on this case, but my sense is that there is something political going on. For someone without a criminal background like Aaron it would seem very much out of the norm to continue escalating the charges as they've done, rather than move toward a plea bargain.

These prosecutors work for the Obama Administration, and ultimately the President. The President has certainly courted the tech/internet vote, and I think some internet activism in this case is worth a shot. But it would need to be done basically right now (i.e. before the election). Are the prosecutors going to drop the charges? No. But some political pressure could improve whatever the terms of a plea deal are.

Disclosure: Aaron and I briefly worked at the same non-profit organization many years ago. But we were essentially in different departments, so while we met once or twice I wouldn't say I know him personally.

gnu8 2 hours ago 5 replies      
I'm not willing to donate. Aaron's goal may have been noble, but his actions are indefensible.
thejerz 2 hours ago 1 reply      
What are we defending Aaron Swartz against? (Sorry for being a boob)
tptacek 2 hours ago 1 reply      
Is Aaron incarcerated?
5xz41s0P8T5N 55 minutes ago 0 replies      
You forgot to accept Bitcoin.
mikeklaas 1 hour ago 0 replies      
What? No kickstarter?
adrianwaj 1 hour ago 0 replies      
He would've got more donations had he put the papers he downloaded online sooner, rather than get busted with 4 million. A journalleaks site would be much more useful than wikileaks.
Neat Algorithms - Flocking harry.me
82 points by bochi  6 hours ago   13 comments top 10
hythloday 3 hours ago 0 replies      
The original paper[0], published in '86, in addition to being a huge step forward over contemporary graphics techniques, is extremely comprehensible and an excellent read. It also goes into some detail about collision avoidance, which is hard to see in the browser demo (boids will avoid the mouse but not in a very large area), and goal seeking, which isn't in it. It ends with a fairly eyebrow-raising testament to the increase in computer power over the last two and a half decades:

"This report would be incomplete without a rough estimate of the actual performance of the system. With a flock of 80 boids, using the naive O(N^2) algorithm (and so 6400 individual boid-to-boid comparisons), on a single Lisp Machine without any special hardware accelerators, the simulation ran for about 95 seconds per frame. A ten-second (300 frame) motion test took about eight hours of real time to produce."

[0] http://www.red3d.com/cwr/papers/1987/boids.html

tsahyt 1 hour ago 0 replies      
The visual demonstration is rather hypnotizing to watch. This algorithm is an example how seemingly intelligent behaviour roots in just a handful of simple rules. In this way it kind of reminds me of Conway's Game of Life: A few simple rules stimulating stunningly complex behaviour.
pacaro 1 hour ago 1 reply      
This is covered very well (a long with many other neat algorithms) in The Computational Beauty of Nature[1], one of those books I keep coming back to

[1] http://mitpress.mit.edu/books/FLAOH/cbnhtml/

mlu 2 hours ago 0 replies      
I once programmed a swarm simulation as a project for a course I attended. You can set various parameters of the swarm and introduce a predator which can try to eat inidividuals of the swarm. You then can set a bunch of escape strategies. This was pretty much fun when I wrote it.

Just uploaded it to my bitbucket repository in case anyone is interested.


wsbail29 2 hours ago 0 replies      
Here's a CoffeeScript port of this algorithm I did awhile ago.


and a demo:


Definitely fun stuff to play around with.

bawllz 2 hours ago 0 replies      
Woah! Super cool idea. So many ways you can take this to a new level. Also, if anyone is looking to contribute to some open source, this would be a great opportunity as there is lots of epic optimization problems in this algorithm to work on.

For example, whats the fastest data structure/algorithm to make searching for neighbours?

runemadsen 2 hours ago 1 reply      
You should definitely check out Daniel Shiffmans "Nature of Code" book that is coming out soon. It's full of stuff like this.
seivan 3 hours ago 0 replies      
Thank you so much! Great article, found some stuff I could definitely use for games I'm working on.
repocussion 2 hours ago 0 replies      
My friend actually recently released an Android game based on exactly this: https://play.google.com/store/apps/details?id=co.uk.iceroad....
jeffehobbs 4 hours ago 1 reply      
oh, FLOCKing. Yes. That is neat too.
Bashttpd - An http server in bash github.com
55 points by alpb  6 hours ago   28 comments top 8
y0ghur7_xxx 3 hours ago 0 replies      
Some other cool guy wrote this (https://github.com/tlrobinson/wwwoosh) sinatra framework in bash. I am using it to control the lights in my house with my phone.

A very simple js frontend sends get requests to wwwoosh, and some bash commands get executed to control a relays board that turns the lights on and of.

It's very simple, consumes almost no memory and is very reliable.

jimrandomh 1 hour ago 1 reply      
This is an interesting novelty, but it can't ever be used in the real world, no matter how far along it gets, because bash is much more susceptible to security holes than normal programming languages.
fuzzbang 5 hours ago 2 replies      
You should clean the data from the user before passing it to the shell. There is a trivial remote command execution vulnerability in the URL ("echo 'GET /;$(cat /etc/passwd)'|nc ..."). I assume there are more.
noste 1 hour ago 0 replies      
How about ddshttpd (http://dd-sh.intercal.org.uk/web-server/)? A web server written using only sh(1), dd(1), and echo(1). It even supports running server side scripts ("ddsh-bin") and setting content type based on file extension.

I'm somewhat saddened to see that they don't own dd.sh domain anymore. It was at least twice as cute as no.de is :)

sarnowski 6 hours ago 3 replies      
Why not using /bin/sh? Didn't saw a bash specific tool (except the function syntax which is easy to convert). And if you really want to use bash, please use #!/usr/bin/env bash so that it is more compatible.
waxjar 4 hours ago 3 replies      
These kind of projects are always so damn cool, but so utterly useless :(
conradev 3 hours ago 0 replies      
I think this one has a better name, Bash on Balls.


pcl 3 hours ago 1 reply      
How does this differ from the cgi-bins of yesteryear?

Also, regarding environment sandboxing: it's probably worth looking at the direction the CGI spec went in.

DreamHost launches DreamObjects cloud storage service dreamhost.com
26 points by tga  4 hours ago   9 comments top 4
lsb 2 hours ago 2 replies      
DreamHost is known more for its low prices than its reliability.

Look at the blurb on Inktank that starts "Inktank is the company delivering Ceph"the massively scalable, open source, distributed storage system" . Follow the link at the end to http://www.inktank.com and the webpage just shows a default successful Apache page: "The web server software is running but no content has been added, yet" .

This press release is over ten days old.

I wouldn't trust them with anything serious.

juddlyon 2 hours ago 1 reply      
Interesting to see a budget host enter this arena, but it makes sense.

Pricing culled from the press release:

- Usage billing: 7 cents per month

- Prepaid: plans go below 5 cents to store 50 TB or more

- Transfer out: 7 cents per GB

McGlockenshire 3 hours ago 0 replies      
This is an interesting move for DreamHost. They built Ceph, and have been using it internally for ages now.

I wonder if they're going to transform their reputation as a no-frills budget web host.

alexrbarlow 2 hours ago 0 replies      
Interesting, What would be more interesting is some stats on reliability, seen as their reputation is one of mass, cheap, hosting.
Google Chrome is detecting malware on The Verge skitch.com
50 points by k33l0r  6 hours ago   22 comments top 9
lukezim 4 hours ago 4 replies      
This is Luke Zimmermann from VOX Media, the parent company of The Verge and SB Nation. We've requested a formal review with Google after going to extreme steps to pull our advertising content to both do a thorough review and error on the side of caution that there wasn't anything malicious being inadvertently served up. At this time we're doing everything we can to get this on Google's radar and get it sorted out. We're continuing to monitor the situation as well and do everything in our power to make sure none of our readers and users are at any risk.
jnsaff2 3 hours ago 0 replies      
The alert says that theverge.com itself is not blacklisted just contains stuff from infected sites.

I would try setting a new hostname for the cdn content servers and see if that works. Assuming of course they have gotten rid of the malware.

MatthewPhillips 5 hours ago 4 replies      
What can a site Owner do in this situation? Does Google provide information on why a site is flagged?
w1ntermute 3 hours ago 1 reply      
I hope this doesn't set back the launch of Polygon. We've already been waiting for months, and according to Press Reset (their making-of documentary for the site), it's supposed to launch in October.
Dystopian 5 hours ago 0 replies      
FYI: SBNation is the main property of VOX Media that owns The Verge.

Something nasty must've gotten onto their CDN, but it wasn't necessarily from The Verge - since they operate a significant amount of websites - it's just that The Verge was using their parent company's resources.

denzil_correa 5 hours ago 1 reply      
ChemicalScum 3 hours ago 0 replies      
I got malware warning on Google Reader today. I wonder if this is related.
mopoke 4 hours ago 0 replies      
Same on feedly.com.
Kickstarting a hackerspace in Iraq boingboing.net
100 points by jebagu  10 hours ago   14 comments top 8
Camillo 7 hours ago 0 replies      
If you take a step back, "kickstarting a hackerspace" sounds like a phrase people might make up ten years from now to make fun of our time's silly jargon. Tubular to the max!
waterlesscloud 10 hours ago 0 replies      
mmanfrin 7 hours ago 0 replies      
Glad to see this finally getting some press. I submitted it to tc, but got no response back. This is definitely a situation for those of you who believe technology is a means of self-improvement, to put your money where your mouth is.

Make me pay my pledge. I dare you.

nemesisj 7 hours ago 0 replies      
Seems like this guy has a good track record and has several successful projects under his belt. Backed it!
longusername 10 hours ago 0 replies      
Looks like the KS is going to end soon and needs some luvin to make it happen. Spread on your networks. I just donated and posted around.
kscottz 4 hours ago 1 reply      
I know Bilal. He is a really great guy and has done so much for the community here in Ann Arbor. I am sure this will be a great success if it gets funded. I have backed the project and you should too.
apollo5 10 hours ago 1 reply      
Such an incredible way to make a difference! Being a part of a hacker space in Los Angeles has changed the course of my life. This is good work!
quaunaut 9 hours ago 4 replies      
One thing that instantly got to me looking at this, is not seeing a single female. Knowing that the gender equality situation in many middle eastern countries is less than ideal, I wonder what their policy on women coming to, and using the space is. Then again, they seem to only be trying to use a space for a day or two and want the community to make one from there, and I imagine it would be difficult to push for a more progressive idea when it's out of your hands like that.
NASA Mars Rover Opportunity Reveals Geological Mystery marsdaily.com
19 points by mikeleeorg  3 hours ago   1 comment top
regehr 15 minutes ago 0 replies      
When these show up on Earth they're often called "moqui marbles." Lots of them are found in Utah and other parts of the American southwest:


In the top pictures you can see them embedded in the canyon walls. In the pics lower down they've eroded out and are just sitting around.

Google and Alibaba Continue Warring Over Acer Phone allthingsd.com
20 points by joshus  4 hours ago   33 comments top 8
recoiledsnake 2 hours ago 3 replies      
Andy Rubin:

>So there's really no disputing that Aliyun is based on the Android platform and takes advantage of all the hard work that's gone into that platform by the OHA.

>So if you want to benefit from the Android ecosystem, then make the choice to be compatible. Its easy, free, and we'll even help you out. But if you don't want to be compatible, then don't expect help from OHA members that are all working to support and build a unified Android ecosystem.

How "open" is something if you can't fork it and be left in peace to negotiate with the OEMs to ship it? Aliyun is already missing the Google Play Store and the official Google apps.

The "don't expect help from OHA" line is especially ironic given that Acer scheduled a press conference to announce making Aliyun phones before being strong armed by Google into canceling it.

Acer really had no choice, Android has 67% of the market and iOS has the other 30%. Losing early access to code and access to the Google Play store and Google apps will basically kill their handset business because the competition like Samsung, HTC, Sony, Motorola etc. will have those advantages.

They would basically have to quit the handset market outside China to make Aliyun phones for the Chinese market. Forking is a fundamental tenet and in many cases the lifeblood of open source. If you don't want that, put that in the license and do not call it "open" instead of artificial after-the-fact restrictions like this. If you make something open, people are going to eventually do something with it that you may not like.

What next, forbid retailers from selling Aliyun phones or threaten to pull all Android devices from them?

The only differences I see between this and Microsoft's OEM restrictions against other OSes in the 90s is that Android is not a monopoly(though it is effectively one for Acer), and that Android is open source(again, Acer doesn't really have much leverage to go on it's own with Android code).

modeless 2 hours ago 2 replies      
"Aliyun App Store Confirmed To Be Distributing Pirated Android Apps"


option_greek 2 hours ago 1 reply      
Here is a statement of Andy Rubin on this:

Apparently, they even have pirated google apps. How Alibaba/Acer claim moral high ground on this is beyond me.

andrewcooke 2 hours ago 0 replies      
in case anyone else is confused, the issue seems to be this:

* there is a group called the open handset alliance (OHA), formed by google and others, that gives certain benefits to hardware makers. to be a member of that group you have to commit to not release incompatible versions of android.

* alibaba have created software for a smartphone that acer were going to release, called aliyun.

* everyone seems to agree that aliyun is not compatible with android (in the sense required by the OHA agreement). it can, however, run some android applications.

* the disagreement is about whether or not aliyum is a "version of android". if it is, then google can kick acer out of the OHA (which acer does not want; hence the phone would be blocked). alibaba is arguing that it is not (in particular, it does not use the dalvik vm), so acer should be free to release the phone and remain in the OHA.

mun2mun 23 minutes ago 0 replies      
Google is threatening Acer to not make phone based on Aliyun OS while Haier Group who is another member of OHA have already shiped an Aliyun OS phone[1]. No question of "fragmentation" were asked back then. Hypocrisy at its best.

[1] http://www.generalatlantic.com/en/news/article/1838

Edit: See http://www.openhandsetalliance.com/oha_members.html for list of OHA members.

allenbrunson 2 hours ago 1 reply      
Here's my own personal perspective.

I am very thoroughly in Apple's camp. I have owned several iPhones, an iPad, and more Macs than I can count. This is what I use personally, and what I program for.

Although I don't use Android myself, I'm glad it exists. It keeps Apple on their toes. I don't think Apple will make much of a dent in the Android ecosystem, despite the fact that Steve Jobs apparently wanted to.

But now it's turning out that Google faces some of the same issues as Apple, doesn't it? The Android ecosystem is generally more open than iOS, but now we see that it has its limits.

Personally, I think Google is doing the right thing here. If this secondary phone OS really does contain a lot of Android frameworks, as they claim, then I think Google is right to be upset about this.

Interesting to see what the fan base's general reaction is going to be to this.

voidr 2 hours ago 2 replies      
I think Google's position is reasonable: either Alibaba make Aliyun OS pass the Android compatibility tests, or remove the Android app runtime.
nitrogen 1 hour ago 0 replies      
The troubling thing I see in all this is that, if Google gets all contract hardware manufacturers to join the OHA, then there will be nobody to manufacturer your Android OSP hardware.
Moonwalking with Einstein: The Art and Science of Remembering Everything thegatesnotes.com
61 points by rfreytag  9 hours ago   20 comments top 8
zoba 53 minutes ago 2 replies      
I'd like to know more about remembering things that I don't put forth effort to remember. Does anyone know about this?

For example my mom asked who the angry chef on TV is and somehow I immediately knew "Gordon Ramsay!" even though I don't have cable TV, never purposely worked on remembering his name, and am generally terrible at remembering names. Being able to remember things without trying is what most folks would really want when considering improving their memory.

I have found success with methods that call for imagining a 3d space and placing objects in that space and using it to recall things... However, designing such a space takes time/effort which is difficult when you're trying to learn and comprehend stuff on the fly.

I do wonder if it is a memory issue or a recall issue here...perhaps I actually know the information but can't access it as necessary.

goblin89 9 minutes ago 0 replies      
> When you're reading a book, you don't sit there and say, "Well, what does that word mean? What does that word mean?" After many sightings of the words in your vocabulary, your recall is immediate and very, very good.

But there's still ‘inner speech', which appears to slow down meaning recall. It seems to be a habit of many people, although I don't have hard data to support this. I've heard that unlearning sub-vocal reading in favor of visual reading helps increase reading speed and remember the information. Haven't had much success with this myself so far, it needs some patience.

(I suppose phonetic writing system also adds to the problem. How cool it would be if you could read the meaning from symbols, instead of doing letter combination matching.)

fab1an 4 hours ago 0 replies      
The memory grandmaster who trained Foer, Ed Cooke, runs a phenomenal startup that brings described techniques online to help you learn vocabulary: http://memrise.com

Highly recommended for anyone looking to expand their vocabulary in a variety of languages, including Mandarin.

defdac 7 hours ago 4 replies      
"Never memorize something that you can look up." [Einstein]
krickle 7 hours ago 3 replies      
This is probably the right crowd to ask: all the memory techniques that I have seen seem to be for memorizing sequences. Are there any techniques for remembering factual information more powerful than SRS? Like for the main points of a technical paper or similar?
jcfrei 4 hours ago 0 replies      
short summary from the book in order to recall sequenced information:

walk down a path in your mind, that you can recall well from your memory and then place images of the items/words you try to remember along this path.

in general: the more numerous the set of associations you have with a certain word the more likely you are going to remember it. For example, when trying to remember the name Baker of a person, don't think of it as a surname but rather as the profession "baker".

greenmountin 3 hours ago 0 replies      
I went to one of his book talks, and it was really exciting to hear about. I think he mentioned how it was a one-time rise to stardom, and put me onto the glacial blog[1] that is Climb For Memory, by the guy who has won it for the past couple years.

[1] http://climbformemory.com/blog/
Oh, it's moved, I guess that explains that.

bgallegos 6 hours ago 1 reply      
I read the book. It's a great read for the story itself (guy learns how to win memory contests) ... but the memory techniques, in my opinion, do not really work for everyday situations. I did learn how to memorize the sequence of a random deck of cards though, which is pretty cool.
A First: Organs Tailor-Made With Body's Own Cells nytimes.com
40 points by mhb  8 hours ago   10 comments top 5
ChuckMcM 21 minutes ago 0 replies      
People seem astonished that you can grow a new organ, and yet they grew them originally so you have an existence proof :-) The challenge is understanding literally everything that is going on during that growth and what its role is. That is an analysis problem which is well suited to the techniques available to doctors.

Like a program, the rapidity of the improvement gets faster the more you know. Using stem cells as a proxy for how much we 'know' we went from 'harvesting' stem cells to 'making' stem cells. Lately I've read a number of interesting (if opaque :-) papers about various scaffolds for holding cells as they develop into tissue. The third piece of this puzzle will be the triggers (or you can think of it as the minimum scaffold) to evoke the organ you're looking for. This is simply analysis, ongoing, checking the boxes, we have working systems to compare against. Sure it needs the insights to 'connect the dots' but if you look at the puzzle long enough you figure it out.

So step back for a minute and think about what that will mean for health care costs. If we can replace organs at will for people, that is a much more cost effective treatment of heart disease, or diabetes, or gout. The trick will be insuring that those cost savings return to you and me and not to someone else.

dhughes 1 hour ago 0 replies      
This hits a little too close to home.

I have GERD and daily I think about cancer, already I feel like I'm being strangled all the time. My doctor said it was a one in a million chance but constant irritation and a daily proton-pump inhibitor drug isn't my idea of being healthy.

Add to that my dad was diagnosed last January with IPF, an incurable progressive scarring of lung tissue, a cause of which is GERD; stomach acid splashes into lungs and over time can cause damage. Lung cancer seems like a walk in the park compared to IPF.

It would be fantastic if specific organs could be replaced it would solve my problem and for most diseases people develop other than entire body, systemic diseases or diseases of the brain.

stephengillie 32 minutes ago 0 replies      
I remember the NOVA special on flushing pig organs of their cells, then seeding that scaffold with stem cells. It's good to see progress.
SeanDav 3 hours ago 1 reply      
Consider me boggled.

How does the body "know" or get "told" to only manufacture wind pipe cells and not say grow a new toe?

Really impressive stuff.

kiba 4 hours ago 3 replies      
The work of these new body builders is far different from the efforts that produced artificial hearts decades ago. Those devices, which are still used temporarily by some patients awaiting transplants, are sophisticated machines, but in the end they are only that: machines.

What's wrong with those machines? They're off-the-shelf machines that can be manufactured in large number as necessary and they're subjects to engineering improvement over time.

I have a troubling relationship with time randomactsofsentience.com
75 points by KimberleyScott  11 hours ago   7 comments top 4
zdw 4 hours ago 1 reply      
People sometimes need to be reminded of perspective.

The truth is that we all play parts in a grand, millennium spanning conversation of all of humanity.

Writing and contributing to that conversation in the best way we can is probably the most compelling driver for me personally.

You'll contribute far more by participating in the conversation (releasing code, or papers that describe how things work) than trying to keep everything to yourself.

jaylevitt 4 hours ago 0 replies      
President John Tyler was born in 1790; his grandsons are still alive:


st3fan 4 hours ago 0 replies      
Time is the fire in which we al burn.
kellyreid 9 hours ago 0 replies      
Nothing troubling about it. Enjoyable :)
Bill Gates: Books I Read this Summer thegatesnotes.com
226 points by clbrook  20 hours ago   63 comments top 10
jacques_chester 11 hours ago 0 replies      
I'm finding that writing reviews, even very surface-level reviews, of books I am reading is helping me to derive a lot more value from them.

Firstly, while reading, I find myself reflecting more on the book. After all -- I will be writing a review, I need to be an active participant.

Secondly, I find that books will often spark some thinking on a topic and the review will essentially morph into an essay. I wrote a 3000-word review of one book[1] that diverged into fuzzy logic, theories of jurisprudence and a few other areas in order to properly explain my reaction. Right now I'm writing a review of Waltzing with Bears that will diverge into financial accounting and a pet theory of mine about how tools create paradigms that shape entire bodies of knowledge.

Third, books can often be connected to one another. I find that my reviews tend to link to each other. Not because I am trying to drive internal link traffic (I'm basically a nobody in internet terms, it's not worth the bother). But book A will have tangentially touched on the topic of book B; or perhaps book C illuminates something only poorly discussed in book D. To the point where I refer to books from before I started reviewing with an "unreviewed" annotation.

Finally, some people find my reviews useful. My hobby is Olympic-style weightlifting and I do a lot of reading both on it directly and on allied subjects (eg, anatomy). Fellow strength nerds have found my reviews useful in helping them select books for their own libraries. It's nice when people give you positive feedback on something like that.

[1] http://chester.id.au/2012/04/09/review-drift-into-failure/

BadassFractal 15 hours ago 5 replies      
Any thoughts on that Moonwalking With Einstein book? I'd love to improve information retention in my day to day life, especially in software. I'm not so much interested in remembering the to-do list as retaining broader concepts for long periods of time. I'm lucky enough to get to learn a ton of things every day, but my long term retention of them is terrible unless I spend considerable time applying these ideas in practice, which is often not practically possible. This leads to a lot of wasted time, it's as if I never even read the darn thing.

Often, and this is the sad part, I won't even bother reading something because I know I'll forget it almost immediately, unless I have a block of time available to dedicate to trying it out in practice.

For example, I'm really fond of the underpinnings of programming language design and compilers, and it's thousands over thousands of pages of information (most of it very interesting and useful to me), but I fail to retain the vast majority of the great info and need to continuously go back to the texts whenever I'm in doubt about something. There were a couple of valuable techniques recommended in Pragmatic Bookshelf's Pragmatic Thinking and Learning, such as "now pretend you have to teach this concept to your former self who knows nothing about this", which supposedly helps with retention and internalization into the brain's "web of known facts".

Is there anything like that in the book? Would it be of any help?

sixQuarks 19 hours ago 2 replies      
It's kind of funny that he recommends: "Awakening Joy: 10 Steps That Will Put You on the Road to Real Happiness"

Step 1: Be worth billions of dollars

On a serious note, I realize that money doesn't buy happiness. Proven scientifically over and over again, people get used to their situations usually within 6 months, good or bad, and get back to their "normal" happiness levels regardless.

gbog 15 hours ago 9 replies      
I find it very disturbing and revealing that such a high level and respected guy did read no real book, I mean real books that will be read in 50 years, literature or philosophy, or classics like Seneque, Proust, Montaigne, Austeen.

It maybe he read them all already? Probably not, because if you read Austeen you probably can't spend all your holidays reading self motivation books.

metatation 17 hours ago 6 replies      
Surprising to me is that Amazon is charging more for the Kindle version than the hard cover of "Awakening Joy" ($19.34 vs $17.16): http://www.amazon.com/Awakening-Joy-Steps-That-Happiness/dp/...
ahquresh 13 hours ago 2 replies      
I find it amazing that Bill Gates seems to still have the time and passion to read books that will help him grow as an individual with everything that he probably has going on in his life and everything he has accomplished. Over the past couple of years, I have personally have had a hard time keeping up with reading habits due to school and job demands. I still read, but look to reading as a relaxing activity as in picking up Game of Thrones for an hour when I have it. I guess that's what makes Bill Gates who he is.
at-fates-hands 16 hours ago 0 replies      
The academically adrift book was quite interesting, although I disagree with the conclusion. For the most part, I find the first two years of college are really more about filtering out those who are there to party and those who are there to learn and get a degree. If the same results were achieved on third or fourth year students (assuming most students are in for 5 years these days), then I would be concerned.
alid 19 hours ago 0 replies      
Thanks for posting this! I look forward to reading Bill's full review of Academically Adrift - higher education is ripe for the disrupt.
chrismealy 14 hours ago 2 replies      
Is there a HN filter to weed out "rich man has opinions" type stories?
marcamillion 18 hours ago 2 replies      
What's curious is that none of the links to the books are on Amazon. I wonder if he did that intentionally.

All of them go to the publisher - which seems a bit odd.

Emerging technologies usher in more fuel-efficient, comfortable aircraft economist.com
21 points by tokenadult  6 hours ago   discuss
The Probability and Statistics Cookbook vallentin.net
149 points by tel  17 hours ago   12 comments top 7
mturmon 13 hours ago 1 reply      
This covers a lot of ground, and is quite accurate and balanced. Very nice work. Kudos to the author.

I noticed a couple of things.

The graph of the F distribution on page 8 is mislabeled as chi-square.

The sets Ai must be disjoint in the law of total prob. and Bayes rule on page 6.

In section 5 on page 7, "variance of sum equals sum of variances" certainly does not imply ("iff") independence. I'm not positive it implies uncorrelated, although it certainly might. The safe thing is "variance of sum equals sum of variances" if uncorrelated. Uncorrelated is usually abbreviated with an inverted T (reminiscent of "orthogonal", although that abbreviation is not introduced in these notes). The inverted capital Pi used here means independence.

A small typo: the Strong Law of Large Numbers is mis-abbreviated, it is the SLLN (sec. 10.1).

And, neither the WLLN nor the SLLN requires Var(X1) < Infinity. They just need finite first moment ("E[X1] exists finite.") This is not an error in the notes, it's just that the result holds in more generality than is stated there, and the lack of need for a second moment shows the strength of the result (i.e., if the mean exists, you always get convergence to it, end of story). (This is in Billingsley's book, or Durrett's book, or also in http://www.math.ust.hk/~makchen/Math541/Chap1Sec7.pdf as Thm 1.7.)

Also, one omission: Brownian motion in Stochastic Processes (sec. 20). Since Poisson processes and Markov processes are there, it would make sense to have one continuous process. ("random walk" gets a couple of bullet points in sec. 21, but it's not the right place nor the right position.) All you need to define B.M., or a gaussian random process for that matter, is that B.M. is the continuous process with independent increments characterized by:

  X_0 = 0
X_t - X_s ~ N(0, t-s) for t > s

Sec. 20.0 might also be a good place to introduce Kolmogorov's extension theorem (http://en.wikipedia.org/wiki/Kolmogorov_extension_theorem), since it is such a powerful result, is easy to state, and explains the centrality of finite-dimensional distributions.

chas 16 hours ago 2 replies      
If anyone is reading this and wants to know what it means, this is the best resource I have found for people with some math knowledge who want to develop a practical knowledge of statistics. http://www.itl.nist.gov/div898/handbook/
sidupadhyay 15 hours ago 0 replies      
This really is a fairly thorough overview of an undergraduate statistics degree. It reminds me a lot the summaries I would write before exams. The first few sections covering probability are especially good. Though some of the later sections do simplify whole subjects a bit much. For example, an introduction to stochastic process (http://www.ma.utexas.edu/users/gordanz/notes/introduction_to...) will cover more about state classification and absorption.
pubby 14 hours ago 1 reply      
The pages of the pdf are too wide to fit comfortably on my screen. Any way I could fix it (like modify the LaTeX) besides buying a bigger monitor?
tomrod 13 hours ago 0 replies      
Thanks for posting this. It's most helpful!
jnazario 16 hours ago 0 replies      
many thanks! this looks great and useful.
rheotron 16 hours ago 0 replies      
Holy crap, I have a statistics exam on Wednesday and I was looking for something like this...Talk about lucky, thanks!
Conversions in Javascript thetascript.com
8 points by vetri02  3 hours ago   6 comments top 5
Stratoscope 7 minutes ago 0 replies      
This article has a few problems.

* "All of the above does the same job...". Not true at all; the four examples do three very different things. Try them with a more interesting string argument, say '012.78':

  parseInt('012.78')  // 10 (number interpreted as octal integer)
Number('012.78') // 12.78
+'012.78' // 12.78
~~(1*'012.78') // 12

* "...and n1==n2==n3==n4" Using == instead of === here makes the statement meaningless. After all, this is also true:

  '12' == 12

* The "wicked" method, ~~( 1 * '12' ), smacks of cargo cult programming. No mention of the fact that it uses two operators instead of one? Why not test the two separately:

  1*'012.78'  // 12.78
~~'012.78' // 12

Complaints aside, the results for the "wicked" method certainly are interesting. Why is it (along with the two variations above) so extremely fast in Firefox?

Here's an updated jsperf with those additional test cases:


cygx 6 minutes ago 0 replies      
Except for n2 and n3, all of these have different semantics.

Performance doesn't help if your code is wrong.

FuzzyDunlop 54 minutes ago 0 replies      
One might prefer to supply the radix when using parseInt(), too. Lest one encounters strings that convert into octal numbers.

parseInt('09') !== parseInt('9')

turshija 2 hours ago 0 replies      
Firefox results are amazing, "wicked" is over 20x faster then any other method ...
froball 2 hours ago 1 reply      
Why people are so keen on micro-optimizing their code? The bottleneck lies on DOM, not on your conversions.
William Gibson on Punk Rock, Internet Memes, and "Gangnam Style" wired.com
56 points by bootload  13 hours ago   16 comments top 8
jentulman 5 hours ago 1 reply      
I'd just like to posit that, in the UK at least, rave and the beginnings of drum and bass were the last pre-digital youth/music based counter culture. Not that I'm trying to call him out as wrong, I wouldn't expect Gibson to be a massive rave aficionado.

I think this article also shows up something about youTube I've noticed within my social group. It's half a decade old and yet it's become pervasive and it feels almost like it's always been there. Friends have said that like me they feel like they've been using it since about the turn of the century.

ddw 2 hours ago 1 reply      
I didn't grow up during the Punk movement but the commercial "revival" of sorts kicked off by Green Day in the mid-90s. Green Day was on a indie label, Lookout! Records, before hitting it big with "Dookie." When you bought their first two CDs/cassettes a small catalog of Lookout! Records' other albums fell out with a listing of bands I'd never heard of before. None of these bands had websites so information was really limited. You'd have to buy fanzines or know other people in your town that listened to those bands. If you were lucky maybe one of those bands came to your town and you got to see what they looked and talked like for the first time. I can't even imagine what it was like to see Black Flag touring every town in America in the early 80s introducing thousands of kids to a new subculture and form of music.

My point is, maybe I'm jaded now but music was so much more interesting then when there was mystery and not everyone had an opinion about a band before their first mp3 came out. I think the disposable quality of mp3s makes music less valuable too.

The internet also killed regionalism in music for the most part where a certain "scene" would have a certain sound as bands around an area being influenced by each other. See [1]. I'm not sure what could have been done, it's a natural by-product of the internet, but I miss it.

[1] http://www.washingtoncitypaper.com/articles/43235/our-band-c...

bane 5 hours ago 1 reply      
Imho a "punk" style, anti-authority counter culture has emerged. It's called anonymous and just like punk it's a reaction to the excesses of the "establishment". Only unlike punk, instead of demonstrating membership via your hair, music and clothes, this one uses the shiboleth of computer literacy and meme awareness as the group identifiers.

And unlike punk's self destructive near impotence to do anything but rage. The modern movement actually has some tools to fight back with.

WiseWeasel 2 hours ago 0 replies      
"The recorded music industry was a huge deal for those of us who lived through it, and we took it absolutely for granted, and now it's really gone; it's not what it used to be. You can't really get super rich just doing that; you have to be able to sell merch or something to go along with it, or have concert tours."

Is it optimal or sustainable that a band needs to sell t-shirts and concert tickets to support themselves as musicians, let alone be super rich? The recordings and the concert tickets are the only product offered by bands that we place value in; t-shirts hold some slight social value, but little personal value. Revenues from concert tickets go mostly to the venue operator, especially for smaller venues of 100-200 people that most bands play in, and the amount going to the band is hopefully enough to pay for the cost of touring, and probably not much more than that.

So that pretty much leaves recordings as the only valuable product that bands can hope to sustain themselves with. Merch and tour ticket sales are not going to cut it for most artists, so without sales of recordings in some form, they're going to need to work a regular job, and the music is relegated to a hobby.

Making good recordings costs a lot of money and takes a lot of time in a recording studio, so hobby bands have difficulty producing them. Recordings are valuable to us because they allow us to integrate music into our lives. How can we expect musicians to invest the time and resources to make good recordings for us to enjoy if we don't recognize their value by directly rewarding the artist for making them? Buying a t-shirt does not send the message to the artist that we value their recording; only buying recordings does that.

peterwwillis 1 hour ago 0 replies      
Communities still are human-powered. The only difference is now keeping people informed is easier, so building the community is easier, but it's still largely offline.

Couchsurfing, autocross, bdsm, ska, anime, hiking, slacklining... all communities i've become involved in with human beings at real places because the internet made it easier to find out. I still needed a human to show me it. But then the community was opened up to me much quicker through the 'net.

The next counterculture, to me, was 4Chan's /b/ and Anonymous. As stupid as it sounds, those retards brought a new kind of rebellion to people's lives - even if it was largely online. But it's not the method the message gets out that matters. It's the culture that develops. I think it's clear that the internet isn't holding anyone back.

pervycreeper 7 hours ago 3 replies      
The internet has led to an arms race of exclusivity, giving rise to such phenomena as hipsterism, un-google-able band names, private (offline mediated) online communities, etc. These are merely the growing pains of a culture which has not yet acclimated itself to total, ubiquitous access to information.
rolux 7 hours ago 0 replies      
I think the following (quote from the article) is a very good observation:

"I suspect " and I don't think this is nostalgia " but it may have been able to become kind of a richer sauce, initially. It wasn't able to instantly go from London to Toronto at the speed of light. Somebody had to carry it back to Toronto or wherever, in their backpack and show it, physically show it to another human. Which is what happened. And compared to the way that news of something new spreads today, it was totally stone age. Totally stone age! There's something remarkable about it that's probably not going to be that evident to people looking at it in the future. That the 1977 experience was qualitatively different, in a way, than the 2007 experience, say.

corporalagumbo 6 hours ago 0 replies      
Clearly a modern punk-esque counterculture would have to make radical anti-internet privacy a, or the, central tenet. The whole point would be to construct a totally invisible subdigital culture. What else would define membership is anyone's guess. (also, such a subculture, or multiple, may already exist, as by its nature we wouldn't know anything about it.)
Spanner: Google's Globally-Distributed Database research.google.com
228 points by SriniK  1 day ago   50 comments top 11
sudhirj 6 minutes ago 0 replies      
This looks like the High-Replicaiton datastore which is now the default in App Engine - Paxos replication, a choice between strong and eventual consistency and tablet sharding. Interesting that they've already built it and it's available for everyone to use.
ChuckMcM 22 hours ago 2 replies      
This was an interesting project at Google, it started when I was there, and it was breaking things when I left. It is too bad that Ken Thompson didn't get at least acknowledged for his role in making it happen.

I don't think it will be as influential as the original GFS was but its an important piece of work that folks should study.

linuxhansl 21 hours ago 1 reply      
I work on HBase (the Apache version of BigTable). It makes me sad to see how far ahead Google is compared to the rest of the world. :)

The notion of uncertain time is ingenious.

Nitramp 6 hours ago 0 replies      
I think the major contribution in this paper is how to do consistent snapshot reads in a distributed system without a common reference clock, i.e. the use of True Time.

Many databases use some sort of MVCC, but they operate on a single node or in a closely connected cluster. This paper shows how to achieve the same properties in a system spanning continents.

lsb 1 day ago 3 replies      
Interestingly, the data storage seems similar to Rich Hickey's Datomic: "data is versioned, and each version is automatically timestamped with its commit time; old versions of data are subject to configurable garbage-collection policies; and applications can read data at old timestamps."
linuxhansl 13 hours ago 0 replies      
Another observation that struck me when I read this (and after reading the percolator and megastore papers) is how there is a convergence of the "traditional" relational DB world and the "new NoSQL" world.
Relational Databases are becoming more scalable, partially with new technology, partially by shedding features in some scenarios.
And the NoSQL stores, are becoming less so (it was really about "NoSQL" anyway, but that's a different story). All of these stores have layers or features that bring closer to the traditional SQL/relational model.

Spanner appears to strike a nice middle ground.

moondowner 20 hours ago 0 replies      
Another research publcation from Google that's more-than-worth reading.

These just pile up, I must find time and get my hands on them...

hellooo 17 hours ago 1 reply      
Is spanner written in cc or java?
kleiba 14 hours ago 1 reply      
Interestingly, "Spanner" is German for "voyeur". Coming from Google it's almost kind of ironic.
tete 4 hours ago 0 replies      
Fun fact: Spanner means voyeur in German slang.

Anyway, looks like a very exciting project. One could come up with so many applications.

pwpwp 23 hours ago 1 reply      
Transactions don't scale. They really need to use NoSQL.
How do you live your life? bogleheads.org
66 points by kirpekar  13 hours ago   55 comments top 16
drblast 4 hours ago 6 replies      
Personally I've decided that life is absolutely meaningless, and I've found that to be incredibly liberating. It's helped me to not put so much pressure on myself to achieve (achieve what?) and live more in the present. It's a shame that people who don't find meaning in their life tend to take the opposite tack toward depression. Or others gravitate toward followership to anyone who will tell them how to live. If I could give advice, it would be to not do that. Half the fun is figuring out what's meaningful for you.

Otherwise, there are various clichés. People will say their family is most important and money is meaningless or some variation. I think those truisms are worth the amount of time it takes someone to repeat them, which isn't much at all.

And I love that scene in Fight Club where Brad Pitt is telling Ed Norton that he won't be truly enlightened until he knows, not just thinks, that he is going to die. I wouldn't risk your life or hurt yourself to figure this out, but if you're in your 20's and haven't had any near-death experiences, as you get older, you will DEFINITELY realize that your life is finite and it will change your perspective. There will be a thousand things that in the back of your mind you always have thought you'd have time to do, but then you turn 30 and start to realize that you probably won't. And that you need to start economizing and prioritizing.

hermannj314 10 hours ago 5 replies      
I'm afraid that by saying "My priorities are God, Family, Health" that you are just punting. You fall back on that when in every measurable way your life isn't what you hoped it would be so as a coping mechanism you redefine your values to measureless standards.

You "value" your family. What does that mean? You spent one hour pushing your kid on a swing because you realized you don't have the confidence, discipline, or perseverance to do the things you really want to be doing.

You "value" your family because you hate yourself, but you don't have the confidence to admit it.

IOW, you live your life however you want to and when you feel like it you just move the goalposts to make sure you look successful. Depressed people are the ones with the integrity not to move the goalposts.

greggman 1 hour ago 2 replies      
I'm going to post this because I genuinely hope to get some feedback ....

I absolutely hate the saying "you only regret the things you didn't do when you die not the things you did". Really? I suspect some aids victims regret things they did. I'm guessing meth addicts also regret somethings they did. I don't see how this cliche helps you decide what to do and what to avoid.

For a less dramatic example my father recommends choosing a high paying job that is not so interesting over a more risky job that's more fun. His experience is he took the a risky job, though whether it was fun or not I don't know, the risk didn't pan out. Now he's 69 and driving a delivery truck because he can't afford to retire.

It would be nice to hear more failure stories to contrast with success stories

bdunn 7 hours ago 0 replies      
I think most of us get to a point where we finally figure out we're mortal, and each day is one less we have to live.

As a parent with two small children, I'm constantly faced with two paths: I could work really hard, the result being eventually enough money that would bring me more "happiness" (travel the world with my wife and kids, for example); or I could extract every memory possible while my kids are this age.

When I think about being on my deathbed and looking back on my life, what will I be thinking? Will I have wished I worked longer hours? Or will I have wanted more memories of my kids laughing with me?

(This is largely why I'm building slow growth, sustainable lifestyle businesses over moving everyone to SF and working 100 hours a week at some startup.)

bitdiffusion 6 hours ago 0 replies      
Here's a little confirmation bias at work... those with kids can't really undo that decision so spending time with the family is a knee-jerk "number one priority" (how many people would really come out and say they would prefer to work than see their kids? even if it's true, I doubt it would be socially acceptable).

Those who prefer the 100-hour weeks will no doubt say work is the number one priority. See "saving money for the future" vs. "spending money in case you die tomorrow" as other examples.

jquery 11 hours ago 1 reply      
Several years ago our household income was $xx. Along came some opportunities and now it's $xx+y. My wife and I live the same lifestyle and save the rest. Why? It's fun to see the doors that open as your savings grow. Even if you never open those doors, having access to the keys is its own reward. Someday we'll open one of those doors. The anticipation and journey will surely be as joyful as the reveal behind the door.
stephengillie 12 hours ago 3 replies      
I heard it in a movie - What would you do if you had 1 million dollars....not with the money, but with your time? Most people have a good, solid answer - it varies by person, but most people have something they'd rather be doing.

I'm still trying to figure out what I'd be doing with my time instead of working for a living. I think it would be working.

zerostar07 9 hours ago 2 replies      
Let's try to rationalize the question. Raising a family is slowly losing some appeal due to overpopulation, possibilities of dramatic life extension, and the mere fact that it's something that everyone can do (and does). Also, history books never mention someone as a good parent. In the end it's an investment decision: what are you willing to invest your most precious resource (your time) on? It depends on what kind of rewards are regarded as better.
mogrim 3 hours ago 0 replies      
Spent all 2011 killing myself to bring a project in on time, missed kids's end-of-year shows, nearly got to divorce. This year I'm getting out on time, closer to home, and seeing a lot more of my family. Sure, it's less ambitious, and the possibilities of promotion are massively reduced - but I know where I'm happier.
Xcelerate 3 hours ago 3 replies      
I like to view life as one giant happiness optimization problem. (That's how you can tell I'm an engineer).

Pretty much all problems are taken care of this way. Time working/salary ratio? Too much to do/boredom? Just keep optimizing.

I do make a bit of an exception. If helping someone else makes them happier at the expense of some of my own, I'll go ahead and (try) to do it. Normally, helping someone else makes me happy too, but occasionally there's times where the kindest thing to do isn't the most enjoyable.

pioul 7 hours ago 1 reply      
I'm not sure who said that, but I find it quite true:

>To make money we lose our health;

>And then to restore our health we lose our money...

>We live as if we are never going to die;

>And we die as if we never lived...

Try to take that into account when you're making decisions.

VMG 8 hours ago 0 replies      
> bogleheads.org


> John Clifton "Jack" Bogle (born May 8, 1929) is the founder and retired CEO of The Vanguard Group. He is known for his 1999 book Common Sense on Mutual Funds: New Imperatives for the Intelligent Investor, which became a bestseller and is considered a classic.

the_cat_kittles 10 hours ago 0 replies      
The answer to this question isn't going to come from the top down, I think it has to come from the bottom up. So, its not really a helpful question, except maybe interesting to reflect upon post hoc?
myspy 10 hours ago 0 replies      
Work to live, don't live to work. Chill.
rmm 9 hours ago 0 replies      
Live every day as if it might be your last.

Might is the key word their.

How would you live, if tomorrow _might_ be your last day?

brennenHN 12 hours ago 0 replies      
Stop talking about it.
Facebook explains what's wrong with the mobile web w3.org
224 points by patrickaljord  1 day ago   104 comments top 23
TazeTSchnitzel 1 day ago  replies      
Personally, I think the problem is people trying to be too clever, and loading too much content at once.

Loading tons of JavaScript means that Facebook loads very slowly on my phone on mobile internet. And what is it needed for? The most the JS needs to do is make a pop-down notifications panel, and do one or two AJAX requests to post comments and "like" items. Looking at the Network panel in Chrome, I see Facebook has pulled down 700KB of JavaScript. Why? How could they possibly need that much code?

Facebook also seems to think that sending full-size images down to my phone, instead of compressed previews, isn't a problem. No wonder the GPU memory is exhausted!

jlarocco 19 hours ago 4 replies      
Almost all of their problems are due to them expecting mobile phones to behave exactly like desktop computers. And then they're unwilling to change anything on their side when they run into problems.

For example: "It's typically a problem on the newsfeed and on Timeline which use infinite scrolling (content is prefetched as the user scrolls down the app and appended) and end up containing large amounts of content (both text AND images). "

Well then don't use infinite scrolling when sending data to a phone and have a "next page" link. Problem solved. It's an easy solution with negligible end user consequences.

And there's a lot of whining about running out of memory because of "too much content". Then send less content. It's impossible for a person to see very much content at once on a phone, anyway, because the screen is less than 3x5 inches. You don't need to send a person's entire "timeline" just so they can see 3 entries at once.

weej 1 day ago 1 reply      
Developers need to treat mobile computing more like 1980/90s micro computing.

You have limited resources with numerous environmental factors that need to be accounted for and respected (ex: bandwidth, latency, CPU, GPU, memory, UI/UX, async task handling, and most importantly BATTERY LIFE).

It is a different mindset when developing for mobile that needs to account for finite resources. If you're greedy, careless, or just don't really think through and test your app appropriately it makes for a horrible user experience.

Regarding the HTML5 vs. Native Apps:

HTML5/CSS/JS and frameworks that allow you to write once and convert to native apps (ex: Phone Gap) have their place. The core take away is that without developing native apps directly you'll never get to maximize the phone's hardware and performance will suffer. UIs will be sluggish and network IO suffers from high latency (wrappers).

HTML5/CSS/Javascript frameworks like Phone Gap cannot take full advantage of the hardware and SDK features like alarms, custom hardware access/config/acceleration, background services, and (taking advantage of) the standard UI controls (transitions, buttons, look ‘n feel).

If you're focusing on content display/information consumption and your app doesn't need to rely on high performance from hardware and the UI then HTML5 is most likely a good fit. If performance, high availability/background service, native look and feel and the such is critical to an app then native is a better route.

My 2 cents.

Zenst 23 hours ago 0 replies      
Hmmm what is that old saying, a good workman does not blame his tools! Mobiles today have more processing power than the old C64, Amiga and atari ST, STe, TT. probably combined.

If they are having issues with memory and that appears to be the crux then they need to redesign how there doing things. Just becasue you can chuck a blob of content at a desktop webbrowser and chew memory like it is going out of fasion does not mean you can be as lazy with your design when it comes to thinner clients like mobiles.

The best optimisations come from a good design and whilst there desktop model of doing things may work for them it does not mean the same approach can be taken with thinner clients that will notice you chucking a ton of content initialy.

The other thing is that all that Facebook are trying to do has been done in one form or another by others and to read about facebook in effect complaining how a entire platform is broken is not only wrong but concerning as there are people who will take what facebook say as gospil and it is far from it that this could end up being distorted if the tabloid news level types get hold of it.

No platform is perfect and there will always be area's you want to change but in this case it is facebook's approach that needs to change. I also have to question if it is facebook beyond some forum email post as it is not on there main site (not that I'd ever know).

Out of interest G+ works fine on my low memory android device, though the previous version was better IMHO for my device as the new version does cater for larger screens nd tablet factors more so I feel, but it still works fine.

I'll also confess to not ever touching a facebook application so when I read this I do wonder how bad they are and wonder how they compare in usage performance wise and would love to see a article comparing network usage and phone resource usage for typical actions like uploading a picture for a post or replying to a post with a picture in it, those type of things.

robomartin 20 hours ago 1 reply      
I think a point is being lost here. It's easy to try to slice and dice FB and their app. The post is about what is needed to make mobile web apps better FOR EVERYONE. Don't discuss what FB can our could have done differently. It is obvious that they've looked at this long and hard. Their post is very valuable in bringing to the surface issues that affect the entire ecosystem, not just one app.
augustl 18 hours ago 1 reply      
Another thing I really miss for single page web apps (mobile or not) is iOS style memory warings. It's an event that is emitted when you reach memory limits, and in it you should clear out everything that the user doesn't currently see (read: clear out as much as possible). This allows you to keep DOM subtrees in memory when you navigate the app, in order to make navigating back to previously seen sections of your app very snappy. At the same time you don't have to worry about infinite memory growth as the cached in memory DOM subtress will get nuked when the memory warning emits.
k2xl 1 day ago 1 reply      
"- Simple way to implement pull to refresh (via dedicated off-bound-scroll
events?). "

At first when I read this suggestion I thought it didn't seem like something to include. This would force every smart phone to support this type of scrolling wouldn't it?

I think there's an issue with many developers just doing too much on mobile web without realizing the limitations of the device they're using.

People today are used to developing on systems where they don't have to think about memory, hard drive space, or performance. But when you get to mobile web you have to think about these things AND more (screen resolutions, landscape vs portrait etc).

The problem with many suggestions for w3c is that they are often tied to what specific companies (ahem Apple) are integrating (or not).

In terms of the Facebook app, I (along with many others) have just been flabbergasted that they've not been able to make their app load fast. Tobie's post gives some great insight, but I don't think it's impossible to create a smooth, well run webview - especially when you have the resources Facebook has.

erichocean 18 hours ago 0 replies      
Blossom[1] works around the scrolling issues by drawing everything in the UI to canvas elements, including "infinite" lists of the kind Facebook and Twitter favor.

Because the canvas element in lists are a fixed size, we never, ever hit against resource limits and it always stays snappy.

That's allowed us to use native scrolling (plus an async JavaScript helper) that works correctly on all supported mobile platforms (Safari, Chrome, Windows 8).

[1] https://github.com/erichocean/blossom

lttlrck 4 hours ago 1 reply      
The admission that they couldn't figure out why their app was crashing is a pretty big indictment for a company in this space.... if they lacks tools, why didn't they write them and give them back to the community?

Or is it the case that they didn't even know what tools they lacked? The post certainly smells that way.

tmanderson 22 hours ago 1 reply      
Is it just me, or did a lot of this come off as "why can't everything be done for me?"

The fact is, performance can never be ubiquitous, because there's always going to be many manufacturers with many different devices -- that while all implementing the same standards, handle things differently.

This problem is alleviated by the age-old web term "graceful degradation," and when done right, can be exactly that -- graceful. That's too hard though, right?

Developing front-end for the web is hard, and developing for the front-end of the web WELL is much harder. I always hated Facebook's app because it wreaked of shoddiness and flaunted it's lack of thoughtful development.

I can't help but feel that they went and hired a bunch of brilliant programmers that had zero experience developing for the web. Developing a front-end web app can be (and often is) a horrifying thing to any developer, because the environment is so volatile (and really, unlike any other development environment).

I'm extremely disappointed in Facebook because had they done things right, it could have been an awesome thing. Instead, they released a shitty hybrid app that was doing everything wrong, and then gave up and wrote this whiny and semi-ridiculous list of what they want because "things are just too darn hard."

rodh257 13 hours ago 0 replies      
Lots of people are quick to jump on Facebook and claim that their well paid developers are just poor at their job. What I'd like to see is a list of html5 mobile apps that are as interactive as Facebook is, so that we can see the best practices in action. I'm struggling to come up with many that aren't simple blog/news sites. Is anyone able to point me towards some good ones?
coliveira 20 hours ago 1 reply      
This shows clearly that Facebook doesn't get mobile development. They are trying to shift the blame for poor application performance from themselves to the makers of mobile browsers. The point is that users don't care where the blame is, they just see poor performance. The sensible thing for them to do is to recognize that user experience is the most important thing and use the best vehicle to solve that problem, be it a very thin html5 client or a fully native app.
clebio 20 hours ago 0 replies      
The part about needing better development support, debugging tools and such, for mobile browsers seems valid. I'm not familiar enough with that to really say, but I've felt similar things from my limited use of Chrome developer tools (in comparison to native linux options, or OS X's Instruments, etc.).

Having worked in telecom engineering for the past several years, I do think the network constraints are real. There are already several comments on this thread regarding limited resources, though more around the mobile device capabilities compared to desktops.

From a network perspective, for the mobile carriers, though, high-bandwidth streaming content and chatty apps are a big deal. The 'data explosion' (that we're just approaching the initial inflection point now) is essentially why most carriers are metered plans. Users want lots of content and the options for high-def streaming are only going to grow. Chatty, social, location-based services (aka SoLoMo) cause a lot of connections (since cellular radios kill battery, connections are torn down quickly).

The resource constraints now aren't the same as they were in the days of campus mainframes, or even the now waning days of fat-client PC desktops and laptops. But low-powered mobiles, running thin client apps over mobile networks, clearly have several constrained dimensions. Some of those won't change quickly. And there's some data to show that the slice of users whose _only_ internet access is over their mobile device is growing.

photon137 23 hours ago 0 replies      
It's not as if the hardware isn't capable of doing awesome stuff (case in point: the idTech 5 demo from John Carmack [1]) - the software using it also has to be well engineered.

Good engineering for managing hardware resources at the browser level is still lacking (at this moment, Chrome's various processes are eating up ~700MB of memory on my system - disgraceful!) - and that's what bites Facebook the most.

[1]: http://www.youtube.com/watch?v=uofg7m2rtQ4

beefman 18 hours ago 1 reply      
Can anyone explain why their mobile site works so much better than their HTML5 app did?
sabret00the 1 day ago 2 replies      
And there we have it. What I find super interesting is despite this setback for Facebook and the failure of ChromeOS, Mozilla will still push on with Firefox OS (B2G) when the resources are much needed elsewhere. Oh well...
realrocker 1 day ago 1 reply      
The chimera of using simple JS/CSS/HTML to develop mobile apps has failed. HTML5 and WebOS put up a good fight but they are obviously not enough. Maybe the direction to go from here would be to make native mobile app development simpler for the Web guys and not the other way around. Maybe something like the awesome Kivy Project which helps you develop solid opengl apps in python for multiple platforms: http://kivy.org/#home. I would love to see Facebook put their resources into something similar to this.
dfox 23 hours ago 1 reply      
I somehow fail to understand what does device-UI specific concerns like "pull to refresh" and "momentum scrolling" (both of which are meaningful only for touch-centric UI) have to do with mobile Web as a platform (and specifically standardized HTML5/JS/whatever APIs).
erichocean 18 hours ago 2 replies      
### What's missing? ###

Mainly, dev tools on the device and/or easily accessible remotely.

Things we'd want to know more about as we develop:

#### Down memory lane ####

- Heap size,
- Object count,
- GC cycles,
- GPU buffer size,
- resource limits.

Arene't people just loading their mobile site in Chrome desktop, and profiling there? I guess I don't understand this one (although WebKit does have a remote debugging protocol now). If the site has bad numbers on the desktop, they're going to still be bad in other browsers (it's the same page/code after all).

Anyway, although I'm in hearty agreement that I'd like all of the things mentioned to improve, I'm not in agreement that it would have prevented me from making Facebook's HTML5 mobile site nice and zippy. :)

majani 22 hours ago 0 replies      
I believe the main reason Facebook has been negligent on mobile is because of Opera Mini. It has handed Facebook a huge lifeline in mobile. Its been the only bearable way to use the mobile site since Facebook's inception, and chances are its the most common way of access.
lopatin 5 hours ago 0 replies      
HN question: Why is post on the front page for days now?
devs1010 23 hours ago 0 replies      
They just need to stop trying to push the limits of mobile devices and aim for a middle ground, not everyone has a top of the line smart phone and these sorts of issues are to be expected. I see plenty of opportunity in creating lightweight browser based web apps using an all javascript solution (node js backend, backbone or something front-end) and keeping things lighweight
mrwilliamchang 1 day ago  replies      
Given this list of concerns, I believe that Facebook made the right decision in switching from HTML5 to native. The downside for them is now they have to write native code to support both Android and iOS.
Little-Known Awesome Algorithms: Fenwick Range Trees swageroo.com
120 points by randartie  20 hours ago   13 comments top 3
chime 17 hours ago 2 replies      
Very clever but replacing O(1) with O(log n) for updates is probably worse than the benefit gained by O(log n) range-sum instead of O(n) when the updates are happening constantly, in real-time - think Twitter Firehose. In practice, it would make a lot more sense to pre-define the buckets and update those when doing insert/update/delete. Even 1m buckets is just 1-4MB of data, depending on how many counts do you want (2^8 - 2^32). That would give you O(1) update and O(k) range-sum where k = number of buckets. You want k to be smaller than n otherwise you're back to the naive implementation.
joe_the_user 15 hours ago 4 replies      

    A Fenwick Binary Indexed Tree allows you to calculate 
the sum of elements in an array for any given index
range in O(Log(N)) time

I can modify a B-tree so each branch node keeps track of the sum total of values of nodes under it and the absolute number of nodes under it. It's pretty easy to find the sum of elements within a range, the range of elements that equal a given sum and so-forth. All O(log(n)).

Why the weirdo data structure?

chengsun 9 hours ago 0 replies      
This useful data structure confusingly goes by several different names.

Binary indexed tree: https://community.topcoder.com/tc?module=Static&d1=tutor...

Cumulative frequency table (which interestingly enough Simon Tatham claims to have independently invented): http://www.chiark.greenend.org.uk/~sgtatham/algorithms/cumul...

       cached 16 September 2012 19:02:01 GMT