Does Deep Learning Have Deep Flaws? - <AUTHOR> http://www.kdnuggets.com/2014/06/deep-learning-deep-flaws.html <comment><USER2> The concept is very cool, but it's not surprising that dimensionality reduction through a non-linear process is going to result in sections of input parameters that yield incorrect (and weird) results. Our visual system, while not the same as these systems, is extremely well developed and robust, yet the list of optical illusions that can fool us is quite long. In this study, the optical illusions are really just surprising because they aren't like anything that would fool humans.

This isn't to take away from the research; the most interesting result was just how close to valid inputs these erroneously classified images are.

But again, this isn't some fatal flaw. This summary completely neglects the fact that the paper _also_ recommends that -- just like distorted images are added to training sets today (you wouldn't want something common like optical aberration from the camera lens screwing up your classifier) -- in the future, these adversarial examples should be added to training sets to mitigate their effects.

> _In some sense, what we describe is a way to traverse the manifold > represented by the network in an efficient way (by optimization) and finding > adversarial examples in the input space. The adversarial examples represent > low-probability (high-dimensional) "pockets" in the manifold, which are hard > to efficiently find by simply randomly sampling the input around a given > example. Already, a variety of recent state of the art computer vision > models employ input deformations during training for increasing the > robustness and convergence speed of the models [9, 13]. These deformations > are, however, statistically inefficient, for a given example: they are > highly correlated and are drawn from the same distribution throughout the > entire training of the model. We propose a scheme to make this process > adaptive in a way that exploits the model and its deficiencies in modeling > the local space around the training data._ [1]

[1] [http://cs.nyu.edu/~zaremba/docs/understanding.pdf](http://cs.nyu.edu/~zaremba/docs/understanding.pdf)

<comment><USER3> > _This summary completely neglects the fact that the paper also recommends > that -- just like distorted images are added to training sets today (you > wouldn 't want something common like optical aberration from the camera lens > screwing up your classifier) -- in the future, these adversarial examples > should be added to training sets to mitigate their effects._

I've seen several articles citing this paper as proof that deep learning is deeply flawed, yet they all seem to miss the point you make above.

The other interesting result is that the neurons are not in fact individual features you can just grab and drop into another algo--the entire space defined by the model works together, through all the layers. Honestly, that was a more interesting result for me, although I don't know that it negates anything, I've just got to stop telling people that the individual units are features.

Not that deep learning is the end-all-be-all of machine learning--it's not. It's just that this paper isn't saying what reporters are saying it's saying... As per usual?

 _Never let the truth get in the way of a good story..._

</comment></comment><comment><USER4> Let's not forget that the word "imperceptible" is a heavily laden term in this context. There are numerous modifications to the data that would be "imperceptible" to a machine learning system, but would completely confuse a human. For example if you were to divide the image into a grid, and shuffle the squares, many ML systems would be tolerant to this kind of modification because some training regimes do this anyway. To that system you haven't changed anything important about the image and it would correctly classify it.

What this result says to me is that there are _really useful_ features of the data that can _successfully classify_ images that humans are totally unaware of! And that's neat.

<comment><USER5> I disagree with your opinion. What this says to me is that DNN is not how humans classifies images.

<comment><USER6> Which would be defeating a strawman. I don't know anyone who claims DNN is precisely how any aspect of the human brain works.

</comment></comment></comment><comment><USER7> The key claim, from the original paper:

> Second, we find that deep neural networks learn input-output mappings that > are fairly discontinuous [...] Specifically, we find that we can cause the > network to misclassify an image by applying a certain imperceptible > perturbation [...] the same perturbation can cause a different network that > was trained on a different subset of the dataset, to misclassify the same > input.

It's an interesting outcome -- but there are many deep-learning approaches and many different benchmarks, so it will be important to see if this is a misleading anecdote or indicative of a systematic problem.

[1] [http://cs.nyu.edu/~zaremba/docs/understanding.pdf](http://cs.nyu.edu/~zaremba/docs/understanding.pdf)

</comment><comment><USER8> First thought:

Can I turn all digital pictures of me into 'adversarial examples', so the eye of sauron can't identify me from pictures?

I'm sure it's not as simple as that, presumably any algorithmic modification to an 'adversarial' nature can be countered by other algorithms.

But I predict a new realm of 'arms race' here in the future.

<comment><USER9> Adversarial examples are tied to a specific algorithm, they didn't produce any universal adversarial examples from what I understand.

<comment><USER10> From the article: _What's more surprising is that the same perturbation can cause a different network, which was trained on a different training dataset, to misclassify the same image. It means that adversarial examples are somewhat universal._

<comment><USER9> Indeed, but they change the dataset and keep the same algorithm. I didn't see anything about changing the algorithm in itself. That's not very surprising: if you have enough training data, any large training set will be typical because it'll be average enough. But when you choose a specific algorithm, you can exploit its weaknesses and throwing more data won't change anything. Change the algorithm will, though.

<comment><USER10> But why would different training data lead to the same error? I could imagine it would lead to something with the same type of flaw, but why do the same exact adversarial images work, out of the near infinite number of possible images? Doesn't intuitively make sense to me, but I can't say I have much of a background in machine learning.

Like if you fit 5 close-to-linear 2d points with a 4th order polynomial, you'll overfit. Change the data slightly and you'll still overfit, but your fit will be very different.

</comment></comment></comment></comment></comment><comment><USER11> IIRC even the human brain has the 'adversarial' image flaw (these images will be unique to each person), but one simple workaround is to alter the input image via eye movement (which happens unconsciously).

<comment><USER12> IIRC? Can you provide any source or example? This sounds very interesting.

<comment><USER11> There was a discussion on slashdot (take it with a grain of salt perhaps) about a similar article.

[http://slashdot.org/story/14/05/27/1326219/the-flaw- lurking-...](http://slashdot.org/story/14/05/27/1326219/the-flaw-lurking-in- every-deep-neural-net)

The comment I recalled was written by someone with the handle "presidenteloco".

</comment></comment></comment><comment><USER13> Not an example from deep learning, but [1] also demonstrates that Bayesian systems also have similar problems with sensitivity to initial conditions that are quite similar.

It is also rather striking that these DLNs seem to be tricked by what we would typically think of as noise.

1\. [http://arxiv.org/abs/1308.6306](http://arxiv.org/abs/1308.6306)

<comment><USER14> It is not so striking when you consider how the typical published "result" in deep learning is obtained -- spend a few months turning all the different knobs that these models have to offer (while possibly inventing a few new ones) until its performance meets or beats the current state of the art on MNIST, CIFAR, and related benchmarks. Which is to say, these models heavily overfit to a few datasets; it should not come as a big surprise when they generalize poorly. What happens now will be that this perturbed dataset will be added to the standard training corpus and the DLNs will become robust to this effect. Then someone will figure out new way to mess them up, and the process will repeat.

<comment><USER15> I don't know what papers you are reading, but you seem to have a very distorted view of the literature. How do results on image net, production speech recognition datasets, language modeling, and high resolution satellite images fit the pattern you allege? Once again HN comment quality is depressingly low when it comes to machine learning topics. But I guess to be fair the description in the original link is very confused as well and misunderstands the conclusions of the paper.

</comment></comment></comment><comment><USER16> This problem was observed 20+ years ago with linear models used for protein structure prediction. For any given model of what described a properly folded protein, one could locate conformations of the same protein that were rated as folded even better than the correct conformation (I called them doppelgangers, but the name "decoy" is what caught on).

The statistical naivete of the field led to all sorts of inadvertent mixing of training and test set data which generated a lot of spurious claims for solving the problem. That is until one attempted to find those decoys and they were _always_ found. This led to the creation of the CASP competition to weed this out and the field finally moved forward.

[http://en.wikipedia.org/wiki/CASP](http://en.wikipedia.org/wiki/CASP)

The key similarity to what I described above is that adversarial search is done posterior to the training of the deep neural network. That makes all the difference in the world IMO. These adversaries may just be strange, otherwise hard to reach bad neighborhoods in image space without using a roadmap. Or they may be an unvaoidable consequence of the curse of dimensionality.

[http://en.wikipedia.org/wiki/Curse_of_dimensionality](http://en.wikipedia.org/wiki/Curse_of_dimensionality)

But given that neural networks have a gradient, it doesn't shock me that it can serve as a roadmap to locate a set of correlated but seemingly minor changes to an example in order to flip its classification. Doing so is simply back-propagation with constant weight values to propagate the gradient to the input data itself - literally a couple lines of code.

IMO there are two interesting experiments to do next (not that anyone will take this seriously I expect, but ya know, hear me now, believe me later):

1\. Characterize the statistical nature of the changes in input images and then use those summary statistics as the basis of an image altering algorithm to see if that can be used to flip the classification of any image on its own. If it can, be afraid, your driverless car may have blind spots. If not, then this is probably just a narrower form of overfitting.

2\. If it's likely overfitting, attempt an expectation maximization-like fix to the problem. Train the network. Generate adversaries, Add them to the training set, train again and then lather rinse repeat until either the network can't be trained or the problem goes away.

Expensive? Yes. But you're Google/Facebook/Microsoft and you have lots of GPUs. No excuses...

Failing that, the above is on my todo list so I'm throwing it out there to see if anyone can poke holes in the approach.

<comment><USER17> Thanks for saying this. I can't really comment on your experiments (I;m not qualified) but you can be assured that some people are working in machine learning today specifically having learnt the lessons of pre- and post-CASP. I don't know that I agree CASP was founded specifically because people found decoys, but...

it was an special shock when I learned about ensemble methods (I think they were just called "combined servers" at the time) at CASP and saw that all our hard work (manual alignments, lots of expert analysis of models, etc) wasn't really better (far worse in fact) than a few simply trained ensemble systems that memorized what they were bad at and classified their predictions with the appropriate probabilities.

See also: [http://www.nature.com/nchem/journal/v6/n1/nchem.1821/metrics...](http://www.nature.com/nchem/journal/v6/n1/nchem.1821/metrics/googleplus) [http://googleresearch.blogspot.com/2012/12/millions-of- core-...](http://googleresearch.blogspot.com/2012/12/millions-of-core-hours- awarded-to.html) (note, 4 of the 6 projects awarded specifically involved physical modelling of proteins and the fifth was a drug-protein binding job) [http://research.google.com/archive/large_deep_networks_nips2...](http://research.google.com/archive/large_deep_networks_nips2012.html)

none of the above are coincidental: the first two links are specifically because I went to Google to use those GPUs and CPUs for protein folding and design and drug discovery. The third project is now something I am experimenting with.

<comment><USER16> > don't know that I agree CASP was founded specifically because people found > decoys, but...

Here's an example of what drove my work back then:

Look at the energies and RMSDs (a measure of distance from the native structure) of melittin in these two papers:

Table 2 in [http://onlinelibrary.wiley.com/doi/10.1002/pro.5560020508/pd...](http://onlinelibrary.wiley.com/doi/10.1002/pro.5560020508/pdf)

and

Table 1 in [http://www.ncbi.nlm.nih.gov/pmc/articles/PMC1260499/pdf/biop...](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC1260499/pdf/biophysj00100-0122.pdf)

In the first paper, the energy is higher, but the RMSD is lower. In the second paper, the RMSD is higher, but the energy is lower. How did this happen?

Well, in the first paper, phi/psi angles are set directly from a library of sequentially homologous dipeptides to pentapeptides that _INCLUDES MELITTIN_. So, by the time you get to tripeptides, you're nearly guaranteed to just be outputting the native conformation phi/psi angles over and over again. And this paper is just one of many to make basic mistakes like this.

As young turk back then, I got into a rather long and vigorous online argument with one of the founders of CASP who insisted the first paper was a partial solution to the protein folding problem. And I suspect that argument influenced the subsequent creation of CASP.

Anyway, it's been nice rehashing my post-doc glory days(tm), but we no longer have any excuses here. We have the tools, we have the technology...

</comment></comment></comment><comment><USER18> I think just like any machine learning algorithm, especially with computer vision, you need to prepare things properly. More robust data and images such as moving window on image patches and image rotations, even going as far as applying filters like sobel for edge detection will make your algorithm a lot better.

Any algorithms have weaknesses. It's a matter of being aware of them and compensating for them in your model, possibly by using another model.

<comment><USER19> The value proposition of deep learning is to eliminate these kind of hand- coded features and to discover the features automagically.

However, maybe there's a middle ground. I.e. maybe we don't need the more esoteric features that SIFT uses, but it just makes sense to do edge detection, and say a Fourier transform for audio.

<comment><USER18> I wrote [1], I'm plenty aware of the "feature discovery" that goes on, but it can still be an enhancer. See my recent talk[2] for a good overall idea of the situation.

Normalization and other data transforms are still required for discovery of features.

[1]: [http://deeplearning4j.org/](http://deeplearning4j.org/)

[2]: [https://www.youtube.com/watch?v=hykoKDl1AtE](https://www.youtube.com/watch?v=hykoKDl1AtE)

<comment><USER15> That library looks like garbage. The website describes convnets as a "type of restricted Boltzmann machine." How can anyone trust a library with that level of misinformation?

<comment><USER18> I appreciate the feedback. I need to clarify the implementation in DL4j in the documentation.

The impl is a convolutional RBM. That being said, where's your deep learning library? ;)

The documentation is still being worked on. If that's the only thing you can cherry pick from a new project, I must not be doing too bad.

Edit: Clarified. I know you're just a troll account, but I'll throw this out there anyways, I think anyone who judges the quality of a lib based on a 2 second reading isn't qualified to judge much. A lot of it does rely on me with the documentation, but I'd love to chat with you one on one if you think I'm not qualified. Trash me all day, I'll either learn something or embarrass you. Both are fine with me ;).

<comment><USER15> A lot of people like Torch. I haven't looked at pylearn2 in a while, but that might be good too. Then there are a few researcher libraries with limited documentation. Nitish Srivastava has his DeepNet library and George Dahl has gdbn and there are certainly a few others too. Who knows, maybe people will start contributing documentation.

I would probably recommend Torch at this point. The incentives don't exist for the experts to make really good open source projects and spend all the time required maintaining them and helping people with them.

<comment><USER18> That's fine. I do this full time. Despite it being new, I'm coming at it from a stand point of providing a platform for newer users and apps around it. You would be surprised the demand for industry.

You're right about this which is why I started a company around it.

I've already talked with andrew ng and yoshua bengio. My incentives are different from there's, however, I do have their blessings to continue doing this.

I walked in to this expecting skeptics. That being said, I love deep learning as a field and will be implementing every possible neural net I can. Since my incentives are different, I can explore the different use cases with customers and help further the field in different directions that might not make sense for say baidu, facebook ,or google.

[1] [http://www.skymind.io/](http://www.skymind.io/)

</comment></comment></comment></comment></comment></comment></comment><comment><USER20> But then we wouldn't see faces in clouds...

Neutral networks are not perfect solutions, they are solutions that get an organism to reproduce successfully.

Read any book on color vision humans have similar problems, yet for the most part we see things, and realize that clouds are just clouds and not faces, except for the religious, they lose their shit when faces appear in clouds.

</comment><comment><USER21> This is old news. And not really that shocking. You always use multiple models and check them against each other. None is perfect. Big deal.

</comment><comment><USER22> This actually kind of freaks me out. Might it be possible that there is a way to corrupt brains?

<comment><USER22> We are well aware of various optical illusions, but are there "illusions" that be applied against other brain structures, such as memory or beliefs?

<comment> a-priori For memory, there's the "Lost in the mall" technique for implanting false memories. It exploits an effect known as memory conformity where people's memories of an event tend to converge after discussing it together.

[http://en.wikipedia.org/wiki/Lost_in_the_mall_technique](http://en.wikipedia.org/wiki/Lost_in_the_mall_technique)

[http://en.wikipedia.org/wiki/Memory_conformity](http://en.wikipedia.org/wiki/Memory_conformity)

Not sure what you mean by beliefs.

There was also an experiment on split-brain patients (the connection between the left and right hemispheres is severed) where they'd show a command like "WALK" to the patient's right hemisphere only. They'd get up and walk. But since language is often localized to the left hemisphere, if you talk to them you are talking to the left hemisphere only, which did not see the command. Instead of saying something like "I don't know", they would make up a plausible reason to get up like "I'm getting a drink".

Does that count? It exploits what we know about the visual system (half of the visual field goes to each hemisphere) and localization of a particular function (language) in a patient with a specific disability (their _corpus collosum_ is severed, which is mostly asymptomatic) to produce a completely strange result (invention of a motive).

</comment></comment></comment><comment> peter-row Can you fix it by adding random gaussian noise to the input?

</comment><comment><USER23> I don't know if this applies to other classifying algorithms, but I guess this will mean better CAPTCHAs?

</comment><comment><USER24> I wonder if subtle make up could be used to make a real life face into an adversarial example.

<comment><USER25> You can apply facial makeup that makes your face look completely different to a human observer. Trying to understand how a person with full-coverage facial makeup really looks like is a very frustrating experience. You're trying to see the contours of the face, but your brain keeps focusing on the applied colors. The same makeup would probably work well on a computer as well.</comment></comment>


What Silicon Valley Thinks About Politics – An Attempted Measurement - <AUTHOR> https://medium.com/@ferenstein/what-silicon-valley-really-thinks-about-politics-an-attempted-measurement-d37ed96a9251 <comment><USER2> This seems to be entirely: "What Silicon Valley (founders) Think(S) About Politics (and how close are they agreeing with 'general' Democrats)"

I was hoping for something more generic, at least 'what tech workers in silicon valley think' (given YC), not how a bunch of talking points line up to other talking points; but an actual sample of, 'here is a problem, what do you think the best solution(s) are?' (then ranked totaling them).

It also has that new media style that I /hate/ on websites, where there's some full-screen image delineating sections. Yet they absolutely cannot serve you some clean simple web page, it HAS to have full, you must scroll through them, big images and dynamically placed text.

<comment><USER3> Check the voting patterns for areas in the Valley to discover what tech workers think. They pretty much line up with the results displayed regarding founders. I noticed it myself while living there.

</comment></comment><comment><USER4> The people he quotes quite liberally in his piece, including Mark Zuckerberg, Marc Andressen, Peter Thiel, all support Republican presidential candidates. He makes it seem as if their quotes are in support of Democrats. Also, only 129 out of 8000+ founders and investors responded. This doesn't scream selection bias? Maybe Republican founders and investors are less likely to respond to surveys, especially considering how the Brendan Eich situation went down.

</comment><comment><USER5> There is something weird going on with the bar chart titled "An unequal big pie". The bar for "financial inequality is a bigger problem for a prosperous economy" is extremely small. The numeric value is 42%. As in, close to half of the sample of (very rich) tech founders agree that it is a huge problem (versus 59% of the general public sample, which incidentally still looks like less than half the bar). Yet the graph makes it seem as if few founders thought so.

Note that the alternative in the same graph is "mediocre growth is a bigger problem for a prosperous economy" and there the value is 48%. So only a few more tech founders[1] see slow growth as a big issue compared to those that mention income inequality (for the economy, not ethically, mind you).

There is a lot to be said about a future that arrives faster and is quite a bit more equally distributed, and which of the two matters the most. But that bar seems to me as misleading to strengthen the posts view on S.V. (wealthy founder) politics.

[1] 2 actually, given the sample size is 33

<comment><USER6> Normally the minimum sample size for political poll is 1k ideally 3k.

<comment><USER5> In all fairness, this is a poll of a very particular sub-population (Crunchbase founders and investors). The entire population is 8499 people, so a sampling size of 3k would be more than a third of the population. The sample size for most questions is 129 (but not random, since those were only the ones who responded). I just found that one graph weird, but admittedly I haven't looked carefully at everything else.

</comment></comment></comment><comment><USER7> Across the Western world, the incumbent political parties are struggling to represent the changing alignments of the population - (I tried to give shorthand examples - I can't and that's the problem)

Silicon Valley's politics are perhaps more pronounced version of what you see in every major city and country - economics and tech are changing everything and the new alignments are going to be based around our inner chimp reactions to things - and those things are not clear yet.

For example, make suggestions below as a form of free form policy / word association.

</comment><comment><USER8> > Internet founders believe the best role for government is competitive and > direct funding for non-government agencies to solve social problems, whether > it's parent-run public charter schools, loans to immigrant entrepreneurs for > an alternative energy startup, or scientific research at a public > university.

I read this as founders believe they should receive support from the government. Maybe the difference between start-ups and traditional business isn't that big after all.</comment>


Does Google Really Control The News? - <AUTHOR> http://www.techcrunch.com/2009/04/11/does-google-really-control-the-news/ <comment><USER2> No they don't. Google and other news aggregation sites just make it easier to filter through the crappy news. Combine that w/ higher quality, more focused reading material via the net and the large news orgs start to suffer.

</comment><comment><USER3> it sure have a little control over it as they have millions of users, so they can BUZZ something up

but i don't think they'll control the media in long term.. no one can even control it</comment>


Sharable, Open Source Workers for Scalable Processing - <AUTHOR> http://blog.iron.io/2012/11/sharable-open-source-workers-for.html

<comment><USER2> I like this idea too, I feel there are a lot of typical tasks that most web applications all need to do. Nice work!

</comment><comment><USER3> This is SO cool!!! Cannot wait to try it out.

</comment><comment><USER4> very cool! is there a way to do this without using command line?

<comment><AUTHOR> Not yet, but very soon we'll add the upload function to the API so you don't need the cli.</comment></comment>


Cachet – Service status updates improved - <AUTHOR> http://cachethq.io/

<comment><USER2> It's not quite clear what exactly this does—apparently I can "Create, edit and delete components." and "Log incidents." and "monitor services". Some more relevant info on the pages would be nice.

<comment><AUTHOR> It's a StatusPage.io alternative. The "Create, edit and delete components" is kind of arbitrary there.. I'll update it.

</comment></comment><comment><USER3> Great! Now I'll just have to get a Statuspage.io subscription to watch my catchet install. But seriously, this is cool. Creating a StatusPage-type app has actually been on my todo list and even though I've moved away from PHP I think the fact that it's built on it makes its appeal and potential for use very broad.

My first thought though was "what happens if my Catchet instance goes down"? After thinking about it for a minute I don't think this should be a big concern for most. Assuming you run Cachet on a server separate from the one you're monitoring then the chances of both going down at once are small save for instances where you put both the Cachet instance and the app you're monitoring on the same provider like a Linode or DigitalOcean and they have an outage. Then I thought you could just get a free Pingdom account and have it ping your Cachet instance every few minutes. This way you know your status page is online (which is really all you need to know about a status page) and then the status page will give you a more detailed overview of the app you're really concerned about.

Great job, thank you for making this. I'm definitely going to use it.

<comment><AUTHOR> Hey, thanks man! Heh, you'd technically need StatusPage.io for your StatusPage.io subscription ;)

But yes, I'd advise you run it on a separate server.

</comment></comment><comment><USER4> Very cool, I just sat down yesterday to start hacking on a Go version of the same thing. (Go mostly just because I needed an excuse to use it and because I thought a single binary deploy option might be nice).

I'll definitely give this a shot instead!

</comment><comment><USER5> Nice design. I'm not exactly clear about what's going on in the sample screenshot, though; when the block has two sections, are those supposed to be two messages joined together (since they occurred at the same time), or one message with additional detail?

Also, there are two grammatical errors that are a bit jarring: "We're located the upstream issue" and "Not know what happened" (possibly that's a joke?)

<comment><AUTHOR> Thanks pimlottc, we're actively working on the design and trying to improve readability.

I believe you're talking about the incidents themselves? What you see in the screenshot isn't actually a good representation of what's happening. Instead, check out the live demo. [http://cachet.herokuapp.com/](http://cachet.herokuapp.com/)

And in the mean time, I'll update the screenshots.

<comment><AUTHOR> Screenshots updated!

</comment></comment></comment><comment><USER6> If you don't want to offer hosting, consider integrating so you could do, say, 1-click "deploy to heroku."

I run a SaaS monitoring service (my profile has details) and we've been asked before to produce an installable product. We've rejected the idea not because we lack sympathy with companies that have no-hosted-saas policies, but because the reliability and stability of the service is among the most valuable features.

<comment><USER7> There's a "deploy to Heroku" button right there in the markdown..

</comment></comment><comment><USER8> As StatusPage.io is a YC-backed startup, I wonder how this affects them... Do they feel threatened in any way? Though I guess they're really offering a service, not just a download

<comment><USER9> I wouldn't be threatened. One of the most poignant value propositions is about hosting.

<comment><USER8> Yeah, it seems like this is becoming more and more the business model of the present/future...

</comment></comment></comment><comment><USER10> I've been following development via Twitter and noticed the news that Mozilla Brazil is using it. Going to be very interesting to see where the project goes in the next year!

</comment><comment><USER11> It would be nice if there was a Demo setup somewhere.

<comment><AUTHOR> We do, but it should be linked on the homepage and be more visible; [https://cachet.herokuapp.com](https://cachet.herokuapp.com)

<comment><USER5> That's helpful, but it would be more interesting as a demo if it had some other events on it.

<comment><AUTHOR> I completely agree. Unfortunately we're having issues with APC ([https://github.com/cachethq/Cachet/issues/163](https://github.com/cachethq/Cachet/issues/163)) on Heroku and as such can't login to add them.

I'm investigating this now.</comment></comment></comment></comment>


Startup docu teaser #02: Steve Huffman (Reddit / Hipmunk) - <AUTHOR> http://www.youtube.com/watch?v=XjQBbNSlfNo

<comment><AUTHOR> This is material from a 2h interview with Steve Huffman, <http://www.hipmunk.com/> It consists of scenes that I probably won't use in the docu but wanted to share with folks anyway.

Blog about the docu: <http://startup-dna.tumblr.com/> Twitter: twitter.com/@startup_dna

The docu is about startups, venture capital, programming and education. I'm bootstrapping this out of my own pocket and it's my first documentary. My ambition is to make this film as authentic and 3-dimensional as possible. I'm showing accomplished entrepreneurs and underdogs who just started their businesses side by side and capture their insights about startups on screen. If you have ideas for people I should interview and can provide intros as well, please post their names below so readers can upvote candidates they would like to see. Feedback is much appreciated. Thank you!

<comment><USER2> Great work, Ed! Very interesting and informative....

Looking forward to seeing more quality content in the future!

<comment><AUTHOR> Thanks, happy you like it.</comment></comment></comment>


The Y Combinator: Anonymous Recursion in C# - <AUTHOR> http://blogs.msdn.com/b/wesdyer/archive/2007/02/02/anonymous-recursion-in-c.aspx <comment><USER2> Since when is this crap within the mission of Hacker News? Someone at Y Combinator should get this off the site!

</comment><comment><USER3> Only C# could make something so elegant look and work so ugly.

<comment> T-zex Could you, please, provide a more elegant example in other statically typed language.

<comment><USER4> OCaml: <http://rosettacode.org/wiki/Y_combinator#OCaml>

<comment><USER3> My point entirely!</comment></comment></comment></comment>


It's near impossible to gain access to the best paying jobs - <AUTHOR> http://www.theatlantic.com/business/archive/2015/05/recruitment-resumes-interviews-how-the-hiring-process-favors-elites/394166/?single_page=true

<comment><USER2> What a depressing article. I actually disagree that if you don't go to a prestigious school or come from money that you can't get a decent paying job.

My dad was a humble mechanic, my mother stayed at home and looked after the house. We didn't have a lot of money and we always rented, I went to a public school and I didn't even end up attending college/university after I finished senior studies. But here I am, earning a lot more than my indebted friends many of whom did study and get expensive degrees. As a front-end developer, I earn a six figure salary and have a comfortable life with minimal debt.

I think these kinds of articles are demoralising and dangerous. Anyone from any walk of life, no matter their upbringing can succeed and get a high paying job. You just have to work a little bit harder than those with a headstart to get there. You will face a lot of setbacks, I know I did, but I didn't let it stop me from achieving my goals and getting a career that has opportunities. Yes there are companies out there who will discriminate talent based on what school they attended or what their last name is, but not every company offering a high paying job is like this, definitely not in Australia anyway.

</comment><comment><USER3> > For those who didn't go to prestigious schools, don't come from money, and > aren't interested in sports and booze—it's near impossible to gain access to > the best paying jobs.

Well shit.

I didn't go to college, my family was poor... I mean I guess I could take up an interest in sports and booze but really at that point you just might as well live under an underpass.

</comment><comment><USER4> It sounds like this is article is focused a little bit towards the financial industry. It would be interesting to hear if there are firms bucking the conventional wisdom and following something like a 'Moneyball' strategy for hiring.

<comment><USER5> My observation of the financial industry is that people with connections have strategic value that does not go unnoticed. Intellect and hard work are only some of the factors in a successful trading venture. Where many might have potential, pedigree gets you a chance early on. Without a chance, vital skills don't develop. Mentorship is vital. Anyone can succeed. But, you need a combination of smarts, hard work, charisma, and luck.

<comment><USER4> I had a similar thought that if the company in direct contact with customers of a given social strata, having employees from similar backgrounds that interact with those customers might be an advantage. On the other hand, if the company is say a company that specializes in quant algorithms interacting with a trading api, then personal background yields no advantage.</comment></comment></comment>


Why Millennials Are Less Urban Than You Think - <AUTHOR> http://fivethirtyeight.com/features/why-millennials-are-less-urban-than-you-think/

<comment><USER2> _Millennials overall, therefore, are not increasingly living in urban neighborhoods_

I've seen articles that argue this, but I think the bigger issue is that Millenials _can 't_, because it's too expensive: [http://www.amazon.com/Rent- Too-Damn-High-Matters-ebook/dp/B0...](http://www.amazon.com/Rent-Too-Damn- High-Matters-ebook/dp/B0078XGJXO) and municipalities simply won't let anyone build housing that millenials can't afford.

Except... for exurbs, which don't have existing veto players. Consider: [http://marginalrevolution.com/marginalrevolution/2015/03/hou...](http://marginalrevolution.com/marginalrevolution/2015/03/houston- v-california.html) :

 _Unlike most other big cities in America, Houston has no zoning code, so it is quick to respond to demand for housing and office space. Last year authorities in the Houston metropolitan area, with a population of 6.2m, issued permits to build 64,000 homes. The entire state of California, with a population of 39m, issued just 83,000._

People move to Houston and exurbs because they can. They don't move to say New York and San Francisco and Seattle because those cities are so expensive, regardless of other preferences.

<comment><USER3> Having lived quite some years in Houston, I see it as just another example of the problem with NIMBYs and zoning stalling urban development, not an example of a liberalized, pro-development city, _except_ (like in many places) in the exurbs. Houston claims to have no zoning, but that is not really true. Whether you call them "zoning" or invent a euphemism for them, there are... regulations on type of construction: minimum-setback requirements, minimum parking requirements, building-to-land ratios, traffic impact rules, etc. that make it difficult to build high-density housing in most of the city. There are the usual NIMBY problems as well. Attempting to get even just a light-rail line built has run into loads of whining and lawsuits from people who don't want it near them.

Another recent-ish factor is that Texas law and judges' insane attachment to property rights, to the extent of including various intangible property rights, has a perhaps counterintuitively anti-development impact. Neighbors can take new developments to court on the theory that the new development has damaged some of their own property's value, e.g. by producing increased traffic or blocking views (some of this originally came out of a very broad interpretation of "regulatory takings", but has extended to private litigation). For example, last year, a group of homeowners won $1.2 million from the developer of a new condo tower: [http://www.houstonchronicle.com/business/real- estate/article...](http://www.houstonchronicle.com/business/real- estate/article/Ashby-ruling-allows-high-rise-to-go-forward-5447064.php)

It is, however, relatively easy to build new single-family homes in the exurbs ~20-30 miles from the city, which is what the vast majority of those 64,000 new-home permits are for. These technically count as "Houston", because Texas law is very annexation-friendly, so Houston has annexed most of its suburbs and exurbs out to a radius of ~30 miles. But that's sort-of like counting a new subdivision being built in Walnut Creek as an example of development progress in San Francisco.</comment></comment>


Chaos Will Unfold If Trump Opens the Tongass to Logging - <AUTHOR> https://www.wired.com/story/tongass-logging/ <comment><USER2> This would be the biggest ecological loss in the US nearly ever. We aren't talking about just frozen wasteland, but a globally unique rainforest. [https://www.onlyinyourstate.com/alaska/tongass-national- fore...](https://www.onlyinyourstate.com/alaska/tongass-national-forest-ak/)

</comment><comment><USER3> Assuming the demand for lumber doesn't change, where is the alternate providing location? Is it a better choice, ecologically?</comment>


Fitbit Acknowledges Latest Devices Are Causing Rashes - <AUTHOR> http://techcrunch.com/2015/02/11/fitbit-acknowledges-latest-devices-are-causing-rashes-advises-to-give-your-wrist-a-rest/

<comment><USER2> Even my Fitbit one can irritate my skin when I wear it on my waistband. I attributed it to the rubbery material having a large amount of friction when it moves across skin.</comment>


Business guy still looking for that elusive code monkey? Read this first. - <AUTHOR> http://blog.lawnstarter.com/

<comment><USER3> I have to say, as a "business guy" cofounder who is finally pushing out his first apps, that starting with Codecademy is probably the worst way to go about things. I don't know how many times I started different Codecademy courses and ended up saying, "OK, I can create a loop... now what?" That is decidedly _not_ the first step in learning how to program.

The first step is learning how to use the command line, getting a text editor, linking those two, and figuring out how to push something live. You can code loops all day long, but until you have any practical implementation of that (i.e. building even the simplest of apps and pushing it live), coding will feel abstract and unreachable.

If I were to start over (I'm learning Ruby/Rails) I would start with a tutorial (Michael Hartl's rails tutorial, Treehouse or One Month Rails), but really I would use them all at the same time, because their emphases are different and each picks up on parts that the other leaves out. Only once I had "finished" a couple of apps following the tutorials (which cover everything from getting a text editor to using github, pushing to Heroku and connecting Heroku with a DNS) would I go back to Codecademy and learn Ruby. The context of knowing what you can actually do with those snippets of code is incredibly important.

And yes, as others have pointed out, building a simple rails app and putting bootstrap on it is not the goal of programming, but knocking that process is like saying "You shouldn't learn to count on your fingers because really you need to multiply."

<comment><USER4> Agree with this wholeheartedly. I started learning C++ back in 1997 with "Learn C++ in 21 days" and other books. I quickly got burned out with building simple print out programs and over the past 16 years have started different languages in fits and starts.

There are so few one language projects that are worth using, that the single language approach seems really outdated.

To me a much better approach would be to have learning structured around a specific project type. In general projects fall into only a handful of categories so I don't think it would be terribly hard to structure. For example "Web commerce" (Javascript, CSS, HTML5, mySQL), "Machine learning" (Python, Java) etc... You wouldn't learn all the details of a language up front but you would get to your goal more quickly and have a framework/template for future projects.

</comment></comment><comment><USER5> > "Get help setting up your development and production environments. In > English, this means set up where you write your code and where you see the > results of it. Setting this up is the biggest pain for us non-technical > people. In fact, I think that it is the single most difficult thing in > learning to code."

As a lifelong hacker, this is something its easy to lose sight of until you try to help someone else get started.

Last time I needed to help a newbie get running, we tried [https://www.nitrous.io/](https://www.nitrous.io/) and it was helpful. It defers dealing with all the environment / sysadmin stuff until later, so the learner can get positive feedback sooner.

</comment><comment><USER6> Can't agree more with this advice. Everybody's talking about MOOCs, CodeAcademy etc and while I used those platforms for sure, looking back it was the experience that really helped me. The hours and hours of not knowing why your code is not compiling and learning the hard way is invaluable - <USER2> schools and classes can't emulate that well enough.

<comment><USER7> I took my first software classes 2 years ago at the University and HATED every second of it! That summer I landed a co-op where I spent 6 months (I was invited back to mentor) learning Ruby on Rails and related technology. During that time, I tried to throw up as many apps as I could for practice. Thos included Rails apps, Cordova apps, JS apps etc...Those 'practice apps' landed me my first starter position making the industry standard for a rails dev with 2 years or so of experience. I am learning WAY more now then I ever thought I could and have built a hell of a resume over the past year with real world experience. Online tools got my foot in the door. A year and a half later, I am making an honest living and developing features that I thought would take me years to master. I started with a single GOOGLE search...For me, it was a mix. The experience of the co-op was the driver to what I have today though.

</comment></comment><comment><USER8> It seems like the development environment is the hardest part for beginners. Seems like a niche that all the cloud development environments could go after?

</comment><comment><USER9> Great advice, will this work for other technical professions, too? Say, brain surgery, for instance.

<comment><USER10> You don't need to learn brain surgery when you can just trade your brain surgeon friend a six-pack of beer for their services.

</comment></comment><comment> vezzy-fnord It seems a lot of people misinterpret "don't reinvent the wheel" as "if they exist, use lots of pre-written libraries". End result is I see projects with ridiculous numbers of dependencies.

Reinventing the wheel is very useful as a learning experience and to take a peek at how things work behind the scenes. Often you may only need a portion of what a certain library does, and it is perfectly feasible and correct to implement it yourself.

Especially horrible is the message encouraging use of Bootstrap to style web pages. The last thing web design needs is _more_ generic and blatantly obvious Bootstrap layouts. It can be a useful tool, but most people use it wrong and it very often leaves a bad taste.

Rather, the idiom one should follow is "Don't reinvent the wheel, but feel free to refine or re-implement it, as long as you don't end up reinventing the flat tire."

<comment><USER6> So are you saying that novice developers (i dont think the author would even call himself that) should not use bootstrap and instead waste extra time learning how to structure their pages? Its not hard to insert a 'pre-written' bootstrap css stylesheet and completely change how a bootstrap page looks while still taking advantage of the grid system etc.

<comment> vezzy-fnord Learning how to structure your pages is not a waste of time. It's quite essential, actually.

<comment><USER6> If your aim is to make websites, yes. If your aim is to make a website for your startup, no.</comment></comment></comment></comment>


Show HN: Cargo – The easiest way to tokenize assets - <AUTHOR> https://cargo.build/ <comment><USER2> FYI the Rust package manager is called Cargo. Might lead to some confusion:

[https://doc.rust-lang.org/cargo/getting- started/installation...](https://doc.rust-lang.org/cargo/getting- started/installation.html)

</comment><comment><AUTHOR> Hey Sean from Cargo here. Cargo is a tool that provides businesses and developers freedom and efficient independence from 3rd party payment processors and app stores. Cargo utilizes the Ethereum blockchain to open new avenues for digital creators and sellers. It's our mission to help change the way the world buys and sells, using a decentralized system that empowers new economies and opportunities and lets our users keep more of what they earn.

From digital collectibles to art to houses - you can use Cargo to tokenize all these things and quickly begin selling. You don't need to write a single line of code and can interact directly with the Cargo dashboard, or you can create a fully customized app experience for your users by using the Cargo APIs. There is a JavaScript library, or you can interact directly with the smart contracts. No account needed. You just need a wallet to connect your browser (desktop or mobile) to the Ethereum blockchain. Check it out! Feedback is definitely welcome. There are more features coming down the pipeline soon.</comment>


Premature Abstraction - <AUTHOR> http://pragmaticnobodies.wordpress.com/2013/05/04/premature-abstraction/

<comment><USER2> How is this any different from blogging?</comment>


Cato: Stimulus bills could add nearly $6T to national debt - <AUTHOR> https://www.thedailyfodder.com/2020/05/cato-stimulus-bills-could-add-nearly-6.html <comment><AUTHOR> All told, these decisions will add an estimated $5.8 trillion to the national debt.

The deficit will soar to nearly $4 trillion in 2020, then narrow to roughly $1.5 trillion for the next few years, before it is expected to widen again.</comment>


Teardown of the Microsoft Band - <AUTHOR> https://www.sparkfun.com/news/1681 <comment> at-fates-hands I just got one of these and like a lot so far.

The only Achilles heel for this is getting the data out and doing some real analysis of what your sleep cycles are, how your fitness levels trend, etc.

Hopefully in the near future, they will come out with something, but thus far, the data you see is quite limited.

<comment><USER2> I managed to extract the raw minute-by-minute data from the Band using some hacky tricks. I was thinking of posting a howto, but trying to check if it runs into problems with the CFAA/DMCA. Might post something tomorrow after making sure it's legally sound.

<comment><USER3> I'm curious whether you decoded the binary protocol/blob or have just been poking at the API (where just about everything is pretty convenient JSON). I've done the latter but haven't broken out my Ubertooth yet for the former.

Re: DMCA - there's a reverse engineering carve-out for interoperability. While I guess MS could abuse either CFAA/DMCA to slap down RE, it seems like it'd be a pretty bad PR move.

<comment><USER2> I think what I was doing is the latter. Anyways, I just posted the writeup if you want to swap notes.

<comment><USER3> A lot of my notes aren't super well organized (and wouldn't make sense w/o scrubbed captured flows) but I just posted a comment on your post thread talking about the BTLE as well as the remote API stuff.

</comment></comment></comment></comment></comment><comment><USER4> Do not remove the Loyalty Bracelet.

[http://www.yuwanmei.com/products#4](http://www.yuwanmei.com/products#4)

<comment><USER5> Wow, is this site an actual business or some kind of parody?

<comment><USER4> That site is run by The Onion, which, for a few weeks, claimed to have been bought out by Yu Wan Mei Salvage Fisheries and Polymer Injection Corporation.

 _Any time is Fish Time!_

</comment></comment></comment><comment><USER6> Anyone else have trouble not automatically translating "LiPo" battery as "Lithium/Polonium" in their heads?

That would be a bad battery.

</comment><comment><USER7> Interesting to see a Cortex-M4 on board, certainly no way it's running Windows. Maybe they have some simple RTOS?

<comment><USER8> Not really an RTOS. I hear it's more an "event loop and some interrupt handlers," much like the firmware in the Kinect.

(We went through a "we need an RTOS" phase on the Kinect. Eventually we ditched the thread stuff we wrote, which made things a _lot_ simpler -- if you don't absolutely have to have threads and can get away with computing stuff in a main loop, then _do that_. Threads introduce all kinds of synchronization and inconsistent execution time nonsense that you should avoid if you can).

<comment><USER9> fascinating. I assume that was the first kinect. Was the vision processing separated from the USB interface in different chips? Sounds like a fun project.

<comment><USER8> The 1.0 Kinect is several processors:

\- A "DSP" based camera system that just does transfers from the sensor system to USB, and that does some other monitoring and housekeeping. It does no vision processing, it's just pass-through of video from the chips to the host.

\- An ARM-based audio system that handles mic data, runs an echo cancelation algorithm against host-provided speaker data, and provides the raw and echo- canceled mic data to the host.

Early Kinect versions used yet another processor for managing the tilt motor and accelerometer. This stuff was move to the ARM later (that a tilt-motor processor existed in year 1 units is a fine example of team structure affecting product structure).

All of these CPUs have their own USB interfaces, and there's an internal USB hub so there's only one wire going to the host. :-)

None of these chips use an RTOS; that would just get in the way.

The vision processing is done on the host, where you have heavy lifting capability with GPUs and tons of memory and so on. Doing that processing on the camera would quite expensive in terms of hardware and power, and wouldn't be able to adapt as well to new algorithms.

</comment></comment></comment></comment><comment><USER10> -failed to remove qrcode sticker from big chip?

-failed to identify gyro/accelerometer/compass chips

ifixit they are not, but its a good start

</comment><comment><USER11> For comparison, the Nike+ FuelBand teardown: [http://www.youtube.com/watch?v=7xdajSS_cOU](http://www.youtube.com/watch?v=7xdajSS_cOU)

(Warning: very lengthy and detailed, contains some humour.)

</comment><comment><USER12> It seems like some components are missing, for example the gps and and microphone.</comment>


New measurement of Hubble constant adds to cosmic mystery - <AUTHOR> https://www.ucdavis.edu/news/new-measurement-hubble-constant-adds-cosmic-mystery <comment><USER2> >That method, based on the afterglow of the Big Bang, gives a Hubble constant of 67.4, _assuming the standard cosmological model of the universe is correct._

I found this line extremely ironic in an article about "cosmic mystery".

<comment><USER3> What really got me was the line about 'assuming there isn't a problem with bias'

the universe is supposedly expanding very rapidly, with objects moving very rapidly. I would imagine there is a huge bias that is probably wrong.

I understand gravitational lensing and all, but there are huge assumptions made about formations and clusters of celestial bodies where there is a lot of room for these crafted images of stars and black holes to be completely wrong.

What if there is no black hole but just points in the universe where there is so much clutter the light cannot jump around, leading physicist to believe there is a black hole?

Like when I shine my flashlight over a corner, sure you can see the shadow, what if you are two rooms away? Wouldn't you not be able to see anything at all?

It seems we don't know anything about the universe and rather than say the equations are wrong and look for more abstract formalizations with larger rooms for error, we continue to hold dogmatic practice to very strict and rigid formalizations. Don't get me wrong quantum mechanics show the waviness of the world (both metaphorically and literally), it just seems based off of some assumptions we snowball. The snowball effect causes generations upon generations to practice dogma rather than facilitating questioning and looking for contradiction. It seems the physics community has fallen to a confirmation bias.

</comment></comment><comment><USER4> Not constant? (jk)</comment>


How to Design a Good API and Why It Matters (2007) - <AUTHOR> https://www.youtube.com/watch?v=heh4OeB9A-c <comment><USER2> Original video, on Google's channel: [https://youtu.be/aAb7hSCtvGw](https://youtu.be/aAb7hSCtvGw)</comment>


How does an obvious scam like this get greenlit? - <AUTHOR> https://www.kickstarter.com/projects/datagatekeeper/datagatekeeper-the-first-impenetrable-anti-hacking/description <comment><AUTHOR> They can't even tell the difference between "-bit cipher strength" and a "kilobyte" \- their entire Kickstarter appears to be based on nonsensical buzzwords.

</comment><comment><AUTHOR> Looks like it's a front for a pump and dump or investment scam.</comment>


Amazon Kindle Fire 8.9: Gunning For Every Other Tablet Out There  - <AUTHOR> http://techcrunch.com/2012/11/19/kindle-fire-8-9-inch-review/ <comment><USER2> The problem with the Kindle is the very poor software experience. I don't see that changing any time soon.</comment>


Create Mobile App Mockups easily - <AUTHOR> http://mokk.me

<comment><USER2> Perhaps you can you add a qr code beside the "Test it on your phone (read- only):" link so users can view the test site on their phones without typing it in? Nice work!

<comment><USER3> Also very helpful: make that link actually work. Visiting the link redirected to a blank editor on an iPhone.

<comment><USER4> This is an intermittent bug I did not find yet. But working on it.

</comment></comment></comment><comment><USER5> Extremely useful for working through design concepts and getting feedback. Thank you.

</comment><comment><USER6> How this differs from Balsamiq? <http://balsamiq.com/>

[UPDATE] Got it! It would be great if it could import the Balsamiq XML

</comment><comment><USER4> Hi you all. Thanks for all the feedback, bug reports, and notes. The tool is currently under development, incomplete and buggy, I know that. It's rather a sneak preview than intact, but I am working on it and will remove the Beta tag when it's done. The QR code is a brilliant idea, I will pick up on that.

</comment><comment><USER7> Cool :) nice work!

By the way, on safari 5.0.5 inserting the map widget into the iphone leads to a blank page, while the browser widget is unremovable when inserted.

<comment><USER4> Thanks for the note, currently, only Chrome is supported, by only due to lack of time. Working on it.

</comment></comment><comment><USER8> Why does everything automatically float to the top? It doesn't seem very usable if I can't place things where I want them.

Seems like a nice start though.

<comment><USER4> The top-float layout is a constraint I added on purpose to stress the anatomy of HTML at the stage of interface design.

</comment></comment><comment><USER9> It's amazing what you can do with a CouchApp. Great job!

</comment><comment><USER10> Very useful.

Some suggestions:

1\. Can we have a password protected mockup? 2\. Should you consider giving a <title> to your site's HTML?

<comment><USER4> 1\. Consider the URL as password protection. Edit and view URLs are different, keep them secret as if it was the password. 2\. Yes, makes sense.

</comment></comment><comment><USER11> I have a problem deleting some elements from the IPhone after I have dragged it into place for example the password box

I am on Firefox 3.6

</comment><comment><USER12> Love it! This could be a really amazing tool.

</comment><comment><USER13> love it - great job!

</comment><comment><USER14> That is sweet!

It would be great if I could upload a lib of my own images as well! that become elements I can drag into the mock.

<comment><USER4> Yes. This is a first peek, still work in progress.</comment></comment>


Is Facebook down? - <AUTHOR> http://www.facebook.com

<comment> dawolf- ...and that's why you don't use Facebook Like buttons and Boxes all over your site. because it looks broken and full of errors now. Also, I don't want to know what this outage is doing to all the "Log in with Facebook" buttons right now.

On a serious note: DNS issue.

The authoritative nameservers a.ns.facebook.com and b.ns.facebook.com seem to be "set up" like this a the moment:

*.facebook.com ->(cname) star.facebook.com -> no answer

facebook.com still resolves the correct (?) IPs, but www.facebook.com, developers.facebook.com, graph.facebook.com all starting to die as your DNS cache expires. That's why it still might work for some at the moment while it really is broken.

<comment><USER2> You can load FB buttons and stuff without affecting your site at all, even if FB has DNS issues or is blocked by a firewall <https://www.facebook.com/note.php?note_id=10151176218703920>

You load the JS SDK using the "fif" pattern. If it fails to load, none of the tags like <fb:like> etc get replaced by iframes, so no errors on the page. `DOMContentLoaded` and `onload` on your page fire as usual. It's as if the site doesn't even use FB widgets

<comment><USER3> Just be aware that doing that gives FB a chance to sniff cookies, referrer and other stuff on your own page.

<sarcasm>Of course, FB is completely trustworthy with any data you give them access to, so nothing wrong will ever happen.</sarcasm>

</comment></comment></comment><comment><USER4> Woah, downforeveryoneorjustme says: Huh? <http://www.facebook.com> doesn't look like a site on the interwho.

<comment><AUTHOR> Yep, I checked there too. Also getting:

Ping request could not find host www.facebook.com. Please check the name and try again.

<comment><USER4> DNS issue? I can ping some of their IP addresses but not others.

<comment><USER5> The facebook.com ping in Brazil don't work.

</comment></comment></comment></comment><comment><USER6> A little investigation:

Anon_Online notices of the event, OP probably high/drunk <https://twitter.com/Anon_Online/status/278269562422697987>

Odd-looking whois of facebook.com (notice the xxx domains and last update timestamp) <http://pastebin.com/K4gAK3gi>

Hmm

<comment><USER7> Those DNS records are legit. the domains aren't facebook.com, facebook.com is at the beginning. Do a whois for anyone, and you'll get similar results.

Edit, this is the google.com whois <http://scrp.at/de0b2ad78907145d389c19b5cd61dc7b4d06e4e7>

</comment></comment><comment><USER8> If it's down for you, try these IPs, to check whether is a DNS problem.

      ;; ANSWER SECTION:
      facebook.com.		1690	IN	A	18.104.22.168
      facebook.com.		1690	IN	A	220.127.116.11
      facebook.com.		1690	IN	A	22.214.171.124
      facebook.com.		1690	IN	A	22.214.171.124
      facebook.com.		1690	IN	A	188.8.131.52
      facebook.com.		1690	IN	A	126.96.36.199

<comment><USER9> Works when adding these to hosts in the Netherlands. Pretty funny, almost everyone offline :O

<comment><USER10> It's back up for me in the Netherlands after doing ipconfig /flushdns in console, fwiw.

</comment></comment></comment><comment><USER11> Guys, just go to <https://beta.facebook.com/> and it works.

<comment><USER12> Until you try to log in...

</comment></comment><comment><USER13> Both gmail and facebook down within an hour or so? Something going on?

<comment><USER14> Cyberattack! Don't panic! Everyone make your way to your nearest cyber- shelter! ;-)

</comment></comment><comment><USER15> Down here in France. Geo dns issue?

I just tried using: [http://www.analogx.com/cgi- bin/cgidig.exe?DNS=184.108.40.206...](http://www.analogx.com/cgi- bin/cgidig.exe?DNS=184.108.40.206&Query=www.facebook.com&Type=1&submit=Lookup) and that's claiming everything is fine (i.e. www.facebook.com exists and is a CNAME for star.facebook.com)

</comment><comment><USER12> It seems like a SERVER has been taken down. Due to the large differences in location, it seems like a server(s) that service(s) multiple locations has/have been taken out. People are screaming Anon, but it could be a power outage and have the same effect.

Either way, get ready to change some passwords.

</comment><comment><USER16> So www.facebook.com is not resolving but facebook.com does. Someone pushed a bad dns update?

</comment><comment><USER17> Strange, yes downforeveryoneorjustme says it is not a site, but I can refresh FB just fine.

</comment><comment><USER18> Down from Amsterdam ( IX5 ) And France ( OVH ), Track live tweets here <http://facebook.twitterconsole.com>

<comment><USER15> Don't know if it's yours, but well done on twitterconsole.com - very nice!

</comment></comment><comment><USER19> It is up for me in Austin, Texas. Maybe a localized DNS issue?

</comment><comment><USER20> Huh. As of 15 minutes ago, I was (successfully) pulling data from <http://graph.facebook.com>.

</comment><comment><USER21> At home I got nothing.

On my server I get the layout but no content.

It works fine for a friend on the same ISP as me.

(France)

</comment><comment><USER22> Down here in Rochester, New York. However I'm still able to have a conversation through the mobile Facebook Messenger app.

</comment><comment><USER18> Latest WHOIS, could be my cache.

<http://pastebin.com/sEHtBTwp>

</comment><comment><USER23> The beta site (<http://beta.facebook.com>) hasn't been affected.

</comment><comment><USER24> Down for me here (UK, broadband provider is Eclipse) - looks like a DNS problem. isup.me also fails to resolve it.

</comment><comment><USER25> I'm in Sacramento, CA - It's down at my house, but not at my neighbor's house (we're both on Comcast).

</comment><comment><USER26> Up in Minneapolis, Minnesota.

</comment><comment><USER27> Down for me in Chicago . . . its been a hell of a day for big web companies!

</comment><comment><USER28> "ping: cannot resolve www.facebook.com: Unknown host" from Seattle.

</comment><comment><USER29> wont work for me ireland, so i tried americanproxy.org home page and log in option came up but no homepage after i put my password in, still worked tho after hiding my ip address!

</comment><comment><USER30> Works fine in San Diego, California, but images aren't showing up.

</comment><comment><USER31> you have to change your DNS nameservers. this works for me. primary: z.nic.de 22.214.171.124 Anycast (Berlin, Frankfurt/Main, Miami, Moscow, Sao Paulo) . secondary: google 184.108.40.206

</comment><comment><USER32> Down here (Rome, Italy)

</comment><comment><USER33> Up in Auburn, AL - VPN'd through Montvale, NJ though

</comment><comment><USER34> Now it resolves 188.8.131.52 ... was it planned?

</comment><comment><USER35> I just checked and Facebook is dead here in NY.

</comment><comment><USER36> OpenDNS still resolves the correct ip:s..

</comment><comment><USER37> Facebook is still down here in Germany.

</comment><comment><USER38> The HN effect;) Down for me in germany.

</comment><comment><USER39> webmon.com (click on demo) shows it's been up from 4 locations with couple glitches in the past hour.

<comment><USER37> Now webmon shows erros for Facebook, see here:

<https://webmon.com/#monitors/f/7>

<comment><USER39> yep - just got an alert.

</comment></comment></comment><comment><USER40> Down for me too in Romania/Bucharest.

</comment><comment><USER41> Down for me too. Philadelphia.

</comment><comment><USER42> Down here in Vietnam, Asia

</comment><comment><USER43> Down for me in Sacramento.

</comment><comment><USER44> Down in Portugal as well

</comment><comment><USER45> Down in Kraków, Poland.

</comment><comment><USER46> Down for me: Amsterdam

</comment><comment><USER47> Always down in China.

</comment><comment><USER48> Down here (Israel).

</comment><comment><USER49> Down in Argentina.

</comment><comment><USER50> Not in Argentina.

</comment><comment><USER51> wth, how does the site go down EVERYWHERE???

</comment><comment><USER52> Down in Kent, UK

</comment><comment><USER53> Down in Chicago

<comment><USER54> Down in UK

<comment><USER55> Down in Belgium :(

<comment><USER56> Down in Malaysia :)

</comment></comment></comment></comment><comment><USER57> Down in London

</comment><comment><USER58> 18.104.22.168

</comment><comment><USER59> Down in Spain

</comment><comment><USER60> down in (Jogjakarta) Indonesia

</comment><comment><USER61> Down in DC!

</comment><comment><USER62> down for me in new jersey

</comment><comment><USER63> down in Nashville

</comment><comment><USER64> down in Portugal.

</comment><comment><USER65> down in Mumbai

</comment><comment><USER66> it's back up

<comment><USER67> still down for me in Berkeley CA

<comment><USER68> Not only was the site down for me in San Francisco but the Likes count buttons on several blogs were not loading. Can't the like button at least be cached?</comment></comment></comment>


What Warren Buffett gets wrong about capitalism - <AUTHOR> https://capx.co/what-warren-buffett-gets-wrong-about-capitalism <comment><USER2> In capitalism, profits go to zero over time. That doesn't seem to be what's happening.</comment>


Law prof Eric Goldman: Create public database of cease and desist letters? - <AUTHOR> http://blog.ericgoldman.org/archives/2010/10/shining_the_spo.htm

<comment><AUTHOR> [FROM OP:] Goldman says: " _For example, we could require trademark owners to send a copy of every C &D letter to a public repository, which would create a database of letters that could be monitored and scrutinized. Chilling Effects serves an analogous function, but it relies on recipients voluntarily contributing C&D letters rather than forcing senders to submit them._"</comment>


Ann Romney vs. Michelle Obama - By Social Media Mentions - <AUTHOR> http://blog.viralheat.com/2012/11/26/social-media-speaks-a-glance-at-michelle-obamas-and-ann-romneys-mentions-on-social/

<comment><USER2> The most surprising statistic on this infographic, IMO, is that Michelle Obama follows only 8 people, while Ann Romney follows 411.

Not that I can extrapolate anything accurate from that, but mass-following really doesn't seem to have helped.

<comment><AUTHOR> I noticed that too. I think on certain platforms mass-following gets you a lot of followers but I think the quality of those followers drops drastically. I think it might be better to have less followers but have a more engaged audience.</comment></comment>


Email address validation: an addendum - <AUTHOR> http://blog.sinjakli.co.uk/2011/02/15/email-address-validation-an-addendum/

<comment><USER2> After having to handle email validation and deal with QA finding corner cases in my validators, I prefer the approach of minimal validation as mentioned in the article (has an @ sign with something before or after) with the ultimate validation depending up the email servers, e.g. if it doesn't bounce, it is valid.</comment>


The Common Lisp Cookbook - Strings - <AUTHOR> http://cl-cookbook.sourceforge.net/strings.html <comment><AUTHOR> This may be old hat to some, but I just bumped into this while working on my Introduction to AI Programming homework.

Hope it's helpful.

<comment><USER2> It's a good page actually. Every time I forget a string operation this is usually my first stop.</comment></comment>


Silicon Valley's Unlikely New Frontier - <AUTHOR> http://www.wsj.com/articles/silicon-valleys-unlikely-new-frontier-1447810134?mod=e2fb <comment><USER2> Not very unlikely. Silicon Valley is catching up to Colorado and Washington now. Hell, MIT is catching up to Colorado and Washington now.

Canada is expected (hush-hush still) to legalize very soon. like, _very_ soon. Like, sooner than anyone realizes.

I launched my business[0] recently, because it's so close.

(consider this a quiet release announcement.)

0\. [http://medicalcannab.is](http://medicalcannab.is)</comment>


High Performance at Massive Scale: Lessons Learned at Facebook - <AUTHOR> http://idleprocess.wordpress.com/2009/11/24/presentation-summary-high-performance-at-massive-scale-lessons-learned-at-facebook/

<comment><USER2> It is important to notice it is from 2009. Many things are outdated.

<comment><USER3> In some ways that might be an advantage. More people are going through the growing pains associated with tens of millions of people using their site and request-per-second and data size problems, and making trade-offs for that providing service at that scale.

Jumping to Facebook's current architecture and taking on the trade-offs taken there (assuming you even have a problem where those trade-offs make sense at massive scale) is probably not the right thing to do when you are much smaller (in terms of requests/traffic/load, servers, and employees).

<comment><USER2> Yes, it is true. I just wanted to say it, so everyone knows. Some guys like me are more interested on the Facebook's current architecture so it was important to notice the difference and avoid wrong assumptions.

</comment></comment></comment><comment><USER4> YouTube video of the talk: [http://www.youtube.com/watch?v=KIRzk08NMNo](http://www.youtube.com/watch?v=KIRzk08NMNo)

<comment><USER5> I don't think it is the same talk, he talks about the tagging platform which is a new feature.

Or maybe the slides are just that old? :-)

</comment></comment><comment><USER6> Interesting that Facebook succeeded at a design that Twitter claimed failed miserably for them (read fan-out instead of write fan out: [http://highscalability.com/blog/2013/7/8/the-architecture- tw...](http://highscalability.com/blog/2013/7/8/the-architecture-twitter-uses- to-deal-with-150m-active-users.html)).

</comment><comment><USER7> _> #2 property on the Internet as measured by the time users spend on the site._

#1 being...? I get it that it's from 2009, but surely even back then Google Search wasn't king "by the time users spend on the site". Maybe GMail ?

<comment><USER8> The Guardian (citing a May 2012 Nielsen.com [2]) reported that Facebook is #1 ( _by a wide margin - almost 3x the closest competitor_ ) as measured by the time users spend on the site.

[1] [http://www.guardian.co.uk/news/datablog/2012/jun/22/website-...](http://www.guardian.co.uk/news/datablog/2012/jun/22/website- visitor-statistics-nielsen-may-2012-google)

[2] [https://docs.google.com/spreadsheet/pub?key=0AuZLaKQQs5xpdGd...](https://docs.google.com/spreadsheet/pub?key=0AuZLaKQQs5xpdGdJNFZEdHhLUXJLa240WmsyZmFWbFE&output=html)

</comment></comment><comment><USER9> "Haystack is available as open source."

Still waiting on that...</comment>


How we built a web application and didn't launch in 482 days - <AUTHOR> http://www.decalcms.com/page/How_we_didnt_launch_in_482_days

<comment><USER3> My initial startup was a CMS product in 1999.

At the time, there were few players, and few open source products. We were able to charge from $25,000 to well over $200,000 per implementation. We even had one contract for over a million to do a custom version of our codebase. And we were a bit player at the time who didn't even survive the dotcom crash.

Fast forward to today -- There are so many CMS products that you don't need to pay for them at all, and even if you do pay, they are not expensive.

Which is to say that these guys deserve a heck of a lot of credit. They are making it work for them in a very crowded space, solving problems that I had written off as solved.

Good work.

<comment><AUTHOR> A million bucks! Don't make me drool :P Talk about the glory days of CMS.

There are still "enterprise" solutions going for that much these days - <USER2> need a fair bit of "infrastructure" in your company to sell to those folks though, and probably insane levels of enterprise features (that look good on paper but are probably the reason most people that work at big organisations hate their CMS :)

Thanks for taking the time to read and comment, and for the kind words. The real test, of course, will be when we open our doors for _real_ public feedback with live demos/public signup products. Fingers crossed!

</comment></comment><comment><USER4> Most interesting part:

> _you usually don't have to do things as fast as you think you do. … David > Heinemeier Hansson describes VC as a time bomb. Once you light the fuse, you > have to make your business work within a short period of time._

</comment><comment><USER5> From the article:

CEO of Wistia on customer acquisition:

 _Brendan and I started Wistia in June of 2006. We quit our jobs and went in fulltime. It took us almost one year to the day to get our first customer. It took us another year to get to 6 customers. It took us another year to reach 60 customers. This past summer, 1460 days after starting Wistia we crossed 350 customers_

<comment><USER6> As a chart: [http://www.wolframalpha.com/input/?i=plot+{2006%2C0}%2C+{200...](http://www.wolframalpha.com/input/?i=plot+{2006%2C0}%2C+{2007%2C+1}%2C+{2008%2C6}%2C+{2009%2C+60}%2C+{2010%2C+350}&a=*C.plot-_*PlotsWord-)

</comment></comment><comment><USER7> Love that photo - who needs a plush office when you can plant your MBP on a couple of milk crates!

<comment><AUTHOR> Haha yeah that's pretty "aussie style" software development there :)

</comment></comment><comment><USER8> do yourself a solid...check out decalcms!</comment>


A case against CoffeeScript - <AUTHOR> http://ryanflorence.com/2011/case-against-coffeescript/

<comment><USER2> I'm looking forward to the SourceMap (SMAP) [See: [http://www.infoq.com/news/2011/08/debug-languages-on- javascr...](http://www.infoq.com/news/2011/08/debug-languages-on-javascript- vm) ] extensions, which will help developers debug CoffeeScript, IcedCoffeeScript or any other possible meta-langauge built upon JavaScript. For me, I'll continue writing what I need in CoffeeScript and always keep in mind the ASI problem—and avoid idioms that use it.

I don't much like the implicit function invocation feature of CoffeeScript so I always include parenthesis to explicitly indicate my intent to invoke a function.</comment>


Transport Triggered CPU Architecture - <AUTHOR> https://en.wikipedia.org/wiki/Transport_triggered_architecture <comment><AUTHOR> Excerpt(s):

"Transport triggering _exposes some microarchitectural details that are normally hidden from programmers_. This greatly simplifies the control logic of a processor, because many decisions normally done at run time are fixed at compile time.

However, it also means that a binary compiled for one TTA processor will not run on another one without recompilation if there is even a small difference in the architecture between the two.

TTAs can be seen as "exposed datapath" VLIW architectures. While VLIW is programmed using operations, TTA splits the operation execution to multiple move operations. The low level programming model enables several benefits in comparison to the standard VLIW. For example, a TTA architecture can provide _more parallelism with simpler register files than with VLIW_.

As the programmer is in control of the timing of the operand and result data transports, the complexity (the number of input and output ports) of the register file (RF) need not be scaled according to the worst case issue/completion scenario of the multiple parallel instructions."

[...]

"An important unique software optimization enabled by the transport programming is called software bypassing. In case of software bypassing, the programmer bypasses the register file write back by moving data directly to the next functional unit's operand ports.

When this optimization is applied aggressively, the original move that transports the result to the register file can be eliminated completely, thus _reducing both the register file port pressure and freeing a general purpose register for other temporary variables. The reduced register pressure, in addition simplifying the required complexity of the RF hardware, can lead to significant CPU energy savings_ , an important benefit especially in mobile embedded systems.[1] [2]"

</comment><comment><USER2> The greatest potential of this is building a custom CPU that has a desired set of functions built in. If you do a lot of addition, add more adders. You choose the balance of fixed or floating point, or you could put in decimal floating point operations, etc.

This would be fun to implement on an FPGA since you could add and remove operations at will.

A very intelligent toolchain could synthesize alternative CPUs based on the bottlenecks that some particular software finds; that codesign could make very good parts.

<comment><AUTHOR> I did not think of that; good ideas!

In fact, the more I think of it... excellent ideas!!!

It's sort of like, whatever a standard college/online EE CPU design course told you you would only need one of on a CPU (ALU for example), you could actually have 2..n, with the right circuit design, if the software that was to be run warranted it, and if there was enough space on your FPGA... Yes, the actual underlying circuit implementation might be far more complex, but again, as a high-level design idea, it's a great idea!

For the right software/application -- I can visualize it working really well!</comment></comment>


Ask HN: "advisor" or "adviser" - <AUTHOR>

Which do you prefer? Do you consider one version wrong?
Is it a geographic preference?
I noticed the NY Times and other large publications use "adviser" and others strictly use "advisor". <comment><USER2> Pick one and use it consistantly. If you're writing for someone else use their style guide.

(<http://grammarist.com/spelling/adviser-advisor/>)

> _Adviser and advisor are both accepted spellings of the noun meaning one who > advises or counsels. There is no difference between them. But adviser, the > older version, is listed as the primary spelling in most dictionaries, and > it is about five times as common as advisor in current news publications > from throughout the English-speaking world._

> _In the U.S. and Canada, advisor is commonly used in official job titles, > but adviser is still generally preferred over advisor in North America, and > advisor is only marginally more common in American and Canadian English than > in other varieties of English._

Did you know that there's an "English Language and Usage" stack exchange site? This question seems like an excellent fit for them, although I understand that they often reject such questions as off topic for a variety of odd reasons.

(<http://english.stackexchange.com/>)

<comment><AUTHOR> I saw that as well. A quick google search showed a 15x preference toward "advisor" based on the number of results for each.

<comment><USER2> > A quick google search showed a 15x preference toward "advisor" based on the > number of results for each.

You're right! I've just tried and found the same. (9xx,000,000 for Or vs 7x,000,000 for Er).

Any Googlers reading? I'm curious about these results.

I enter [advisor] into one Google.co.uk search (I'm signed into chrome if that makes any difference to my 'bubble') and I enter [adviser] into another. Because I'm not using ["advisor"] or ["adviser"] I expect Google to use the words interchangably - the words are alternate spellings of each other.

But it doesn't seem like Google does substitute the words for each other. All my results for adviser only have adviser, and all my hits for advisor only have advisor.

I've criticised Google in the past for substituting words when it's not wanted. But here's an example where I think they're not subbing words that they should!

EDIT: For example, if I type [spectacles cases] Google will return and highlight [glasses cases].

<comment><AUTHOR> Exactly. And the confusion compounds...

</comment></comment></comment></comment><comment><USER3> I always go with _advisor_ over adviser because, I believe that advisor looks "right" as you look at it whereas, adviser looks strange.

The statistics back this up as well specifically, the exact global searches in Google which are as follows:

Advisor - 74,000

Adviser - 33,100

</comment><comment><USER4> This isn't english.stackexchange.com

</comment><comment><USER5> advisOr of course, it it's meant to be English ;-)</comment>


'Good' Beats 'Innovative' Nearly Every Time - <AUTHOR> http://www.businessweek.com/innovate/content/feb2010/id20100222_506858.htm

<comment><USER2> I completely agree with this articles description of why apple was able to dominate the mp3 world, and haven't heard this as a description before.

Though I have to disagree with his premise about innovation. A product needs to be good no matter what. In fact, a product needs to be great. If it is innovative and crap, it's just crap. But that doesn't mean that innovation should be left out of the equation.</comment>