IKamasutra: Apple Hates Brunettes - <AUTHOR> http://ikamasutra.com/blog/ <comment><USER3> Are we all going nuts nowadays? Really, to remove a product from your store (which also happens to be a monopolistic sales channel) after it was there for years and recieved several updates since without any dialog with the producer of the product is bad style, really bad style.

Especially if the producer is willing to change the product to fit your requirements.

Some time ago almost everyone agreed that Nokia failed also due to a lack of developers for Simbia, do you really think treating developers with a proven track record like that will do you any good?

I really hope that this issue is solved to the satisfaction of every party involved and the app will be back soon.

Ah, and finally, if this was due to the "sexual content" the only thing left to say is "brave new world". And that from a company that help to battle SOPA...

<comment><USER4> Sadly, developers are stuck with Apple being our app approval overlord - <USER2> Apple knows it.

There really isn't any competition in the app "market" because Apple is far too big to really allow for it. Any and all of these smart phone platforms need to be legislated to provide opportunity for different store fronts beyond the platform provider.

Apple really is the 21st century Microsoft.

<comment><USER5> Yep, and in Mountain Lion, it's coming to the desktop too.. I wouldn't be surprised if Safari can only load approved sites by default in 10.9 at this rate.

</comment></comment></comment><comment><USER6> The problem is that "app approval" does not scale well, for a very simple reason: it is hard. Applying guidelines like the ones Apple uses, requires a _very skilled_ individual that is able to evaluate at the same time a set of rules in a flexible way, and really understand if the app is good for the apple store or not. You can do that if you have a team of 20. Finding 300 people doing this work very well is going to be very hard, and you need to pay more as this must be people that at the same time understand design, programming (if you read the rules thare are many that without understanding of software are hard to apply), and at the same time able to find a good balance between flexibility and severity. Not an easy task at all.

Maybe they could improve the process with the following schema:

* Instead of doing a single longer review, a few of your approval team will review the app briefly, and provide a score between 1 and 5 of "acceptability".

* If the score is 4 or 5, go forward. If the score is <= 3 send it to a more expert reviewer that will do an in depth analysis.

Optionally also discard the app if the average score is <= 1.5 if there are problems with the "load" of the experts.

<comment><USER7> In this case the crux of the problem is that they're deleting an app that's almost as old as the app store itself.

Curating content is almost impossible to do; app stores should limit their reviews to exclude:

\- viruses

\- _blatant_ spam and copyright violations

and THAT'S IT. Assessing the quality of an app is what users' ratings are for (and of course excluding adult content is just childish).

<comment> excuse-me App stores should do what is good for their shareholders

Apple is trying to move from being the cool kids counter-culture creative types alternative to the PC to being the corporate acceptable alternative to the Blackberry.

A story about karmasutra apps or ifart in the WSJ could cause a CEO to change their mind about allowing users to use their iPhone on the corp network.

And of course the best way of preventing such a story is, as we all know, to make a big splash about banning such an app

<comment><USER8> And yet... There are still Karma sutra apps on the Apple network. And a LOT of fart apps. If what you say is true, then why hasn't Apple removed them?

<comment><USER9> The problem is the human element. If you are doing something that can in some way be construed as going against the app store guidelines, eventually you are going to get a reviewer who rejects/takes down your app. Even if other reviewers knew that your app had been around for ever, you are eventually going to run into one who doesn't, or feels it's his/her job to be as strict as possible. There is very little consistency in Apple's process because of this. The company I work for has had apps rejected for things we've done literally about a dozen times before, and we certainly knew were border line but we figured were OK because it had been allowed so many times before. But eventually we run into a reviewer who for whatever reason, rejects something that we've done tons of times before.

Overall I think Apple's process works, but the inconsistency is just ridiculous. Especially when your releases are time critical.

</comment></comment></comment></comment></comment><comment><USER10> Sergey said that Apple and Facebook are a threat to freedom on the web, but I submit that commercial 'app stores' like Google Play and Apple's AppStore are the real threat. They have all the control and solely get to decide what is acceptable or not (while reserving the right to change their mind later). Google Play won't even let you rent a video from the store if it detects your phone has been rooted. This sucks. We've gained all this freedom and control with free software and the web, etc, and now we're going to give it all away to these stupid commercial app stores.

<comment><USER11> I disagree regarding Google Play.

Appstore is a threat because if you want software on your Apple phone then it is the only legal method.

But with Android you can install software from any app store you like, or directly. Google provide an app store as a service, but it's only one of many.

<comment><USER12> Until your carrier decides you don't need the ability to install non-market apps and disables the option. Oh, and the phone in question is not yet rooted. This is a matter of time if it isn't already happening. Google can do the open and free dance all it wants but with the carriers standing between you and Google...

<comment><USER13> If a carrier is being evil I can switch to another carrier though. And if enough people avoid carriers because they lock you in, they will take notice.

There is nothing like this for iPhone. You can't go to a different company than Apple to buy your iPhone on different terms.

<comment><USER12> I'm rather skeptical of this. Perhaps because I live somewhere where there's only 3 different carriers and they all started capping mobile internet in the same month. And they all dramatically raised prices in the same month. Etc. For now, you're able to buy a vanilla Android phone from a third party, but what happens when carriers start to only allow IMEIs sold through them or their subsidiaries on their networks? Carriers have _way_ too much power right now, partly because Google caved in and allowed them to butcher Android phones.

We need to be vigilant as a lot of consumers don't really care about these kinds of things.

<comment><USER13> I'm not the most knowledgeable within mobile geekery, but couldn't you in buy an android phone with no contract over the net and get a sim card for it?

<comment><USER14> The point regarding IMEIs was that if carriers get antagonistic enough, it would be possible to change the blacklist that (some) carriers use for stolen phones into a whitelist that disallows any third party phones.

<comment><USER15> Outside the US, governments take the promise of being able to take a SIM and put it into an unlocked phone very seriously, so I'd say this is a strictly local problem. In fact, I'd wonder how Deutsche Telekom's regulators would react if T-Mobile (DT's US subsidiary, at least for now) started doing something like this (that they probably wouldn't permit in Germany).

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER16> The fact that this happened on both the App store, and Google Play almost simultaneously raises the suspicion that one of the less reputable competitors lodged some kind of complaint.

<comment><USER17> Very possibly. It could also be that someone at Google is watching what gets taken down from the app store an following suit.

<comment><USER18> Why would they ever do that?

</comment></comment></comment><comment><USER19> The trouble is that the guidelines aren't black and white. They are somewhat grey. This means that 2 reviews will rarely result in the same action.

I would argue the Kama Sutra is both historical and educational and not sexually explicit at all. Perhaps a celebration of human bodies even, I don't know.

It seems though that Apple particularly feel that its customers require a squeaky clean filter to assess everything they access.

For cloned and low quality app's this is great! Restricting porn... I guess it is a good thing. Kid's can browse the app store. However this grey area between what is clean and what isn't is something they have never mastered.

It is really sad to see Google following this path of over-censorship..

<comment><USER20> I think a guide to sex positions is as sexually explicit as it can get, it's just not necessarily pornographic.

I also think that the argument that it keeps the store clean so kids can browse it does not really work. Other online stores like Amazon don't have this, you can search for and buy porn there and nobody is outraged. A much better idea would be to give apps a suggested user age, so you could filter the store.

</comment></comment><comment><USER21> slightly off topic.

Today I realized that my 3g plan is censoring adult content. I also listened to a podcaster talk about renaming his podcast "talkings hit" to get passed the itunes criteria. The paper had some silly fluff article about Facebook and breastfeeding pictures. Youtube is stricter than TV on nudity (and laxer on violence).

These were all little corners of the internet up until recently and it seemed all right that they all have their own rules. Suddenly they pretty much _are_ the internet and soon the will be the computer.

I don't like it.

<comment><USER22> _Youtube is stricter than TV on nudity_

except for stuff like this (very NSFW just after the 8 minute mark) <http://www.youtube.com/watch?v=nLjRExyIBNM> which somehow is still there

[Edit - it's Penn & Teller on Taxes, part 3]

<comment><USER23> With only 3,000 viewers so far, perhaps it's just nobody's complained yet?

</comment></comment></comment><comment><USER24> The crazy thing is the #4 paid app is this violent fantasy about shooting people with a sniper rifle and that's apparently OK:

[http://itunes.apple.com/us/app/clear- vision-17+/id500116670?...](http://itunes.apple.com/us/app/clear- vision-17+/id500116670?mt=8)

The #5 paid app is a scam designed to confuse (check out the reviews):

[http://itunes.apple.com/us/app/lock-my- screen/id507265508?mt...](http://itunes.apple.com/us/app/lock-my- screen/id507265508?mt=8)

<comment><USER25> That's really curious. The "lock-screen" app has a _Rated 4+_ indication, yet it's actual ratings are 1-star. There's something fishy here, how come this doesn't get the appstore lords' attention?

<comment><USER26> _Rated 4+_ refers to the approved age group, not average review rating.

<comment><USER25> Ha.

</comment></comment></comment></comment><comment><USER27> There's a technological solution to situations like these: make a full screen, offline capable, mobile web app.

Discovery and charging for your mobile web app or for content within it may be challenging for the foreseeable future, but hopefully not forever.

Another issue is feature parity with native SDKs, which seems to be very slowly narrowing each year.

Ability to produce performant apps is another area with very slow but greater than zero progression.

For games, sure, go native and take advantage of the store discovery and payment platforms, access to all the APIs, and performance.

For other kinds of apps like these, maybe mobile web apps are a better idea.

 __Edit: __clarification.

</comment><comment><USER28> Nice job Apple and Google, nice job.

If I were in charge, person who made the call would be out of job.

And if this was "company" decision, well, good luck to you all, and move to Europe. We love brunettes here.

<comment><USER29> Apple has consistently proven that they want the App Store to be squeaky Disney family clean. So the fact that some apps went through the cracks was pure luck.

<comment><USER28> But why? WHY? What harm could come from app like this?

Please, assume that I'm 12 years old, and try to explain.

<comment><USER30> Here's an explanation I would offer to a 12-year old to explain Apple's decision, but please bear in mind that it doesn't mean I _agree_ with it:

There are many people in the world who use technology, but are offended by even the slightest sexual material. They might not have reasons for it that you and I would agree with, but that's beside the point. The point is that they can get very loud and insistent and they might go on TV saying that "Apple distributes smut" and whatnot. Apple wants to avoid that kind of hassle. There are different ways to do that, but the easiest for Apple is to simply reject any content they think might cause them this kind of trouble.

</comment></comment></comment></comment><comment><USER31> There really needs to be a way to sell outside of the apple appstore without needing to jailbreak of your device. If the DOJ can sue Apple and the book publishers over an apparent attempt to destroy competition in the retail market, why wouldn't they be interested in how Apple is destroying developers' ability to freely publish apps and consumers to have choices besides Apple in the marketplace? How do we start a campaign to get them to look into this? Has anyone tried to file a suit of any kind to address this problem to date?

<comment><USER16> Why not just buy an android phone?

<comment><USER32> 1) Notice that Google has removed this app too.

2) Carriers (AT&T) are known for disabling app sideloading.

3) Having to root your device presents the basic user with a major technical hurdle, and in some cases, an outright impossibility.

If you're going to advocate as an alternative an entire platform you can't guarantee freedom on, for freedom's sake, why advocate it?

<comment><USER16> I don't think I've ever advocated Android, but I am interested in why it doesn't live up to the promise of being open.

When I see comments like the parent's the logic seems to be: "Android isn't properly open, so let's sue Apple."

<comment><USER33> > Why not just buy an android phone?

> I don't think I've ever advocated Android

<comment><USER16> That wasn't advocacy.

I really wanted to know why the original commenter was talking about suing Apple, instead of just buying an Android phone.

<comment><USER31> Because there is a bigger picture here than just "buy a different phone" as mobile computing becomes more ubiquitous. I think that having a single app store on the dominant platform that everyone is forced to go through is akin to having a single browser on the dominant OS. So in the end it's not about suing Apple per se but if a suit against Apple were successful then the rest of the market players would be forced to open up as well.

<comment><USER16> I'm not sure I see how a successful suit against Apple would have any such effect.

Google would simply say "we're open already", and become the dominant platform while Apple was reeling from the legal damage.

<comment><USER31> I think it would be pretty easy for Apple to allow apps to be installed on their devices without having to go through the app store. You can already jailbreak to do this so the capability is there Apple just needs to allow it. Not sure what legal damage you think they would incur except whatever they would pay to fight the suit.

<comment><USER16> The legal damage would be the fact that each design decision they made around the store would be under court scrutiny.

But so far, you haven't explained why this should be done given that Android offers what you ask for. What's wrong with letting people decide for themselves?

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER34> The app looks extremely well made, really a shame it has been pulled out of the stores.

<comment><USER35> It IS well made. My wife and I got it about a year ago. It's password- protected and very tastefully drawn. About 25% of the positions are virtually impossible but pretty hilarious. :)

I'd have had no issue with Apple if they had simply not allowed it on day 1. But to allow it to be hugely successful for such a long period of time (as in: within the top 50 or so overall for months on end) only to pull it without reason is horrifying to me as an app developer.

</comment></comment><comment><USER36> I'm not a fan of these sort of apps but from the pics provided, it seems to be made as tastefully as possible and without excessive "sexual allure" (ie. titillating apps made for 13-year-olds to download without their parents knowing).

(I'd say the 13 million "SALES" are also an indicator of quality but, Angry Birds aside, there's no way a number that high was all paid downloads.)

<comment><USER23> > _"(I'd say the 13 million "SALES" are also an indicator of quality but, > Angry Birds aside, there's no way a number that high was all paid > downloads.)"_

Are you sure? Why?

<comment><USER37> If that number isn't just iPhone sales, then it includes the free versions for Android, Chrome, Roku, etc.

</comment></comment></comment><comment><USER38> As a developer, i'd really think hard about developing a native app. I know that some apps cannot go web based, but we need to push the boundaries of what is possible with mobile browsers. I can't think of any other way of keeping the mobile development open.

</comment><comment><USER39> Apple's app rejection policy seems as unpredictable as Google's account banning.

</comment><comment><USER40> Someone could start an App Approval business. Applications don't require approval to go on to an app store / market place, but if the developers submitted their code to one AppApproversLtd, those guys could review it for a small comission, then upload it to the app store as a trusted application. Though there's a slight conflict of interest (i.e. the person paying the approvers is also the person sending the code) I believe it's in the AppApproversLtd company's interest to do a good job since their business depends on them giving a reliable evaluation / building up a good reputation.

Using that business model keeps flexibility in place, where users decide if they want to risk trusting an unapproved app, or would rather go for an app that's been approved by one of these companies (potentially incurring additional cost if the developers passed the approval cost on to their users rather than offsetting against advertising).

AppApproversLtd could offer different levels of approval / ratings - i.e. just checking for malicious code vs. checking for polite error handling, efficiently written code, best practices, impact on battery life, etc.

<comment><USER41> That would be fine but it doesn't solve any of the problems really. Apple will still have control over their store. Google Play will continue to let you in and then review if they get a complaint (at least I assume that's how they do it). Ultimately I'm not sure that the business model will work. It only really applies to Android and even then most people get apps through the marketplace. Those people who want to side load apps most likely know the consequences or know someone who does and decide whether or not to take the risk.

It seems analogous to running your website code through the W3 checker. It's a certification that you did stuff right, but it doesn't stop most users from going to your site if you don't have that little badge at the bottom.

</comment></comment><comment><USER42> Google was able to portray an image of being good and free and transparent early on in its existence. This image still lingers from their PR efforts but the reality is that Google is one of the most agressive corporations out there. Let's not demonize Google in particular, Sillicon Valley is brutal. But, let's also make clear that Google isn't some nice old lady that does no evil. Google spies on users just like Facebook, Google plays hardball with its monopoly in web search like Microsoft played monopoly with their OS. Google goes the whole nine yards in the Sillicon Valley dirty games and still these articles all mention "Google is open" or "how could Google do evil". Google has a PR team as good as or better than their programmers, that is a fact.

</comment><comment><USER17> A friend of mine that used to work at iTunes tells me that Apple always keep the front page of their stores completely 'family friendly'. Maybe this mentality is starting to filter down past the front page and result in a knee- jerk rejection of anything vaguely adult.

</comment><comment><USER43> Unless the title of the blog post has been changed since submission to HN, why the editorialised title?

Edit: I've since learnt that that is actually the title of the post. It still seems kind of sensationalist none-the-less.

<comment><USER44> The title of both the HN submission and the blog post are "Apple Hates Brunettes" at the moment, unless I'm getting some kind of cached copy?

<comment><USER43> Oh, my mistake - that is actually the title. Thanks.

</comment></comment></comment><comment><USER45> Perhaps there should be an 18+ section that can be blocked by parents with a password? If you have an out-of-the-box iPhone you can get any manner of porn within Safari. Why shouldn't you be able to get real porn with a better experience via an app?

</comment><comment><USER46> Actually Apple doesn't hate brunettes, what they hate is the likeness to reality that your brunette colored people are, where if you color the hair like in your second example, the people become less realistic and more like abstract icons; their hair being the exact same color as their body skin (yellow and red). Doesn't take a genius to figure this one out, but then it doesn't take a genius to write a bitching blog post either.

<comment><USER47> They haven't approved the update with the new graphics either.

</comment></comment><comment><USER48> Didn't know the app existed! Now that I know it did, I want it to be available. Not settling for kamasutra+.

</comment><comment><USER28> Is it possible that Ikamasutra developer sue Apple and win in court?

<comment><USER49> I think that really depends on what you mean by "possible". For all practical purposes, it's pretty unlikely given the comparative legal resources of the two companies.

<comment><USER50> Exactly. In a lot of things in the US, you get as much justice as you can afford.

</comment></comment></comment><comment><USER48> Btw, ikamasutra.com can use a facelift. :/ It's kinda geocities looking right now. You should make it more web 2.0.

</comment><comment><USER51> I hope that Steve Jobs, who happily credited himself as an openly adherent member and ambassador of the counterculture that fought for ideas like this to be acceptable in a then over-conservative society, is rightfully turning in his grave.

<comment><USER52> Let's not act like he would have cared about this while he was alive. Apple's products and services always place family-friendlyness over any kind of free expression.

<comment><USER8> Steve Jobs was quoted as saying "those who want porn can get an Android". I'm very much afraid you are wrong on this one.

<comment><USER51> Yeah as I say, "I hope"... maybe even retrospectively from atop of his own 'iCloud'. Please read my comment as slightly tongue in cheek, I'm well aware of his later-life stance on adult material.

<comment><USER8> I lol'ed at the iCloud reference :-) sorry, I didn't read the humour, should not have been so abrupt!

</comment></comment></comment></comment></comment><comment><USER53> Why people aren't building sites that work with everything and using the app merely to authenticate? That will allow you to capitalize via the *stores but not be hostage to it.

Some clueless people now will try to educate me that a native client is better, even it not having bookmarks, several tabs, browser extensions, pitch to zoom on every page, etc etc

</comment><comment><USER54> "In the process we also removed even more illustration details from the Android version so it looked like the new iOS version"

That's a curious statement that makes you wonder which part of the story we don't know (was this a case of pushing boundaries, seeing what they could get away with?) It seems doubtful that we're hearing the full truth.</comment>


Ask HN: What are the best blog posts on navigating the acquisition process? - <AUTHOR> So far I've found Brad Feld's series on Letters of Intent [1] and AllBusiness.com's series on Negotiating Acquisition Letters Of Intent [2].
Brad's series is now over a decade old, so it would be useful to find out what trends or conventions may have changed in recent years. I found the AllBusiness series to be very good, though having never read anything on their site before and don't know how reliable their guidance is.
I've found a couple other standalone articles [3, 4] related to LOIs or term sheet negotiation (which has some similar aspects), but would be interested to hear what resources others might suggest.
1: http://www.feld.com/archives/category/term-sheet/page/12
2: https://www.allbusiness.com/negotiating-an-acquisition-letter-of-intent-23776-1.html
3: http://billburnham.blogs.com/burnhamsbeat/2008/04/5-keys-to-maste.html
4: https://www.allbusiness.com/22-mistakes-made-by-sellers-in-ma-transactions-22061-1.html/6 <comment><USER2> Lots of updates in the book I wrote with Jason Mendelson titled Venture Deals - [http://amzn.to/2mbB6jW](http://amzn.to/2mbB6jW)

<comment><AUTHOR> Wow, right from the horse's mouth. Terrific!</comment></comment>


Full-history English Wikipedia dump produced: 5.6TB uncompressed, 32GB 7z'd - <AUTHOR> http://infodisiac.com/blog/2010/04/full-history-dump-for-english-wikipedia-is-back/

<comment><USER2> Doesn't include deleted articles, so no hope if you want to recover one of them. This is a pity since Wikipedia deletes too many articles.

<comment><USER3> That's talked about on and off, but one issue is that they'd have to filter deleted articles by deletion reason, at least broadly into "deleted for legal reasons" and "deleted for non-legal reasons" bins. There'd be no problem distributing a dump of articles deleted due to non-notability, but a dump of articles axed for copyright violation, libel, or other legal issues would be a problem.

For specific articles deleted for non-legal reasons (most commonly notability), you can get a copy from a WP admin. Some have volunteered themselves as willing to answer requests: [http://en.wikipedia.org/wiki/Category:Wikipedia_administrato...](http://en.wikipedia.org/wiki/Category:Wikipedia_administrators_who_will_provide_copies_of_deleted_articles)

<comment><USER4> Surely articles have posted on them, or their talk pages, the reason for deletion to allow for responses? Also there should be some way for people to find that an article has been deleted so that they don't recreate the article and repeat the error. Indeed rather than delete couldn't a placeholder be implemented.

Wrong forum for these suggestions but I've never had the time or inclination to attempt to reach the Wikipedia inner sanctum.

<comment><USER3> Yeah, the deleted articles could probably be automatically filtered, at least on a fail-safe basis by only dumping the ones that have a known "not a legal issue" deletion reason, like "notability" (there are even semi-formalized deletion codes, itself a mild absurdity). There are probably non-technical / non-legal reasons people don't want to dump them, but there's also some of just a "not a priority" aspect. The dump reported in this story is actually the first successful full-history dump in quite some time, because the dump scripts were perennially broken / bogging down due to the size of the data / crashing due to MySQL weirdness. So most of the dump effort has been on just getting the official stuff out. Next up on the priority list will probably be some way of doing image dumps.

You do get a bit of a warning if you recreate a deleted page. When you go to the editing screen at the title of an article that was previously deleted, it'll show you the summary from the deletion log at the top, and ask you if you're sure you want to recreate it. There's also a "nothing can go here" protected placeholder used for articles that are persistently being recreated, which'll make it impossible to edit at that location.

Yeah, I can sympathize on the Wikipedia-inner-sanctum thing. I was actually pretty deeply into it (I've been an admin since '04, was formerly on the Arbitration Committee, formerly active on the mailing lists, etc.), but as the Policy And Process kept accumulating, I lost interest in navigating it, so am more on the periphery these days. It's probably inevitable that things would go that direction, because in the early days there were probably <100 Wikipedians active enough to form the Wikipedia Cabal, all of whom at least recognized each others' names, so stuff could be pretty informal. But it's hard to scale that up to a site with 1700 admins and 15k+ editors. A lot of things are kind of lame about how things are organized these days, but honestly I have no idea how I'd do it better; despite its flaws it's often still amazing to me that Wikipedia works at all.

</comment></comment></comment></comment><comment><USER5> > 5.6 Tb uncompressed, 280 Gb in bz2 compression format, 32 Gb in 7z > compression format

Wow, I didn't know 7z was this much better than bz2. Is this the expected result, or is there something special with Wikipedia that plays to the strengths of 7z?

<comment><USER3> I'd guess it has to do mainly with 7z being able to use a larger block size, while bzip2's is 900kb; and possibly being able to do something better with large runs of repeated text. There are large articles with hundreds of revisions in a row that leave most of the content unchanged; [[George W. Bush]], for example, is around 180kb per revision, and is edited a _lot_ , mostly with minor changes. So bzip2's block size means it can only squeeze 5 revisions per block: so in the degenerate case where 100 edits in a row changed only one character each, bz2 would be storing 20 or so basically identical copies of the article.

IIRC from some tests a year or so ago, Wikipedia hasn't found any significant improvement from 7z over bz2 on the current-revisions-only dump, which looks more like just normal English text; that's why it doesn't bother to provide a separate 7z version of that. It seems to only be this pattern of [200kb article][almost the same 200kb article][almost the same 200kb article again] that 7z kills bz2 on.

<comment><USER6> Does Wikipedia _really_ store every single revision of every single file? As in, not deltas? Why is it done that way?

<comment><USER3> In the dump, I think for robustness and ease of extracting subsets.

Robustness: Having to essentially play back a log to recover any particular revision increases a chance of something eventually getting corrupted, and so it's somewhat safer to avoid it in something intended to be archival.

Ease of extracting subsets: For researchers, having the revisions be independent allows you to filter the XML dump through a SAX parser (or similar) to grab only revisions meeting particular criteria. If deltas were stored, you'd have to reconstruct those revisions from the deltas, which would make it _really_ expensive to do things like, "I want to look at every article as it appeared at noon on April 1, 2007".

In the live DB, I think just because it's cheaper to get a ton of storage, esp. for rarely-retrieved old revisions, than to add the overhead of computing deltas and applying them to reconstruct revisions. In particular, you'd have to compute a diff for _every_ edit in that situation, whereas currently MediaWiki only computes diffs when a user requests to view one from the "history" tab, which is a tiny proportion of all edits.

<comment><USER6> I understand it's simpler to store everything, and simplicity _is_ a virtue; but one could store the current revision plus deltas (and perhaps a few intermediate revisions for oft-edited articles), and obtain performance at least as good as in the current case. It would also save _lots_ of space.

</comment></comment></comment></comment></comment><comment><USER7> The article says Tb not TB, but in reality it appears to be TB. That's quite a difference. Still seems heavy for text, but I assume the full text of every revision is in it, not just diffs.

<comment><USER3> Yeah, every revision is standalone, which is why it compresses so well (obviously there are a lot of edits that make relatively small changes). One reason is to make it easier for researchers to grab specific revisions, e.g. run the dump through a filter returning only revisions as of June 1, 2006--- without having to apply a ton of diffs to reconstruct those revisions.

The dump schema is something like:

      <mediawiki blah blah ...>
        <siteinfo>
          some metadata
        </siteinfo>
        <page>
          <title>Article Title</title>
          <id>15580374</id>
          <revision>
            <id>139992</id>
            <timestamp>2002-01-26T15:28:12Z</timestamp>
            <contributor>
              <username>_delirium</username>
              <id>82</id>
            </contributor>
            <comment>vandalized this page</comment>
            <text xml:space="preserve">Complete text of this revision of the article goes here.
            </text>
          </revision>
          <revision>
            ...next revision of this page...
          </revision>
        </page>
        <page>
          ...revisions of the next page...
        </page>
      </mediawiki>

</comment></comment><comment><USER8> Impressive...I wonder how big a content snapshot is, ie no article histories and no meta-material like talk pages or WP:xxx pages, just the user-facing content.

I was also sort of hoping to see from the stats what proportion of content was public-facing vs devoted to arguments between wikipedians...if you look at the stats for 'most edited articles' (accessible from the top link) it's interesting that of the top 50 most edited articles, only one, 'George W. Bush' is user-facing - and I suspect that only made it in because of persistent vandalism.

Still, with history and all included, there is some fabulous data-mining potential here, with which there's the potential to do some really innovative work. I'd hazard a guess that the size of Wikipedia already exceeds that of existing language corpuses like the US code...

 _/retreats into corner muttering about semantic engines and link free concepts of total hypertext as necessary AI boot conditions_

<comment><USER3> > I wonder how big a content snapshot is, ie no article histories and no meta- > material like talk pages or WP:xxx pages, just the user-facing content

I don't know how big it is uncompressed, but they do have a dump of just that part:

      2010-03-16 08:44:40 done Articles, templates, image descriptions, and primary meta-pages.
      2010-03-16 08:44:40: enwiki 9654328 pages (255.402/sec), 9654328 revs (255.402/sec), 82.9% prefetched, ETA 2010-03-17 03:08:26 [max 26568677]
      This contains current versions of article content, and is the archive most mirror sites will probably want.
      pages-articles.xml.bz2 5.7 GB

<comment><USER8> Well spotted. This has great possibilities for education in the 3rd world.

<comment><USER9> Perhaps this is a good time to point to this?

<http://thewikireader.com/index.html>

</comment></comment></comment></comment><comment><USER10> One wonders if this will be the file first fed into something approximating machine consciousness. I'm not sure where else you can easily get such a high- quantity of fairly consistent human interest data.

Quick question: what does "bot-edited" entries refer to?

<comment><USER11> bots are used for hugely common editing operations, such as various kinds on cleanup.

</comment></comment><comment><USER12> I like the quick fix the site designer used to switch from a static layout to a fluid one.

</comment><comment><USER13> Interesting, but somehow doubt that many people have the set-up to handle this number of data.

<comment><USER14> That's because, despite what the 14 year olds on digg and reddit think, this isn't for you to download on your computer at your house. This is for _archival_ or data-mining purposes.

I apologize for the minor insult at digg/reddit, I just remember a few years ago a link to the archive was posted on digg and everyone started downloading it...unnecessarily wasting wikipedia's limited and donated resources.

<comment><USER15> If that's a problem, they could have put it up with bittorrent and throttled the bandwidth.

<comment><USER16> Yeah, this is _exactly_ the sort of problem bittorrent was designed to handle

</comment></comment></comment></comment><comment><USER17> 40 + 15 days to compress? how long it would take to decompress this thing

<comment><USER18> 7zip, like many other compression schemes, is optimized and designed so that decompression is typically (much) faster than compression.

The web page (<http://www.7-zip.org/7z.html>) states that the default "native" LZMA format decompresses at between 10 and 20 times the speed that it compresses.

So, 15 days / 15 is about one day to decompress, then.

<comment><USER19> LZMA is well-known for its decompression speed. This is one of the reasons it's a popular choice for filesystem compression. It's quite easy for LZMA to keep a pretty fair pace with a disk, so you get a pretty noticeable performance boost by adding LZMA at the filesystem layer, especially for read- heavy workloads.

Gzip usually gets a slightly better compression ratio, but at the expense of decompression speed, particularly on less compressible data (LZMA somehow seems to know better when to give up trying to compress). Bzip2 has the best compression ratio of the three, but is far too slow to compress and decompress, so you end up losing more time decompressing than you gained by doing less actual I/O.

EDIT: source, for those curious folk out there: <http://portal.acm.org/citation.cfm?id=1534536> (caveat: the experiments were run by taking a large file on disk and compressing it to another large file on disk, so seek thrashing may have been an issue and I'm not quick to take the numbers for all they should be worth)

<comment><USER20> I'm pretty sure LZMA (7z) compresses better than bz2.

At least it does when I test it. But it's slower - sometimes much slower (depends on settings).

<comment><USER19> That might be true, though I don't know whether that depends on the entropy in the file. It is likely the case that one of them compresses text better but takes a larger performance hit with binary data or somesuch.

Turns out the paper I was recalling and referencing dealt with LZO, not LZMA, so maybe I have less to say about LZMA than I thought. Shows how much you jerks read before upvoting. ;-)</comment></comment></comment></comment></comment>


How 'Aladdin' Came to Be - <AUTHOR> https://www.washingtonpost.com/entertainment/books/how-aladdin-came-to-be-thank-or-blame-an-18th-century-french-scholar/2019/06/11/07ac1b76-8c5c-11e9-8f69-a2795fca3343_story.html <comment><USER2> > But when compared with some of his earlier "core" stories, such as the eerie > "City of Brass," the 1712 "Aladdin" comes across as lackluster and > unexciting. Disney's two screen versions, the 1992 animated feature and this > spring's live-action film, are actually much more satisfying.

It's also worth noting that regardless of the provenance of Galland's Aladdin, Disney's movie is basically a rip-off of the 1940 film The Thief of Baghdad, which combined the Thousand and One Nights elements with the plot of the earlier silent movie it was a remake off.

> Although it was a remake of a 1924 silent film starring Douglas Fairbanks, > this film has been highly influential on later movies based on The Book of > One Thousand and One Nights setting. For example, the Disney film Aladdin > borrows freely from it, particularly the characters of the evil Vizier and > the Sultan, both drawn with a marked similarity to the characters in The > Thief of Bagdad. The villian Jafar is named after Jaffar. The thieving > monkey Abu in the Disney cartoon is based on the boy played by Sabu.[12]

(from wikipedia)

Galland's Aladdin was set in China, so actually the entire middle-eastern setting comes from The Thief of Baghdad.

<comment><USER3> This comment is off topic and is not really directed at its parent's author, per se, though the parent comment inspired the question.

"Disney's movie is basically a rip-off of the..."

This is an interesting statement that not only includes the statement that the Disney movie is based on earlier works, but also a value judgement at the same time. At what point do we declare something a "rip-off" vs. an "homage" or simply be content saying it was "based on" or "inspired by" some earlier, original work?

Take for example the musical "West Side Story": it was based on "Romeo & Juliet", but I never hear it said that it ripped off Romeo & Juliet... never mind that Romeo & Juliet, itself, was based on an earlier story. Looking at some of the old posters and album covers (etc) for West Side Story, I see it was "Based on a conception of Jerome Robbins", but there's no mention of Shakespeare. The link was never disclaimed or represented as being otherwise, but apparently not really advertised either.

So how does the judgement aspect of this enter? Is it simply a way to emphasize a viewpoint that's really not so connected to the statement directly, but perhaps at the parties involved? Is the judgement more about who acted rather than the act being described itself?

Note that if someone were trying to remake earlier material while disclaiming that the earlier material existed, then I'd get the "rip-off" statement... but I don't think Disney tries to claim that kind of credit for many of its films.

I guess I just find it curious that we take such opportunities to inject our opinions where seemingly a more neutral statement of fact would suffice and be more informative.

<comment><USER4> I believe the judgement is against Disney as they are the ones that have pushed copyright to the extreme it is today yet they are the ones that profited from copies.

<comment><USER5> This.

Up until recently Disney had very very few, if any, original works, and yet they are the most extreme in their pursuit of copyright and its enforcement.

</comment></comment></comment></comment><comment><USER6> [http://archive.is/0TpgL](http://archive.is/0TpgL)

<comment><USER7> link is wrong. corrected: [http://archive.is/XpT7v](http://archive.is/XpT7v)

<comment><USER8> Funny enough I read the first one without realizing it was wrong and loved it. Great read.</comment></comment></comment>


Ask HN: Your Dev Environment - <AUTHOR> I've been thinking about how much VM's have changed the way I work now, esp. how I setup my dev environment and the kind of hardware I run.
A few years back I switched to running my VisualStudio Windows install on a VM;I originally started on Parallels then switched to VMWare, and then recently switched back to Parallels (it just runs Win7 way way faster on my rig at least). I love the ease of moving to a new machine (just copy the vm), or even backing up my windows dev environment (just copy the 45gig file to my Synology NAS). It's also nice if you need to temporarily move your Dev environment to another machine (again, just dump the vm onto an external drive and you can even run it off that if you need too).
I was wondering how prevalent using VM's in this manner is. I seem to run into a lot of developers that think running a VM is much slower than an actual machine, and I guess it depends on your rig.  I run a original Mac Pro tower with dual 2.6 core 2 duo procs + 12 gigs of ram; I can give Win7 4gigs of ram and allocate one of my cores to it and with that setup, Win7 + VS2008 smokes. It's honestly the fasest 'Windows machine' I've ever worked on. An added bonus to running like this is my email, music, IM and torrent clients are all running on the host so when Windows needs to reboot, I can keep working on some emails or updating my project plan, make a skype call, etc.
So how about it guys, do others run a VM type rig now or is it still predominantly just running a dedicated box for your main dev env? <comment><USER3> My friend Mitchell Hashimoto and I built a tool for using disposable vms for development.

<http://vagrantup.com>

Feedback is always welcome!

</comment><comment><USER4> I develop on an Arch Linux box, two 22" monitors, XMonad, vim, and an IBM Model M.

But then I got a MacBook Pro, and I've actually been doing all development on it for the last few weeks. Textmate is the only non-vim editor I'd ever use.

<comment><USER5> Have you tried Emacs in viper mode? To me vim shortcuts plus Emacs extensibility is the best of both worlds.

XMonad looks great, I look forward to trying this out.

<comment><USER4> I haven't. I enjoy modal editing, so I've never been able to get into emacs.

XMonad is really awesome. I use xmobar to give me a little bar at the top, it looks like this: <http://haskell.org/sitewiki/images/a/ae/Arossato-config.png>

<comment><USER5> To clarify, viper for Emacs includes most of vi's modes, so the editing experience can be very vi-like. [1] What happens is you tune the environment on a scale from vi to Emacs, with the one extreme being almost identical to vi and the other keeping its core key bindings but freeing up the ones needed to fully take advantage of Emacs Lisp, which is arguably more powerful than vimscript.

Yes, thanks for the XMonad intro, I really can't wait to try it.

P.S. I think we have some friends in common and may cross paths at the l2l. :)

[1] As johnswamps points out in the neighboring comment, to get vim features (not just vi) you may need vimpulse as well.

<comment><USER4> > To clarify, viper for Emacs includes most of vi's modes,

Ah, nice.

> P.S. I think we have some friends in common and may cross paths at the l2l. > :)

I'm there right now, actually. :)

</comment></comment></comment></comment></comment><comment><USER6> I've been a .Net developer for years, but because I can't develop for the iPhone on a Windows box, I switched my primary dev machine to a MacBook Pro running my Windows stuff through a VM. The Windows part is 90% of the what I do, but being able to run the iPhone stuff directly against the Windows back- end made this a no-brainer. It's also really nice to have a VM that mirrors my production environment right on my MacBook so I can do more of that sort of testing on the same box.

I'd prefer running OSX in a VM on a Windows box (the Windows stuff is definitely faster that way), but since I can't do that (easily), this is an acceptable trade-off.

I wasn't happy about how much I had to spend for the MacBook Pro setup though. You're definitely not getting the same performance bang for your buck. It's the price you have to pay though. Oh well.

<comment><AUTHOR> Yeah, it's pricey to run it this way, but you do gain a lot of flexibility like being able to run an XP VM once in a while to test stuff on IE6 (IETester isn't 100% accurate), or just checking out the latest Ubuntu for fun.

I found running on a macbook pro to be not as fast as I liked (I was setup very similar to this to start but an original 15" macbook pro) so I sold that and managed to get lucky finding a used Mac Pro tower (1500 bucks). A lappy is nice but having the extra room/ram of the tower really helped out, esp. when you are running SQL, IIS, etc. Of course, with the new i5/i7 macbooks and the bump in max RAM, a macbook pro would probably be pretty stellar but of course, very pricy.

</comment></comment><comment><USER7> I run Windows 7 as my host OS, and use Sunacle's VirtualBox to run my VMs, as it supports 64-bit guests.

I have a MacBook Pro if I need to do OS X stuff, but it doesn't have the grunt to serve as my main dev environment any more, sadly.

And since upgrading my desktop to a Core i7 960 with 12GB of RAM and SSD + 10K RPM drive combos...

VMs are sufficiently fast that if I fullscreen them on one of my monitors it feels like a KVM connection and not a VM.

I have VMs for every flavour of Windows our software supports (Windows XP, Windows XP SPx, Vista, Windows 7, Server 2003/2008).

And with snapshots I can quickly jump to a particular state if I need to reproduce something specific (e.g. before installing our VC++ runtime friends, after, etc).

We're actually considering shipping VMs as a deployment package to some of our larger customers.

</comment><comment><USER8> It's been posted here before, but <http://usesthis.com/> for what other folks use.

For my part, I have two monitors, I use the first for web browsing, chat,etc and the other for whatever I'm working on (visual studio for chromium, virtual box for Linux kernel stuff, PuTTY for working remotely). Not a bad workflow.

And working on kernel stuff would SUCK without virtual machines.

</comment><comment><USER9> I just rent a cheap $20 month VM on the cloud. Every now and then I need another one to test stuff, so I'll just rent another one for that duration, which get's pro-rated. Screen does the rest. Having scripts to bootstrap VM's is crucial to make this setup viable imho. I do wish cheaper dedicated servers were available with the same easy management cloud VMs provide.

</comment><comment><USER10> I do web dev, and my setup probably isn't nearly as crazy as most of you guys but here we go.

Hardware: 15" MacBook Pro, w/ 19" external LCD and external Apple keyboard if I'm at home.

Software: MacVim, MAMP setup w/ BIND for local dev (using this configuration: <http://postpostmodern.com/instructional/a-smarter-mamp/>), git for vc, Parallels for IE testing, Firefox w/ Firebug and WebDev extensions for debugging js and editing css, and I prefer iTerm over Terminal.app (sadly just for 256 color support, I'm sad I know).

Web apps: <http://www.getcloudapp.com/> for sharing, <http://www.freshbooks> for time tracking/billing

Supervision: 8-month-old boxer-lab with an attitude.

<comment><USER11> I have an almost identical setup. Great stuff to work with. I just switched to iTerm for the exact same reasons too.

</comment></comment><comment><USER12> I turned a NAS device -- Intel SS-4200E (has Intel Celeron CPU) into my dedicated home dev server. Installed Ubuntu 9.10, latest Ruby on Rails, Mono and F#. It rocks as it only consumes 40Watts when loaded with tasks. Cutting eletricity bill was the main motive I had to replace a few obsolete PCs I used as Linux servers.

My main desktop is my Macbook that hooked to a Dell 23inch LCD. Most of work is done at the SS4200E where I use Vim. I generally open 5 to 6 terminals and use cmd+# to switch among them. Contrary to other guys here, I really like the Terminal.app. The default color scheme used by Vim is too dark though.

Edit: typo

</comment><comment><USER13> I try to do my programming in either Common Lisp or Clojure, with a REPL connected to a SLIME instance in Emacs. I can use these tools on any host OS, but prefer the Mac. It's such an amazing combination of tools that everything else feels like... well, I imagine that trying to type with two amputated arms must feel similar.

Yes, this includes fancy IDEs; I have used Eclipse extensively and hate it. No, I don't like vi, although I certainly respect it.

</comment><comment><USER14> MacBook 2Ghz Intel Core Duo, 2GB 667 Mhz DDR2 SDRAM <http://www.virtualbox.org/> I've found a use for Spaces. I put each fullscreen virtual machine in it's own space. Space 1 - Mac OS X (native) Space 2 - Windows (virtual machine) Space 3 - Ubuntu (virtual machine) I keep networking turned off in Windows. Files are shared locally by VirtualBox between Windows and Mac OS X.

</comment><comment><USER15> I use VM's on a MacBook Pro circa 2006 and they worked fine - a little slow on harddrive intensive operations (e.g. startup, building large applications) but useable.

Then I got an SSD harddrive. It's like I'm using a new (much faster) machine. The VM's seem like they're native.

SSD HD's are still pretty expensive but worth every penny IMO (and way cheaper than a new MBP).

<comment><USER16> Really, does it make that much difference? I've been thinking about getting an SSD for my 2006 MBP, but wasn't sure if it'd be fully utilised.

Though, I still need an upgrade, the 2GB RAM limit is getting pretty annoying now. If only I had an extra £1650 laying around.

<comment><USER17> Using an SSD is clearly noticeable compared to the normal laptop hard drive. Login is faster, normal applications launch instantly (the icons in the dock almost don't bounce).

After enough RAM is the best upgrade you could get. Well, technically it's also the only other upgrade you could get to your laptop, but it should make it snappy enough to delay a new laptop purchase for a while.

BTW, what would the £1650 be for ? 4GB of RAM is probably £100 max, an Intel 160GB SSD another £400 max.

<comment><USER18> _BTW, what would the £1650 be for ? 4GB of RAM is probably £100 max_

The early 2006 MBPs that were Core Duo (rather than Core 2 Duo) could only support 2GB memory max.

If he has one of the later 2006 ones, though, they were sold as supporting 2GB max but can actually take 4GB with 3GB then being usable.

</comment></comment></comment></comment><comment><USER19> I dont think my setup is quite what you were asking about. But, I'm running Windows 7 with a Windows 2008 VM. The VM hosts a handful of services that I don't want always running or starting up with my computer. Things like SQL Server 2008 and IIS7. But, I do run Visual Studio locally. It all runs very fast on a QuadCore with 8GB of ram.

</comment><comment><USER20> I've developed on a VM in the past (VMWare), the experience was great - convenient to test on multiple platforms without rebooting etc. but it was difficult once I needed to do non-trivial graphics stuff with OpenGL - <USER2> performance difference was quite extreme. Hopefully this is something that will improve with future versions...

<comment><USER21> I've seen this too. OpenGL performance inside VMWare is much slower than native, and there are graphical artifacts in some cases (like lines across the diagonals of quads).

Some small details (like the apparent lack of line anti-aliasing inside VMWare OGL, and differences in the rendering of translucent polys) make me think it's partially or completely software emulated.

<comment><USER20> Yeah, if it the command buffer was being passed through to the hardware in exactly the same form then there shouldn't be these problems - I assume its something that is being done out of necessity for driver emulation.

</comment></comment></comment><comment><USER22> Emacs, Solaris. I'll have to jump back to Linux, and I won''t be happy without dtrace/zfs. That's a desktop machine. I've got a Macbook Pro 17" that I can use for multi-platform testing, with a VM in there if I need it. My work at home isn't web-based, so I don't have to worry about windows compat.

<comment><USER23> I'm sure you are aware, but OS X has dtrace. But no real zfs support, alas.

</comment></comment><comment><USER24> I run on a Macbook (not Pro!) with 4GB RAM. For a while, I was doing some IE plugin development and went with separate VMs for IE6, 7, and 8 (used the MSFT distributed VirtualPC ones, actually). That got me used to the idea of switching back and forth being VMs, and now I have separate Ubuntu VMs for each project I work on -- switching back and forth as emails and phone calls come in. Working this way really helps me compartmentalize my projects, especially not worrying with how I muck up the OS installation as I need some crazy tool or other for a particular task. It's also divorced me from excessive customization of my rig, so that I don't mind upgrading when a new Ubuntu is shiny enough to make me go "ooh".

</comment><comment><USER25> Before I was using Win 7 as my base OS, I was working with an XP box, and coding on Ubuntu in a Vmware VM. It was the best way that I could get Ubuntu to actually recognize my 3 monitor setup seamlessly. I could actually rotate my main 24" monitor and code in portrait style, and Vmware would recognize the change and adjust Ubuntu accordingly.

I might actually go back to that setup. I've been wading through some gnarly unicode issues recently, and I suspect that the Python REPL + Windows 7 Powershell prompt were leading me in the wrong direction a couple of times. I really need a OS that's working in unicode, dammit.

I would happily run OSX in a VM, but Apple doesn't let me. :(

<comment><USER26> "I would happily run OSX in a VM, but Apple doesn't let me."

A Mac is Apple's DRM to protect OSX. All Macs are merely giant dongles that plug in to the internet.

</comment></comment><comment><USER27> I've been using Parallels on a Macbook for a year or so. Though I have been thinking of switching to a Windows machine. The guest OS is Win2003 server which runs great. Though I get spinning beach ball problems and need to reboot the host OS fairly often which disrupts my productivity. I may try a Mac desktop next...Maybe it's a dodgy laptop.

I've just been on a Mac for a year and enjoying the change of pace but frustrated by the number of problems I've had. It seems comparable to XP on my Thinkpad...but bad compared to my 2003 Server desktop.

</comment><comment><USER28> I have one of the 27" iMacs with a 26.5" external display. I use parallels whenever I need to test sites in IE, and it's very, very useable. I also do a little bit of actual development (IronPython+Silverlight) in the VM as well, and it's the same story. If I keep the VM fullscreen, I really can't tell I'm not working natively. There are the occasional slowdowns (HDD performance, mostly), but I'd imagine switching to a SSD would practically eliminate it for me.

</comment><comment><USER29> I run Win7 on my main laptop and use that for a fair amount of development with PyDev. I use dedicated separate VMs for PHP (LAMP), certain specific Django projects and several scratch/playground VMs running Xubuntu or Arch. We use a VPS for certain dev and testing functions.

Our penetration testing VMWare Images run XP and Xubuntu respectively but are due for a refresh.

</comment><comment><USER30> 15" MBP with 2.53GHz CPU, 6GB of RAM and 7200RPM HD. Have external monitors at home and at work. I'm using either IntelliJ IDEA 9 or Eclipse for an IDE, depending if I'm doing Android stuff (Eclipse) or everything else (IDEA).

I don't use VMs on this machine but at work there is a server full of VirtualBox VMs for testing deployed apps in a production-like environment.

</comment><comment><USER31> Macbook pro 13" 2.53GHz 4gig ram Aftermarket 500gb 7200 rpm disc and a 24" Samsung 1920x1080 monitor

Use parallels to run VM Win XP and Ubuntu

Would maybe consider upgrading to the new 15" mac and the higher res screen but think I will hold off and wait for the next iteration of Macs

Software wise xcode, textmate, eclipse

</comment><comment><USER32> i7 920, 6BG DDR3, Dell 24" monitor running Windows 7 64 bit host with Ubuntu VM and Win 2003 server VM (both via VMWare). Ubuntu in the VM is faster than Ubuntu on bare metal Core 2 Duo firstname.lastname@example.com w/2gb ddr2. Only downside (totally non-critical to me) is VMWare won't support the advanced graphics stuff for Linux.

</comment><comment><USER33> the more complex the deployment environment is, the more likely i am to be running a VM (so dev can match deploy.) when i run ubuntu like this, it is AwesomeWM + gvim. when things are simple, it is osx + macvim

</comment><comment><USER34> I virtually always dev on a VM, for a number of years now:

* Parallels and VMWare on Mac (best to have at least 2 GB), running Debian, Ubuntu and WinXP

* Qemu+KVM on Ubuntu running Ubuntu

* VirtualBox on Debian running Debian

* SSH into Xen VM running Debian

The exceptions? Sysadmin tasks on my host machines.</comment>


Hacker Poll: Do You Use Any of the APIs Google is Shutting? - <AUTHOR> http://www.readwriteweb.com/hack/2011/05/hacker-poll-google-apis.php

<comment><USER2> I built this on the translate API a long time ago, but nobody really cared so I let it die: <http://dustin.github.com/2009/07/11/skyscraper.html></comment>


NearlyFreeSpeech.NET now supports persistent processes - <AUTHOR> https://blog.nearlyfreespeech.net/2014/09/24/more-power-more-control-more-insight-less-cost/ <comment><USER2> I love NearlyFreeSpeech and they were my first and current web host, although now I primarily use others. They are so incredibly cheap for those who want to host a simple site, and they come with a slew of interesting options like interesting pricing schemes. I hope they never go out of business.

<comment><USER3> How would you rate their support? Are they good with fixing issues or are there fewer issues than the other hosts you use? Would you recommend them for a site with, say 100K visitors per day?

<comment><USER4> I am not a fan of their support in general.

I've had to rescue a few people from NFS after a well-intentioned but short- sighted web developer somewhere set up their client's website on NFS, and then the relationship fell apart or the web developer moved on, and the client is left with some issue at NFS but not the technical knowledge to deal with it.

NFS has an entirely inflexible policy towards this situation: nobody but the account holder is allowed to access the account or contact support on the account holder's behalf, period, no exceptions. This is still in their TOS: "You may not set up a membership for an individual other than yourself, access any membership other than your own, or let anyone else access your membership."

If you violate this rule and they catch you at it, they will not only stop talking to you, _they will also punitively disable the account_.

The end result of this all is that I have to lie through my teeth when dealing with NFS and go through a song and dance that isn't necessary at any other hosting service. (I even like GoDaddy better in this regard; I call up all the time saying, "Hi, I'm a technician for your customer _____, I'm working with them to ______, their account number is _____ and their password is ______...", and it's never been a problem.)

I was an NFS customer about 7 or 8 years ago. It's an OK service. I don't dislike them except for this one obnoxious support issue that bites innocent people in the ass.

<comment><USER5> I wonder what they're afraid of here? How would allowing this harm them? There must be some reason (even if it's ultimately misguided), but I've been trying to figure it out, and I can't.

<comment><AUTHOR> Their FAQ includes an explanation: [https://www.nearlyfreespeech.net/about/faq#MembersOnly](https://www.nearlyfreespeech.net/about/faq#MembersOnly)

Their explanation may not be all that satisfying, and thaumaturgy's story about the disabled account is kind of alarming. But there you have it.

</comment></comment></comment></comment></comment><comment><AUTHOR> Previously I thought of NFSN as a place to host a low-traffic static site for $1/year, or host an unmanaged WordPress site for $1/month. It sounds like it can now run web frameworks like Rails or Node.JS, as well as internal services like Redis.

I'm not sure where they fit in a world with free Google App Engine tiers and $5/mo VPSes. But they've been around a while, doing their thing, so that must be worth something to folks that are leery of the big guys and weary of being victims of acquisitions and product re-imaginings.

<comment><USER6> Weirdly, with a bare-bones Wordpress install with barely any traffic, I still spend about $5 every month or two. Not sure what's going on there.

For blogs, I've found that Github Pages offers one of the best deals in the industry. It's free and it allows you to use your own domain; all you have to do is provide static HTML, or alternatively a bare-bones Jekyll site. With a few simple files, it's possible to have a custom domain and 404 error pages. Because it uses git, you automatically get a complete historic archive of your site without having to resort to archive.org. For once, without paying any extra money, you can have your own custom content _and_ not have to manage any server stuff. Just write and publish.

<comment><USER7> Wordpress requires MySQL which is an added cost of $0.05 a day

<comment><USER8> It's actually $0.02 for the first process (which can have as many databases as you like) AFAIK.

</comment></comment></comment></comment><comment><USER9> I get that they're incredibly low cost, but their MySQL support (MariaDB _5.3_ with InnoDB disabled by default) seems not that great to me. Also, they say that their optional InnoDB support uses "MariaDB's advanced high-performance XtraDB implementation" \-- XtraDB is made by Percona, not MariaDB.

</comment><comment><USER10> This is great.

I love NFSN - I've hosted a lot there. It's brilliant for sticking up something simple, and they've weathered a number HN frontpages / stuff going viral on Twitter / etc, etc without any problem.

</comment><comment><USER11> If you ever lose both your login & access to the email address from which you signed up, you will lose everything you host with nearlyfreespeech.

I was trying to help a friend recover his own site after the pre-paid credit expired. A mutual journo friend had set it up years earlier but lost access to an old email address. It was down because the pre-paid credit had expired, but wouldn't even take payment from someone they didn't know to get it back up.

Support wouldn't empathise or even help "in principle", i.e. "Given that we've lost access to the original email address that our friend signed up with, how can we go about recovering this account, give you some money saving the domain"? The answer was essentially: we don't care, you're dead to us.

I run an ISP in the UK that takes backup contact options, so I was trying to go through what options they _might_ have to help, but they weren't interested.

Cheap is good, especially when you're setting up sites for friends, but always think twice about the support you might need years down the line.

<comment><USER12> This is not true. There are several recovery options offered by NearlyFreeSpeech. They are defined in great detail on their website. They offer two factor (TOTP) as well:

"Our membership recovery procedure comes into play when you lose your password and access to your email at the same time, or if you have 2-factor authentication configured and lose the second factor. To regain access, you will need to contact us and perform a certain number of verification actions."

Possible verification actions:

* You provide a scanned copy of a government-issued photo ID.

* You provide a scanned copy of a statement showing both the most recent deposit and a name and address matching one of your accounts.

* You complete SMS verification. (SMS must be previously configured.)

* You complete 2-factor verification. (2-factor auth must be previously configured.)

* You correctly answer your security question. (Security question and answer must be previously configured, below.)

* You use an ssh key to create a file with a specific name on one of your sites hosted here. (Must be previously configured, won't work if account is empty.)

* We try and fail to contact you via your currently configured email address. (This one may take a long time.)

Recovery Thresholds:

* Scorched Earth. If you lose access to your membership, you won't be able to recover it. But neither will anyone else. (This is not a joke. If you set this option and lose access to your membership, it and everything on it will be inaccessible until it expires.)

* All possible actions. Excessive security. Just because you're paranoid doesn't mean they aren't after you.

* Five actions. Very high security. Regaining access will be a huge pain for you, and rounds-to-impossible for anyone else.

* Four actions. High security. Provides enhanced protection but if you need to recover access to your membership, it's probably going to be pretty inconvenient.

* Three actions. Default security. Provides good protection without making membership recovery too miserable.

* Two actions. Reduced security. We really don't recommend this, but if you're really forgetful and really sure nobody would ever target your membership, this option exists.

* One action. No security. All it takes is an email bounce and your membership goes to the first person to ask for it. (This is a joke. Don't pick this.)

Confirmation:

* I understand the recovery setting I'm picking, and I am solely responsible for the consequences.

<comment><USER13> To be fair, that level of customizability is fairly new; It was only announced about 8 months ago[1]. I don't know how strict the previous recovery procedure was, since I never had to make use of it.

[1]: [https://blog.nearlyfreespeech.net/2014/02/28/price-cuts- more...](https://blog.nearlyfreespeech.net/2014/02/28/price-cuts-more- security-and-recovery-options/)

<comment><USER11> My "computer says no" support experience was in November 2013.

If there were any options to save my friend's data and domain registration, their support guy didn't know about them, or wasn't willing to tell me.</comment></comment></comment></comment>


Why Do People "Watch" Code? A Short Survey for Open Source Devs - <AUTHOR> http://phark.posterous.com/why-do-people-watch-code-a-short-survey-for-o

<comment><USER2> The presenter at the meet up last night watches projects on Github as "a poor man's bookmark." Time for Github to implement other lists.

<comment><USER3> That's exactly how I use it as well.

What I'd like to see is a "★/☆" for a repo, branch, or commit. Similar to the way you can ★ a question or answer on StackOverflow.

</comment></comment><comment><USER4> I frequently watch code because it is one of a set of projects. I don't care about that project specifically, but I like to see it is active, make sure they aren't going in a direction that will mean trouble could be headed downstream to what I actually care about and so on.

I also watch projects that I think could amount to a big deal, but are currently in the concept phase. That way as they get going and start solving a problem I know how it goes.

Finally I watch projects that are solving problems I may have insight into -- so I see places I can contribute.

In all these cases I don't fork because I am not engaged enough to maintain an active fork, since they you must manually pull the upstream master regularly... annoying if I'm not doing it because I'm involved. Then I can just clone from the head easily when it is time to fork or modify the code.

</comment><comment><USER5> Is there any way you can make the results public so we can see them, or are you going to wait before sharing?

<comment><AUTHOR> I'm planning on building the suspense until enough responses come in for a follow up post to make sense. When that happens, I'll make sure to share everything.</comment></comment>


Ask HN: What tech stack can be used for building chatbot framework like api.ai? - <AUTHOR> a basic version of api.ai <comment><USER3> Any tech stack will work. That being said, I'd optimize for something that has enough power for NLP, but still makes it easy to work with sometimes unreliable chat services. Javascript and Python are both common options, Go and Elixir would be newer more experimental choices.

There is nothing about a chatbot like framework that precludes any given technology.

</comment><comment><USER4> [https://github.com/BotCube/awesome-bots#nlp-tools-engines- sd...](https://github.com/BotCube/awesome-bots#nlp-tools-engines-sdks- frameworks)

Superscript: [https://medium.com/@rob_ellis/superscript- ce40e9720bef](https://medium.com/@rob_ellis/superscript-ce40e9720bef)

</comment><comment><USER5> There are quite a few good options out there. I've used two and they were both good. If you want to use the same bot for multiple platforms (Facebook, Slack, embedding on a page), I suggest Microsoft's Botbuilder Framework. The only caveat is that the ability to connect to multiple platforms requires you connect to Microsoft's (free) bot framework service.

The Bot Framework SDK comes in several flavors and is fairly robust: [https://dev.botframework.com/](https://dev.botframework.com/)

Sample code: [https://github.com/Microsoft/BotBuilder- Samples](https://github.com/Microsoft/BotBuilder-Samples)

</comment><comment><USER6> You can use any stack you want. But people mostly prefer node because of api.ai's documentation in node and online help from forum,stackoverflow questions of api.ai using node.js

</comment><comment><USER7> Meteor.js would probably be the easiest start.

</comment><comment><USER8> Microsoft BOT Framework (dev.botframework.com) \+ LUIS - <USER2> Understanding Intelligent Service - (luis.ai)</comment>


Snazzy Hover Effects Using CSS - <AUTHOR> http://sixrevisions.com/css/snazzy-hover-effects-using-css/

<comment><AUTHOR> Anyone else experience the IE8 bug (or know of a documented case and solution for it) mentioned in the article?

</comment><comment><USER2> I can't really think of where I could use this without feeling like I was introducing some sort of usability flaw.</comment>


Cbgb - A database for everyone - <AUTHOR> http://cbgb.io/

<comment><USER2> Country, BlueGrass and Blues.

In all seriousness, why would I want to use this database instead of my trusted SQL database?</comment>


Ask HN: Application Security. - <AUTHOR>

I drew the short stick and have to develop a security strategy for an application my company is developing. Where do I start? The application is a web based J2EE application. <comment><USER2> OWASP (The Open Web Application Security Project) has a host of resources (local & linked) Try: <http://www.owasp.org> and: <https://www.owasp.org/index.php/Category:OWASP_Java_Project>

<comment><AUTHOR> thanks mh_4</comment></comment>


Using Education to Make Japan Great Again? - <AUTHOR> https://thediplomat.com/2018/04/using-education-to-make-japan-great-again/ <comment><USER2> Required reading...</comment>


Ask HN:  How do you make money on a non-viral iPhone app? - <AUTHOR>

Suppose that the number of daily purchases without ongoing advertising would be too small to make any reasonable money.
Would constant spending on advertising potentially be profitable?
What sorts of numbers are involved?  How would one proceed in this direction? <comment><USER2> I have several applications in the AppStore. Among them is a ballistics calculator that caters to only a small group of people. I've found that the same basic rules apply to the AppStore, that apply elsewhere in life: work hard, design a quality product, and support it... you'll make good money. Word of mouth is the best advertising you can have. Have an occasional sale when sales slow down and that's all you need to know.

You don't have to spam, advertise, or write a bunch of useless rubber-dog-poop toys. Just make something that's good quality and keep supporting it.

</comment><comment><USER3> My personal experience is very similar to what jzdziarski mentioned. Make a good quality app and support it, you will make money on it. Dont invest money on marketing, I have heard horror stories about it, unless you are someone like EA, amazon or target.

There are a few dirty tricks that I have noticed being constantly used by other developers like releasing an update as soon as your previous update gets approved to be in the new release section. We don't do that because we are serving a niche market and we don't want to upset users, but it works. (IQ Test by McPhun is amongst top 5 apps in education for last 6 months and they come out with an update every week. They do it for almost all their apps.)</comment>