The Singularity in Our Past - <AUTHOR> http://cscs.umich.edu/~crshalizi/weblog/699.html

<comment><USER3> Reading over the comments up to this point, this is a definition debate, not an intelligent conversation. By some useful readings of the word "singularity", they are indeed relative and there are several in our past, and quite likely several in our future. Looking back at the prognostications in 1980 one can fruitfully argue that we've been through one just since then. By other useful readings of the word "singularity", it lies solely in the future if it exists or can exist at all.

Arguing which definition is "true" is wrong; definitions can't really true or false, they are simply useful or not useful, nor do they have any direct impact on reality.

</comment><comment><USER4> Confusions like this are the reason why I favor the intelligence explosion flavour of the singularity ( <http://yudkowsky.net/singularity/schools> ) -- there's no confusion as to whether we've already had one. The industrial revolution, while revolutionary, did not improve on the intelligence that invented it. The single most important part about the singularity is that the technology does improve on the intelligence that invented it.

<comment><USER5> _The industrial revolution, while revolutionary, did not improve on the intelligence that invented it._

...typed the person into his quantum-mechanically-mediated instantaneous conversation with ten thousand of the best-educated technologists on Earth.

You're going to have trouble convincing me that Google doesn't make me more intelligent. You're also going to have trouble convincing me that, say, cheap printing and cheap food -- both products of the industrial revolution, and without which I might be a subsistence farmer -- do not make me more intelligent. I wouldn't know quantum mechanics without them, after all, so I wouldn't understand how computers work.

And if you strive to define "intelligence" such that human intelligence has not been improved by technology -- which can be done; I'm clearly less intelligent than my Cro-Magnon ancestors by many criteria -- you are going to have a hard time convincing me that the future will be any different. If technology hasn't worked to improve "intelligence" before, why should it do so later?

<comment><USER4> A Google engineer should not expect to get a helpful response when he asks the Google search engine for advice on building a better Google.

<comment><USER6> > A Google engineer should not expect to get a helpful response when he asks > the Google search engine for advice on building a better Google.

Why not?

Google does a lot of things right, but they don't have all the smart people.

</comment></comment></comment></comment><comment><USER7> In Henery Adams's audio biography 'The Education of Henry Adams'<http://en.wikipedia.org/wiki/The_Education_of_Henry_Adams> (i.e. Henery Adams the grandson of John Quincy Adams was a 19'th century historian). He discusses his theory of history. In his model history is driven by the law of Acceleration which discribes the exponential growth of energy consumption through the 19'th century <http://www.bartleby.com/159/34.html>. Exponential growth in energy consumption was viewed as unsustainable as early as the 1860's but Henry Adams noted that it continued throughout his life up until the time he wrote his biography in 1904 and he saw no end to it.

<comment><USER8> _> Exponential growth in energy consumption was viewed as unsustainable as early as the 1860's but Henry Adams noted that it continued throughout his life up until the time he wrote his biography in 1904 and he saw no end to it._

We're seeing it now, however.

<comment><USER9> The point of the story above is that people in Henry's time were seeing it too - and yet it didn't happen.

<comment><USER8> They were seeing it as not sustainable, while we're actually seeing the first hiccups. As you may now know, finally the EIA admitted in its latest report that peak oil already occurred :

<http://www.iea.org/w/bookshop/add.aspx?id=422>

quote :"If governments put in place the energy and climate policies to which they have committed themselves, then our analysis suggests that crude oil production has probably already peaked."

Of course this didn't make the news. Keep on the denial, people.

<comment><USER10> Who cares about oil? Oil is important for moving vehicles, but not so much for global energy consumption, like say, electricity.

<comment><USER8> Yeah sure. Oil makes up 38% of global energy consumption. Fossil fuels makes about 80% of global energy consumption. Electricity is NOT a primary energy source, and basically you don't know what you're talking about.

[http://en.wikipedia.org/wiki/File:2004_Worldwide_Energy_Sour...](http://en.wikipedia.org/wiki/File:2004_Worldwide_Energy_Sources_graph.png)

<comment><USER10> Sorry, I should have made myself more clear: Oil is the most useful thing for driving vehicles. Apart from that, we have good substitutes for all other energy use cases, like generating electricity.

Coal and nuclear power can last for quite some time. See `Sustainable Energy without the hot air' for some numbers. (It's available online.)

We don't have the necessary capacity of say nuclear reactors ready at the moment. But that's an inconvenience of a few years at most. (Thanks for the link!)

There may be peak oil, but no reason for peak energy.

<comment><USER8> At the current building rate, we'll have soon _less_ nuclear reactors. Even with a huge building effort it very much looks like nuclear will remain more or less as is.

Then there isn't that much U 235. We'll need thorium or fusion...

The coal outlook is very unclear. Some reliable sources says it will peak in 2025, 2050, 2100 or 2150. Then we'll have much EROI because of the necessity to capture CO2.

From what I know, we'll use much less energy quite soon individually, and not much more than we do nowadays globally.

<comment><USER10> Thorium, fusion or fast breeders. The biggest cost of current nuclear fission reactors is in the initial capital outlay (and regulatory uncertainty). The price of Uran is low; if the price would go up, more reserves would surely be found.

I agree, that using coal on a large scale isn't a good idea. (That includes the current scale.)

I agree with all the actuals / current data with you. I just don't see that we will need to use less energy in the long run.

<comment><USER8> _> I just don't see that we will need to use less energy in the long run._

I don't think we'll really have the choice :) It looks like thorium is at least 20 to 30 years away, and fusion... 50, 100 years, who knows ?

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> People seem to underestimate how much engineering will be required for intelligence to interact with the environment successfully. My dog might not be as "intelligent" as me, but he knows a lot more than I do when it comes to information gained through hearing, taste and smell. He has better engineering in many respects. Almost any life form beats me in "intelligence" if you define the test right.

There are already theories about how to build universal AI algorithms (check out Marcus Hutter's stuff at <http://www.hutter1.net/>). These theories are quite an accomplishment, no doubt. But they boil the problem down to one involving sequence prediction. Let's say that particular form of the problem is now "solved". OK now what sequences would you like to present to the algorithm for training? Ones from the environment? Great, but those will take time to collect. Simulated ones? It takes a lot of knowledge to generate good ones.

For these reasons, I suspect the Singularity is safe from us for while.

<comment><USER12> > OK now what sequences would you like to present to the algorithm for > training? Ones from the environment? Great, but those will take time to > collect. Simulated ones? It takes a lot of knowledge to generate good ones.

With AIXI and variants, since they are _universal_ predictors, it doesn't really matter what sequences you supply so long as they have some connection. Heck, just your algorithm access to an email server or something.

<comment><USER11> | _Heck, just your algorithm access to an email server or something._

Then my dog will find the bone faster than AIXI. See what I mean?

<comment><USER12> The computable versions of AIXI have such enormous constant factors that the indirection of email->real-world is as less than a grain of dust in the Ganges.

That indirection's constant factor cost might matter for any feasible AIXI- inspired AI, but since none has yet to be created or even designed, it's hard to say...

</comment></comment></comment></comment><comment><USER13> In order to move this away from debate about semantics I think this meshes nicely with an alternative view of intelligence. Specifically Human intelligence as a social endeavour rather than an individual struggle.

If you look at intelligence in that light we have gone through a huge transformation with the printing press, industrial revolution and now internet revolution.

Basically if you think of it as each human brain just being a small component able to try out new ideas then spread those ideas... Well that massive human spanning brain is undergoing massive ongoing upgrades in memory capacity and speed of communication.

</comment><comment><USER14> The idea is that the Singularity would be a point in time where the totality of human expert knowledge would be insufficient to comprehend what an AI (or an AI-designed AI) would be capable of comprehending.

If we think human-level AI is possible, then superhuman AI would also be possible. Note, though, that while not infinite, human cognition is complete, that is, a human or group of humans is only limited by time or resources. No matter how much time we have; a dog will never stumble upon quantum mechanics. But given enough time, a human being can construct an expert knowledge repository, even though he himself is unable to understand some of the intermediary steps or details.

Now, this is where Singularity takes a turn to religion. Some people believe "it" to a future AI with enough physical means to be indistinguishable from a god. Not just a god, but one single God.

<comment><USER15> >a dog will never stumble upon quantum mechanics

i'm always amazed by such blatant anthropo-glorifing-centric statements which imply as obvious facts the doubtful things like this:

\- that dog's brain has much less processing power. The sheer size difference is many times adjusted by efficiency difference (where human's one is less efficient)

\- that quantum mechanics is a super-achievement, replication of which is a mark of higher intelligence. To me the ugliness of QM is bordering on a shame for human intelligence.

<comment><USER16> I'm always amazed by such blatant anthropo-deprecating-centric (?) statements.

-The difference in efficiency should tell you that that power spent is _worth_ something, like astonishingly superior abstraction capabilities and the ability to speak and write.

-The ugliness (read; complexity) of QM could easily be interpreted as a tribute. Whether you like it or not, it is the best we have. To paraphrase HHG2G, if it's ugly, then it's the universe that got it wrong, not us. (I'm partially joking, mostly because I don't suspect you really have a firm enough grasp of QM, let alone QFT, to determine its aesthetic beauty.)

I mean, I'm all for a little humbling perspective. We are a race of people descended from stupider people unto apehood (and before that, lizards!) that are stuck on a rock in a universe fantastically larger than us.

That doesn't mean we should be debbie downers.

<comment><USER15> >The difference in efficiency should tell you that that power spent is _worth_ something

nope. It is just that we didn't have strong enough competition from other predator species to force the efficiency increase. Instead we use the extensive way of increasing the size, even if it is accompanied by decreased efficiency. Like going cheap low-tech V8 instead of efficiently increasing horsepower of a V6 engine.

>astonishingly superior abstraction capabilities

yep. that one. The top manifestations of that ability were Inquisition, Hitler, Stalin, etc... The astonishing ability of our brain to generate various abstract reasons to kill. This ability is the only qualitative difference between humans and animals. Most people aren't able to handle beyond the simplest physics and mathematics reasoning, yet easy to come up with a set of "other" people and pretty abstract reasons why these "others" should be violently oppressed and killed. The ability to handle mathematics and physics is just a side-effect that is manifested only by a few. If you look into the history of human species, it is a continuous blood-shed, and whenever there is a patch of technological progress it is most visibly expressed through new technological means of violence.

> and the ability to speak and write

tools to help communicate and organize around the above mentioned main human ability to come up with reasons to and actually perform the killings.

>mostly because I don't suspect you really have a firm enough grasp of QM, let alone QFT, to determine its aesthetic beauty

I have an MS in Math, and spent enough time on QM to get a "grasp". It is not about aesthetic. It is about method and our level of understanding (or lack of it) that i consider ugly. Vs. complexity - where it is in QM? The mathematical machinery there is pretty simple compare to the state of the art in mathematics.

<comment><USER16> >nope. It is just that we didn't have strong enough competition from other predator species to force the efficiency increase. Instead we use the extensive way of increasing the size, even if it is accompanied by decreased efficiency. Like going cheap low-tech V8 instead of efficiently increasing horsepower of a V6 engine.

ok, sure. point is our engine beats the pants off a dogs no matter how you slice it.

>yep. that one. The top manifestations of that ability were Inquisition, Hitler, Stalin, etc...

like I said, debbie downer. you have this absurd fixation on killings.

>I have an MS in Math, and spent enough time on QM to get a "grasp".

In other words you are not a physicist. The saying that no one understands QM is not a joke. Mathematics is useless without reality; it's like literary analysis without story-telling.

I've been joking and condescending in my responses to you, but I'm going to get a little serious now:

>If you look into the history of human species, it is a continuous blood-shed

Yes, it's continuous bloodshed. You know what? It's not your right to determine that what people fought for was meaningless, or too "violent" for your modern middle-class tastes. It's not your right to prissily look down on the human race from your ivory tower of Math and grumble about killing.

What I see when I look upon our history is a series of people taking their actions seriously. I see a series of people that slowly, agonizingly, painstakingly turned away from violence in order to serve those 'side-effects' that you think we killers disregard.

And that's the crux of it. Do you really think you're any better than the killers you despise? Maybe you don't, maybe you lump yourself in with us savages; if so, though, you must have some self-hatred issues that'll keep your therapist employed well beyond his retirement.

If all you see when you look at history is the pain, then all you will _feel_ is pain.

<comment><USER15> >ok, sure. point is our engine beats the pants off a dogs no matter how you slice it.

no. point is whenever we have even a little more biologically advanced brain, like Einstein's (noticeably smaller than typical human's one, yet more densely packed with more energy supplying cells), it easily beats typical human's one. The Einstein's brain is still human (had it been even a bit more biologically advanced than it was it would be hard to call it human), yet it shows how inefficient the typical human brain is.

>like I said, debbie downer. you have this absurd fixation on killings.

no, i just have an ability for analysis, and keen interest for QM and biology.

>Yes, it's continuous bloodshed. You know what? It's not your right to determine that what people fought for was meaningless, or too "violent" for your modern middle-class tastes. It's not your right to prissily look down on the human race from your ivory tower of Math and grumble about killing.

that is my point. Human brain has unique ability to put "meaning" into killings which aren't necessary for satisfaction of immediate food or self- defense needs.

>What I see when I look upon our history is a series of people taking their actions seriously. I see a series of people that slowly, agonizingly, painstakingly turned away from violence in order to serve those 'side-effects' that you think we killers disregard.

that agony is exactly manifestation of the fact that i talking about - mathematics and physics aren't natural for human brain. Reasoning for violence is.

>And that's the crux of it. Do you really think you're any better than the killers you despise?

i'm human. I'm a specimen of a species which evolved as a pack hunting predator. It has beaten all other predators (including other species of humans) through evolutionary advantage of extensively evolved brain which improved pack hunting (through communication/organization and weapons - <USER2> to the ape's ability to grasp a stick or stone) at the start and later discovered that unmotivated aggression, ie. striking first without being in immediate danger, toward others predators is evolutionary advantageous if you have much better communication/organization and weapons.

Like any other human, i have ideas when i think violence is justified even though it wouldn't serve my immediate food or self-defense needs. Like any other human, i'd like to mislead myself into thinking that my reasons for violence are "valid and justified". Well, i have a human brain.

</comment></comment></comment></comment></comment></comment><comment><USER17> I'm thinking it's more about the evolution of technology. Just because we've had the resources and knowledge to consider ourselves (or even society itself) in a "singularity" doesn't mean it's manifest physically yet. I think quantum computing and the ever-expanding OAuth connections we're seeing will help to bring everybody, literally, closer. Within the next few years I can realistically see a direct connection to a technological singularity. From there I can't even imagine what life on Earth will be like

<comment><USER18> _...ever-expanding OAuth connections..._

Uh, what? How does OAuth have anything to do with the singularity?

<comment><USER16> How will we know the singularity is here unless we can authenticate its identity?

</comment></comment></comment><comment><USER15> while human species may be focused on Singularity as a technological event, there is another extremely significant possibility - emergence of human species v2.0, split from inside the current v1.0. It may be helped/facilitated (or may be not) by the technologies - computer, material and/or bio-genetical.

The technological singularity, Skynet style, is possibly just crutches for the human v1.0 where is v2.0 may possibly just skip this step.

</comment><comment><USER19> Ahahaha, life lessons from someone who thinks Dexter is worthy of intellectual consideration.

And who gives The Republic serious consideration for the present?...Oh i see you're speaking in Ann Arbour tomorrow, of course you do, just like that "The Republic Is America and The Republic Is Awesome" lecture that is taught in full seriousness in the Yale online courses...now it makes sense, the delusions of apparently omnipotent wealth.

So much high school lovin tonight, what's up pups?!</comment>


Ask HN: How to securely save your private photos in cloud or DIY solution? - <AUTHOR> The most important features I want for solution are :<p>- All the photos in the cloud should be encrypted and no one should have access to them.<p>- There should be an autosync feature for uploading photos from my device to cloud.<p>- The solution can involve setting up my own server if required.<p>- Privacy should be put as highest priority. <comment><USER2> Cryptomator[1] + any cloud provider you like (Dropbox, GDrive etc)

[1] [https://cryptomator.org/](https://cryptomator.org/)

</comment><comment><USER3> If privacy is the higher priority, the answer is USB hard disks, in a locked box in your home.

</comment><comment> java-man similar discussion:

[https://news.ycombinator.com/item?id=18770366](https://news.ycombinator.com/item?id=18770366)</comment>


Nice loading screen on a game related site - <AUTHOR> http://www.get-out-and-play.com/

<comment><USER2> It's a shame that "loading screen minigames" were patented; probably one reason they aren't more common.

According to Wikipedia, Namco has a patent on the concept. <http://en.wikipedia.org/wiki/Loading_screen#Minigames>

It looks like there is some prior art, but going up against Namco wouldn't be very fun. It'd be nice to see this patent overturned, so that more developers could implement loading screen minigames without fearing legal trouble.

<comment><AUTHOR> The patent text is, as usual, really hard to parse, but I wonder if it applies to games loaded over the net?

\--- Recording medium, method of loading games program code means, and games machine \---

[http://patft.uspto.gov/netacgi/nph- Parser?Sect1=PTO1&Sec...](http://patft.uspto.gov/netacgi/nph- Parser?Sect1=PTO1&Sect2=HITOFF&d=PALL&p=1&u=/netahtml/PTO/srchnum.htm&r=1&f=G&l=50&s1=5718632.PN.&OS=PN/5718632&RS=PN/5718632)</comment></comment>


Austin Co-Founders Meetup is this Monday - <AUTHOR> http://www.meetup.com/Co-Founders-Austin/calendar/15251144/

<comment><USER2> I think it would be nice if this were a co-founder meetup/founders networking & drinks.

Broaden the horizon a little and include founders who are not looking for co- founders among the networking time.

Try it as an iteration and see if it improves the quality of entire evenings experience for everyone.

<comment><AUTHOR> Well, the meetup is open to anyone who wants to network with future founders and co-founders. (We just don't let service provides and consultants in).

That's how it has worked in Silicon Valley: maybe a third of the attendees are there to have a look, get a feel, before they jump in and actively consider joining as co-founder.</comment></comment>


Department of high irony, Napster edition - <AUTHOR> http://blog.pmarca.com/2008/05/department-of-h.html <comment><USER2> Long live Napster.</comment>


Amazon Unveils $199 Kindle Fire Tablet - <AUTHOR> http://www.bloomberg.com/news/2011-09-28/amazon-unveils-199-kindle-fire-tablet.html?cmpid=bit

<comment><USER2> The actual press event is starting in five minutes. There's no livestream, but various blogs: [http://www.engadget.com/2011/09/28/live-from-amazons- tablet-...](http://www.engadget.com/2011/09/28/live-from-amazons-tablet-event- in-nyc/)

</comment><comment><USER3> I was surprised when everyone was predicting $249 for so long, because Amazon plays to win, and $199 was a reachable price that both beats the Nook Color and sounds like a screaming deal to consumers.

My guess is that unless reviews of the device are terrible, they will sell like crazy this holiday season. The TouchPad fire sale proved that there are tons of people interested in a tablet but not willing to pay the $4-500 entry price. I expect Amazon will attract millions of them.

<comment><USER4> It's not too surprising. The only source I've seen for $249 is Marco Arment. Many thought the iPad would cost $1000 because of a WSJ article. It ended up costing half as much. I'm not surprised that both Amazon and Apple would both use the press.

>The TouchPad fire sale proved that there are tons of people interested in a tablet but not willing to pay the $4-500 entry price.

The $99 Touchpad is half as much as the Fire and is much as the e-ink Kindle. The Touchpad was also sold at a huge loss.

<comment><USER5> I used to like Marco Arment. But he's one of those people that was better left to keep himself quieter. The more out spoken he's gotten the more obnoxious he's gotten.

Sometimes it's best to keep one's mouth shut and be thought a fool than to open it and remove all doubt. Or something like that anyway. The more Marco opens his mouth the more of a fool I think he is.

I enjoyed Build and Analyze (his podcast at 5by5) in the beginning, but he got to the point where he was just being more and more obnoxious.

He's not Gruber, yet he seems to be trying to be Gruber.

Ah well, this is just another of his predictions that has gone wrong.

<comment><USER6> Thank you for sharing this. I had been feeling similarly for awhile but couldn't really boil down why. His blog went from must-read to unreadable. I wish I could remember which post threw it over the top for me but I had a visceral reaction at one point best summed up as _Really?_

On the Gruber thing, he has written saying that Gruber is his ideal reader, so yo aren't far off the mark.

I think that as his traffic, profile and software sales have grown, he has lost his humility, which is a bad thing for writing.

<comment><USER5> That's a pretty good summary I think. I'm sure he's a nice guy, but he comes across as an arrogant prick on his podcast and it seems to be boiling over into his blog as well.

I just can't enjoy reading or listening to him anymore.

</comment></comment></comment></comment></comment><comment><USER7> If this is true, that price is pretty damn killer. Pricing your tablet at $300 less than the main competition is huge, and now a tablet fits comfortably between a Kindle and a Netbook in terms of price.

</comment><comment><USER8> Nice one Amazon. It's smaller, and cheaper, has content and is Android. I certainly see where this fits into the market. I'm sticking to an iPhone, but would like to have access to the Android ecosystem and want something smaller than the iPad, and I would rather get a better laptop at home than pay iPad money.

<comment><AUTHOR> It's a HUGE powerplay, but I just don't know if it can beat the iPad. I think Amazons moving into be a serious competitor now. This product definitely cements it.

</comment></comment><comment><USER9> Ars Technica has a liveblog : [http://arstechnica.com/gadgets/news/2011/09/liveblog- amazons...](http://arstechnica.com/gadgets/news/2011/09/liveblog-amazons-new- york-tablet-press-event.ars)

</comment><comment><USER10> Because it is Amazon, this will bring in a new wave of buyers and opportunity for developers.

</comment><comment><AUTHOR> Looks like it is all coming out now. Interesting timing on Amazons part.</comment>


How Android developers access installed apps on user's device [pdf] - <AUTHOR> http://www.ivanomalavolta.com/files/papers/MOBILESoft_iam_2020.pdf <comment><USER2> iOS had a similar leak that was exploited by apps like Twitter.

[https://www.techspot.com/news/58991-twitter-track-list- apps-...](https://www.techspot.com/news/58991-twitter-track-list-apps- installed-mobile-device.html)

It used the "canOprnUrl" method if I recall correctly.

Apple locked this down less than a year later in iOS 10 where an app has to explicitly list which urls can be tested this way and there is a hard limit. Of course this goes through app review.

</comment><comment><USER3> Previously in Android app development, the application sandbox has been sufficiently leaky that if a user has another app installed, it can cause problems for the app being developed.

It's useful to be able to warn users that they've got an app installed that will conflict in this way, and suggest an upgrade/uninstall/warn them of poor behaviour.

<comment><USER4> It is useful yes, but so is massive surveillance. That doesn't make it a good thing.

</comment></comment><comment><USER5> If I wanted to do similar research to this, can anyone share a good method for obtaining a large corpus of apps like these researchers presumably did?

EDIT: Should've read the paper first, looks like they used this [https://androzoo.uni.lu/](https://androzoo.uni.lu/)

</comment><comment><USER6> I'd love to read a condensed version

<comment><USER7> Installed apps list is available through IAMS API, Devs use this to profile users.

<comment><USER8> Interesting, what are the legit (if any) reasons this info is exposed via that API/endpoint?

<comment><USER9> There are plenty of legitimate use cases listed under section 4.5.

I'm sure there is some scumbag adtech SDK out there profiling people based on their installed apps, but I think that most uses of these API's would turn out to be innocuous on a closer look.

For instance, I've worked on apps that check if another app from the same company is installed, so that they can integrate together. Think Facebook and Messenger: two separate apps.

It seems that this sort of innocent check would turn out in this study as a "call accessing package names". Sounds ominous at first, but I'm just asking for one package X, not scraping all your installed apps to sell you something.

Anyway, this is all being locked down in Android 11 [1]. Many of these use cases are being addressed with a more secure API, but I hope there are no apps left behind.

[1] [https://developer.android.com/preview/privacy/package- visibi...](https://developer.android.com/preview/privacy/package-visibility)

<comment><USER10> > Think Facebook and Messenger: two separate apps.

Of course, apps from the same developer should have access to alternative ways to share state.

<comment><USER11> Wait, is this sarcasm or not? If not, bypassing malware filters by spreading the parts over multiple apps with 'friendship' access rights to each other sounds like return-oriented programming with extra steps.

<comment><USER10> The number of "gadgets" in this case is very small, and most protections should work at the developer ID level anyways.</comment></comment></comment></comment></comment></comment></comment>


C9 lecture: monadic design patterns [video] - <AUTHOR> http://channel9.msdn.com/Shows/Going+Deep/C9-Lectures-Greg-Meredith-Monadic-Design-Patterns-for-the-Web-2-of-n

<comment><AUTHOR> There is also a part 1 (which includes an intro to monads):

[http://channel9.msdn.com/Blogs/Charles/C9-Lectures-Greg- Mere...](http://channel9.msdn.com/Blogs/Charles/C9-Lectures-Greg-Meredith- Monadic-Design-Patterns-for-the-Web-Introduction-to-Monads)

I know I've seen some posts recently where people are inquiring about them.</comment>


The ORM Debate Still Rages On - <AUTHOR> http://robbygrodin.com/2017/04/18/wayfair-blog-post-orm-bankruptcy/ <comment><USER2> He is writing it as if ORMs are only for allowing to do queries without knowledge of SQL syntax (which is weird idea) and for forcing database to fit into OOP mindset.

SQL (in strings) is not composable at all. Your app rarely has fixed set of queries and almost always need to be able to construct 'where' dynamically, add joins, etc. SQL syntax is especially non-composable, because there once was hype to make programming languages imitate natural languages. In this case, ORM is inevitable if you don't want to have rube goldberg machines of string concatenation everywhere.

Non-OO ORMs may be not called "ORM"s but idea is the same. Moreover, Sqlalchemy Core mentioned in article is great example of non-OO ORM: it composes queries and returns result in tuples[1].

[1] [http://docs.sqlalchemy.org/en/rel_1_1/core/tutorial.html](http://docs.sqlalchemy.org/en/rel_1_1/core/tutorial.html)

<comment><USER3> The composability of ORM queries is a huge benefit to organization and readability -- but not all ORMs handle that well.

The article makes a good point; I never think of an ORM as a replacement for SQL -- it can work in concert with it. A lot of my code is much simpler with an ORM than it would be worth out it and in other places it's much simpler with direct SQL than without it. Both can live together harmoniously.

<comment><USER4> EXACTLY. You can drop into SQL in many ORMs and you use that sparingly as it is much nastier to maintain nuances when switching between different SQL implementations like MySQL and PostgresQL, for example.

</comment></comment></comment><comment><USER5> I'm not really a web guy, so perhaps I was never the target audience for ORMs. I was surprised by the author's assertion that they seem simple and elegant at first -- maybe it's because I learned SQL first. My first impression of ORMs was, "this looks impossible to do right, in general, and basically untrustworthy. If it's going to work at all, you have to impose harsh limitations on both the 'object' side and the 'relational' side." Having read the article, I'm feeling pretty self-congratulatory. Other than claims to "elegance", what was the motivation for ORMs?

<comment><AUTHOR> ORMs are essentially abstracting relational data structures to fit an OOP development style. It allows OOP engineers to access a DB without straying far from their comfort zone.

That's the sales pitch. In essence, they are rarely ever a good idea. As database drivers have become more simple to manage, and ORM's have tried to become more complex, the value proposition (which I'm loath to suggest existed in the first place) dissipated without any trace.

<comment><USER6> > ORMs are essentially abstracting relational data structures to fit an OOP > development style. It allows OOP engineers to access a DB without straying > far from their comfort zone.

Not remotely correct; the purpose of an ORM is to map result sets into objects to avoid repetitive hand coding of those mappings for programs that work with objects. It isn't' about a dev's comfort zone, it's about eliminating the need to hand write repetitive mapping code.

> In essence, they are rarely ever a good idea. As

Also wrong, they are nearly always a good idea as they drastically improve productivity by eliminating tons of manual code that simply isn't necessary to write.

You don't seem to understand the value proposition of an ORM enough to be able to critique it.

<comment><USER7> And so the debate rages on...

There are two sides to this, illustrated by the parent post and you post. Ultimately, it comes down to style preference and his little actual tangible TECHNICAL benefit. The benefits to team process/organization can definitely be argued for ( or even against ) but, that is why the debate will rage on for eternity, IMO.

<comment><USER8> The debate is stupid because one side is taking an absolute position against a programming tool that has been used successfully by thousands(millions?) of projects.

The funny thing about the anti-ORM-ists position is that they are either:

1) Exclusively embedding raw SQL in their code, and accessing each query result by also hard-coding column names and value types in map look-ups. Maybe this is a "pure" approach, but it is also very brittle as models evolve.

Or,

2) They develop their own naive ORM implementation without the self-awareness to realize that is what they are doing. As zzzeek said, "If your application has objects, and talks to a relational database to marshal result rows into instances of those objects, you are using an ORM."

<comment><USER9> _The debate is stupid because one side is taking an absolute position..._

Look, I don't have a horse in this race, so let me tell you that, from the outside, it's not so clear which side is being more unreasonable. Or maybe it is.

Edit: just to add something tangible, you're misrepresenting others' position too much.

</comment></comment></comment></comment></comment></comment><comment><USER10> I think the biggest problem with polemic blogrants like this are that the author has encountered their own personal bankruptcy with ORMs and proceeds to indict the entire enterprise of mapping an object-oriented language environment to a relational object environment.

Suggesting that ORMs are awful and no one should use them is effectively premature optimization, and we all know the consequences of that.

It is also actively ignoring the history of ORM development. Django's ORM, I know for instance, was developed at a newspaper so that you could go from "feature writer has giant data set and interesting idea about how to visualize it" to "production interactive newspaper article up and allowing people to see their community from different vantage point" within the scope of a day or two. And it worked. And it continues to work.

Ignoring the functional aspects of the world or proscribing premature optimization with your opinions is effectively soapbox ranting. You can do it, but the solutions and equity being built on the backs of shitty SQL generated by ORMs are going to just walk right on by.

<comment><USER11> "I painted myself into the corner of a room. Clearly the roller is at fault! This would never have happened with a brush!"

People who bitch about ORMs usually complain for the wrong reasons. Many ORMs are highly opinionated about how to organize their tables, and if you don't adhere to that your code complexity can climb exponentially. If you're constantly going against the grain, maybe you're using the wrong ORM.

Keep in mind even ActiveRecord, as ornery as it can be, still has a "revert to manual query" mode. Any well-designed ORM should support that as well.

</comment></comment><comment><USER4> From what I know about using both it seems like MANY of the benefits were missed. With ORMs you don't really need to worry about database connections or specifying stuff like that. You can also make functions that execute pure SQL in ActiveRecord which I've done before and is in Michael Hartl's Ruby on Rails tutorial. You can also switch between different SQL implementations without worrying about having to refactor stuff, as its usually just an initial configuration/migration. I am not entirely sure but this is from medium so I usually take anything tech related on medium with a grain of salt. If you don't have your tables set-up right you're going to have to do a bunch of weird table joins and stuff, but you can also look into fixing ur databases. DATA STRUCTURES AND TABLE ORGANIZATIONS ARE KING.

</comment><comment><USER12> Use an ORM for CRUD, and use a SQL library (like Jooq or QueryDSL for Java) for custom querying

<comment><USER13> Exactly. Everyone wants a perfect solution for multiple use cases and that simply doesn't exist. Use what works for the task at hand.

For example, Laravel's Eloquent database layer is awesome for the 95% use case. When stuff gets complicated I can drop down to the query builder or raw SQL if things get real hairy.

</comment></comment><comment><USER14> I intuitively feel like, in $CURRENT_YEAR, this problem comes up mostly for the people who look for it to be a problem.

I work with Django's ORM on a daily basis, and I think being aware of the fact that I can't completely ignore how I interact with my database (e.g. "Well I have an ORM so I shouldn't care" <\- this is bad) is enough. The idea that I throw out the proverbial baby here feels like an overcorrection, and while I get how complicated an ORM can become, I think that's more of a result of relying too much on the abstraction.

I'm sure most folks here are familiar with Joel Spolsky's "Leaky Abstractions" article. The way I see it, the ORM abstraction is leaky, and that's okay, because the alternatives are all so involved and complex. For some higher- than-fifty percentage of the time however, the abstraction works. That has value.

</comment><comment> default-kramer My biggest problem with ORMs is that you have an object graph that may or may not contain proxies. When you hit a proxy, the ORM will either do a lazy-load or throw an exception. Neither of these is a good default. Either way, the type system becomes useless, and I have to manually check all the call stacks to make sure the object graph is actually loaded.

... but I'm still getting good use out of an ORM right now. I use Entity Framework for the write operations (with lazy-loading) but hand-written SQL for the reads. It works better than anything else I've tried in the past.

</comment><comment><USER15> Object/relational impedance mismatch is solved by a new class of database built on immutability. If the storage segments are immutable (like git), the query process can be moved out of the central transaction processor and into the horizontally scalable application process (like git). When query engine is embedded in the application process, all the latency and network round trips drop out (like git), which solves in one fell swoop all the intractable optimization problems that ORMs attempt (and fail) to abstract away. One such database is [http://www.datomic.com/](http://www.datomic.com/)

edit: these databases are relational, acid and competitive with postgres. Strong consistency is achieved by threading through a notion of time (like git)

i wrote about it on reddit once, here: [https://twitter.com/dustingetz/status/690374292027117568](https://twitter.com/dustingetz/status/690374292027117568)

<comment><USER6> That doesn't solve the ORM problem at all. Using a non relational database in no way solves the relational object impedance mismatch; it's frankly unrelated.

</comment></comment><comment><USER16> ORMs are like any technology choice, they allow you to get by with less- skilled engineers. You have to work with the tools you are given, and if the only readily-available devs to hire in your area are all .NET guys, guess what your tech stack is going to look like?

Trying to make these decisions based on the merits of the techs themselves doesn't derisk the business, it does the opposite.

<comment><USER14> I think the problem people have with ORMs includes the fact that it _seems_ like it should let you get away with less-skilled engineers, but the more skilled engineers know that the ORM doesn't save nearly as much time/knowledge as it appears to.

It's true, you can have a junior person write up a view simply using the ORM as it appears, but then during code review it'll be valuable for the senior person to come in and say things like, "That query is going to suck, here's how you'd get that data without locking so many tables."

<comment><USER6> If any of your queries are locking tables find a better database; what a senior would do is look at the query log and say hey, you've got an N+1 cascade load issue causing this to be so slow, optimize the query to prefetch the sub data or create a view that has the data you need already and map that. Cascade lazy loading is usually what makes an ORM perform badly and it's merely an indication the dev has a query to optimize, not a sign the ORM is broken.</comment></comment></comment>


German police get powers to hack into home computers  - <AUTHOR> http://www.telegraph.co.uk/news/worldnews/europe/germany/3546255/German-police-get-powers-to-hack-into-home-computers.html <comment><USER2> Yes, but only after after judge approves the request.

Can we leave this kind of cheap sensationalism at slashdot please?

</comment><comment><USER3> > The Greens, pro-business Free Democrats and socialist Left party members > oppose the laws, fearing they endanger civil liberties.

Germany has a five-party democracy. It's always interesting when parties from diametrically opposite wings agree on an issue, and the two big supposedly moderate parties take the opposite stance.

</comment><comment><USER4> Schneier blogged this 8 months ago here: [http://www.schneier.com/blog/archives/2007/04/german_police_...](http://www.schneier.com/blog/archives/2007/04/german_police_w.html)</comment>


Heading out on your own: establish an exercise routine - <AUTHOR> http://www.artofmanliness.com/2012/08/25/heading-out-on-your-own-day-25-establish-an-exercise-routine/

<comment><USER2> You know how I know HN is going downhill?</comment>


How much bandwidth does the L2 have to give, anyway? - <AUTHOR> https://github.com/travisdowns/uarch-bench/wiki/How-much-bandwidth-does-the-L2-have-to-give,-anyway%3F <comment><USER2> The code to reproduce my results can be found at [1] (Linux only for now, but porting is welcome). Basically `run-all.sh` generates the results and `plot- all.sh` plots them.

It would be especially interesting to see Zen2 results since that's the first AMD chip with 256-bit wide loads executed in a single op, so the first one that can do better than 16 bytes per cycle from any level of the cache.

[1] [https://github.com/travisdowns/uarch- bench/tree/master/scrip...](https://github.com/travisdowns/uarch- bench/tree/master/scripts/l2-bandwidth)

<comment><USER3> _> Basically `run-all.sh` generates the results and `plot-all.sh` plots them._

I've done things like this in the past and it's awesome. It would be great if more and more research was done like this so reproducing and extending results was much easier. Congratulations.

<comment><USER2> Thanks!

So I started to do that for myself, to save time and make everything reproducible. I found that when I wanted to make a small change to anything I'd have to go back and dig up the old command lines, and sometimes I couldn't reproduce my old results.

By recording the result generation in the script, including things like turning on and off the prefetchers - it made things reproducible for myself, and also encouraged experimentation since it was very easy to generate all the results after any change.

Then, once you make that script for yourself, a nice side effect is that everyone else can use it too and you can skip a lot of the description about how you got your results: it's kind of a self-documenting way to explain how you got your results.

<comment><USER3> That was my experience as well. Experimentation becomes much easier and for things where you want to run the same analysis every year/month/etc when more data comes out it makes things much easier. It's also great when you have computationally expensive steps to just be able to issue a build the world command at the end of the day and have the computer regenerate everything overnight.

This was my version of that:

[https://github.com/pedrocr/codecomp](https://github.com/pedrocr/codecomp)

Ruby made for a good way to have scripting together with more declarative build like tooks (e.g., rake). I also automated the plotting like you did by embedding R snippets. There's probably space for a good framework for this. To be the rails of scientific workflow as it were. Integrate nicely with R/LaTeX/etc for bonus points. Maybe a procrastinating PhD student somewhere will make a name for himself doing this :)

</comment></comment></comment></comment><comment><USER4> FTA :

>>> unless somehow your workload really, really wants optimized L2 access.

It's been 20 years since I have optimized assembly code at high level (think VTune, pipelining, etc). What kind of workload needs that kind of optimisation nowadays ?

<comment><USER5> Drivers. High frequency / low latency trading. Networking/telecoms equipment. Core routines (i.e if 10% of your workload is running a single block and this runs at scale then your savings can far outweigh the cost). Cheap electronics produced at scale (if you sell enough of them saving 1c on hardware outweighs the engineering effort).

</comment></comment><comment><USER6> Neat trick! I'm interested to know if this holds up on server configurations or is unique to client only. In addition to the published architecture differences between the two (size and exclusive layout), the prefetcher seems to behave differently in forward and reverse in SKL-SP.

<comment><USER2> Yes, it also applies on server architectures that derive from Skylake (aka SKX), and I've tested it there. However, it is probably of less utility there since currently all Skylake server architectures support AVX-512, which lets you load an entire 64-byte cache line in a single load, and SKX can do these at a rate of about 1 per cycle - so you can already do better than the technique described here simply by using AVX-512.

As I mentioned near the end of the wiki page, this might still be useful in scenarios where you don't want to use AVX-512 for some reason.

<comment><USER7> One reason to avoid copious AVX-512 instructions is that doing so is guaranteed to cause the processor to reduce its clock rate (see the Optimization manual for crossover points when workloads make heavy (or even medium) use of AVX-512 (or in some cases AVX2).</comment></comment></comment>


Continuously Synchronize Your MongoDB Data to Elasticsearch - <AUTHOR> https://blog.compose.io/continuously-synchronize-your-mongodb-data-to-elasticsearch/

<comment><USER2> It's a shame this isn't open sourced.</comment>


What it is like to live with clinical depression - <AUTHOR> http://jasonlefkowitz.net/2015/10/what-it-is-like-to-live-with-clinical-depression/ <comment><USER2> Much of what's described in the article is very similar to my own depression, prior to treatment.

I was talking to someone recently about this. Paraphrased, he said something like "I don't understand suicidal people. OK, you're depressed. Do something about it. Move to the mountains!"

If I had tried something like that, I would have just carried my defective brain to the mountains with me. Or the oppressive thought patterns, or whatever the nature of my depression was.

As the article said, depression is not merely feeling super bad, it's being broken.

If you have someone in your life that's depressed, and you don't understand it, then accept that you don't understand it, and have some empathy. Admit to yourself that you may be generally ignorant about depression, and that you yourself have not competently diagnosed this person's particluar depression. Help, even if that help is limited to not judging or assuming.

</comment><comment><USER2> > I haven't really talked about it much in that time, ... my assumption is > most people would find the day-to-day details of my life to be as dull as > dishwater.

> But it's also in part because I'm a coward. Depression (and mental illness > overall) still carries a stigma.

Nah, not a coward, he's just naturally cautious. No one has the obligation to reveal anything about their personal lives. Not everyone who suffers from something has to be a campaigner, or an example, or a resource.

Good for him that he feels free enough to talk about it. Like many things, the more people talk about it, the less ignorant prejudice there will be.

I was suicidally depressed, for a long time. Miserable life. I got treated, and now the "me" that was oppressed by this condition has been allowed to come to the fore. Same person, different world.

If you think you're depressed, talk to your doctor and get treatment. That treatment will vary; depression is a very large blanket term.</comment>


The Not-So-Golden State of California - <AUTHOR> http://blog.inc.com/nolan-bushnell/2009/06/the_notsogolden_state_of_calif.html

<comment><USER3> Yeah, right.

California's problem is that we keep on spending money like it's flowing in like water, yet the flow was greatly reduced 30 years ago with the passage of proposition 13. Instead of trying to live within our means, we voted people into office who either wanted to spend more, xor reduce taxes and then we made the problem much worse by passing a slew of costly initiatives without being willing to raise the money to fund them fully. So here we are. The governor screwed us, the state senate and legislature screwed us, but ultimately, we screwed ourselves, and now we're going to have to pay for it.

As someone who lived most of my 38 years in this state, went to UC, and has the joy of living in one of the most beautiful places on earth, it makes me profoundly sad to see what we have done to ourselves.

<comment><USER4> The rich love to assail Proposition 13 but without it a normal person could not retire in Califronia after working a lifetime in California. The other problems are as you mentioned and are obvious to everyone not in Sacramento.

<comment><USER5> Helping "normal people" retire was cited as the reason to pass Proposition 13, but the biggest beneficiaries (and the initiative was designed with this in mind, to be sure) were corporate property owners, who because they never get old and die, can never have their property taxes raised (well, it can increase 2% per year, generally less than inflation).

<comment><USER4> Corporations "die" and then sell the property. K-Mart had more value in property then in it's own business. Granted some corporations are getting a good deal, but in another article here they are getting such a bad deal they are leaving. Corporations benefiting may just be a necessary evil.

</comment></comment></comment></comment><comment><USER6> Although I'm a fan of Nolan Bushnell, this kind of blog posting is so lacking in content as to be useless. So regulation is onerous in California - <USER2> enough. When did the burden of regulation reach a tipping point that made it too much of a handicap? how was it in the old days? What regulations, specifically, are the problem - taxation, employment law, consumer safety, or what?

 _California's government is the problem. The state is business-hostile. It is merit-hostile. It has the highest tax rates and returns less in services to its average citizens. Massive pension abuses are not dealt with._

One wonders if California's emphasis on citizen democracy is at the root of the problem. It's certainly left us with the best democracy that money can buy, which turns out to be a pretty bad one.

<comment><USER7> > California's emphasis on citizen democracy

Yeah, but there are much better ways to do it. I'd recommend a substantial decrease in the Citizen / Legislator ratio. That gives regular citizens greater access to their legislature, while giving its members the power and responsibility necessary for them to invest themselves in its decisions, and make a more direct case to the constituency for the more responsible policy decisions.

For example New Hampshire has

* 400 representatives for

* 1.3 million people, or roughly

* 3,000 constituents/legislator (illustrated: [http://www.biblebaptistchurchmoldova.com/evangelism/images/m...](http://www.biblebaptistchurchmoldova.com/evangelism/images/mpp-0016.jpg))

Meanwhile, California has only

* 80 representatives for

* 38 million people, or roughly

* 475,000 constituents/legislator (illustrated: [http://kashmirwatch.com/postnews/data/upimages/eidgah22aug2....](http://kashmirwatch.com/postnews/data/upimages/eidgah22aug2.jpg))

New Hampshire citizens have over 150x the access to their state representatives, and those 400 legislators have 5 times the personal experience with laws and regulation to bring to the table.

Now you may say it's crazy to suggest that California should have 12,000 state legislators, but I disagree. The practicalities which have capped large-scale decision-making have largely been wiped away with the invention of modern electronic communication. And having those 12,000 means you could keep them in their home neighborhoods, rather than call them out to Albany. This way there's always _someone_ within a reasonable distance that you can speak to directly.

Interestingly, with the position California is in, I'd think this idea (or a more moderate version of it, say 2,000 legislators) might have a chance at making it. That is, if people make a serious push for it in the new constitution.

<comment><USER6> There are some interesting ideas there. I'm not in favor of the sometimes- suggested solution of splitting CA up into smaller states, but along these lines, I can't argue with the observation that our US senators 'represent' about 19 million people each, whereas a senator from Montana represents fewer than half a million.

<comment><USER8> The problem with our legislature is three fold. 1) We have safe political districts. The political districts are uncompetitive in the general elections. The only worry they have in getting reelected is if they don't appeal to the core of their party and are opposed in the primary. This leads to the most active, the most idea logical and the more fringe elements of the party deciding who our representatives will be. The people being elected are unwilling to compromise and so cannot find practical solutions. 2) We have term limits. The politicians do not have institutional memory and do not seek long term solutions to the problems. They are looking to move up to a more powerful position or at least they want to return home with a greater network of connections. So they spend every dime they can find and borrow as much as they can and are not there when the bills come due. The lobbyists do have institutional memories and are seeking long term solutions to their problems, not what is in the best interest of the state. 3) Proposition 13 Prop 13 was a tax-cutting measure that took care of the problem of property taxes skyrocketing as home values skyrocketed. This caused people to not be able to afford their homes any longer, not because they couldn't pay the mortgage, but because they couldn't pay the taxes . But it hit local governments especially hard. Key budgeting authority devolved from cities and counties up to Sacramento, where they have to compete with the state government for money. You want your streets paved or more teachers for your third grade? Stand in line behind the health department, or the corrections department, or Caltrans. And then the state borrows (takes?) the money it is supposed to send back to the cities and counties for it's own uses. California is not ungovernable -- it's just been ungoverned.

<comment><USER6> An excellent post.

As we all know, there are times when it no longer makes sense to keep maintaining legacy code which has begun to collapse under its own weight. In that spirit, I invite HN readers to look into the Bay Area council's proposal for a constitutional convention: <http://www.repaircalifornia.org/index.php>

Politics is an awkward subject, as evidenced by the often febrile debates here over libertarianism, the role of government and so forth. But those of us who are residents of California owe a lot to the state - not to be confused with The State - and as hackers, pride ourselves on having the energy and insight to make things work better. Rewriting our socioeconomic source code is a messy and likely thankless task, but no less worthy of our participation for that.

</comment></comment></comment></comment></comment><comment><USER9> This was probably the best article on the topic. [http://www.economist.com/world/unitedstates/displayStory.cfm...](http://www.economist.com/world/unitedstates/displayStory.cfm?STORY_ID=13649050)

Posted here: <http://news.ycombinator.com/item?id=645478>

</comment><comment><USER10> Paraphrasing something I heard on NPR...

California is the 8th largest economy in the world. We have the world's most productive agricultural region, two of the world's top universities, the largest port in the US, Hollywood, Silicon Valley, and tourism.

WHY THE HELL CAN'T WE MAKE IT WORK?

<comment><USER11> Because we expect too much for what we pay in taxes, add to that we also elect some of the dumbest people into office.

</comment></comment><comment><USER12> Is there any good source of data about the best place to start a company?

<comment><USER6> Surely what you want is the best data about good places to start a company.

 _The real answer: it depends on your criteria. Delaware is the cheapest place to incorporate, but nobody knows where it is. Nevada is the best place if your business involves lots of cash and/or hookers. Silicon valley may still be the best if you want to meet like-minded geeks. Hollywood stays in LA both for the infrastructure and the weather. Michigan has great incentives right now if you don't mind the cold winters...see the problem?_

<comment><USER13> I think I like Nevada.</comment></comment></comment>


We need more keywords - <AUTHOR> http://mail.openjdk.java.net/pipermail/amber-spec-experts/2019-January/000945.html <comment><USER2> Another option is to enable language features on a per-file basis. That way you could have your "ideal" syntax, and only have to do the work of updating those files where you need to use it.

The only language I can think of that does this extensively is Haskell (and some flavors of regular expressions). The main downside I have noticed is that the ability to do this allows for the language to add a bunch of complexity that would otherwise be prevented by the need to preserve backwards compatibility [1]; but, if the language writers can remain disciplined, it seems like an effective way to grow a language without the growing pains the article is discussing.

For adding keywords, this approach doesn't even add that much maintenance cost, as all the additional complexity is confined to the lexer.

[1] Or, as has happened several times with Haskell, add features that too broken to even be considered adding but for the fact they are always behind a flag.

<comment><USER3> > Another option is to enable language features on a per-file basis.

Will you need a new keyword to enable your option for new keywords?

<comment><USER2> It works better if it is part of the language from the start.

Having said that, we can probably implement it using only existing keywords. Maybe: import java.lang.extensions.assert.

(I assume Java has some reserved part of the package namespace they can use for this purpose. Even if they don't, it shouldn't be difficult to find a package name that hasn't been used by anyone yet)

</comment></comment></comment><comment><USER4> If a user could alias or reassign certain keywords, it might be another solution. That way, older projects only require a keywords mapping configuration, and newer project probably will just use the default keywords.

</comment><comment><USER5> Alternatively...Use a new file extension. That way you have a syntax version. Repeat if you need. If you build into that syntax whatever means you need to future extend keywords no need to repeat.

</comment><comment><USER6>
      the lexer can always tell with fixed lookahead whether `a-b` is three tokens or one

How does that work? It doesn't seem obvious to me?

I also wonder what approaches other languages have taken since I haven't seen dashed keywords in any of the other big languages.

<comment><USER7> Ooh let's take a tour of big languages.

\- C has given up on new identifiers save the "reserved namespace", consisting of an underscore followed by an Uppercase, which is how you get _Bool and _Generic. Oof, nuff said.

\- C++ has stretched poor `static` to its limits, and now incorporates context-sensitive "identifiers with special meaning": `final` and `override`. No new hard keywords in C++17 AFAIK.

\- C# takes this even further with its LINQ-driven contextual keywords.

\- JavaScript stumbles about by adding new identifiers, BUT only in strict mode, and even then only sometimes; `yield` is especially ambiguous.

Fill in the blanks please!

<comment><USER8> I think C# has only ever added contextual keywords after its initial release and if I remember correctly there was only one breaking change for semantics of source code, which I find impressive. I also didn't get the impression (from working with Roslyn and looking at its source here and there, as well as reading posts from people like Eric Lippert or Mads Torgersen about the language design) that contextual keywords are as much of a hassle as Brian makes them out to be. About the only really annoying one I can think of in C# would be the nameof operator, which has to be parsed as a method invocation and is only the nameof operator when there's no symbol with that unqualified name accessible at that point that can be invoked as a method (e.g. an actual method named nameof (rare), or a local variable of a delegate type). Pretty much all other contextual keywords are only valid in a few places where parsing is not ambiguous. You just happen to have a token there that's still valid elsewhere as an identifier.

It's interesting to read about the musings and decision making processes for different languages, though. I'm sure Java and C# are both designed very carefully, yet with radically different goals and outcomes. And I'm sure both language design teams must ponder pretty much the same issues.</comment></comment></comment>


Startup Quote: Paul Graham, co-founder, Y Combinator - <AUTHOR> http://startupquote.com/post/3890222281

<comment><AUTHOR> Just build something that you'd want to use today, not something you think people could use somehow.

\- Paul Graham (@paulg)

<http://startupquote.com/post/3890222281></comment>


A Hacker's guide to monetizing a free-to-play game - <AUTHOR> http://blog.betable.com/tips-for-monetizing-your-free-to-play-game

<comment><USER2> @MostAwesomeDude I think you pointed out a major issue with social games in general, which is that across the industry, free-to-pay conversion rates are only about 2% and player only generate about $1 ARPU/month, meaning, to turn your game into a viable business, you need to have a ton of players or as you put it, "...you really want as many potential wallets as possible."

There are a few new monetization methods out there such as Kiip that you should check out, although I can't speak for how well they work.

One new monetization method that I can speak for, which is proven to work are, real-money gambling and betting mechanics, which produce monthly ARPU in the neighborhood of $300/month -- that's 300X better than the other monetization options currently available to game devs. I know the knee jerk reaction is to think you can't do that without a license and that obtaining a license is nearly impossible, both of which are true, but Betable (developers.betable.com) just launched a real-money gambling engine that hosts and operates all gambling code on behalf of a game dev, enabling them to piggy-back on Betable's licenses, so they don't have to get their own.

FULL DISCLOSURE, I'M THE FOUNDER OF BETABLE. Sorry for the self-promotions, but given the current state of game monetization methods available to devs, I thought it was important for me to jump into the conversation and make people aware of what else is out there. Hope this is helpful.

<comment><USER3> > I know the knee jerk reaction is to think you can't do that without a > license and that obtaining a license is nearly impossible

Actually my knee jerk reaction is that it's undoubtedly illegal for US developers to offer real money gambling in their games (at least, to US players).

<comment><USER2> And you would be wrong if it weren't for your parenthetical hedge. Using Betable, it's completely legal for any developer to offer real money gambling in their games to any players who are not in the US and a few other minor jurisdictions (in terms of market size).

It's a big world out there. In fact, the market out side of the US is huge. Even Zynga has more players outside of the US than inside of the US (60% Ex- US). The opportunity to go into the Ex-US market where one can make 300X more ARPU/month than in the US is massive.

</comment></comment></comment><comment><USER4> This is a summary of tips from TapJoy's webinar from last Wednesday. They did a great job of outlining a lot of different monetization tips, but their free- to-play tips were the best.

</comment><comment><USER5> Do the games have to be pure chance to be legal. I thought you couldn't mix games of skill and chance?

Aren't there all kinds of quite specific laws about how odds are presented and stuff like that? How do you plan to police that stuff?

I assume because you hold the licence, you are the one hosting the games and you are essentially just paying us a commission to find your players?

<comment><USER5> Oh, I just read this in the API doc.. " Because Betable's servers are located in the UK, developers in any geographical location may build on our platform. However, due to legal restrictions, we block players from accessing Betable's real-money play in they are located in the United States, Turkey, Holland or any other jurisdiction that Betable deems unsuitible for it's services."

</comment></comment><comment><USER6> Something not mentioned here, which I feel is always left out of CSP discussions: Don't ever offer paid-only content which enhances the game. If a person cannot play for free for extended periods of time and have a good experience, they are less likely to recommend the game to others, and when you live on microtransactions, you really want as many potential wallets as possible.

<comment><USER7> This applies to countless run-of-the-mill, crappy, casual and free games. As an example, the "energy" system makes me cringe. Instead of offering a game to pick up and play, it limits you and beckons you to come back for more later, unless you pay $5.99 now! or something.

I think the energy system in this sense is usually typical of a poor game, from what I've experienced. It would be hard to get it to work unless it was auxiliary to the game in some well-implemented sense.</comment></comment>


$50k/month Selling Anxiety Reducing Blankets - <AUTHOR> https://www.starterstory.com/hush-blankets <comment><USER2> Stories like this, and others from Indiehacker and the like, emphasize just how wrong my intuitions are on which products will sell.

<comment><AUTHOR> Totally. I'd say business in general is rather un-intuitive.</comment></comment>


What happened to Dropbox, and why some startups are in private beta forever? - <AUTHOR>

This is a semi-rant that applies to other startups.  I needed a quick solution for a online backup, and thought dropbox would be perfect for it.  I go to their site, and it seems they are still in private beta?
I know they are working on it, and made a huge splash few months ago.  But lots of time has passed, and they haven't released it in the wild.   It seems that once you anounce something, maybe a couple of months of "private beta" should be enough, to get something more substantial, then have a more public beta, while you improve it. Why turn customers away?  Early users usually are willing to put up with some functionality missing, as long as they know at some point the features will come.
It seems that this trend is among other startups,  anounce something, make a splash,  then nothing.   Guys, don't turn  your customers away.  A two-three months period for a private beta, should be more than enough, then go to a public beta  (gmail was in "beta" for years). <comment><USER4> I think you underestimate how difficult scaling is.

So, you want to offer 2GB of redundant storage over the internet to everyone. Well, first you're going to need 6-10GB for everyone to cover redundancy. You're also going to need an amazingly high amount of bandwidth to cover it - especially at the start because new users are the ones likely to decide "oh, I want to see how well this works so I'll just test upload download random things for a while" because of the novelty.

So, you assume that you can store 4TB per server at $1,000 per server assuming you're buying crappy white-box stuff - really scraping the efficiency barrel here. That means that for every 400 people, you have to spend a grand.

OK, so let's say that only 1 in 10 actually use the product, that's $1,000 for ever 4,000 people. Still not great. Most importantly though, your staff is only so large. You're not just allocating more space on S3 - you have to be installing and configuring these servers - oh, and let's not forget that rack space isn't cheap. Without bandwidth or power, rack space can go for $1,000 per month for around 40U.

So, let's say they just open it up and 100,000 people sign up for it - <USER2> unreasonable. It would require $25,000 to buy the hardware considering a 10% usage rate (people only actually storing 200MB rather than the 2GB limit). Above that, we're talking about installing 25,000 boxes into racks and configuring them all. Above that, they need to pay for electricity for all those boxen. Let's assume dirt cheap power at 4 cents per kWh and decently efficient servers drawing 200 watts (neither of which are going to be true in real life). That's $200/hr to keep those servers alive. Going monthly, we hit $144,000! Great way to blow through VC! Oh, bandwidth, how could we forget about that.

I'm going to stop beating a dead horse right now. It is really hard to provide what Dropbox is trying to do. It makes a TON of sense to start slowly in their case. This isn't like a social networking site where it matters how many of your friends are on nor does it have the luxury of storing very little data. Most importantly, unlike the Web 2.0 stuff out there, Dropbox's usefulness is harder to do. While many social apps are highly polished, Dropbox has a much higher technical barrier. Specifically, you need to buy a lot of iron to run it. This isn't something where you can use S3 (or a smal MogileFS cluster) to store/serve icons or some user photos. Do you think someone else is going to come along and compete with Dropbox? Sure, but not like they would with something like Twitter.

<comment><USER5> Your point is valid, but your math is wildly inaccurate.

> Above that, we're talking about installing 25,000 boxes into racks and > configuring them all.

No, it would mean installing 25 boxes (100,000 people / 4,000 users per server = 25 servers). And that means your power estimate is off by x1000 as well.

</comment></comment><comment><USER6> Yo. If you give me your email address, I can give you an invite.

As for your questions, the short answer is that we're holding back on going public until we're sure our infrastructure is able to scale, the data-loss- causing bugs are wiped out, and our feature set makes most people happy.

<comment><USER7> My friend at school turned me on to you guys. I love Dropbox. I'm curious. What kind of business model are you looking at? Freemium? Something else?

Thanks.

</comment></comment><comment><USER8> Once you have a splash in the press it's stupid to not let the resulting potential users in. There, I said it - stupid. There are very many companies that have lost their only chance to sell me their products this way - <USER3> announce a product, I come over there, can't find the "buy now" button, turn around and leave. Their story will never be picked up by the same site again, because it's old news. I will never remember to come back. Bye-bye.

<comment><USER9> You know what, initially I was inclined to disagree with you but based on my own experience that is exactly how I felt for some companies that offer compelling products but don't offer the following:

a. Online Demo (this is very important for me as I love to test drive something for a while before I purchase.)

b. Easy way to pay for said product.

The reason being is that if a company cannot do this for me then it is most likely I will forget about that company in a few days and move on to someone else that could offer me an easier alternative.

There are a number of things off the top of my head but I'm pretty sleepy at the moment. But that's all I could think of for now.

</comment></comment><comment><USER10> I kind of agree. I'd rather be able to use a site knowing that it was in beta (as long as it worked mostly) and if there were any data loss, at least I know that it's in beta and wouldn't be too pissed if some data was lost. I like to use new services and I don't tend to put all of my eggs into one basket anyway, so using dropbox for vital backups is not the greatest idea in the world since it's still in beta, but as far as using it to sync some machines with non-vital data, I'd love to be able to use it. (I've already got a beta account and I love it, BTW). :)

</comment><comment><USER8> Many smaller startups probably have fear of customers. It's one thing to code, the other thing to deal with people. PG should write an article about this subject, this can easily be the biggest failure factor, ever.

</comment><comment><USER11> JungleDisk does easy online backups: <http://jungledisk.com>

<comment><USER12> Syncplicity does too. I've been using them for a few months, very happy. <http://www.syncplicity.com/>

</comment></comment><comment><USER13> I too wish dropbox would open up. Last week I recommended it to a friend thinking it might be out of beta but then I soon realized it wasn't :/

(P.S if anyone has an invite I would love one :~) )

</comment><comment><USER14> Some people think it is a great PR strategy. That is because sometimes it is. The problem is when you fool yourself into thinking that "sometimes" is "always". Or, at least, "always for me".

<comment><USER15> Definitely not a good PR strategy if people seem to forget about the service. Especially people here. Not a good sign. Being public about issues or your service greatly helps the company and the people interested in that service.

</comment></comment><comment><USER16> I couldn't care less if they stayed in private 'beta' for another year. Let them work out the kinks. I appreciate them taking care of existing users first, then worry about growth. This kind of service needs to be reliable. Keep up the good work, I'm using getdropbox all the time.

</comment><comment><USER17> I just got my beta code a few weeks ago and discovered they still don't let you download the Linux client, so I'm currently waiting patiently. Is there any kind of timeline on that? They don't say much on the blog other than that a client exists, and I can't have it

</comment><comment> patrickg-zill Are you talking about the drop.io service?

<comment><USER18> I'm assuming getdropbox.com.

</comment></comment><comment><USER19> ummm...gmail is _still_ in beta.

<comment><USER20> right, but not a _private_ beta

<comment><USER21> right, but it was in private beta for almost 3 years.</comment></comment></comment>


If you could fix Firefox or IE what would you do? - <AUTHOR> http://fvrit.com/archive/2008/03/01/if-you-could-fix-firefox-or-ie-what-would-you.aspx

<comment><USER2> Make them both compliant.

<comment><USER3> Firefox 3 passes the Acid2.</comment></comment>


RFC for 7xx HTTP status - <AUTHOR> https://github.com/joho/7XX-rfc <comment><USER2> I think it should be reserved for ad blocker detected, together with a browser setting that pops up a message that the server is not allowing people with ad blockers.

Then we could just easily ignore those sites who serve ads as a requirement, and they could go die in a fire.

</comment><comment><USER3> I mean I get it, but I also don't get it.

<comment><USER4> I fail to see the humour in this, how are those HTTP responses? When would a server respond to a request with "Haskell"? Makes no sense to me, while " I'm a teapot" made perfect sense

</comment></comment><comment><USER5> 733 (D)ucking Deadlocks - I support 1000%

</comment><comment><USER6> Look at 759 ! That's actually a real error message.

[https://en.wikipedia.org/wiki/Scope_resolution_operator#PHP](https://en.wikipedia.org/wiki/Scope_resolution_operator#PHP)

What were the PHP guys smoking to consider this a usable error message?

<comment><USER7> I know you'd happily bash PHP author for such an incomprehensible error message, but it's not his own message, but something that comes from Yacc/Bison, when the next parsed token is not what can legally follow whatever the parser read up until now. It's just the tokens (or maybe just this one; I haven't read the grammar) were not named in currently canonical English.

<comment><USER8> It is, notably, just that one. If everything were in Hebrew, I would personally be perfectly happy to adjust. But being the only non-English token makes it a completely unnecessary source of cognitive load in a language that is already criticized for its standard library's frequently inconsistent use of grammar.

</comment></comment></comment><comment><USER9> To be honest, I have many places that should return 724.

</comment><comment><USER10> Dammit I thought this was serious.

</comment><comment><USER11> not worth the bits it's on</comment>


An Interactive Introduction to Quantum Computing - <AUTHOR> http://davidbkemp.github.io/QuantumComputingArticle/ <comment><USER2> Interesting in this regard might also be the talk that Robert Smith of Rigetti Computing recently gave: [https://www.youtube.com/watch?v=f9vRcSAneiw](https://www.youtube.com/watch?v=f9vRcSAneiw)

Apart from praising Common Lisp he describes how they are building an assembler-like language for quantum computing.

The HN thread: [https://news.ycombinator.com/item?id=15880172](https://news.ycombinator.com/item?id=15880172)

</comment><comment><USER3> Part 2 mentions two quantum algorithms that could be used to break Bitcoin (and SSH and SSL/TLS; and most modern cryptographic security systems): Shor's algorithm for factorization and Grover's search algorithm.

Part 2: [http://davidbkemp.github.io/QuantumComputingArticle/part2.ht...](http://davidbkemp.github.io/QuantumComputingArticle/part2.html)

Shor's algorithm: [https://en.wikipedia.org/wiki/Shor%27s_algorithm](https://en.wikipedia.org/wiki/Shor%27s_algorithm)

Grover's algorithm: [https://en.wikipedia.org/wiki/Grover%27s_algorithm](https://en.wikipedia.org/wiki/Grover%27s_algorithm)

I don't know what heading I'd suggest for something about how concentration of quantum capabilities will create dangerous asymmetry. (That is why we need post-quantum ("quantum resistant") hash, signature, and encryption algorithms in the near future.)

</comment><comment><USER4> > Sorry, I but cannot assume you know nothing at all!

Make the witty text a hyperlink to [https://en.wikipedia.org/wiki/Boolean_algebra](https://en.wikipedia.org/wiki/Boolean_algebra) ?

<comment><USER5> <irony>Great Suggestion! Let no humor remain in scientific explanations!<\irony> Seriously.. don't you get the joke?

<comment><USER4> > Seriously.. don't you get the joke?

Unfortunately it was lost on me then. It was a blue question [?] next to a assumption the author has of the reader.

I hoped the [?] marked gave some insight or info into the assumption,

But rather you got a witty response, hence my suggestion, to keep the witty response but also help people not in the know.

<comment><USER5> So I guess an explanation has to be very careful with that then. I liked the style. Good way to make clear that this isn't some uptight explanation, but the attempt to experience a little with the explanation style. But it comes with the risk to just confuse people.

<comment><USER4> > I liked the style

Same here, still consuming it, gonna take a couple of days.

But then I'm sharing it with bossman and my mother.

</comment></comment></comment></comment></comment><comment><USER6> Long talk about superpositions of probabilities, but almost no explanation about how can that help in _computing_.

How can the probabilistic operations speedup computations? No explanation given.

<comment><USER7> It does show how 2-bit quantum search is faster than conventional, requiring only one evaluation of the oracle function instead of three.

<comment><USER6> In the second part and not explaining the principle.

</comment></comment></comment><comment><USER8> I feel like theres potential here for quantum computers to represent perceptrons in neural networks, since they seem to both operate with rough states.

<comment><USER9> You mean [https://en.m.wikipedia.org/wiki/Quantum_machine_learning](https://en.m.wikipedia.org/wiki/Quantum_machine_learning)

</comment></comment><comment><USER10> why Hadamard of 1 is diffrent from Hadmard of 0?

<comment><USER11> that's like asking why NOT of 1 is different from NOT of 0? If it was the same, it would be the identity gate.

<comment><USER10> I meant, physically, what gives different? why after applying the gate once on 1 there is a 50% the spins flip but when applying to 0 no-chance of that.

<comment><USER11> The states you get are H(|0>)=|0>+|1> and H(|1>)=|0>-|1>, _both_ of which have 50% probablity to end up as 0 or 1 once they are measured. The difference of the "-" in the second state is only visible if you carry on the computation, not if you measure.

</comment></comment></comment></comment><comment><USER12> > Qubits represent 0 and 1 using quantum phenomenon like the nuclear spin > direction of individual atoms.

Not trying to be _that guy_ but this is so wrong/misleading, it hurts (and I'm not even a physicist!). Spin isn't a "direction" and atoms don't "spin" \-- well, they might, but the quantum kind of spin has nothing to do with angular momentum.

<comment><USER13> Not a physicist but I did study a degree in it. Spin is absolutely a direction and absolutely related to angular momentum, since it's basically the angular momentum that you get when all the angular momentum we understand is removed.

There's a reason it's called spin! I think what you're trying to get at is that it can't be understood in the traditional context of an object spinning, but the way that you're saying it is wrong.

<comment><USER14> No, ELECTRON spin is not exactly a direction, as in 3D vector. In every direction, it can be +1 or -1. It follows different transformation than a vector(wigner matrix for j=1/2 and 1). Expressions like direction |z> and |x> are not independent in this case.

Photon spin is actually a vector, as with all spin 1 particle.</comment></comment></comment>


How to Accept Over-Engineering for What It Really Is - <AUTHOR> https://medium.com/@fagnerbrack/how-to-accept-over-engineering-for-what-it-really-is-6fca9a919263 <comment><USER2> I think this is poor use of terminology. No one with any experience can deny that there are self important programmers with a highly twisted sense of reality that can effectively destroy a project or product. Or that engineering should be appropriately balanced against business desires.

But'Over-Engineering' conjures images of drinking cups made to withstand the force of a tank rolling over them. Or platinum fasteners, or spending 20 months doing usability studies as the market slides past.

The failure modes that this article describes are just bad engineering. Or broadly, bad organizations that tolerate or can't differentiate bad engineering.</comment>


Selling full autonomy before it's ready could backfire for Tesla - <AUTHOR> https://arstechnica.com/cars/2018/04/why-selling-full-self-driving-before-its-ready-could-backfire-for-tesla/ <comment><USER3> There's already a lawsuit from 4/2017 covering "Enhanced" Autopilot...

[https://www.truthinadvertising.org/wp- content/uploads/2017/0...](https://www.truthinadvertising.org/wp- content/uploads/2017/06/Sheikh-v-Tesla-complaint.pdf) Tesla's Marketing and Sale of Vaporware 21\. As Dictionary.com states, vaporware is "[c]omputer software that is advertised but still nonexistent." Tesla advertised vaporware to consumers, knowing full well that this particular come-on would particularly excite its target market of high-tech aficionados.

Now we need one for self-driving for those who were duped into buying a Tesla just for that.

<comment><USER3> Not to mention all the AP1 owners who were misled with this tweet. [https://twitter.com/elonmusk/status/686279251293777920](https://twitter.com/elonmusk/status/686279251293777920) In ~2 years, summon should work anywhere connected by land & not blocked by borders, eg you're in LA and the car is in NY 10 Jan 2016

AP1 owners who purchased Tesla in Q1/Q2'16 are SOL as in Q3'16 they released AP2 since AP1 didn't have full self-driving h/w despite his Jan'16 tweet.

<comment><USER4> Elon stated as early as the AP1 launch event that AP1 hardware was insufficient for full autonomy. The claim of a coming cross-country summon feature does not imply that it will be retroactively made possible on every Tesla vehicle ever produced.

If there is ever a successful lawsuit brought by AP1 owners, it is much more likely to focus on the promises that were made to them but never delivered, e.g. "meeting you at the curb" from your garage on private property.

</comment></comment></comment><comment><USER5> Their marketing claim of "Full Self-Driving Hardware" is evil-genius - it's very similar to the Halting problem[0] - Turing proofed that we can not develop an algorithm that can predict whether any program will eventually halt.

It's very similar with this marketing claim. We can never show that the hardware is not capable of being self-driving. Maybe, someone, at some point in the future, could pull it off. Even if the rest of the industry uses Lidar, beefier chips etc., it is not proof that it can not be done with that hardware. Tesla can keep playing that game, until virtually no one owns the current generation of cars anymore.

[0] [https://en.wikipedia.org/wiki/Halting_problem](https://en.wikipedia.org/wiki/Halting_problem)

<comment><USER6> I think it's very different from the halting problem because there is no perfect solution (like there is with "either the problem halts or it does not"). A self-driving car just needs to be good enough, where "good enough" means X% more reliable than the average human driver.

I personally am terrified of human drivers and will not walk close to the edge of a road because I don't trust them to be paying attention. As shown recently, self-driving cars appear to not yet be at that level (though I don't know the numbers - perhaps they are).

When self-driving cars reliably have same-or-few accidents per year (by volume) then I think they can claim "Full Self-Driving".

<comment><USER7> Humans write the software the power those self driving cars... was it an error that always repeated it self or did only happen every billion iterations? I'm all for self driving but it's still horrifying to think of the edge cases with software touching the physical world...

<comment><USER8> It's moreso the cases where the ML model(s) fail(s) to perform the correct action. Essentially the inputs after being passed through the weighted neural network fail to sum up to the correct number == rip pedestrian/passengers.

</comment></comment></comment></comment><comment><USER9> Question for Tesla owners: if you're actually keeping your hands on the wheel and staying mentally engaged, what's the point of autopilot?

<comment><USER10> Not having to constantly make minor adjustments to throttle position to maintain the correct speed is a big bonus for me, both in traffic and out of it. I find I can focus much more on watching my surroundings, and whats happening 500m down the road, rather than constantly looking at the speedometer. This also makes a big difference to how tired I feel after long trips. The same applies to the Lateral Control part of Autopilot, although I use that less.

(To be fair, many other cars provide adaptive cruise control too, but Tesla's is the best I've tried so far).

<comment><USER11> I'm interested in trying out one of the current adaptive cruise control systems. I pretty much got out of the habit of using cruise control. Most of the roads I drive on have enough traffic that I find cruise control leads to me prioritizing maintaining a constant speed rather than sensibly staying in the flow of traffic. I.e. shifting lanes rather than slowing down a couple mph.

</comment></comment></comment><comment><USER12> > _Tesla charges $5,000 for Autopilot 's lane-keeping and advanced cruise > control features. On top of that, customers can pay $3,000 for what Tesla > describes as "Full Self-Driving Capability."_

Is $5,000 what owners of other cars pay for similar driver-assist features?

<comment><USER13> In order to sincerely claim a car has the hardware needed to support a full self-driving capability the car would need several LIDARs, several good quality cameras, a high-precision GPS receiver, and a respectable Inertial Measurement Unit.

If you get all that hardware, $5,000 is a great price; back in 2005, any one of those components would have set you back that much.

Of course, if Tesla doesn't have that full complement of sensors - and from the price, they might not have all those sensors - the promised self-driving capabilities may never materialise.

<comment><USER14> > In order to sincerely claim a car has the hardware needed to support a full > self-driving capability the car would need several LIDARs, several good > quality cameras, a high-precision GPS receiver, and a respectable Inertial > Measurement Unit.

No, it needs decent cameras with coverage in all directions. That's all what a human needs so that's enough hardware.

<comment><USER13> Of the vehicles that completed the DARPA Grand Challenge and the DARPA Urban Challenge, how many do you think used LIDAR on their vehicles?

I'll tell you: 100%. Out of 11 teams finishing, every single one used LIDAR.

And I'll tell you why too: With LIDAR you need much simpler algorithms, and that directly translates into fewer bugs, meaning fewer instances of your vehicle crashing into stationary concrete barriers on clear days.

<comment><USER14> It just means your AI is not intelligent enough. The hardware is sufficient, as proven by billions of humans.

</comment></comment></comment></comment></comment><comment><USER15> The big leap in deep neural nets, gave us the illusion that we will solve many of our problems overnight. The fact is that we probably need at least one more decade to get things right

<comment><USER16> The leap was that now we have a plan for how to tackle these problems, we have tools that will actually work. Seemingly overnight those tools appeared and we realized their potential. However, we still need to learn how to best use these new tools and perfect them. Just because we can do something doesn't mean we can do it good enough, yet.

<comment><USER17> But it's still easy to sucker 3 grand from all the people who didn't realize this.

</comment></comment></comment><comment><USER18> I was repeating this to people (typically I was downvoted, the same way I will be now), but the hype is just too huge. People need superheroes, in comics and in real life, they need to depend on some preacher, that will show them illusion of better life. And the marketing is using that, again we are in same scheme, instead of listening to technical people, everyone is relying on marketing which will say everything to boost up the stocks. <slowly clapping> Bravo! (I never had a driving license, I do all my "moving" with public transport or bike and self driving car would be usefull, but not yet - <USER2> sooner than in 10 years)

</comment><comment><USER19> I wonder about the idea of not "full" self-driving, but with turns and lane changes being automated instead of a steering wheel for example for idiot- proof driving. A joystick may be available as a fallback for manual steering. Of course, there would also be collision detection for example too.

</comment><comment><USER20> Why not sell full autonomy for certain roads only? Like, put sensors every three feet on the interstate, and have a sensor in the car read the proximity sensor. Perfect full auto driving.

<comment><USER21> Following lanes isn't the problem. Collision avoidance is the big unsolved problem for Tesla.

<comment><USER22> _Collision avoidance is the big unsolved problem for Tesla._

Er, yes.

Tesla is really good at following painted lane lines. Very smooth steering. Sometimes right into solid obstacles.</comment></comment></comment>


Writing Hamlet with a Genetic Algorithm - <AUTHOR> http://www.glthr.com/20monkeys/help/ <comment><USER2> This style of problem is probably the most common sort used to demonstrate genetic algorithms. It is also not a very good use for GAs.

When GAs are applied in this way--i.e. generating a goal state directly, with a known goal state to which they are compared directly, generating a fitness value that is nothing more than progress towards the goal state--then the GA is no longer a GA. It becomes not much more than an inefficient hill climbing with a smattering of random walk thrown in.

These sorts of problems get used in demonstrations because they are simple to understand. We get to spend more effort on the mechanics of annealing, breeding, running generations, etc, without having to spend significant effort on the fitness function. But the fitness function is where most of the real work of applying GA to novel problems actually lies (after figuring out how to model solutions as genes without a linear dependency between alleles). It's also a fundamental component of neural networks (the ability to evaluate not just whether a solution is right or wrong, but to give a value for how much right or wrong). So personally, I find such demos to be woefully incomplete.

</comment><comment><USER3> Man, that english is bad. Proofreading was obviously skipped. Reading the outcome is no fun. Also, I can't find no screenshot with no zoom icon.</comment>


Excel As A Database - <AUTHOR> http://wyorock.com/excelasadatabase.htm?

<comment><USER2> Jerzy Tyszkiewicz: Spreadsheet As a Relational Database Engine, in Proc. ACM SIGMOD International Conference on Management of Data:195-206, Indianapolis, 2010.

[http://www.mimuw.edu.pl/~jty/SIGMOD/SIGMOD.html](http://www.mimuw.edu.pl/~jty/SIGMOD/SIGMOD.html)

And of course, [http://support.microsoft.com/kb/306397](http://support.microsoft.com/kb/306397):

 _" Microsoft SQL Server supports connections to other OLE DB data sources on a persistent or an ad hoc basis. The persistent connection is known as a linked server; an ad hoc connection that is made for the sake of a single query is known as a distributed query.

Microsoft Excel workbooks are one type of OLE DB data source that you can query through SQL Server in this manner. This article describes the syntax that is necessary to configure an Excel data source as a linked server, as well as the syntax that is necessary to use a distributed query that queries an Excel data source."_

[the first is theoretical computer science and not even intended to be practical; the second is ugly, but, at times, highly practical]</comment>