11 Things To Know About Semantic Web - <AUTHOR> http://www.readwriteweb.com/archives/semantic_web_11_things_to_know.php

<comment><USER2> Alan Kay said the best way to predict the future is to invent it.

I wish he would have gone further and said that if you aren't creating the future you have no business predicting it.

</comment><comment><USER3> One single company could affect a global semantic web adoption within 6 months: Google. Once they decide to give webpages with semantic info a higher relevance, armies of SEO experts would swiftly generate vast amounts of semantic information...

<comment><USER4> Excellent point. I guess the challenge is in first determining whether adopting the strategy to give pages with semantic info a higher rank, a good one. In other words, will this improve users' satisfaction with search?

I suppose it could start out in Google Labs as an experiment. Although I m quite convinced of the power of the semantic web, I would think Google would tread carefully before changing what's working for them, now.

</comment></comment><comment><USER5> [ Remember, you heard it here first (or tell me where you heard it before :) ]

Without having read the article (yet), my theory is that the web will become "semantic" in the sense "semaniacs" hope for ONLY when users can generate structured content (other than just photos, articles, comments, forum posts etc) EASILY ... that is: differently from when HTML started out, site owners cannot get such a ball rolling by painstakingly fleshing out RDF mark-up manually. Rather, those web sites will be "semantic" that provide wiki-like editing for data sets.

As an example, imagine a web-based database of restaurants: \- Let everyone provide tags for different categories (taste ie Indian/Italian/Regional, style ie luxury/fast food joint/middle-of-the-road, features ie garden/bar/smoking area) \- Let everyone update base facts such as address or name changes \- Let everyone add photos, media, reviews, comments \- Most importantly: let everyone rate/confirm/deny everyone elses contributions \- Reward by credits/trust/rankings but where commerce is involved, also by discounts/"miles"/whatever.

Make it easy for websites to do that, or create successful websites that do that so others follow suit should this be what people really want, and you have a semantic web in no time.

If the semantic web is what people want, this will be the only feasible way to create one. If it's not what they want, we will find out soon enough.

<comment><USER5> Okay now I've read the article. The point I was making is their bullet point 11. The only one that I thought mattered in this article. Enterprise/platform/integration win rather than consumer win? Nope, consumers decide, they always do...

</comment></comment><comment><USER6> Sorry, semantic web = semantic networks a la Quillian. It's a step backward.

RDBMS work because they have a solid semantic foundation with n-ary relations. Description logic based formalism can't do n-ary, nor can RDF triple stores. The whole adventure is ill fated and us database weenies knew it from the start.

<comment><USER7> <http://www.w3.org/TR/swbp-n-aryRelations/> ?

<comment><USER6> If you read their description, you can sense that this simple capability is beyond their grasp. They are falling back on reification and complex syntax. They even promise more notes soon LOL!

Here is an example I would like to see Semantic Web people treat. No references to W3C documents, just show us the solution. It's trivial in SQL.

Supplier(supplierId, name,country)

Part(partId, name,price)

Customer(custId,name,country)

Supplies(supplierId,partId,custId)

"Give the American suppliers who supply parts under 10$ to customers in Japan".

I won't bore you with the SQL solution. Now let's see it in OWL! Good luck!

<comment><USER8> It's reasonably trivial in RDF/OWL as well; Supplies would be a class whose instances have statements that point to supplier, part, and customer. In rough SPARQL that would be something like:

select distinct ?supplier where

?supplies hasSupplier ?supplier

?supplies hasPart ?part

?supplies hasCustomer ?customer

?supplier hasCountry "US"

?customer hasCountry "Japan"

?part hasPrice ?price

filter(?price < 10)

Not that bad, maybe more verbose than SQL, but not that difficult to express. You'd probably want type constraints on the variables, too.

<comment><USER6> OK, you are right, that wasn't so bad. Perhaps I will take a closer look at SPARQL one of these days.

BTW how does it do with things like spatial constrains. In relational databases it's easy to express spatial joins over relations. For example given

Structure(id, name, x, y, type)

you can query for things like all the structures of type 'pharmacy' within 1 km of a 'hospital'. It's simple to define functions like distance(x1,y1,x2,y2) that may be predicated on. Anything like that in SPARQL (yet)?

</comment></comment></comment></comment></comment><comment><USER9> Other than the oft-repeated 'machine readable', I'm having a hard time getting over the conceptual hump of what the Semantic Web is.

<comment><USER10> I work with semantic analysis technology (no, it isn't profitable), and think this is a really good summary.

The useful applications long-term are in areas like machine translation (contextual semantic knowledge is important), document categorization and indexing for search (ie. semantic data-scraping). Indexing for search is the simplest of the bunch and the most likely use of the tech that we'll see soon.

RWW has it right that the major challenge this poses to Google is a proliferation of industry specific applications that monetize better information management by virtue of knowing exactly what their users want and figuring out creative ways to aggregate it. Google is particularly weak with multiple languages: their focus on language-agnostic translation tools makes them vulnerable in foreign markets.

Then again, if Google provides the tools to let these vertical portals manage their own on-site advertising, who cares who is doing the actual document indexing/analysis?

<comment><USER11> It's been a really long time since I looked at this kind of stuff in any detail. The librarians I worked with at university would go on and on about semantic markup, and there were some very dedicated users that seemed to be willing to slog through the SGML nightmare. But, as soon as HTML came out it swamped the other technologies because it was so easy for people.

Has anything changed since the SGML days? Rhetorically, it all still sounds like a bunch of librarians complaining woefully that they can't do search properly if no one marks up their data properly.

<comment><USER10> Nothing much has changed. Most of the talk about the semantic web is complete hot air. It isn't as if this stuff is counterintuitive or non-obvious -- it's just that no-one wants to go through the work of teaching machines to understand language/text without a way to profit from it.</comment></comment></comment></comment>


BREW, a mobile operating system developed by Qualcomm - <AUTHOR> http://www.brewmp.com

<comment><AUTHOR> Found it while browsing the specs of the HTC Smart: <http://www.htc.com/www/product/smart/specification.html></comment>


Why Apple, Google, Microsoft or Yahoo Should Buy MySpace - <AUTHOR> http://seekingalpha.com/article/262165-why-apple-google-microsoft-or-yahoo-should-buy-myspace <comment><USER2> I still think it was dumb for Yahoo! to abandon GeoCities!

</comment><comment><USER3> I don't think that MySpace user count is 63 million. I would assume it to be way more than that.

</comment><comment><USER4> Three of the arguments are the same (Apple, Google and Microsoft have lots of cash, they should spend it on something!) and for Yahoo the argument is that misery deserves company.

I'm not really convinced.</comment>


What the hell happened to Kleiner Perkins? - <AUTHOR> http://venturebeat.com/2008/07/16/what-the-hell-happened-to-kleiner-perkins/ <comment><USER2> Makes sense to me. Internet companies are getting by on ever-decreasing amounts of funding, while huge firms like KP have an ever-increasing amount of money they need to invest. Internet companies and KP aren't interested in talking about the same sorts of money any more. It makes sense that their attention should be shifted to big expensive projects like biotech and fuel cells. Whether that will pay off for them remains to be seen, but from a technology point of view I hope that it will.

<comment><USER3> To me, this seemed like the major logical disconnect in the article. There's obviously still money in web companies, but the "next Google" is much more likely to be acquired by the current Google than ever realizing that potential, which means the next big Google-sized investment is pretty much guaranteed to be anything _but_ a web company.

The people acting like KP is insulting their mother by ignoring Web 2.0 companies are playing around with a lot less money (I'd guess by at least an order of magnitude), and the author is doing a disservice to the readers by conflating them.

</comment></comment><comment><USER4> "Amost a decade later, still without [another IPO], the number of skeptics are growing."

This is bad writing. To claim that Google's IPO was KP's last great deal, and that they haven't done anything for a decade since is ludicrous. Google's IPO was in 2004. It's been 4 years. For all we know, KP has invested in the next Google, and 5 years from now, they too will IPO, coming in under this imaginary decade long deadline.

</comment><comment><USER5> The author of this piece is going to feel pretty stupid when congress passes a cap-and-trade bill next year and KP rakes in a few billion overnight.

</comment><comment><USER6> Moving $1oo million to iPhone apps in addition to other mobile tech investments (which the article doesn't mention) _is_ an internet play.

<comment><USER7> Agreed. The real article(this is a link to a blog review of it), says:

 _Web surfing on cell phones - now, that's different. That's why Kleiner recently created a $100 million "iFund" for backing startups building products for Apple's iPhone and other mobile devices.

"Mobile is an enormously important new opportunity," says Doerr. "We think it's the next computing platform and will rival the personal computer." _

Which is great, because everything I do is for the mobile.

<comment><USER8> Ya I think it's common courtesy to link to the actual article instead of some blog.

[http://money.cnn.com/2008/07/08/technology/Kleiner_bets_the_...](http://money.cnn.com/2008/07/08/technology/Kleiner_bets_the_farm_Lashinsky.fortune/index.htm)

</comment></comment></comment><comment><USER9> This is sad. Back in school we had to read "The Goal", about how a new manager is able to turn around a dying manufacturing plant and save it from closure, by focusing on "the goal", namely profit.

Sorry darlings but saving the planet is not "the goal". Profit, and only profit is. KP is going to have to learn this the hard way evidently.

<comment><USER10> I always thought Drucker had a better philosophy: "A company's primary responsibility is to serve its customers. Profit is not the primary goal, but rather an essential condition for the company's continued existence."

You can find plenty of examples of companies that have crashed and burned because they believed profit and only profit was the goal, eg. Enron.

<comment><USER11> That may be the best quote I've read in awhile. I've convinced that profit is a function of creating happiness, both with your customers and within your company.

Thanks for sharing that.</comment></comment></comment>


We Just Undid Three Months of Dev work. Here's What We Learned. - <AUTHOR> http://blog.scoutapp.com/articles/2009/10/06/we-just-undid-three-months-of-dev-work-heres-what-we-learned

<comment><USER2> I think the real lesson to learn here is to never assume anything. They assumed performance wouldn't be a problem, so they didn't test for it when prototyping, and they didn't make those tests part of their development cycle.

It's tough, these things, especially if you're talking about a feature you personally appreciate a lot. The article talks about the performance problems leading focus away from actively marketing these solutions, which makes me wonder: if properly marketed, would this have been a killer feature ?

The fact that they decided to get rid of it suggests no. However, are they putting the code in the freezer for a while until they fix these issues and re-release it ? Or is it simply a problem that can only be properly solved by giants like Google ?

<comment><AUTHOR> _They assumed performance wouldn't be a problem_

We did pretty extensive performance tests, but not for long enough. We load tested tested for hours at a time, and the problems started to show up after days of production load and really compounded after that. It's probably a topic for another post, but the performance of database tables with a lot of churn (rows being frequently inserted and deleted) really degrades over time.

<comment><USER2> Guess that's my bad for assuming you thought performance wouldn't be a problem. :-)

</comment></comment></comment><comment><USER3> I wish I could send this to my boss. The functionality I'm working on right now was requested by a single client and is really only applicable to their unique billing situation. Why am I spending so much time on something that is going to have so little payoff, and yet which adds so much additional complexity to the system? But I've only been here a month and I don't feel like I can cast a dissenting voice. Maybe I'm just a coward.

<comment><USER4> Being vocal about imperfections in the development cycle and suggesting improvements that matter to the bottom line is not dissent.

It's important to have open communication about this very topic - it improves the pipeline and keeps margins where they need to be. Be confident and prepared with data, and make yourself an asset to your company, not just a keypusher! :)

<comment><USER5> When discussing the merit's of this feature be open minded that you may not have all the information they had in deciding to implement it. Perhaps this is heavily requested by the sales department or by other customers further up the pipeline. Maybe the company threatened to take their business elsewhere.

It's always less obnoxious to approach potentially illogical situations by giving someone the benefit of doubt. So, while you collect your 'data', also do some brainstorming on area's where the feature your adding makes a ton of sense, and might even open up new sales channels or markets.

Instead of assuming there's been some catastrophic mistake you must remedy, and instead of assuming that management puts no value on your time, try assuming that they have good reasons for it that you, especially being their for a month, might not have been fully explained. Quite often the problem is communication, not intent to waste money.

At the end, if all your effort is for seemingly insignificant return, smile and do an amazing job. Repeat until you grow weary and embattled, then leave for another job with a different set of problems.

<comment><USER4> Absolutely. It's certainly something that needs to be a dialogue, not at all "I know something you don't, here is why you are messing up."

There are always circumstances that affect decisions that you may not know of. This is one of the reasons I am always encouraging artists/developers to be knowledgeable of their project at a higher level. The more you know about what's going on in the big picture, the more of an asset you can make yourself. It's also important for sanity! The OP sounds like they are stewing daily about disagreeing with the feature -- but if there is in fact a relevant reason, some of that burnout-causing heartache could have been avoided.

Dialogue and accountability two huge keys to the management/artist relationship.

</comment></comment></comment></comment><comment><USER6>
        The database operations on the nested data were
        just taking too much processing power.

Given that this is Rails, and given that it's certainly SQL involved here, I just have to ask (and I know the answer is probably "yes") -- did you try implementing nested sets?

I ask because my experience has been that nested data is (with the kinds of nested data I've been handed, anyway) not a performance problem. Selects and updates of nested data can be as responsive as any range query on flat data, and when it comes to managing the performance of inserting new nodes, deleting or moving subtrees, there are a lot of options depending on what you want to optimize for (like spreading out the range from 1 to the max integer supported and periodically re-packing; that way, inserting leaves and any kind of deletion is as fast as with flat data).

I'm curious about what your nested data looked like. Sorry to get distracted on a minor point, but I'm intrigued! When I'm developing, I just always _feel_ as though I should only worry when I start seeing data that has to be a graph and can't be represented as a tree, but as long as it actually _is_ hierarchical then I won't have to worry about speed too much; but now I'm wondering if that intuition will bite me.

<comment><AUTHOR> _did you try implementing nested sets?_

The big thing we needed to do was a rolling archive to progressively broader timeframes. As metrics come in, we keep every single datapoint for the first 6 hours. After 6 hours, data gets rolled up into 5-minute archive. Each datapoint in the 5-minute archive then contains avg, min, max, etc for all the points that lived within that 5-minute span.

The archiving carries on through progressively broader windows as time goes on -- a 10-minute archive, 1-hr archive, etc. This progressive aggregation is the only sane approach to storing the massive amount of data we get. And, it reflects the need for higher resolution for recent events -- it's rare you need to see what happened at _one exact minute_ 6 months ago.

It was this progressive archiving that bit us, specifically as DB performance degraded over time with lots of insertions/deletions. Nested set didn't/wouldn't help with aggregation costs and degradation from churn during the archiving process.

Hope this helps -- I'm going to try to do a more technical post on this in the future.

<comment><USER6> Huh, that's interesting. I guess I've never worked with really "churny" data like that before.

Sure, sometimes I've had cleanup/integrity/whatever tasks that run every few minutes, but the amount of records affected has always been pretty small.

That's an interesting conundrum. See, _this_ is why we're all messing around with Cassandra et al; sometimes, in SQL, the answer is "don't do that", because it'd be too hard to tailor the db's behavior to suit your needs. Although frankly, with a design that deletes and updates a significant percentage of records in the system on a certain schedule, I can see any number of storage solutions having trouble.

That's interesting. I'll be thinking about this at "work" today. ;) I have a bunch of comments, but they're of the half-baked "oh, what about this?" variety.

</comment></comment></comment><comment><USER7> Haha, I'm doing the same thing right now. When one feature costs > 10% of dev time, and you can afford to get rid of it, do it! In my case, I was spending 50%+ of my time for a few weeks on stability issues caused by a feature that <10% of my users need. Bye!

<comment><USER8> On the other hand, punting on any hard problems just makes it that much easier for your competitors.

<comment><USER9> You mean hard problems _that matter_.

There are a lot of hard problems startups try to solve which no one cares about. That's the trap to avoid.

Fixing something hard does not inherently make your company valuable in the marketplace.

<comment><USER10> The problem with this ideas is that you don't get to decide which hard problems matter, but your users will not really know if the feature matters until you have made a real effort at providing the feature. There is a particularly insidious meme going around (usually from the so-called "lean startup" crowd) that building a lame/simple version first to see if people like the feature is how you learn what your users want. The problem with this is that you never know if people don't like the feature because the problem you are solving is not important to them or because your half-assed "iteration" has led them to decide that you don't have the chops to solve the problem so they should look elsewhere. I can't even count the number of times I have seen one company introduce a poorly implemented version of a feature, pull the feature or let it languish (presumably "because our metrics show no one wants it"), and then watch as customers flock to another company that actually solved the hard problem.

Fixing a hard problem does not automatically make your company more valuable, but failing to fix a hard problem _will never_ increase the value of your company.

<comment><USER9> _your half-assed "iteration" has led them to decide that you don't have the chops to solve the problem_

While this theory _sounds_ good, it is disproven time and again by initial half-baked versions of sites that then go on to take off. Just check the _original_ launch of YouTube, Digg, facebook.

Also, a HUGE idea coming from lean startup way is to invest very little in marketing until you have a product users like. You don't need to get one million users to tell you a product sucks. Often, 50 would do. Now if you are saying that 50 users writing off your product will doom it for its lifetime, the problem isn't the lean way it's that your market is too small. YouTube guys had very poor reaction to their initial site.

 _"because our metrics show no one wants it"_

They have little idea on how to use metrics. Don't blame lean startup ideas for that.

ie. What lean startup would do is put up a button that looks as good as your best competitor can put up. Then see how many people click on it. What you measure is action until the click, not the engagement after the click to draw conclusions about the demand for that feature. Now if 1000 people are clicking on the link but only few are using it, chances are your product sucks. Take that insight and work on your product. Just one small example.

 _failing to fix a hard problem will never increase the value of your company._

If you are saying that you have to solve really hard technical problems to increase value of your company, I full disagree. Just look at the web2 companies that took off.

Craigslist did not take off because it solved a huge technical problem. Craigslist also has a lot of value as a company.

<comment><USER10> > While this theory sounds good, it is disproven time and again by initial > half-baked versions of sites that then go on to take off. Just check the > original launch of YouTube, Digg, facebook.

It is easy to disprove the theory if you get to cherry-pick your examples. Would you like me to list the thousands of other companies that had a couple of poorly implemented features masquerading as a "beta" that were stomped into dust by others who worked a bit harder to do the job better?

<comment><USER9> Of course! I'd like to hear about them.

Btw, I don't consider using some of the most popular web2 properties as an example to be cherry picking. I'm curious to see your examples nonetheless.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> Short version:

 _In our case, the move from flat data to nested data was the killer...We came up with a sweet way of storing the nested data and abstracting away most of complexities of dealing all kinds of data...However, the load on our database was far more than we envisioned...MySQL._

</comment><comment><USER12> Great, as a paying customer of scout they are telling me their going to now focus on getting new customers instead of servicing the ones they have.

Might make sense from a business standpoint, but probably something you dont want to advertise :-).

<comment><AUTHOR> Actually we're also able to spend a lot more time now on things that _really_ matter to our customers -- things that customers request, like more graphing options and better support for cloud instances. The cloud functionality is already available, and graphing is coming up fast. It's a real pleasure to finally have time to address these things, in addition to the sales and partnership efforts.

Also, performance is significantly better since we simplified the architecture ([http://blog.scoutapp.com/articles/2009/10/01/simplify-get- an...](http://blog.scoutapp.com/articles/2009/10/01/simplify-get-an-order-of- magnitude-speedup)), which benefits customers old and new!

</comment></comment><comment><USER13> Just a meta comment about these lessons learned posts. The motivation behind these is to promote the product in question and one must therefore take them with a grain of salt.

Peer reviewed research is more reliable.

<comment><USER14> If you want to dismiss a post on that theory, you should remove the links to your products in your profile.

<comment><USER13> There is no need to dismiss all such posts. Some may be interesting/educational regardless.

But you do need to keep in mind the primary motivation behind them -- marketing.

<comment><USER14> Almost everything submitted here has marketing as an ulterior motive. They're either marketing a product or themselves. But thanks for the reminder.

</comment></comment></comment></comment><comment><USER15> This reminds me of one of my biggest internal conflicts: when to optimize.

"Premature optimization" has earned a negative reputation because it has a tendency to inflate dev schedules unnecessarily.

So I tend to just crank something, anything out just to have something. Once you can see what you have, it's often a lot easier to modify than come up with in the first place.

OTOH, I like to think that everything I build is a foundation for the next thing to be built upon it. I am constantly getting bitten in the ass by some grossly underperforming building block. If a prototype runs poorly a dozen times, it's a concern. If the same code runs poorly a million times, it's a disaster.

It's a constant trade-off. Get _something_ running vs. build solid building blocks. Make a mistake one way and never release. Make a mistake the other way and have a time bomb to clean up. Sounds like OP has a lot of the same issues.</comment>


Advice needed- Address Correction and Segmentation Service - <AUTHOR>

I am planning to start a SAAS business that will help e-commerce sites validate USA customer addresses. Our product is code complete and I get ~20 millisecond speed per address. I have tested with a lot of real address data and I am very close to Google Map's matches (~95%).
See the idea draft here: http://www.shatam.com/fixaddress.html
I am bouncing this idea in this forum. I am based in a small town in India and I don't want to spend money on hosting and data engineers prematurely.
Thanks <comment><USER2> Doesn't USPS offer this API for free? <https://secure.shippingapis.com/registration/></comment>


Ask HN:Review my science fiction story. - <AUTHOR> http://lifeasparesh.blogspot.com/2009/11/clr-z.html

<comment><USER2> It's very difficult to critique specifics without handing you back a physical paper with redlines on it. Generally, the grammar needs a lot of work, as does the tense (jumping back and forth between past and present), and the flow from paragraph to paragraph. A lot of sentences are actually sentence fragments, and a lot of times I feel like you're instant messaging me your thoughts rather than writing a story about them.

The content itself is entirely vague as well. Sentences such as "OK if you eliminate the fact that he was a researcher of math at the age of 25, but what do you know, he was actually _the_ math genius." just confuse me and make it difficult to read. Saying "OK" as if I just called you out on something just does not seem right for anything except dialog (OK, maybe not all the time, but pick your places).

Saying "It wasn't just numbers, same was true for logic, innovation, ability to ask the awkward question, and then solving the hell out of them." is such an awkward way of introducing someone. You're building this person up so much in such a short amount of time, I have a hard time believing any of it (it's not true, but you need to be able to suspend disbelief). I've always learned that you should never ever ever tell your reader an opinion about something... that's "meta-story". Let your reader determine that he is a super genius if that's what he is, but don't tell them all these super-human things he can do... it sounds like a kid describing his action heroes. What you need to do is build up the character's credibility as the story flows, not wind up the character like a toy and let him run through the story.

The first few paragraphs of the story really need to pull a reader in to make them want to read more, and what I see in the first few is "another story about the future". I don't really see a character at first, and that's a big minus to me. I don't really want to read about a list of things that are true in your future, I want to read about the people in that future, and let the way they interact with their world describe what the world is like.

"He used a lisp program for all this stuff.He had read in school that it was one of the most oldest languages around but never belived that,it had the most advanced features." -- This contains detail that is not really pertinent to the story... not sure why it's really in there. In stark contrast to that specific technical detail, it seems odd that among all the other "future-y" stuff, it still takes long enough to collate some Google search results into a database that he is able to read a book (about more things that are too technically detailed).

Adding to this... "By this time the database was over with indexing and he was presented with a nice command prompt on his DataBaseLinux machine." is like saying "he raced to his car and drove to the store. his car was blue. he was sad to discover that the store was closed, however, so he could not buy the Sony 42" LCD TV with support for Dolby 5.1 surround sound built in that he was looking for". The key here is not that detail is bad, but you need to be consistent, and it has to be relevant detail. You need to expand on the parts that make the story human, and really cut down on the parts that make it technical.

Stylistically, I personally would not go into a story attempting to point out "this is like this in the future!" every chance I got. Specifically, it seems irrelevant that DRM is not an issue in the future, and it would confuse the hell out of a reader that was not familiar with the subject.

More comments to come likely, as I get some time to dig deeper.

EDIT: Sorry... if this is indeed a language barrier issue, that would explain a lot about the style comments I had. I then agree with khafra's comment. Otherwise there is a lot to discuss here. However, sentences such as "He didn't really thought about robots , but he did knew that his secretary robot was a good talk." makes me think the former is the case.

<comment><AUTHOR> This indeed is a fine critique here. Thanks for your points. Actually this story was written some time back and I pulled it out of my backups just in the hope of getting something out of it. To tell the truth I could have done better if I would have written it now. But I would have indeed retained some of those mistakes you pointed out. I would make it a point not to repeat it the next time.

</comment></comment><comment><USER3> I've re-written your story to read as I read it:

In the year 3065 of The Future, people not only have all they need to be happy, but are indeed happy. Alas, uploads remain an imminent futurist dream.

Enter a man, a normal man, a man filling in a 10x10 multiplication table. But that multiplication table held not the numbers 1-10, but pi, and i, and all sorts of other crazy future symbols. If you looked at the sheet, you would find that the correct answers were all there to all their decimal places - that's right, the man was a complete badass at math. And logic. And innovation. He was the type of guy who would ask dickish questions in university classes, which he finished when he was 13. At five months old he beat his mom at math, and his mom was pretty awesome.

He read his idea journal, and it was like reading science fiction because he couldn't remember what he wrote at 2am last night. He lived in a research center, where he goofed off but was still awesome. He had a paranoia of doing math in the dark (e.g. at 2am) which he never could justify to others. So on this day of year 3065 of The Future, he went to bed.

And had a nightmare about being surrounded by Big Black Machines (I kid you not). He thought he could use logic to get out, but ended up sweating a lot instead.

You would think he would shower, but no, he just dressed and shaved. Usually, people shave and then dress, but not this man. He felt strange, like that time he thought he proved time travel (but it was just wormholes).

He drove to the office where his realistic and probably conscious submissive fembot greeted him.

He used Google and manually made a database of all the webpages he visited (grand technologies like "Google Chrome" were lost to the ages). As usual, he wasted most of the day reading 1000-year-old blog posts about how crappy DRM was.

He got back to "work" though. Turns out, everyone except him stopped caring about the origins of life, the universe, and all that.

"Hey babe, get me some coffee!" The smack on the ass that he gave his female robot coincided with the exclamation point.

"It's bad for you, sir."

"Don't care."

She brought it.

"What are you working on, sir?"

"You damn well know what I'm working on based on my search queries, which I know you peek in on."

"...any luck?"

"Not on finding out the origin of the universe. But that's because I'm working on finding out what's real. People seem to..."

"Ignore, sir?"

"Stop trying to end my sentences, sugarbuns."

"Sorry, sir. By the way, I was reading Paulo Coelho's The Alchemist and..."

And then it struck him. Maybe he was in the Matrix. A quote floated into his head, "we are someones dream but of whom we cannot know". He decided to get to work.

The story is not good. It's actually pretty bad, but all early stories are bad, so don't worry. My advice is to read a lot of science fiction, and a lot about how to write, how to write SF, and how to write short stories. Pick something and focus on it. In this story, you don't even have anything to focus on - what theory of reality are you actually getting at, and why doesn't it permeate the story? Never describe how awesome things are.

<comment><USER2> Can you please continue down this alternate thread of straight-to-the-point- badassness? I was enjoying the story until the last paragraph, when it wasn't a story anymore

</comment></comment><comment><USER4> I read the first two sentences, wasn't drawn in, and would have closed the page, had this not been explicitly a request for help.

In short, what you wrote reads like notes for a story, not a story itself. Don't tell people it was 3065, and then give 3 word descriptions of other aspects of society. Instead, write out events that take are taking place that will lead people to understand these facts. Let the events pull people in, and when they are done reading, they will understand your setting. Once you've done that, the rest of the story should flow in a similar way.

<comment><USER5> I cannot agree more. Too often I see writers go at great length to define and describe anything but the story.

Also, not everything should be stated explicitly. Sometimes it's good to make people figure it out.

</comment></comment><comment><USER6> I read your story. Here are my thoughts.

The good: you actually wrote it (well, the first half of it). It flows well from a plot perspective (something happens, then something else happens, with good pacing). And you asked for criticism, which is important.

Which brings me to the bad: the grammar is poor (see tsestrich's comment). The setting is not realistic or believable. One thousand years have passed since the present day, but the only obvious difference between then and now is that there are pretty capable robots. Your character is still downloading web pages, putting them in a database, and processing them with Lisp. In an era with AI computers so advanced battles have been fought and won over civil rights for them, how does that make sense?

You also tend to explain things a lot - there are a lot of sentences in parentheses with explanatory information. Good sci-fi tends to leave a lot for the reader to figure out, because otherwise the world does not feel like a natural place that the characters are inhabiting. In other words, it feels like you are writing the setting for a play, rather than immersing the reader in a novel.

Your metaphors also need work. Your character has a nightmare where he is lost in a grid of big, black machines. He "ran and ran and ran like a race horse" to try and escape the grid. This does not strike me as an appropriate metaphor for this particular nightmare (not to mention that it is debatable whether horse-racing will be a popular sport in 3065).

I think you need to read a lot more fiction, and keep practising your writing. I think it's great that you've asked for criticism and I can't fault you for your courage!

</comment><comment><USER7> So, the story has some potential. I would like to see what comes next.

However, you are severely limiting your audience in many ways. Most people don't know what it means to index a database. Many don't know what lisp is, or even what a programming language is (even worse that you call it a language and not a programming language). Etc... Ask someone who has never written a line of code and is afraid of computers to read this and they will come back confused.

Also, at the end, the character doesn't mean much to me. By this point I should feel the characters's passion for the question. I need to want the answer as much as he does. Giving him the feeling that its important to find out and conveying that will help a lot.

My guess is that something will be "undone" and thats the point of the story. If so, you have a neat idea here, but you need to keep the reader engaged. Take out technical details, flesh out the character, make me care about him and the world around him (whats good about it, whats bad about it) etc...

FYI - I don't mean to fully disparage your idea here. I think if you re-wrote it with the suggestions people here have given, it can be really good.

Also - nice idea having HN review a story. Its a nice change of pace.

<comment><USER8> As far as technical details in fiction are concerned, I think they can enhance a story when they are described in a way that lets non-technical users image a system that at least has roughly the right inputs and outputs. I find that Charles Stross does this very well, particularly in Accelerando, Atrocity Archives, and Jennifer Morgue.

From Atrocity Archives: "he'll have to enlist GCHQ and a scanning tunneling microscope to find it under all the 0xDEADBEEF spammed across the hard disk platters."

Even without fully knowing about these concepts, you still get a rich picture of of a hard-drive wipe (hopefully the reader is savvy enough not to imagine anything too bovine).

What this pretty much boils down to is the popular fiction writing mantra "show, don't tell".

<comment><USER7> Yeah, your right. I guess I shouldn't say "remove technical details" but rather "use enough regular sounding English so that most people will get it."

</comment></comment></comment><comment><USER9> I couldn't get beyond the second paragraph; asserting that your main character is a Super Genius living in a Perfect World is _not_ a good way to make me care about what happens to him.

One SF author (Damon Knight?) once said that when he has an idea for a science-fictional world, he asks himself, "who does this _hurt_?" and that becomes the main character of the story.

</comment><comment><USER10> I don't see any big problems with the idea behind the story; but you might want to write it in your native language and have someone fluent in both languages translate it to English.

Also, like tsestrich said, it fails to draw in the reader. "The year was 3065" is not a magnetic, memorable, or unique opening sentence.

</comment><comment><USER11> it should be formatted to be easier to read.

<comment><AUTHOR> Blogger craped up my formatting, I am not a regular poster, but will improve on it though. But I am looking for some comments on content. Anything which might help me improve</comment></comment>


Coding by Voice in Zig – Rickard Andersson - <AUTHOR> https://www.youtube.com/watch?v=GM_siEPD4Ws <comment><USER2> A great demonstration of coding by voice.

I want to point out that the Dragonfly library has backends other than the closed/commercial Dragon, and there has been significant progress expanding beyond it recently. I have been developing kaldi-active-grammar [0] for the past couple years as a fully open source, modifiable, cross-platform, and free alternative to Dragon when used with Dragonfly. While KaldiAG misses some of the user-friendly niceties of Dragon, these are least helpful when coding by voice. And KaldiAG has benefits such as lower latency that improves coding by voice tremendously.

I created KaldiAG because I didn't trust relying on closed source software for something so crucial to my productivity, where a decision by an outside party determines whether I can function. As a bonus, open source means I can make it work better to fit my needs than closed source ever could.

[0] [https://github.com/daanzu/kaldi-active- grammar](https://github.com/daanzu/kaldi-active-grammar)

</comment><comment><AUTHOR> Here there are more voice coding videos by Rickard: [https://www.youtube.com/channel/UCn8QYQdnsuNkgCSTH0DTfAA/](https://www.youtube.com/channel/UCn8QYQdnsuNkgCSTH0DTfAA/)

And here is the source code for the grammars he made: [https://github.com/GoNZooo/dragonfly- grammars](https://github.com/GoNZooo/dragonfly-grammars)</comment>


25 years ago this week, the Morris Worm brought the Internet to its knees - <AUTHOR> http://www.washingtonpost.com/blogs/the-switch/wp/2013/11/01/how-a-grad-student-trying-to-build-the-first-botnet-brought-the-internet-to-its-knees/?hn

<comment><USER2> Also, like a toddler, the Internet's knees were closer to the ground than they are today :-)

I was at Sun at the time and it was an interesting story but you could have completely disconnected Sun from the "internet" (which was being serviced at the time by a single T-1 line, 1.544Mbps baby!) for two or three days and it wouldn't have been the end of the world, and it would not have cut into sales. Due to some better configuration defaults, the impact of the worm on Sun was minimal.

<comment><USER3> At the time of the Morris worm, there was a single T1 line running across the bay (between Mt. View and Milpitas.) The line to sun-arpa was a 56k link.

The only real 'protection' was that ip_forwarding was set to 0.

<comment><USER2> Wow, I never realized it went to Milpitas, for some reasons I was thinking it connected back into or Stanford and was routed out from there.

<comment><USER3> nope. The T1 (to the Internet) came in when we connected to BARRnet.

SWAN got T1s (Dallas, D.C., Boston) about the same time.

Then RMTC came on-line with a T1, and Denver-Dallas, and Chicago-Dallas got T1s. Then the SWAN 'ring' got a pair of T1s. The cross-bay link went to a DS3. Lots of offices got upgraded to 10BaseT in the form of AT&T's "starnet" offering.

I left after that.

</comment></comment></comment></comment><comment><USER4> _" We didn't believe that Morris intended to cause harm or damage," Rasch says. In his view, Morris was "motivated mainly by curiosity and by a desire to show that he could do it."

On the other hand, the Justice Department worried that "if the government treated this as a misdemeanor, a trivial offense, that others would go out and do it," Rasch said. "You had conduct that was planned, premeditated, that was deliberate, over periods of months, that caused massive disruption and expense to a wide number of different individuals." That required a response, the government believed.

So Morris was charged with a single felony count. Rasch says Morris could have been charged with a separate felony for each of the thousands of computers the worm infected. But the lawyer and his colleagues believed that would be overkill. "I don't believe that you over-prosecute someone to send a message," Rasch says. "I don't believe in the head-on-a-stake theory of prosecution."_

\----

Is that not a contradiction, he seems to be saying that they chose felony over misdemeanor not because of him but to set an example, then goes on to say that they don't do that sort of thing?

<comment><USER5> There is a subtle distinction between making an example and setting a precedent. It is crucial here. By prosecuting as a felony, they set legal precedent. By making it a single felony, they showed leniency to the offense in question.

</comment></comment><comment><USER6> I like how they spin it in Robert Morris profile on the YC page: " _In 1988 his discovery of buffer overflow first brought the Internet to the attention of the general public._ " ([http://ycombinator.com/people.html](http://ycombinator.com/people.html))

<comment><USER7> Hijacking the thread a little: one of the weird timeline things I'm a little obsessed with is the gap between the Morris Worm and the first "modern" stack overflow.

As near as I can tell, Thomas Lopatic kicked off the era of modern memory corruption exploits in February 1995 with his HPUX NCSA httpd overflow. That was followed shortly by 8lgm's Sendmail 8.6.12 syslog() stack overflow, which 8lgm created a small mania about by explaining roughly how the bug worked but not publishing the exploit, which meant every amateur vulnerability researcher at the time (myself included) spent a couple weeks figuring it out for ourselves.

1988 to 1995 is a long time! During that period, near as I can tell, nobody published or even referenced a modern memory corruption flaw ("modern" meaning "allowed you to upload code into a remote system"; there were overflows prior to 1995, but they worked by overwriting variables in memory to alter program logic). Why did Morris have this technique back in 1988? (Besides the obvious reason). Why did nobody extend the work between '88 and '95? The whole Internet was vulnerable to this bug! And that timeframe was the hacker renaissance; it corresponds to the Sun Devil raids and the LoD/MoD war.

<comment><USER8> I have read about LoD/MoD, 8lGm etc..it seemed that low hanging fruit was probably the reasoning right? I mean, there were probably so many systems you could access through stupid bugs, that delving deep into SO wasn't necessary?

<comment><USER7> Maybe. But there was low-hanging fruit well into the late '90s (and remember that SQL Injection, the "ultimate" low-hanging fruit, is also a late '90s bug) --- but after the 8lgm stack overflow mania, there was a decisive shift towards using memory corruption to take over machines directly, rather than (say) overwriting strategic files on target systems with NFS bugs.

<comment><USER8> Very True. Smashing the stack for fun and profit? That was the first interaction I had with more advanced techniques anyways. I read it as a soph/freshman in HS (97 or so I think)? Timing seems to be close. That could account for the explosion at least; I don't have any theories on the "dead" period.

<comment><USER7> I'm happy to give Elias credit for a big part of the shift, but the reality is that first x86 exploit was published well before that Phrack article, and people quickly repurposed it. (I'm a little biased here, since the author of that exploit is a partner of mine).

The vulnerability research community in 1995 was very close-knit (not tiny, but you could fit them in a hotel banquet hall for Summercon), and they worked pretty quickly to educate each other about the attack.

<comment><USER9> Interesting. Who published it prior to Aleph One?

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> For what it's worth, the prosecutor in this case (Mark) is the former coworker who I've mentioned on here a few times as having prosecuted the FBI case against my dad (small world).

It is a little disconcerting to wonder that if the same case happened today, would it result in a katamari of charges meant to steamroll RTM?

</comment><comment><USER8> If you are interested in this type of stuff, this is a good, free book:

[http://www.gutenberg.org/ebooks/4686](http://www.gutenberg.org/ebooks/4686)

"Underground: Hacking, madness and obsession on the electronic frontier"

<comment><USER11> There's a good section on the Morris worm at the back of "The Cuckoo's Egg", too.

<comment><USER12> Also in "Cyberpunk: Outlaws And Hackers On The Computer Frontier"[1]

[1]: [http://www.amazon.com/CYBERPUNK-Outlaws-Hackers-Computer- Fro...](http://www.amazon.com/CYBERPUNK-Outlaws-Hackers-Computer- Frontier/dp/0684818620)

</comment></comment></comment><comment><USER13> Definitely an interesting story. One connection I never made before was that 1) the worm gave computer security a shot in the arm and 2) Morris's father was a computer security expert. I'm sure it's completely unrelated, but an interesting coincidence.

[http://en.wikipedia.org/wiki/Robert_Morris_(cryptographer)](http://en.wikipedia.org/wiki/Robert_Morris_\(cryptographer\))

<comment><USER14> > _I 'm sure it's completely unrelated_

I'm less sure. Does RTM frequent these boards?

His father authored the relevant unix manual IIRC (they used to be a bunch of binders above a unix hackers desk usually shipped from whoever sold you the system.) I also had in my head that his father was the likely source of the wizard password backdoor in sendmail.

Anyway, would love to know for sure.

<comment><USER12> _Does RTM frequent these boards?_

Assuming this is the real rtm, then he has an account, but he doesn't comment very often.

[https://news.ycombinator.com/threads?id=rtm](https://news.ycombinator.com/threads?id=rtm)

</comment></comment></comment><comment><USER15> _Curiosity killed the code-monkey_

Sorry I had to have a peak, I think this is where you can find the source code for the worm:

[http://ftp.cerias.purdue.edu/pub/doc/morris_worm/](http://ftp.cerias.purdue.edu/pub/doc/morris_worm/)

The first thing I noticed is it's written in K&R C, the ANSI standard came a year later.

</comment><comment><USER16> The RTM worm had a 350 word dictionary. I wonder how much damage could be done with the same 350 word dictionary today?

There's an analysis that got posted to HN here [https://news.ycombinator.com/item?id=5302924](https://news.ycombinator.com/item?id=5302924)

</comment><comment><USER17> Is this the same Paul Graham or just a coincidence?

<comment><AUTHOR> The same. I mention YC at the end.

<comment><USER17> Yeah I tried to delete the comment, I posted only halfway through. It was a good read.

</comment></comment></comment><comment><USER18> I remember as a freshman in college, only armed with my knowledge of game programming in Z80/M68K assembly (no idea of Unix or internet beyond Usenet), finding out about this shortly after it happened, printing everything I could about it, and reading these pages over and over as if it was the most amazing technothriller ever written. Files that still exist after you delete them? Executable content in email headers?

It's probably the single most fascinating event in my personal history with computers.

</comment><comment><USER19> Is this why HN is unstable, somebody is trying to take revenge on the 25th anniversary. ;)

<comment><USER20> Remember, remember, the second of November...

</comment></comment><comment><USER21> I really miss finger. It was quite a novelty.

<comment><USER2> Actually true story, my future mother-in-law called me because she could not reach her daughter on the phone (no cell phones then) and knew we "somehow" knew what each other was up to.

So I'm holding the phone to my ear and I can see she is logged in to the system and I say "Oh I see her, I'll just finger her to see if she is awake."

I am pretty sure the next sound I heard on the telephone resulted from it being dropped from standing height and having the handset bounce on the floor. It was my first experience with the less than desirable consequences of re- using English words to describe network interactions.

<comment><USER21> This is great! Obviously if it had a different, whizbang name, it may have caught on, right? :)

</comment></comment></comment><comment><USER22> _The worm could have been much more virulent had the author been more experienced or less rushed in his coding_

It's a common misconception things go viral due to some sort of premeditative planning "over a period of months". New ideas start fledgling, because that's what it means for ideas to be new. They don't have concrete form in the beginning. Even the person having them can't tell what they can lead to.

Rushing the worm was crucial in making it work. It was more important to see if it had any chance of working. It couldn't have happened had Morris not been rushed, opening doors to a new research field and medium to the general public.

Who could have simulated that?

</comment><comment><USER12> Interesting that the main character in the movie _Hackers_ \- Dade Murphy - may well have been inspired, at least in part, on the Morris Worm story. I've never heard any official commentary to this effect, but it seems plausible.

 _The defendant, Dade Murphy, who calls himself "Zero Cool", has repeatedly committed criminal acts of a malicious nature. This defendant possesses a superior intelligence, which he uses to a destructive and antisocial end. His computer virus crashed one thousand five hundred and seven computer systems, including Wall Street trading systems, single handedly causing a seven point drop in the New York Stock Market_

</comment><comment><USER23> 25 years, no way!

The SUN workstation-wielding guy in the lab next door to me got hit by this, though we were unscathed. Periodically you could hear him yelling through the wall.

Amusingly (in hindsight), I had recently cleaned up a bunch of virus-choked PCs in some student labs and because of this fell under departmental suspicion (very briefly) of having something to do with these new problems. From then on I left such thankless scut work to someone else.

Another interesting -though brief- account appears in the epilogue of Cliff Stoll's "Cuckoo's Egg" (itself a classic tale from the early Internet days).

</comment><comment><USER24> I was an intern at IBM at the time, at a site that was fortunate to have internet access. I remember people being annoyed because the security people severed all internet gateways.

A good technical article is "With Microscope and Tweezers: An Analysis of the Internet Virus of November 1988" [1] which was published soonafter.

[1] [http://www.mit.edu/people/eichin/virus/main.html](http://www.mit.edu/people/eichin/virus/main.html)

</comment><comment><USER25> Where have the years gone?

All I'll say is, I was "there" (meaning affected).

It was also amusing watching the news reports at the time. I remember one of the nightly "world news" shows (ABC, iirc) having it right up front and the anchor and reporter trudging their way through the story, trying to explain this "Internet" thing.

</comment><comment><USER26> Having been born the same year as this worm's release, I love reading about these moments in internet history. When I read that Paul Graham and Morris later went on to found Y-Combinator (why didn't I know that already?) I was so excited I shouted at my computer.

<comment><USER14> I remember shouting at my computer 25 years ago, as someone who had to clean up. Glad to hear he went on to good things though.

</comment></comment><comment><USER27> It's probably worth mentioning that Morris is now a mild mannered (and talented) MIT professor in the Computer Science department. The word on the street was that he did _not_ want to talk about this chapter of his life.

</comment><comment><USER28> And many years later we had email viruses bringing the internet to its knees, notably the LoveBug virus which we were the first to stop at MessageLabs.

Now it's all just DDoS. Far scarier, and a lot less fun.

</comment><comment><USER29> Interesting how the journalist's name is Timothy B. Lee.

<comment><USER30> Why is that? EDIT: derp, I never made the association with Tim Berners Lee before...

I recognize his name from Ars Technica, where he contributed, in my eyes, to the high value of the news site by writing about tech policy.

[http://arstechnica.com/author/timothy-b- lee/](http://arstechnica.com/author/timothy-b-lee/)

<comment><AUTHOR> Thanks!

</comment></comment></comment><comment><USER31> Does this mean YC will start accepting malicious startups? Something like a marketplace for 0days?

</comment><comment><USER32> Great read

</comment><comment><USER33> I agree he deserves a pardon. A lot of law and public acts seem to be "signaling," e.g. it's OK to do this and not-OK to do that. Temporarily coming down hard on someone to signal that people should NOT do what he did is OK; it makes equal sense, once the threat has passed (and that specific one has been replaced by new threats), to pardon the person and recognize they were made an example of -- for good reason at the time, but no longer.

Contrast this to what they wanted to do to the hackers in the Slatella/Quitner book.</comment>


Lets-Get-Arrested Project - <AUTHOR> https://github.com/hamukazu/lets-get-arrested <comment><USER2> Jail time for embedding Coinhive? Yes please.</comment>


It's Not Too Soon to Debate Gun Control - <AUTHOR> https://www.nytimes.com/interactive/2017/11/05/opinion/editorials/editorial-debate-gun-control.html <comment><USER2> The pro gun control position is fascinating. Even ignoring the constitutional issues...

How do you deal with the fact the horse left the barn a long time ago?

Squinting at online sources, there's around 270M firearms in the USA today, is the plan to kick down doors and gather all those? Proof of concepts for 3D printed weapons already exist, should printers be controlled too? Machine shops? Does the southern border need to be locked down to prevent the emergence of future smuggling routes? Also, given that so many leftists believe Trump is a Hitler redux, is disarming the public really wise?</comment>


Is F# Ready for Production? - <AUTHOR> http://blog.dantup.com/2014/04/is-fsharp-ready-for-production/ <comment><USER3> > _5.Hiring developers is already very hard. Do we want to limit the pool of > available candidates significantly (and take the increased salaries that > come with the harder-to-find skills)?_

To that one, if I were in your shoes, I'd answer "yes" in a heartbeat. Using F# can help you differentiate yourselves on the job market. Everybody's looking for great developers, but you guys have a big plus when recruiting developers who prefer functional programming.

As an anecdote, Dutch startup Silk writes their entire backend in Haskell. Their founder Salar told me that while _finding_ people is harder, the people they find are, nearly without exception, really good and passionate. They want to work for Silk because they want to code Haskell for their day jobs. They don't cost more than "other" developers at all, because they're so happy they can finally use what they feel is a decent programming language at work.

I guess F# has a bit less of a hardcore following than Haskell, but I bet that if you're one of the few functional programming shops in the region, Haskellers (and MLers and maybe even Lispers) will definitely prefer that over C# or Python.

<comment><AUTHOR> Maybe so; though job ads I'd seen for F# seemed to have higher salaries. Possibly that was just because of where they're based (London salaries are way higher than here, for example)

<comment><USER4> The job ads for F# usually do have higher salaries than those for C# programmers. However, I think you misunderstand why that is the case; it's not (just) because good F# developers are harder to find than good C# developers, it's because a good F# developer will be more productive, even more so than reflected by the salary ratios. A good F# developer is (almost always) going to also be very proficient in C# too, so they'll be able to switch back and forth _easily_ and use whichever language is better-suited for a specific project.

<comment><USER5> Please don't put F# on a shiny golden pedestal. A good C# developer can use it without any problem as well. You of course would need to be open-minded enough to understand that a C# developer doesn't mean an imperative developer. I am not the best developer at all, but my C# code tends to be quite functional and I prefer using the Maybe monad to deal with nulls in some cases for example. I just don't see any massive obvious benefit of loosing the tooling and ReSharper to switch to F#. Especially now that C# is open-source and the Roslyn is nearly there.

PS: a good JavaScript developer will probably be even more productive than both C# and F#, despite the language being horrible.

<comment><USER4> Well, by switching to F# you get much better type inference, discriminated union types, pattern-matching, explicit tail-recursion, serializable types by default, and type providers (and that's not even a comprehensive list). I suppose it depends what type of app you're building as to whether those are worth anything to you -- but in the areas where F# is rapidly getting more popular (data science, numerical/algorithm-heavy work, distributed computing) they do in fact make you much more productive. A good chunk of that productivity gain results from being able to easily and quickly write type- safe code and express algorithms without a great deal of syntactic overhead.

A JavaScript developer might be more productive than either a C# or F# developer depending on what kind of app he/she was writing; overall I don't think that would be the case, especially once you factor in maintenance costs of the code over the long-term.

</comment></comment></comment></comment></comment><comment><USER6> I can confidently answer "yes" to this question, because Tachyus, the first Silicon Valley start-up in the oil and gas industry, [http://dealbook.nytimes.com/2014/04/10/tachyus-a-data- start-...](http://dealbook.nytimes.com/2014/04/10/tachyus-a-data-start-up-for- oil-industry-raises-6-million-from-founders-fund/) , chose F# as the core software language. How did this work out? We went from absolutely no software written to deployed as the core operational software of a regional oil production company in 12 weeks. Our management and our customer's management are so happy with the results we are "all in" and not looking back.

<comment><USER7> What are your thoughts/experiences/workarounds about the points he raised in the article?

<comment><USER6> > _IDE support even in Visual Studio 2013 is absolutely poor_

It suits my needs well. References for functions/values/types would be a big _nice to have_ , but I don't miss it that much. Refactoring? Rename refactoring is in the F# community Power Tools [http://visualstudiogallery.msdn.microsoft.com/136b942e-9f2c-...](http://visualstudiogallery.msdn.microsoft.com/136b942e-9f2c-4c0b-8bac-86d774189cff) I've never missed it enough to bother. As for the show-stopping bug in the Power Tools formatter, I would not want software someone else wrote re- arranging the white space in my file. Beyond that _refactoring_ support is rather ill-defined. Making a mish-mash of functional and imperative code more functional/compositional/readable requires thought.

> _Options are great; nulls are bad_

Many functions in the .NET Framework now support a _try_ version which interface very well with F#, thank you. Other than that F# cannot perform the miracle of making external software null safe.

> _F# was completely missed from Roslyn_

I respect the OP, but I couldn't care less. (See my next comment.) Roslyn in many ways is just playing catch up with F#, anyway.

> _There's little info on what's coming in the next version of F#_

As a language, F# is pretty feature mature. (The big thing I would like to see is dependent types.) The action going forward is with the open source community, [https://groups.google.com/forum/#!topic/fsharp- opensource/1C...](https://groups.google.com/forum/#!topic/fsharp- opensource/1CrjP7i0AN4), which Microsoft fully supports, as it should be with a fully open source language. I know people in the community who already have compiler enhancements, for instance, that should come around in the foreseeable future.

> _Hiring developers is already very hard_

Fortunately for Tachyus, we have a compelling technology company story and a growing team that makes the F# people (and not just F# people) we want to recruit also want to join us, going so far as to relocate across the country.

This of course does not work for the IT Department of Acme Industries in Flyover, Kansas. The HR department will hate you, but the best alternative is probably to build a core of F#'ers internally. You will have to be creative about your recruiting after that. You need to demonstrate your organization offers a career rather than just a job.

<comment><USER7> Thanks!

</comment></comment></comment></comment><comment><USER8> For those who expect that Betteridge's law of headlines ("Any headline which ends in a question mark can be answered by the word no.") applies here, the article is actually quite positive about F# :-)

But even then, it is just worth pointing out that there is a massive list of testimonials from those who are already happily using F# in production in a wide range of areas, including finance, science, line-of-business, startups and many more: [http://fsharp.org/testimonials/](http://fsharp.org/testimonials/)

<comment><AUTHOR> Haha :)

The title could be qualified with "in our company", but then nobody would read it! ;)

I love F#, but I'm not sure it's currently getting the love it deserves from MS :(

<comment><USER8> To be honest, I think that "not getting the love it deserves from MS" is the best thing that happened to F# :-). They did really good job at supporting the community - by open-sourcing F# and now also accepting contributions to the official MS release.

But the fact that they did not keep full control of F# means that the community had time to setup "The F# Software Foundation" ([http://fsharp.org](http://fsharp.org)) and develop a really healthy open- source ecosystem around F#.

If you look at the data-science story around F#, there are libraries like F# Data, Deedle, R Type Provider, etc. I'm biased, because I contributed to most of them, but I think that community did much better job than Microsoft would in this area. So "not getting the love" is more like "getting freedom". And I think it really helped F# in many ways.

Do not get me wrong - MS is an important contributor and everyone in the community acknowledges that. But they are just a part of the F# story (there is excellent Xamarin support, great open-source projects etc.)

<comment><AUTHOR> For the language, maybe so; but MS are building great tools for C#/VB and it's senseless for the community to reimplement them for the "other" .NET language :(

The refactor/codefix support in Roslyn/VS is great; but I wouldn't even know where to start doing something similar in F#? Can I reuse the functionality? Or is the editor so disconnected that I'd need to implement all the menu etc. myself too? (This would make it inconsistent and not play nice with submissions else's CodeFixes that might draw menus).

</comment></comment></comment></comment><comment><USER9> many of the concerns the op had where with marketing of the f# ecosystem.

For example the tooling issues he mention are solved with a Visual Studio Extension

[http://visualstudiogallery.msdn.microsoft.com/136b942e-9f2c-...](http://visualstudiogallery.msdn.microsoft.com/136b942e-9f2c-4c0b-8bac-86d774189cff)

His concern with Roslyn seems like a non issues, a f# compiler is also opened sourced and was written in f# on day one. And there are many tools already taking advantage of it being open. So in this regard f# is farther ahead in c# in rubric.

As far a c# being ahead of f#, its funny, as most of the new features the are being added to c# seem to come from f#.

The op approach to hiring dev seems backward to me, you hire smart people and train then on your tools. There are so many good recourses for learning f#, having candidates without f# on their resume does not seem like a issues.

over it is great the he was able to bring f# into his environment. as more people adopt f# for there needs knowledge will spread and his concerns will fade.

<comment><AUTHOR> I did mention that extension; and the bug I found right away :(

Roslyn isn't just about being open source; there's functionality like the Diagnostics/CodeFixes that make it trivial to do some really useful things, which are significantly harder using the F# source.

Overall my conclusion is not that F# is bad; I really love it; but there are some niggles for me still... Mostly around the level of investment from MS :/

</comment></comment><comment><USER10> This article is ridiculous. F# is used in production in lots of places from startups like Tachyus and SnappyGrid, to mid-sized firms like Trayport all the way to huge corporations like Aviva, Credit Suisse, EDF and Barclays Capital.

IDE Support: Sure, the IDE support might not be quite as developed as C#. But frankly most refactorings are just pressing tab a few times with F#. Refactorings for C#/VB.NET are mostly workarounds for languages that require huge amounts of excess syntax. The IDE support for F# is still way ahead of most of the competition (particularly dynamic languages). The intellisense and error highlighting work fantastically well.

Options/nulls: Yes I suppose you still occasionally have to do a null check if you interface with legacy libraries. but I think having thousands upon thousands of .NET libraries means this is a worthwhile tradeoff. Plus you can use the TryGetX methods in F# far more nicely than in C#. [http://luketopia.net/2014/02/05/fsharp-and-output- parameters...](http://luketopia.net/2014/02/05/fsharp-and-output-parameters/)

F# missed by Roslyn: F# has had an open source compiler written in F# for years. C# is a ridiculous language to choose to write a compiler in. See [http://fsharpforfunandprofit.com/posts/roslyn-vs-fsharp- comp...](http://fsharpforfunandprofit.com/posts/roslyn-vs-fsharp-compiler/)

What's coming next: F# is so far ahead of C#/VB.NET that this argument is ludicrous. Even if F# remained stagnant it would still always be better than C#. It has sensible defaults: immutability over mutability, functional over OOP, parametric polymorphism over inheritance, lack of nulls over null checks everywhere.

C# has poor defaults that are now irreparable due to the need to keep backwards compatibility.

F# is open to contributions now so I would expect some great things. Joinads, for example... [http://tryjoinads.org/](http://tryjoinads.org/)

Hiring developers is hard: This is a nonsense statement. Sure, if you want to hire 100 F# developers you might struggle, but you're going to struggle to find 100 good C# developers. Yaron Minsky from Jane Street reports hiring OCaml developers was "the easiest hiring he's ever done". If you tweet that you are looking for F# developers I know from experience that you'll get a lot of responses from very talented developers. Most places I've worked have a terrible time finding decent C# devs - interview:hiring ratio is around 50:1.

<comment><AUTHOR> I didn't conclude it wasn't ready; it was an open question documenting my own concerns. The IDE support is poor compared to C#, which is what we're currently using. Roslyn isn't just about open source (nor writing a compiler in C#!); there's a bunch of functionality (like refactor, diagnostics, code fixes) that will breed a bunch of new tools that F# is sadly not on the boat for :(

<comment><USER11> Your post is reasoned and fair, and some of the bizarrely defensive replies you have received are just wholly undeserved. People vest too much of their ego into technology choices, and it reflects in that sort of over the top hostility.

<comment><USER10> I wasn't being hostile at all, or at least that wasn't my intent. I explained why I disagreed with each of the points made.

<comment><USER11> Calling a reasoned, even-handed assessment "ridiculous" sets a pretty bad tone at the outset. That tone continues through your post (e.g. hiring difficulties are "nonsense").

The submission asks a question that many shops confront when F# is proposed. And the reality today is that many come to the conclusion that no, it isn't ready for production, for many of the reasons the submission notes. Your outrage will not change this reality.

</comment></comment></comment></comment></comment><comment><USER12> Having used F# in a professional context (ok - I wasn't supposed to, but technically I got paid to do it), my general impression is that it's slightly better than C#, but not so much that it's really worth the effort to move towards it. Ask me in 2005 and my response would be totally different, but basically C# already co-opted most of the nice features F# brings to the table, so the only real downside of C# is that it's slightly more verbose and the type system isn't quite as good. In a vacuum I'd rather use F#, but all things considered C# is (almost) as good and using it brings a lot less friction.

Not to mention that it sort of brings a bit of weird legacy cruft from OCaml. Granted C# also drags along some annoying legacy cruft from Java, but using F# on the .NET stack always felt a little bit alien. It was nice, but it definitely didn't quite "fit". How to write "standard" C# always felt pretty simple, but I could never quite figure out what "standard" F# should look like, and it generally clashed a bit with code from other languages.

<comment><USER13> I once showed some of my C# code to Don Syme and he told me...that looks a lot like F# :) The biggest challenge, I guess, of F#, is that C# isn't that broken like say...Java is compared to Scala.

</comment></comment><comment><USER14> I'm curious about your experience with Powershell now. Did you put much work into using it to automate your processes? I spent about half a day or so looking into Powershell at our all-C# shop, and decided to use Ruby for my automation instead, which I have much more experience with. If you moved away from it, what are you using instead?

The first task I tried to pick up was doing backups and restores of our SQL server databases. I spent a couple of hours and couldn't figure out how to get Powershell to do that, but it took about 10 minutes to find a T-SQL command to do what I wanted, figure out how to run it from the command line using sqlcmd, and set up a Ruby script to automate it and generate the commands dynamically, etc.

Powershell also seems to require installing dozens of little thingys for using most of its features, all of which are very picky about bittedness, and which are mostly tucked away in weird corners of Microsoft's sites. Ruby has one installer on an easy to find site, though I admit it took a while to discover that using anything but 32-bit 1.9.3 on Windows will only lead to pain.

<comment><AUTHOR> We automated quite a bit with PowerShell. Our deployment scripts which unzip releases, update IIS config (apppools, virdirs, new sites) and our scheduled jobs are all done via PoSh. We also use it for lots of generation/execution of ad-hoc SQL for data manipulations.

As a shell (especially remoting to servers); it's great. As a scripting language, ironically I'm more likely to use F# (FSI) these days, mainly due to two serious bugs in PoSh Scheduled jobs we've never gotten any response from Microsoft over :(

</comment></comment><comment><USER15> I'm much more optimistic on F# after watching this video series from Mark Seemann on pluralsight. He addresses some of the tooling issues and shows how to build a nice API in F#.

[http://pluralsight.com/training/courses/TableOfContents?cour...](http://pluralsight.com/training/courses/TableOfContents?courseName=functional- architecture-fsharp)

</comment><comment><USER16> What I see in closed source systems - this is particularly clear in MS - <USER2> that the developers are always waiting for the controlling company to do something.

I don't see this same attitude in open source - the users are common major contributors to the ecosystem.

Just something I've noticed.

<comment><USER8> I completely agree with your observation, but I'm not sure what is the point that you're trying to make here :-). F# is open-source and has a very active community that is contributing to many core parts - including the tooling ([http://fsprojects.github.io/VisualFSharpPowerTools/](http://fsprojects.github.io/VisualFSharpPowerTools/) and [http://fsharp.github.io/FAKE/](http://fsharp.github.io/FAKE/)), the compiler now also accepts contributions and there are a few work-in-progress pull requests, as well as building some of the core F# libraries, e.g. for data science ([http://fsharp.github.io/FSharp.Data/](http://fsharp.github.io/FSharp.Data/), [http://bluemountaincapital.github.io/Deedle/](http://bluemountaincapital.github.io/Deedle/), etc.)

I think the F# community is much more like the "open source" model than the "closed MS model". The change is slowly happening in the rest of .NET, but F# is way ahead here.</comment></comment>


Internet Communities - <AUTHOR> What is your favorite internet community? <comment><USER2> This one. I don't get out much.

</comment><comment><USER3> LessWrong and Effective Altruism

</comment><comment><USER4> Materialistic</comment>


Dear Apple, moving to a new iPhone from an old one is a mess: fix that - <AUTHOR> https://medium.com/@CamilloMiller/dear-apple-moving-to-a-new-iphone-from-an-old-one-is-a-mess-and-you-should-fix-that-c3126a33f5c#.72h6rjgnt <comment><USER2> Bollocks, moving from an old iPhone to a new one is a doddle. Don't have much disk space on your computer, and your connection is slow? Mmm, okay, maybe Apple could make that experience better. But here's my anecdata on a machine with lots of disk space and a reasonable connection: buy new phone, choose to restore from backup, come back in an hour and it's just like my old phone only with shiny new hardware.

You want to know what's a mess? Restoring an Android phone (this anecdata is from Jelly Bean on a Note 3). iOS downloads all of your apps from scratch? Android didn't have the first clue what I'd previously installed, so it didn't bother to download anything; I had to go back to my Google Play Store history. I forget the details, but it was nothing like "my old phone with shiny new hardware".

</comment><comment><USER3> TL;DR - the author is an idiot. He doesn't like apples preferred method using iCloud, has space limitations on his computer, and blames Apple because he has poor connectivity.

Well, gee, I can't move to a new iPhone while orbiting Saturn in my Model T while in Airplane mode - about as insane as his article.

</comment><comment><USER4> I just upgraded from a 6S to a 7 via iTunes. I was also surprised to see how apps had to be downloaded again from the App Store. That doesn't bother me, but I can see how it would be a problem for someone with limited connectivity.

What bugs me are all of the apps that don't use Keychain properly and completely forget any needed credentials across an upgrade (e.g., store loyalty apps). Because people don't upgrade frequently, I imagine it is low priority to them to improve that, but it seriously made me hesitant to buy a new phone. It's in Apple's interest to push developers to be smarter about that.

</comment><comment><USER5> Hmm, I find it very easy? Back up old phone, restore to new phone... pretty simple. I've done it 4 or 5 times now</comment>


Earth-like planet just 12 light-years away - <AUTHOR> http://news.sciencemag.org/sciencenow/2012/12/another-earth-just-12-light-year.html

<comment><USER2> Before reading article: _"Earth-like, eh. This is going to be yet another one of those link bait articles identifying a gas giant closely orbiting some sun as being earth-like."_

Article: _"slight changes in Tau Ceti's motion through space suggest that the star may be responding to gravitational tugs from five planets that are only about two to seven times as massive as Earth"_

After reading article: _"I was wrong, there wasn't even a confirmed planet involved."_

<comment><USER3> when you are looking that far away, you can't see any planets. They are not light source like stars.

The only way to figure out whether star has any planets around is to measure and interpret periodical gravitational vibrations.

<comment><USER4> You are of course right about 1 of the 3 methods of finding planets around distant stars but I feel droithomme was more commenting on the total disconnect between the post title and the actual discovery which is nothing like 'earth-like planet discovered around a star 12 light years away'.

Apologies for being a pedant

<comment><USER2> Thanks, yes that's correct. The key detail from the quote pull was "suggest", I didn't intend to indicate that this general method is detection is invalid.

The details in the article came down to they were pulling signal out from deep within noise in a way that other planet finders were skeptical of: "They're really digging deep into the noise here. The community is going to find it hard to accept planet discoveries from signals so deeply embedded in noise."

Even the researchers themselves are quoted as saying they don't consider anything here proven, they are just seeing if anyone else wants to have a go at finding further confirmation or disproof: "We felt that the best thing to do was to put the result out there and see if somebody can either independently confirm it or shoot it down."

The researchers themselves have not made the claim of finding an earth like planet around Tau Ceti at all. It's not been established or accepted by experts in the field that there are planets around this sun, what their orbits are, their composition, or that they are "earth-like" in a way that any non- specialist reader would interpret "earth-like". Even the authors don't make those claims. Maybe someday those things will be confirmed or disproved. Today is not that day.

The journalist is aware of this too. At the end of the article he says "If the planets exist...", acknowledging it is not established at all, before then engaging in fanciful speculation that is unlikely to appear in a reputable science news source with a competent editor: "That may just explain why no one from Tau Ceti has ever contacted beings as primitive as us."

</comment></comment></comment></comment><comment><USER5> title is linkbait-y.

It's saying that there MIGHT be some planets orbiting that star, but there's so much noise in the data that it's likely just noise and nothing else.

<comment><USER6> That is not how I read it at all.

The scientists took a lot of measurements over a long period, and carefully tried to remove as much noise as possible. After this, they think the remaining perturbation can be explained by a system of smallish planets. One of those planets looks like it could support life in a similar way to how Earth supports life.

There is a chance this perturbation is just noise, but the authors obviously think that the planetary system hypothesis is strong enough to ask the community for collaborating or contradictory data.

The title could have hedged its bets by adding 'might be' or similar terminology, but I honestly don't think that adds much to the conversation.

[edit]

I was going to include the famous "title ending in '?'" rule of thumb, but missed the fact that the actual article and the title here differ. The actual title is of course "Another Earth Just 12 Light-Years Away?" which makes much more sense given the content.

The submitted title, I thus agree, is linkbaity.

</comment></comment><comment><USER7> You see, this is the benefit you get from not having experienced the 70's, everyone _knows_ that the Grey Aliens come from Tau Ceti. Sheesh.

Fortunately, I think the last bit of annoying 70's alien phenomena will be past on December 22nd. Then we can all put to rest any question there might have been that we were visited by ancient astronauts.

<comment><USER8> "Then we can all put to rest any question there might have been that we were visited by ancient astronauts."

Good luck with that.

</comment></comment><comment><USER9> If I did my calculations right then at 17,000 mph it would take 474,568.57 years to get there.

<comment><USER10> After a journey that long, it would be a bit of a downer if the planet turned out to just have been noise!

</comment></comment><comment><USER11> If we can reach 10% of the speed of light in a few hundred years, maybe at that time we can have one-way missions like the suggested Mars trips now.

Such a trip might require a fusion power source though.

<comment><USER12> Wonder what crew size you would need to ensure genetic stability and the certainty that the crew would hang in there until the destination. It couldn't be a democratic arrangement onboard for sure.

<comment><USER13> I suspect for long term, generational-distance missions, stasis would be a far preferred option.

</comment></comment></comment><comment><USER14> I wonder if SETI focuses in the direction of Earth-like planets, or if they just search the entire sky?

<comment><USER15> This should give you an idea:

<http://www.setileague.org/askdr/howmuch.htm>

</comment></comment><comment><USER16> at my old favorite Amstrad's game title star ;-)</comment>


Intelligent people have 'unnatural' preferences and values - <AUTHOR> http://www.rdmag.com/News/Feeds/2010/02/life-sciences-intelligent-people-have-unnatural-preferences-and-/

<comment><USER2> _In the current study, Kanazawa argues that humans are evolutionarily designed to be conservative, caring mostly about their family and friends, and being liberal, caring about an indefinite number of genetically unrelated strangers they never meet or interact with, is evolutionarily novel. So more intelligent children may be more likely to grow up to be liberals._

That's a rather unconventional definition of "conservative" and "liberal" they're using there. One might almost suspect an agenda.

I'm also unclear on why things which are "evolutionarily novel" should be correlated with higher intelligence.

<comment><USER3> Perhaps because one of the things that is evolutionary novel _is_ intelligence. It seems reasonable that there's a correlation between some or all of these things, they're most probably interlinked somehow. For instance: If you're highly intelligent this will impact how you live your life, which decisions you make, etc. whic in turn could easily mean that you'll have subtly different preferences and characteristics than a less intelligent person.

<comment><USER4> This article lost my respect at..

"So, more intelligent children are more likely to grow up to go against their natural evolutionary tendency to believe in God, and they become atheists."

"Young adults who identify themselves as "not at all religious" have an average IQ of 103 during adolescence, while those who identify themselves as "very religious" have an average IQ of 97 during adolescence."

<comment><USER3> May I ask why? I don't think it seems all that unreasonable.

<comment><USER2> I assume he meant because the difference turns out to be small enough to be barely significant. (And possibly completely in-.)

</comment></comment></comment></comment></comment><comment><USER5> Evolutionary psychology is a cesspool. Honestly it's as if 95% of the researchers in the field have never even heard of the scientific method, or things like "proof" and "evidence".

</comment><comment><USER6>
      Humans are evolutionarily designed to be paranoid,
      and they believe in God because they are paranoid

So, religion is natural? Although hard to detect, I don't think we have ever perceived any kind of belief in God in any other creature. Including the apes, that are quite similar to us considering the cited "millions of years" timespan.

And +1 to "using I.Q. to measure intelligence."

<comment><USER7> Our nature is necessary, but not sufficient, for religion. Religion wasn't invented by human hunter-gatherers; it only came around after the advent of farming, when we began to think in long timescales (like harvests, or winters) and had static resources (crops, houses) that had to be defended. Thus, we invented prayer to try to change the far future (i.e. long-term weather conditions—due to the large intervening period, it wasn't obvious whether it worked or not in any given instance, so we assumed it did), and commandments to justify our right to static resources, or our reasoning for pillaging them. We also invented the afterlife to explain how our feeling of consciousness would proceed into the far future, and gods to explain capricious phenomena (like lightning, or floods) that our minds instinctively anthropomorphized.

Hunter-gatherers had their own "natural" superstitions, such as the belief that opposing tribes and the unliked were capable of "witchcraft", but these were abductive reasoning, seeing effects and guessing at individual, short- timescale past causes, rather than inductive reasoning, seeing events and proposing prinicples that would explain/predict future events.

<comment><USER3> I don't think your explanation is correct, simply because it doesn't give an evolutionary advantage to pray for something that may or may not come true. On the contrary you spend precious resources on something superfluous.

<comment><USER2> I'm not sure the grandparent ever claimed there was an evolutionary advantage to religion.

Humans do many things "naturally" which were never really selected for. Stubbing our toes, becoming alcoholic, dying during childbirth... these are things which are just incidental consequences of how our bodies are built.

I suspect religion is "natural" in the same sense. We're born with a sense of cause and effect, so when we see effects we hypothesise causes. Our brains have a pretty good sense of human psychology, so we wind up ascribing human psychological motivations to non-human objects too. Pretty soon we've attributed everything in the universe to invisible, powerful and psychologically human beings acting out of some kind of comprehensible motive.

Again, Aboriginal mythology gives us good examples. It seems that every major geographical feature is actually the consequence of some kind of nice comprehensible family drama, eg. [http://www.bluemts.com.au/tourist/thingsToDo/threeSisters.as...](http://www.bluemts.com.au/tourist/thingsToDo/threeSisters.asp)

<comment><USER3> The grandparent didn't claim that there was an evolutionary advantage to religion, but he _did_ claim that the human species started doing something that has no evolutionary advantage _(we invented prayer)_.

As you correctly point out the traits we have are either an advantage or an artifact of an advantage. Inventing prayer is neither of those.

</comment></comment></comment></comment></comment><comment><USER8> Here's an interesting quote:

Young adults who identify themselves as "not at all religious" have an average IQ of 103 during adolescence, while those who identify themselves as "very religious" have an average IQ of 97 during adolescence.

Their source: Data from the National Longitudinal Study of Adolescent Health

<comment><USER9> This is perhaps misleading, and not just because IQ tests have known social/cultural biases.The same data will likely show similar disparities in IQ between other complimentary groups, e.g. between children with well- educated and less-educated parents or even between boys and girls.

<comment><USER2> _e.g. between children with well-educated and less-educated parents_

Well surely we should expect a genuine difference in intelligence between children of well-educated and less-educated parents? At least under the assumptions:

a) Intelligence is at least partly heritable, and

b) More intelligent people are likely to get more education

</comment></comment></comment><comment><USER10> I believe the author confuses correlation with causation in this article. For example, the author suggests that being nocturnal is a trait of intelligent people... but really, it could just be that intelligent people tend to be on the computer more and thus sleep later due to the constant light hitting their eyes and messing with their circadian rhythm.

<comment><USER11> It's not just this article, check out some of the other papers he's written: [http://www2.lse.ac.uk/researchAndExpertise/Experts/s.kanazaw...](http://firstname.lastname@example.com) It's like a gallery of spurious correlations.

</comment></comment><comment><USER12> <sarcasm>Intelligent people come to non-obvious and novel conclusions! News at 11.</sarcasm></comment>


A winning solution for SimCity - <AUTHOR> http://m.ammoth.us/blog/2010/10/magnasanti/ <comment><USER2> "The ironic thing about it is the sims in Magnasanti tolerate it"

I don't think any irony or toleration is going on here, at least not more so than the players in Madden "tolerate" being forced to play football again and again. The players in Madden also fail to express concern about overpopulation but I think that's just the nature of a limited simulation. I'd love to play more sophisticated games, but SimCity just isn't there yet.

</comment><comment><USER3> It makes me wonder if it was the programmers' intention to define success at playing the game by achieving construction of a hugely morose, sub-human, megalopolis where personal freedom (cars, entertainment venues) and basic social needs (education, safety from fire, health) were simply eliminated. Would have made a great propaganda tool to fight communism in the 50's...

<comment><USER4> I always defined success at the game as growing your city while all power sources were renewable and you had ample schools, colleges and trees.

It's a sandbox game, the cost function you try to optimize says more about you than it does about the game.

</comment></comment><comment><USER5> Previous discussion: <http://news.ycombinator.com/item?id=1352864>

</comment><comment><USER6> I am always amazed when people use games to create something of value, something more than just fun, and prove how there are game systems out there that are really interesting from other standpoints, not just the entertainment part. I have seen other projects like this - of people creating really impressive in-game cities, usually with some version of SimCity. Also, various AI implementations for Starcraft and similar games come to mind.

</comment><comment><USER7> The article doesn't say, but it looks like SimCity 3000. I haven't kept up with the more recent iterations of the game, but the complexity of the simulation seemed to increase with each new release (2000 added a water system, and 3000 added garbage, among other things); I'd be curious to see how this solution's complexity compares to those in the other games.

Perhaps more interesting would be how the optimization was performed. If I remember correctly, the manual from the original SimCity hinted at formulas used in the underlying simulation; I'm sure some dedicated players have reverse engineered such information for the newer games.

<comment><USER8> SimCity 4 added significantly more complex transportation simulations (particularly in the expansion) - but was more or less handicapped for performance reasons (pathfinding only allowed movement _towards_ the destination... conveniently ignoring the subway stop right behind the Sim).

Popular (almost de facto standard for SimCity fans) mods have sprung up to correct this, and with modern hardware there is really no performance hit.

Transportation is now, IMHO, the toughest part of the simulation - even fixing their pathfinding, it's still wildly unpredictable what your sims will do, and creating a mega-city generates a _lot_ of congestion that so far I've been unable to avoid.

</comment></comment><comment><USER9> I once "won" SimCity 2000 by having my hundreds of launch arcologies all take off. Unfortunately I was dealing with the plumbing at the time and so I missed it all. I just saw several squares crumble one after the other and couldn't switch modes until the show was over.

</comment><comment><USER10> The old Lemonade simulation on Apple computers had such an optimal solution. Unfortunately, it was relatively easy to find. (Much to the chagrin of my teacher, who tried to use it to teach economics and business to my grade school class!)

<comment><USER11> I'm an old skool Lemonade player and BASIC hacker from the Apple II days. You must tell me the sekret. :) Seriously, please email me!

</comment></comment><comment><USER12> This would appear to be Manhattan.

<comment><USER10> More like Coruscant or Trantor. (Star Wars and Foundation, respectively.)

<comment><USER12> Really? Coruscant doesn't feature a central garden AFAICT.

<http://www.google.co.uk/images?q=coruscant></comment></comment></comment>


VMware: We're gonna patent hot-swapping your VMs' host OS - <AUTHOR> http://www.theregister.co.uk/2016/08/02/vmware_files_patent_os_hot_swaps/ <comment><USER2> "the first crack at designing an solution for containers that looks like it's actually ready to be used by grown ups.

Google is not a grown-up?

"And containers don't migrate to another host as easily as VMs.

Really?</comment>


Bruce Schneier: Want Real IoT Security? Have Uncle Sam Put Boots to Asses - <AUTHOR> https://www.theregister.co.uk/2018/11/09/bruce_schneier_want_real_iot_security_get_the_government_to_put_boots_to_asses/ <comment><USER2> >"I don't think people are going to say I'm going to choose my refrigerator based on the number of unwanted features that are in the device."

Somewhat unrelated but I recently bought a new car. I wanted leather, but the trim where the leather was available also forced me to get their integrated sat-nav. I explicitly didn't upgrade the trim because of that.

I think a part of the iphone's success was the feature of 'simplicity' \-- so simplicity can sell.

I also think it's less a problem with consumers not choosing simple products, and more a problem of manufacturers not offering simple products. When product-rating is based on features, you're going to see the market cram as many features as possible to get the highest ratings. Also, technology has high margins.</comment>