UK ISPs have to stop lying about broadband speeds - <AUTHOR> http://www.wired.co.uk/article/uk-broadband-speeds-fibre-to-the-home <comment><USER2> > The UK's fibre to the home infrastructure is so poor it's out-performed by > almost every other country in Europe (Latvia, with 50.6 per cent fibre > coverage, ranks first in terms of market penetration).

The reason the UK is on a mix of copper and fiber is because the entrenched monopoly, BT, didn't think fiber to the home (FTTH) was worth investing in. To protect their investment in their existing copper network, they pushed tech like VDSL/FTTC (up to 80Mbps) and now G.Fast (up to 500Mbps), which are "fiber to the cabinet" but the last mile is copper. The problem is, speeds fall off depending on how far your home is from the cabinet. I've seen many non- technical consumers be disappointed and say "the ISP said I can only get 11Mbps but they advertise up to 80Mbps".

BT have now been told by the telecoms regulator to prioritize deploying fiber to the home. Also, serious money is now pouring into alternative network providers. CityFibre, which is installing its own gigabit-grade fiber network in about 30 UK cities (so home users in all these cities can be offered FTTH), was recently acquired by a consortium with fairly deep pockets. BT, which historically was the entrenched monopoly, is no longer the sole arbiter of the UK's broadband future.

<comment><USER3> Buying a house in a rural area is a nightmare as you don't really know in advance what speed you will get and the speeds quoted on sites like Rightmove are for entire postcodes - _not_ the property in question.

We bought a house last year in a rural area in Scotland - not far from Edinburgh and were appalled at the broadband options. We get 20Mbps down and 1 up which is enough for most things (barely) but that was one of the fastest speeds we saw (apart from one house in the wilds of Perthshire that had 400Mpbs....).

<comment><USER4> It's not even rural areas that suck, I'm in zone 4 London, so pretty suburban, and I get about 7Mbps down/0.5Mbps up! The FTTC roll-out said it was planned for my cabinet, not just says it's not.

<comment><USER5> I'm in zone 4 too and I get 200Mbps. I could pay for more, and I'd probably get it, but 200Mbps is fine.

I guess it's just a dice roll. /shrug

<comment><USER6> I'm in zone 2, I have 76 Mbit vdsl, in reality it's 40-50 Mbit on good days. Virgin is not available in the building.

</comment></comment></comment></comment></comment><comment><USER7> The UK _could_ have had world leading broadband were it not for Mrs T. She decided BT's late 1980s decision to rollout fibre was anti-competitive and killed it in 1990 when we were pretty much leading the world [0].

So the grindingly slow reality of ADSL isn't especially surprising sadly.

[0] [https://www.techradar.com/news/world-of-tech/how-the-uk- lost...](https://www.techradar.com/news/world-of-tech/how-the-uk-lost-the- broadband-race-in-1990-1224784)

<comment><USER8> And yet BT is pretty much the definition of anti-competitive now anyway, and it's that monopoly which is killing progress today.

<comment><USER9> Is that really true? What's stopping alternative companies from rolling out fibre services, beyond the cost barriers?

<comment><USER10> The contract that BT signed with the government for all the funding granting it a duopoly with Virgin, where Virgin isn't going to increase the cable network at all. That combined with the wayleave issues at a local council level being waved just for them means that the preferred rollout partner in BT gets all the money, all the profits from it and has all the access.

About the only nationwide competition that is even remotely happening is from Hyperoptic and they are being blocked all over the place and they are also really laser focussed only on high-density buildings.

<comment><USER9> That totally sucks. Someone should really force a lawsuit on the issue.

</comment></comment></comment></comment></comment><comment><USER11> > or make a Skype call that doesn't drop out every two minutes.

When will people learn that bandwidth has nothing to do with this? You don't need 50mbit for a skype call!

It's usually not the 'last mile' problem, but what I'd call the 'last meters' problem: most SOHO/consumer grade network equipment is just total garbage.

Replace your ISP supplied equipment with something more reliable (I highly recommend Ubiquiti gear) and you'd be surprised how much more usable your internet connection becomes.

<comment><USER12> Could you recommend modem / router equivalents ( whichever applies to replacing ISP supplied equivalent, I'm assuming both? ) at a few different price brackets?

Ubiquiti gear appears to be quite dear, alternatively are they worth the expense? Are there any benchmarks etc which demonstrate this, or further reading?

<comment><USER11> Well, in my case, I use a Edgerouter-X with an SFP module that connects directly to my fiber line. Remember, a fibre lines does not even require a modem. I don't have experience with DSL equipment. The equipment my ISP send me (it's still in the box) came with a 'fiber modem', which is a fiber-to- ethernet converter, and a no-name brand router with build-in wifi. The firmware on it is a custom branded build of 3 years old, and I don't expect they ever released a security update for it (KRACK attack, anyone?).

For wireless connectivity I use a Unify AC pro, which has proved highly reliable. See [0]

[0] [https://arstechnica.com/gadgets/2015/10/review-ubiquiti- unif...](https://arstechnica.com/gadgets/2015/10/review-ubiquiti-unifi-made- me-realize-how-terrible-consumer-wi-fi-gear-is/)

</comment></comment></comment><comment><USER13> Not sure if that's going to change something. The main problem was never peak- time congestion (I've never experienced it personally), it's just the fact that 1) the infrastructure is shit and 2) everyone sells DSL as "fibre".

The infrastructure is a mess. Unless you've got actual fibre to the home, you're stuck with DSL, aka rust. The problem is that it's impossible to tell just how rusty it is without subscribing to service and running a speed test (at which point you've either entered into a year-long contract or paid install fees). Even the ISP can't know. What Openreach (company mandated by the government to manage the actual phone lines) should do is leave a DSLAM connected to _all_ lines, to allow people to connect a modem and see the sync speeds (and possibly run a speedtest from a server provided by Openreach) _before_ they sign up to anything.

The second issue is that everyone is falsely advertising DSL (and other garbage like coax cable, also called HFC) as "fibre" and consumers are confused as to which "fibre" is the better one. This also makes it much harder for companies that sell _real_ fibre.

As it stands, this change will just make telco scammers sell "fibre" "up to 11mbps" instead of "up to 30mbps" or whatever they were selling before. As far as the consumer is concerned it's still a lottery whether you'll actually get the advertised speeds, with no way to know beforehand.

<comment><USER14> Does DOCSIS3 count as DSL?

<comment><USER13> Nope, that's HFC, and while it's radio-frequencies just like DSL, it's a shared medium across the entire neighbourhood while DSL is dedicated.

<comment><USER14> Ah then in that case you might want to add that some people have FTTC DOCSIS which is actually pretty good, 300Mbit down etc

<comment><USER13> FTTC DOCSIS is what most DOCSIS users get I believe. It's still got most of the issues of DOCSIS, mainly being a shared medium within the entire building, leading to potential congestion issues.

</comment></comment></comment></comment></comment><comment><USER15> This doesn't appear to address the two main issues I encounter when choosing UK broadband, which are that (a) advertising of upload speeds seems entirely unregulated, so that some providers offer ridiculous deals (e.g. 38Mbps down, but 1Mbps up, with the latter figure hidden in small print on another page), and (b) unless I choose Virgin, I will have sporadic disconnections sometimes for hours at a time depending on the interaction of decades-old copper, weather conditions, and random chance.

<comment><USER16> Completely agree on the upload speeds...I had Plusnet 17MPS but in actual fact it was ~6MPS download and 0.5MPS upload. The bad part was if I did an upload of say ~20MB it would throttle my download speed thereby slowing everything to a halt.

<comment><USER17> _> upload of say ~20MB it would throttle my download speed_

This is not directly due to the technology involved, it is due to congestion on the upstream side slowing down IP control packets (ACKs and such) as they are queued with the rest. When you have a slow upstream pipe it is very easy to see this effect. It is even worse when there are multiple upstream connections trying to use as much as they can (as seen in torrent transfers and similar), and it affects interactive traffic like SSH connections significantly too.

You can work around this by shaping your upstream traffic to reserve a little bandwidth for small interactive/control packets. If your router runs Linux there are a number of simple scripts to setup the basics (wondershaper is one I've used successfully in the past) or you can be more specific to your needs by setting up your own config with the appropriate tools.

If you usually only use one PC then you can run the shaper there instead, of course, but running shaping on one individual machine on a crowded network will have no useful effect.

(see [http://louwrentius.com/how-traffic-shaping-can- dramatically-...](http://louwrentius.com/how-traffic-shaping-can-dramatically- improve-internet-responsiveness.html) for an example of using wondershaper)

<comment><USER16> Thank you for this. Super interesting to hear about what's happening. At one point they told me there was a problem with the copper which meant my packets where getting dropped.

In the end, Plusnet increased their prices by £1 and in the small print of the email, they said I could cancel my contract within 30 days...I was 3 months in so I cancelled. Now I'm using my phone (tethered + 20GB of data for £20 a month from BT) and BT-FON free wifi for Youtube videos.

</comment></comment></comment></comment><comment><USER18> Hyperoptic is another niche fibre provider that are only present in parts of major UK cities (30ish apparently). They offer 1Gbps over their own daisy- chained network. Their pricing is good and the performance is great (so far) compared to Virgin. As always, it's just the availability that's lacking.

</comment><comment><USER16> In the UK, the central network is fibre but the "last mile" from the exchange to home is always copper. The "last mile" can turn into 2+ miles if you're unlucky.

UK ISPs sell various different speeds including 'fibre' at the high end. However it's never true fibre and you'll have copper cable no matter the package you pick.

I had Plusnet 17MPS but in actual fact it was ~6MPS download and 0.5MPS upload. The bad part was if I did an upload of say ~20MB it would throttle my download speed thereby slowing everything to a halt.

I tethered my phone to my laptop and got 16MPS upload speeds....

<comment><USER19> As the other commenter said the move from ADSL to "fibre" meant that rather than being copper from your house to the exchange it's now copper from your house to the cabinet on a street nearby (hopefully) and fibre from there back to the exchange. The "last mile" of copper is now a lot, lot, shorter which is how they're able to run the faster speeds over it. Sure FTTC is not FTTP but it's dramatic improvement over ADSL/2

<comment><USER20> Absolutely, FTTC for us made using high-throughout Internet services feasible. We're not far from an exchange but the copper overhead cables pass several RF- noisy facilities and ADSL was constantly dropping-out. Even Andrews & Arnold couldn't do anything to improve it and we changed ISP after they lost interest ( no point paying their hefty charges for a flakey service ).

With the change to FTTC all that interference is gone and dropouts are very rare. FTTH doesn't really tempt us for any reasons.

</comment></comment></comment><comment><USER9> It would definitely be really nice if the UK rolled out comprehensive fibre connections – it seems like a good long-term investment for as many homes as possible to have a direct FTTP service.

At present domestic internet connections using DSL top out at 76MBps – and that's if you live on top of the cabinet. Aside from niche providers, the only other high-speed network is Virgin, which runs a HFC network at up to 350MBps (which, to be fair, is pretty cost-effective and widely available).

<comment><USER10> There are still quite a lot of people in cities who don't have VDSL yet and are still stuck on maximum 20 Mbps ADSL2. Worse than that is that due to the length and age of the lines they can be getting unstable connections around 1.5Mbit/s.

This is one of those areas where the suburbs and countryside have done significantly better from government funding of BT to roll out Fibre. Wayleaves and Councils and landlords and management agencies across the cities have repeatedly blocked rollout, the situation for many is still much worse than 76 Mbps VDSL, that is a good outcome for someone in a UK city.

</comment></comment><comment><USER8> Interestingly, Virgin Media now advertises slightly faster speeds than it did before this came into effect. Where it's fastest package was previously 350Mbps, it now advertises the same package as giving "Average download speeds of 362Mbps". "Average" still leaves a wide range of speeds, and as far as I can tell they don't quote different speeds for different locations.

I don't think quoting the average speed of all users in the country for each package is going to give much more of an accurate picture than maximum speeds. Especially since the abundance of FTTC here means your speeds are much more dependant on local infrastructure.

</comment><comment><USER21> UK Internet is actually not that bad. I pay under £25/month for unlimited 80/20 and most households can achieve almost that speed.

</comment><comment><USER22> Wow, we should totally pass a law like that in the U.S.

</comment><comment><USER23> What fraction of the US has fiber to the home? It must be far, far smaller than Lativa's 50%!</comment>


Melting Arctic sends a message: Climate change is here in a big way - <AUTHOR> https://theconversation.com/melting-arctic-sends-a-message-climate-change-is-here-in-a-big-way-95573 <comment><USER2> Interesting video on NASA's channel linked from the article: [https://www.youtube.com/watch?v=Vj1G9gqhkYA](https://www.youtube.com/watch?v=Vj1G9gqhkYA)

The thing that struck me was how close the summer melt is getting to the North Pole, and just how new the ice is tending to be there.</comment>


Ig Nobel win for Alpine 'goat man' - <AUTHOR> http://www.bbc.co.uk/news/science-environment-37443204 <comment><USER2> If you missed the original article:

[http://www.dailymail.co.uk/news/article-3612748/Why- decided-...](http://www.dailymail.co.uk/news/article-3612748/Why-decided-life- London-goat-Switzerland.html)

He makes for a nice clickbaity punchline of a headline, which is obviously part of the intent as he wrote a book on the experience and was desperate to escape his job. Still, for some reason I find it fascinating, especially the bit about his initial rejection from and subsequent acceptance into the herd.

</comment><comment><USER3> This is probably the most profound work out of these (no sarcasm):

 _On the reception and detection of pseudo-profound bullshit_ [http://journal.sjdm.org/15/15923a/jdm15923a.html](http://journal.sjdm.org/15/15923a/jdm15923a.html)

</comment><comment><USER4> > Medicine Prize - Christoph Helmchen and colleagues, for discovering that if > you have an itch on the left side of your body, you can relieve it by > looking into a mirror and scratching the right side of your body (and vice > versa).

<comment><USER5> Does it have to be in a visible spot?

One arm is more flexible than the other and this would be useful when scratching my back.

<comment><USER6> More predictable than visible, the brain needs to be able to feel the gaps.

I would think this isn't that different than the phantom touch experiments people have been conducting over the years e.g. [https://www.youtube.com/watch?v=DphlhmtGRqI](https://www.youtube.com/watch?v=DphlhmtGRqI).

The nervous system is a pretty interesting "bus", since there isn't a separate "bus" for each nerve and many of them share the same "bus" the brain actually figures out what happens based on various other inputs including latency, signal strength, and input from other senses like sight, sound, and smell.

Overall since every nervous system is unique your brain actually has to "learn" how does a signal from touching your finger looks like and then it classifies that signal as say "light prick left index finger", to compensate for the transmission delay your brain also knows how that signal should look like so it actually starts processing a "replay" or a "synthetic" version of the expected signal before the "real" one arrives, or is even generated; this is very important for your reflexes and response time.

It's pretty interesting that you start "feeling" being punched in the stomach before your brain can actually register it or even before the punch lands simply because the sensory input from your sight is on a shorter link (and also potentially processed faster).</comment></comment></comment>


Show HN: Realm (YC S11), a mobile database - <AUTHOR> http://realm.io <comment><USER2> The foursquare map video shows how the experience with realm is better (and does that well), but it didn't give me any sense of how it's achieving those results. As a developer, I'd love to see an accompanying explanation with details on how the original version works, and how the realm version works.

<comment><USER3> Absolutely. We didn't get a chance to clean up the codebase for this app before the launch (it's actually using an old version of our API that would be confusingly different than what our docs detail) but we'll try to set up a blogpost about that since I may not be able to do the topic justice in a comment here :)

The short version is that most apps tend to do a query on click, fetch from an API and then cache the results in memory. The Realm version fetches from the API asynchronously in the back, pre-fetching results and writing them form the DB on one thread and reading & displaying them on the map from another. This has a few benefits (& drawbacks). On one hand, you do hit your servers a bit more often at first, and you may actually get so much data in the map that the UI component will start to lag. On the plus side, your data points are cached so you can do a lot less API queries over time (especially for something like Foursquare where users tend to stay in the same area and the dataset of venues doesn't change that often). You also get better control as a designer or developer, and you can trim down & display relevant datasets on the fly.

To sum up, I'd say the key difference is the availability of a local, concurrent data structure that can easily be updated & read from multiple places (i.e. in a few lines of code if you look at the samples on [http://realm.io](http://realm.io))

<comment><USER2> Thank you! So in theory one could do the same thing writing your own threads and using vanilla local storage? But realm is removing all the boilerplate custom code you'd have to write yourself, and making the local side more performant than custom code would be? Is that it in a nutshell?

<comment><USER3> Yes, that's the spirit, although I'm sure others would tell you that using Core Data across threads and at high throughput it much easier said than done :) You can achieve anything with almost any storage technology — we just try to let you do it well, easily and in a very performant & maintainable way.

<comment><USER4> "You can achieve anything with almost any storage technology" \- is actually being very generous to quite a few other technologies :-) One of the promising benefits of any technology that can make things run magnitudes faster, is actually that you can do totally new things you previous thought impossible.

</comment></comment></comment></comment></comment><comment><USER5> LOVE this. I've dealt with the pain of multiple CoreData contexts in different threads and ugggh. This was easily the longest part of our Streak app development, as we needed it to be fast, offline, and fully synced. This is definitely a way better API that accomplishes the same thing as CoreData. If its actually faster too, wow, just amazing.

One question - CoreData works really well with built in UIViewControllers like TableViewControllers. Any chance you'll be releasing some code that makes wiring up changes in the models to the controls that are displaying that data?

<comment><USER3> Thanks for the kind words! Regarding wiring this to a TableViewController, we have some code samples already for Swift[0] and Objective-C[1]. Right now you get notified of changes and refresh, but we're very interested in exposing a reactive-style binding mechanism as well. The storage engine underneath supports that very well actually, so stay tuned…

      [0] https://github.com/realm/realm-cocoa/tree/master/examples/swift/RealmSwiftTableViewExample
      [1] https://github.com/realm/realm-cocoa/tree/master/examples/objc/RealmTableViewExample

<comment><USER6> The main benefit of using CoreData is seamless faulting behavior. It's not obvious from the example or the site that Realm supports something comparable. How does Realm deal with a lot of objects?

<comment><USER7> Realm does not have a concept of faulting like Core Data does. In Core Data every object is essentially a copy of a representation in the underlying data store (usually sqlite), so instantiating the object is quite expensive as all the properties have to be retrieved and copied into the object, and before you have done that it is very limited what you can do with the data.

In Realm the object you see is a direct representation of the underlying data, it does not have to copy in all the properties. When you access them, it is the property directly from the db you are getting, not a copy stored in the object. This means that it takes up a fraction of the memory space, and it also means that queries and similar operations can work on the objects directly in the db, without having to instantiate them in objective-c. This means that you can easily scan over millions of objects, without causing a single "fault".

When manually traversing objects you still have to instantiate them, but since they don't have to copy any data, it is a far more lightweight process than faulting.

</comment></comment></comment></comment><comment><USER8> Wow - this looks really great! As someone who has struggled with Core Data in the past, the API looks great and things seem, on the whole, a lot cleaner. Looking forward to giving it a go.

EDIT: I just came across the REST API / JSON import section in the documentation - really cool stuff!!

</comment><comment><USER9> The API approach vs. SQLite, etc. is interesting - particularly that it does not look to have very many moving parts. I'm curious about transactional semantics though. Are they 'always on' or is there API control (still haven't gone through docs completely yet, so I may answer my own question later).

<comment><USER7> Alexander from Realm here, all interactions with the database is through full ACID transactions, but it is a bit untraditional in that the interaction model is build specifically to mobile apps.

The transactions interact with the runloop, so that you are always in an up- to-date read transaction (which always give you a consistent view and never blocks, even when other threads modify the same data). To write, you have to do explicit write transactions.

So your data is always live, consistent and up-to-date without you having to do any explicit coordination (apart from the write transaction on changes) and notifications allow you to always keep your UI up-to-date with the latest changes.

<comment><USER10> For people using SQLite, it's trivial to do the same with WAL mode and a read- only transaction on the main thread (which is what you should be doing). All writes happen off the main thread, so performance is great.

</comment></comment></comment><comment><USER11> I could do with some clarification on what problem the product solves, and actually, what the product even is. To me this looks like a new DB, and an ORM style interface to interact with it?

I like that it is multi-platform, but SQLLite is a pretty mature DB store available on all the major platforms anyway. I get that it is faster... but presumably there are there trade-offs for this speed gain. I would like a better understanding of what they are. Transaction support?

(PS: I would also much prefer if your objects can be typed in a way so they are plain, rather than forced inheritance from RLMObject)

EDIT: The blog post at [http://realm.io/news/introducing- realm/](http://realm.io/news/introducing-realm/) answers some of these questions.

<comment><USER3> Absolutely. There's a lot more details in our launch blogpost [0], but you got the right impression: it's a custom C++ storage engine underneath (not SQLite), that is tightly integrated with the object layer. Not an ORM per se, because the engine isn't relational, and because there's not copying/mapping/translation going on — the data on disk is the same data you manipulate in your language.

The big problems we try to solve are really ease of use & performance. We heard from many developers dissatisfied with the current options on mobile, and the relative complexity to accomplish tasks like accessing data across threads, JSON handling, performance on graph queries, etc. — which the reactions on Twitter seem to confirm. We'll write a lot more about the tradeoffs in coming weeks, but we've really grabbed a lot of perf cycles just by taking advantage of modern techniques such as zero-copy architectures, bitpacking and vectorization. Of course the big implicit tradeoff is that you give up a bit of the relational paradigm in exchange for that speed, although we do maintain ACID transactions, immediate disk persistence by default and schemas.

Completely hear you on wanting plain objects — I personally feel that way too! Unfortunately, there's no way to achieve what we do without making you inherit from RLMObject, although we do try to make those behave as close as possible to NSObject.

[0] [http://realm.io/news/introducing- realm/](http://realm.io/news/introducing-realm/)

<comment><USER12> Although I don't know exactly what the implications are just yet, I've created a category on one of my RLMObject subclasses which accepts an NSArray or NSDictionary property and in the getter/setter converts to and from the NSData backing property. The only thing is after [Venue creatInDefaultRealmWithObject:] I have to explicity set the value for it to propogate to the backing NSData property.

It's extra work, but it lets me manipulate Realm into doing what I want it to do to store data which doesn't conform to an explicit schema. (e.g. a Venue which has an array of address strings, where I don't want the headache of iterating through venue.address[i].string values:

(note: this doesn't look pretty, its doing some funky formatting!)

"venue" : { "name":"Test Venue", "address" : [ "address line 1", "address line 2", "address line 3 for rare instances" ] }

@interface Venue : RLMObject @property NSString _name; @property NSData_ addressData; @end

@interface Venue (AddressToData) @property NSArray _address; @end

\+ (NSDictionary _)defaultPropertyValues { return @{ @"addressData":[NSJSONSerialization dataWithJSONObject:@[] options:0 error:nil] }; }

\- (NSArray _) address { NSArray_ address = nil;

        if (self.addressData) {
            address = [NSJSONSerialization JSONObjectWithData:self.addressData options:0 error:nil];
        } else {
            address = @[];
        }

        return address;

}

\- (void) setAddress:(NSArray _)address { if (!address) { address = @[]; }

        NSData *data = [NSJSONSerialization dataWithJSONObject:address options:0 error:nil];

        self.addressData = data;
    }

<comment><USER12>
        RLMRealm *realm = [RLMRealm defaultRealm];
        [realm beginWriteTransaction];

        for (NSDictionary *v in json[@"venues"]) {
            Venue *venue = [Venue createInDefaultRealmWithObject:v];
            NSArray *address = v[@"address"];
            venue.address = address;
        }

        [realm commitWriteTransaction];

</comment></comment></comment></comment><comment><USER13> In my experience object persistence rarely needs SQL or other "relational additional stuff" underneath. Typically I need to store objects and their mutual relations persisted as if they were just kept in memory. Have often thought about how weird it was that you could not just persist objects "as they are" without additional mappings etc. I saw a demo of Realm and had a talk with one the developers a couple of weeks ago. As the demo and our talk progressed I found myself nodding more and more excited. As I understand Realm it seems to be based on a very natural and straightforward principle. It can't NOT be efficient... I can't wait to try this out in a real project!

</comment><comment><USER14> I was going to say Android already has SQLite built-in, but they do a good job explaining advantages vs that (more object like syntax, more document like vs. table and schema like, better performance, etc.). Good job.

</comment><comment><USER15> What does this provide that CoreData doesn't? Whatever it is, it needs to be clearly explained on the landing page. Otherwise it's difficult to understand what problem this solves compared to CoreData.

<comment><USER3> Hey Tim, from Realm here. The big thing is really ease of use. Our blog post has a few more details on that point [0] but basically what we heard over and over and saw ourselves, is that Core Data quickly gets in your way if your app grows [1][2][3]. In essence, we tried with this initial release to offer a rich feature set with a simple API, less side-effects (especially for multi- threaded apps), and a performance that's even better than using raw SQLite.

In early testing we got a lot of higher-level questions about what Realm was exactly, so we decided to go for a descriptive tagline instead, but you're right that we should add more details about how we compare to Core Data!

      [0]http://realm.io/news/introducing-realm/
      [1]http://wbyoung.tumblr.com/post/27851725562/core-data-growing-pains
      [2]http://alastairs-place.net/blog/2013/04/17/why-core-data-is-a-bad-idea/
      [3]http://inessential.com/2014/06/11/core_data_thoughts_june_2014

(EDITS: formatting)

<comment><USER15> Core Data has been improved and stabilized by Apple for over a decade, is used internally by many first party apps in iOS, is well documented and fully integrated into Xcode, and heavily "marketed" by Apple at WWDC. Any perceived performance issues can be eliminated or reduced by using faults, indexes and improving queries through NSPredicates. Even one of the blog posts you quote above [3] states that if he was starting a new app today, he'd go with Core Data. So I'm just not seeing a need for yet another ORM solution. I'm not saying you shouldn't continue building it, but you guys need to do a better job explaining the differentiation against Core Data. One area could be sync, where Core Data still needs work, and is limited to iCloud's backend. Perhaps that could be your differentiator? But you're not talking about sync yet. So there's work to do in crafting your message. Fwiw, I'm a senior iOS developer who evaluates these things for a living.

<comment><USER3> Just to be clear on the topic, since this is an easily misunderstood aspect of Realm: we are not an ORM. We're not built on SQLite, we're not mapping to a relational layer, nor are we serializing objects from a third-party data representation: your objects in the language are exactly the same data that's stored on disk.

We heard a lot of dissatisfaction from the community as far as Core Data is concerned (including from Apple engineers themselves). I'm also not entirely sure you could ever get Core Data performance to the levels we enjoy, since Core Data cannot be any faster than the SQLite underneath, after all. I do want to say that your feedback on how we present ourselves and the work ahead of us is spot on and much appreciated. Many thanks for speaking up, we will work hard to heed your comments & improve.

<comment><USER16> Just as another data point, I agree with magsafe. I've used Core Data a bit recently and haven't really had any problems with it (though I agree it could be nicer).

My huge, huge, huge problem, on the other hand, is sync. I don't want to get locked into iCloud and the idea of Apple offering multi-platform support is unrealistic.

If you offered this as a cross-platform solution + syncing I'd sign up immediately (it sounds like this might be where you're headed anyway).

</comment></comment></comment></comment></comment><comment><USER17> Looks interesting! The Swift examples on the homepage seem to be showing Obj-C code: [http://cl.ly/image/2r250h3a0A1y](http://cl.ly/image/2r250h3a0A1y)

<comment><USER3> Sorry about that. We've been seeing some issues with our CloudFront caches all morning, but if you give it a hard reload or two in your browser, you should eventually see our Swift samples — we'll keep working to fix the issue.

<comment><USER3> Looks like we're out of the woods on that on. Swift samples should display correctly on [http://realm.io/](http://realm.io/) Thanks for your patience!

</comment></comment></comment><comment><USER18> I would love to share the swift-specific portion of the getting started docs on www.sososwift.com but [http://realm.io/docs/ios/0.80.0/#swift](http://realm.io/docs/ios/0.80.0/#swift) doesn't navigate directly to that. If there's a link to Swift instructions for realm, I'll post them and you will find them here [http://www.sososwift.com/?a=realm.io](http://www.sososwift.com/?a=realm.io) Good luck, looks cool!

<comment><USER3> CloudFront is giving us a lot of issues at the moment, but I implemented + deployed that feature for you! Hopefully it will be live very soon. (btw, thanks for creating & running SoSoSwift!)

<comment><USER18> Hey great, it worked! Sorry for the delay, I had to work at my actual job. :/ BTW, we just deployed a new app last week, had a bunch of problems with CloudFront. Good luck!

</comment></comment></comment><comment><USER19> Sounds interesting. I'll definitely watch for the Android version :)

That said, the "insert" benchmark source for SQLite is a bit disingenuous. It makes a new compiled statement every time it inserts - if you're doing 150,000 inserts, you should _definitely_ be reusing that thing. And on Android, greenDAO (probably others) does this automatically for every insert/update. It's not some edge-casey optimization trick, it's _normal_ SQLite use.

<comment><USER7> Thanks for the feedback, benchmarks are notoriously difficult to get accurate (and fair), which is exactly why we published the benchmark code. We will incorporate your feedback to improve them.

<comment><USER20> I'm a little late to the party, but I ran the benchmark inserts with cached statements on both my Macbook Pro and my iPhone 5S. sqlite definitely fairs better under this scenario.

That being said I still find the speed of Realm pretty impressive. And it's hard to gauge real world performance from this test. In my experience the real bottle necks around insert are upsets and establishing maintaining relationships.

For reference here are the benchmarks without reusing sqlite statements.

      Macbook Pro - Realm: 0.780414 sqlite: 0.464804 FMDB: 0.654659
      iPhone 5S   - Realm: 2.235381 sqlite: 2.786381 FMDB: 3.336679

And with statement reuse

      Macbook Pro - Realm: 0.766406 sqlite: 0.189747 FMDB: 0.683823
      iPhone 5S   - Realm: 2.214847 sqlite: 0.991864 FMDB: 2.832800

Interesting side note: FMDB seems to be spending just as much time finding the cached statement as sqlite takes to prepare a new one. I didn't expect that. I haven't dug into it at all, but I wouldn't be surprised if this due to the fact that the insert statement is relatively simple.

EDIT: Just fixed up formatting for the results

<comment><USER19> That's pretty cool, and roughly what I saw in my emulator - maybe my fumbling actually did it right :) And very much agreed, Realm _is_ pretty impressive, and micro-benchmarks like this aren't all that useful.

Have you set up a pull request / issue by any chance? It paints Realm in a bit worse of a light, but hopefully they'll merge it in and update the site.

<comment><USER20> I didn't see the benchmark code in the repo, so I didn't really think about a pull request. Next time I find time I'll poke around a bit more. They are trivial changes though.

</comment></comment></comment></comment></comment><comment><USER21> Awesome, I'm really happy to see this kind of technology. This stuff needs to exist, and is really the future of the cloud IMHO.

</comment><comment><USER22> Very cool. What's the thinking behind shipping with Swift support despite it still being in beta?

<comment><USER23> JP from Realm here, I worked on our (experimental) Swift support. Swift as a language is pretty unstable right now, but it's clear that Apple sees it as the future of iOS and OSX development. So we wanted to start experimenting with how to make Realm feel right at home in Swift.

</comment></comment><comment><USER24> Well, we have a local database now. Now we need a terminal for the phone and a text editor.

</comment><comment><USER25> Cool idea. I had the same problem with the intro video that others have mentioned. I'm gonna read more when the Android version is out, since this might actually be able to fix a common pain point I have with my apps with data persistence (I'd like to be able to read recently touched questions in my Stack Exchange app even when I don't have internet, which requires a damn complex caching layer).

Just a side note: The SO link you have in the footer seems to not have _any_ questions about your actual product in the tag, but about Java realms instead.

<comment><USER3> Yup, offline mode is definitely a big area of focus for us. Regarding the tag, I'm not sure what the protocol is for these things, but since it wasn't used for a clear product/project/topic, we figured it was as good a destination as any, since we'd prefer to let everybody benefit from answers we may give to support questions, via SO.

I'm drafting something to dive deeper into the video now; anything in particular you'd like us to dive into?

<comment><USER25> I'd _love_ deeper info about "we don't require deserialization to get objects out of the file", but that might be somewhere in the documentation. I'm assuming you're faster than SQLite, so a demo showing those side by side might be a good selling point too.

<comment><USER7> Realm is not an ORM, but rather an integral part of your language. One key difference is that it does not have to copy all values in the objects back and fourth as you read them and save them, as most ORM's does. So that gives a huge performance improvement.

There are some benchmarks in our intro blogpost[0]. So I can recommend reading that for a bit more background information. We will have more blog posts coming out soon about the technical details.

[0] [http://realm.io/news/introducing- realm/](http://realm.io/news/introducing-realm/)

</comment></comment></comment></comment><comment><USER26> This is looking very good and it could lower the pain of developping mobile apps, especially for independent studios. Looking forward to learn more about the details of data syncing.

<comment><USER7> Data syncing is an obvious need and Realm has actually been designed for that from day one. The entire underlying core is build to seamlessly record changes and coordinate them with a backend.

It is not part of the initial launch as we want to nail down the local api's with the community first, but look out for announcements soon.

<comment><USER27> What kind of consistency do you expect to provide with this future syncing feature? I assume it will be eventually consistent. Is that right? How will conflicts be resolved?

<comment><USER7> Yes, on mobile sync really only make sense if also works when the device has spotty or no connectivity, so that naturally entails eventual consistency in some form.

We are not ready to into details about how our sync solution will work yet, but watch out for some announcements soon.

</comment></comment></comment></comment><comment><USER28> Repost:

[https://news.ycombinator.com/item?id=8037029](https://news.ycombinator.com/item?id=8037029)

</comment><comment><USER29> Well I think everyone agrees it looks like something pretty interesting but I couldn't find anywhere what's the easiest way of migrating from CoreData w/sqlite to Realm? Not sure if the tradeoff of rebuilding everything would be worth it for the increase in performance.

<comment><USER4> We will surely add some guides to address that need (and many others). In the coming time we would love to expand on the documentation and clarification so you can learn Realm as easily as possible. Feel free to ping us with anything needing specific attention in the support forum: [https://groups.google.com/forum/#!forum/realm- users](https://groups.google.com/forum/#!forum/realm-users)

As for the tradeoff, I guess that heavily depends on the specifics of your app. You are the only one who can judge that depending on your current app pain points, maturity and future needs.

</comment></comment><comment><USER30> This is awesome. Really interested to see how this can affect wearable device development and data.

<comment><USER3> Definitely feel that having good local/offline data handling capacity will help on wearables, because of the intermittent connectivity when your device is not tethered to a phone or tablet.

</comment></comment><comment><USER31> That Four Square demo is quite amazing, I'm looking forward to give a try in near future.

</comment><comment><USER32> A big plus for sqlite is that you can use it everywhere. For example, for a REST service instead of return a JSON I just return the sqlite database. Also, I can see the data in the desktop, use it on python, etc.

This could work elsewhere too? Be usable in python?

<comment><USER3> You can do the same thing with Realm. We actually have a couple of key benefits over SQLite there, which are that our file size is much smaller (usually about 50%), and we don't require deserialization to get objects out of the file (Realm data can be streamed directly into memory as native objects in your language).

On the minus side, We don't work from everywhere yet, but we have internal bindings for Python, Ruby, C#, Java, PHP and a few other languages. We focused on the iOS launch so far, but we do plan to wrap up those additional implementations and share them on GitHub.

<comment><USER33> Does this mean Realm would be usable for Xamarin-based apps in the near future?

<comment><USER3> Yes :)

</comment></comment></comment></comment><comment><USER34> Realm peeps, can you explain this: "The only restriction is that objects can be used only on the thread on which they were created"? Is this same as Core Data limitation or is there more to it?

</comment><comment><USER35> Looks great. Really looking forward to the Android version too!

</comment><comment><USER36> Looks good. Would really like to see Swift support. Also, the example showing integration with REST services in interesting, seems like you could do more with that.

<comment><USER23> Realm currently supports Swift, though we're actively working to improve our Swift APIs[0]. You can find Swift sample code throughout our docs[1], and in our Swift examples on GitHub[2].

We learnt a lot about Swift introspection and interacting with Swift objects from the Objective-C runtime. We'll share our findings in some upcoming blog posts, so stay tuned!

[0]: [https://github.com/realm/realm- cocoa/pull/549](https://github.com/realm/realm-cocoa/pull/549) [1]: [http://realm.io/docs](http://realm.io/docs) [2]: [https://github.com/realm/realm- cocoa/tree/master/examples/sw...](https://github.com/realm/realm- cocoa/tree/master/examples/swift)

</comment></comment><comment><USER37> The speed, simplicity, and lack of headaches (threads, contexts, etc) really make this an interesting solution. Hope these guys/gals crush this!

<comment><USER3> Thanks for the kind words! Us guys & gals will be working hard to make this something everybody wants to use.

</comment></comment><comment><USER38> If you could make this automatically sync to a backend database, that would be amazing. It would be great to have the hard bits solved for us.

</comment><comment><USER39> Has any succeeded building this in rubymotion?

<comment><USER3> I don't think anyone at Realm has ever tried, but I doubt it would work at this point. We do a lot of things specific to each language in the implementation, so we'd have to support RubyMotion explicitly for it work.

<comment><USER40> RubyMotion is Objective-C under some thin covers so it seems like it would be relatively straightforward to have it work with Realm without a lot of extra trouble.

<comment><USER3> True but there's a lot of work that goes into making your Objective-C RLMObjects work seamlessly with the storage underneath (i.e. without copying), so at least that part wouldn't work without an additional implementation in Realm.

Someone is already looking into it on the ML though[0] so we'll see how far we can get it going.

[0] [https://groups.google.com/forum/#!topic/realm- users/Dn0wg0Uk...](https://groups.google.com/forum/#!topic/realm- users/Dn0wg0UkRRM)

</comment></comment></comment></comment><comment><USER41> I have to give it a try, but how well does it work with different BaaS providers like Parse, Kinvey, Appacitive etc?

<comment><USER4> Right now there is no specific integration into any BaaS.

A Realm database is just a (compact) file that you can send as you see fit. As most BaaS solutions has their own local storage and API it may not always make sense to integrate, except that you could easily store a small Realm file as a blob in any BaaS and transfer it remotely.

It will also really soon be possible to export some or all objects as json which you then again can send to remote services. That does however take up much more space/bandwidth compared to Realms compact data format, but could be needed if you want to persist remotely in another database format.

<comment><USER41> Not all of them generally have their own local storage. But as you do with the foursquare APIs, it can definitely be done with other API providers. But thanks.

</comment></comment></comment><comment><USER42> Salmon pink? Their swag is going to rock.

</comment><comment><USER43> There's a quote from Unity CEO on the frontpage — should we expect Realm appear in Unity-land as well?

<comment><USER44> Doubt it. It's pretty common to ask "testimonials" from people with authority for publicity etc.

<comment><USER3> We're obviously big fans of Unity (& David!) and we have some work going right now to support .Net/Unity

</comment></comment></comment><comment><USER45> How do you backup this database? Does it integrate with iCloud or whatever is available on the device?

<comment><USER7> The database is stored in a single file that is easily backed up. It does not have any explicit integration with iCloud, but you can easily use it to back up a copy of the db, or you can stream the copy back home yourself via ftp or http.

<comment><USER45> I'm somewhat of a newbie in regards to developing on mobile devices. Got any documentation how this is done from the phone?

<comment><USER46> I'm Kenneth at Realm. As realm databases are files on the phone's file system, you can use the common classes for manipulating them. To do a backup, the NSFileManager class might be useful (the copyItemAtURL method might be what you're looking for). See [https://developer.apple.com/library/mac/documentation/Cocoa/...](https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSFileManager_Class/Reference/Reference.html) for details.

</comment></comment></comment></comment><comment><USER47> Is there a Mac OS X support planned? Or perhaps the iOS version works as is?

<comment><USER3> The framework in our release zip only works for iOS but if you build from source[0] it will actually generate an OSX framework as well!

[0] [https://github.com/realm/realm-cocoa#building- realm](https://github.com/realm/realm-cocoa#building-realm)

<comment><USER4> The RealmBrowser (which can be found under /tools/ at the above source link) is already using Realm internally to show/edit any Realm file dynamically.

</comment></comment></comment><comment><USER48> I can't tell -- does it support upserts?

<comment><USER4> Currently not as a specific one liner. It's super simple to do it yourself, but we will likely add that convenience method shortly.

</comment></comment><comment><USER49> looks cool, can't wait to try this out!</comment>


What Minimum-Wage Foes Got Wrong About Seattle - <AUTHOR> https://www.bloombergquint.com/view/what-minimum-wage-foes-got-wrong-about-seattle#gs.n8hwiG0 <comment><USER2> All the top-level comments are making excuses for inconvenient facts. I'm guessing a lot of folks on Hacker News believe themselves to be objective analysts and yet are blind to how their bias against the minimum wage is causing them to look foolish in ignoring any new information that might possibly conflict with their world view.

The ONLY proper response if you're a critic of this study (if not with the methodology, which nobody here has found ANY problems with) is to say, "well there's a wide variety of findings on minimum wage." Instead, you have people intentionally misreading the study, making ideological claims about the "value" of the work minimum wage workers do, or a conspiratorial claim they reversed because of "pressure" without any evidence whatsoever.

It's quite sad to see people so willing to reject inconvenient facts.

<comment><USER3> The thing I find most obnoxious is that people don't seem to understand that a minimum wage is necessary to prevent employee abuse. Without a minimum wage, corporations will gladly hire people who are unable to negotiate hire rates despite doing the same work as everyone else. The disabled, prison labor and immigrants are all examples of people who have been historically abused by companies in order to pay them much less.

Ultimately when any job is better than no job, people will take what they can get. Companies know this, and will pay people obscenely low amounts to take advantage of people without any other options. Therefore to protect them and ensure they can have a livable wage, we need to maintain a minimum wage.

<comment><USER4> The thing I find most obnoxious is the "a better end naturally justifies removing liberties" concept.

Suppose there was positive correlation between racial diversity and violent crime in the US. Would you support de jure segregation, because it reduces violence? Even if there seem to be good effects from segregation didn't necessarily mean the government should dictate living locations.

Even if there are good effects from legislated prices, that doesn't necessarily mean the government should dictate employment contacts.

<comment><USER5> Your argument is moronic. De-segregation is not the cause of violence in your hypothetical and if it was then you were imagining a racist dreamland.

<comment><USER6> To play devil's advocate (you can read my response to OP to see how I feel generally about the overall argument), it does seem to correlate that more homogeneous societies, e.g. Japan, Norway, have lower crime statistics, or lower violent crimes.

Possible reason being, the more likely you are able to socially connect with your potential victim and the less likely you are to see them as the "other," then the less likely you are to feel justified in causing them harm.

KKK feels justified because other races are inferior, the rich feel justified in exploiting the poor because poor people are lazy, e.g.

<comment><USER4> And you could find similar examples in the US as well. E.g, the least violent state (Maine) also is the least racially diverse.

Like you say, it's not hard to believe that homogeneity (whether race, religion, culture, ethics, politics etc.) causes less conflict. Naturally, that's an awful justification for a terrible practice.

But you find many tunnel-visioned "the statistics justify the means" arguments: minimum wage, gun control, privacy, etc. Proper laws are not just about statistically good outcomes.

</comment></comment></comment></comment></comment></comment><comment><USER7> Germany actually just introduced minimum wage a few years ago. They did not actually have this. Their unemployment rate is at an historic low. So the arguments used against that here did not quite pan out either.

But of course Germany was a bit of an anomaly in Europe: this stuff is old news to most of the rest of Europe.

Regardless of ideology, the debate seems to be about the cost of minimum wage (especially on the right side) and not really about the benefits. The benefits of not having abject poverty in your society are many. Minimum wage is an important tool for that. Regardless of your position on this, you'd have to consider both cost and benefits for any analysis worthy of that word.

To name just one such benefit, people with disposable income tend spend that income on things. This is great for the local economy. So instead of funneling money up the corporate hierarchy towards off shore accounts, a second house for the CEO, or whatever, funneling money back into the economy where it actually gets used has an effect on that economy: it grows.

Seattle seems to be doing fine demonstrating that this works as advertised. More people can afford to go to restaurants so the restaurant business is booming. That should not be that surprising to economists.

<comment><USER8> > So instead of funneling money up the corporate hierarchy towards off shore > accounts, a second house for the CEO, or whatever, funneling money back into > the economy

I assume the CEO isn't willing to generously give up their second house and will find a way to push this cost onto all consumers including those happily earning higher wages.

Is there a mechanism in place to prevent this?

<comment><USER9> The same mechanism that ensures that the local coffee shop isn't charging so much that the owner has a second house in Bermuda — if you raise prices that much you won't be competitive.

Obviously in an particular case, who knows? But in general I think the expectation is that the market will decide.

<comment><USER10> A minimum wage isn't one coffee shop with expensive beans. It means Every shop has expensive beans.

<comment><USER11> Minimum wage raises in America generally come out of the landlord's pocket, not the consumer's.

<comment><USER12> I'm not sure what your statement means. Can you explain what you mean?

<comment><USER11> Landlords have wide pricing power. They basically get all of the money. Rents rise until merchants make minimal margins. If the law says that wages have to go up, that depresses margins and therefore rents.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> > But a new paper by the same authors (Sci-Hub mirror) shows that the rising > minimum wage generated major increases for the workers who had the most > hours, whose hours were only cut a little, but still came out ahead thanks > to the wage increase; workers with fewer hours saw no financial harm from > the rising minimum wage, working fewer hours and bringing home the same sum; > and they found some harm to people who had the smallest number of hours) > (which may actually reflect stronger demand for workers and fewer workers in > this category of very-low-hour work).

Is this actually reversing the claim? Or just making a narrower claim that the minimum wage hike increased _some_ workers. Most claims around the negative effects of minimum wage say that workers will lose employment - not that those workers who remain employed will suffer. By restricting the conclusion to "the workers who had the most hours, whose hours were only cut a little" essentially dodges the question of whether the change benefited workers as a whole.

Ultimately, though, this is a subjective questions. If you have 10 workers, making $12.50 an hour and if you had the option of making 9 of them get $15.00/hr but one of them gets fired is it a good outcome? The pool of workers are making a greater amount of money (it "breaks even" as other commenters have put it), but does that $2.50 an hour increase for 9 workers offset the negative of one of them getting fired? Maybe getting fired has less tangible effects that make the net increase not worth it. That fired worker may end up on the streets. Is instability of income is a greater problem than low income? I'm not saying there is any right answer here, my whole point is that it's subjective to determine what outcome is better.

<comment><USER14> If you're concerned about and increase in _minimum_ wage, I'm confused about why you have extra staff.

Alternatively you're saying that the remaining 9 workers are going to be doing an additional 1/9th of the work, so presumably the hours.

So all you've done is kick someone onto the street (I do love the claim that you are on their side, while fighting against wages rising), while paying the same amount - possibly more due to overtime wages.

So yeah, if your business is poorly run you may get a significant impact from a fairly minor wage increase, but mostly because your business was already poorly run.

<comment><USER15> Presumably you don't have _extra_ staff; you have the amount of (relatively unskilled) staff that can (and will) do the job in the time allotted. As soon as you have to pay them more, you expect more from them. The workers that can't deliver $15/hour in value get let go. The ones that can deliver stay on. This is great for the existing workers that were already delivering that value but were underpaid. For the workers that can only deliver $7.25/hour ... they're never going to get (or keep) another job.

<comment><USER16> Why weren't people paying the workers who deliver $15/hr in value that much money? Those people are getting fucked by the system.

<comment><USER17> where do you think profit comes from? The excess value generated by employees is extracted by the owners of the business.

</comment></comment></comment></comment></comment><comment><USER18> This issue isn't about economics of course, but what I don't quite understand is why the right feels like it's an injustice to change the playing field, like it's cutting in line, or will put the laws of nature into chaos if someone gets more than their fair share for the work they did. I really don't follow...

<comment><USER19> > This issue isn't about economics of course, but what I don't quite > understand is why the right feels like it's an injustice to change the > playing field, like it's cutting in line, or will put the laws of nature > into chaos if someone gets more than their fair share for the work they did. > I really don't follow...

But it is about economics. The theory of the minimum wage is that you take money from some hypothetical fat cat capitalist who would otherwise have stored it in a mattress to no avail and instead give it to a hard working stiff who can benefit their lives with it.

The problem is that there are also a multitude of other things that can happen instead, pretty much all of which are bad and do actually happen in practice. The money may come from someone other than a fat cat, like a local small business owner or a working class customer. If prices rise, local businesses may be less competitive, resulting in higher unemployment and a smaller tax base (resulting in lower tax revenues or higher tax rates or both). The working stiff may lose their job. In the worst case, the entire business may close down. It's quite a bit worse than cutting in line.

If you really want to understand the problem, list every consequence can think of for a minimum wage of $1000/hour. Most of the problems still apply at $15, just at a smaller scale.

<comment><USER20> The theory of the minimum wage is just the theory of a price floor. The effect on employment is dependent on the market composition and the cross-price elasticity of labour. Comparing a price floor of $15/h (highly substitutable unskilled labour) with $1000/h (unsubstitutable specialist labour) isn't really tenable.

For most minimum wage positions you'll find the bulk is employment by large firms (potentially under a franchise arrangement), labour is substitutable, and wage-bargaining power is weak. Total production is more likely to be driven by demand, and a (relatively) small unit cost increase is likely to be absorbed (if anything, we'd expect it to affect firm profit more than purchased labour).

You're correct that less competitive SMEs may be affected more here, operating as a price taker for both their product and labour. These firms however will be disproportionately affected by any external market movement - there's nothing particularly magical about a minimum wage increase.

<comment><USER19> > The effect on employment is dependent on the market composition and the > cross-price elasticity of labour. Comparing a price floor of $15/h (highly > substitutable unskilled labour) with $1000/h (unsubstitutable specialist > labour) isn't really tenable.

The proportional composition of the markets wouldn't be exactly the same, but they're both highly diverse markets. It's not just unskilled labor, it's anything with an oversupply of qualified labor, e.g. internships or childcare. Even unskilled labor has a wide variety of potential substitutes depending on context.

> For most minimum wage positions you'll find the bulk is employment by large > firms (potentially under a franchise arrangement), labour is substitutable, > and wage-bargaining power is weak. Total production is more likely to be > driven by demand, and a (relatively) small unit cost increase is likely to > be absorbed (if anything, we'd expect it to affect firm profit more than > purchased labour).

Perhaps, but that doesn't mean there is low elasticity of demand. There is a price at which a large company will automate the job or move the entire facility to a location with lower labor costs.

And a large firm may have a profit margin equivalent to $4/hour rather than $1/hour for a smaller firm, but raise the wage from $10 to $15 and they're both making layoffs (or forced to raise prices).

> You're correct that less competitive SMEs may be affected more here, > operating as a price taker for both their product and labour. These firms > however will be disproportionately affected by any external market movement > - there's nothing particularly magical about a minimum wage increase.

Which is why we prefer to avoid those other things as well.

<comment><USER20> Automation usually requires a high fixed cost to enable long-term low- operating costs. If you suppose a decreasing unit installation cost or scale construction over time you'll eventually hit a point at which companies will automate, especially if there's added efficiency (two examples: McDonald's certainly didn't shift to kiosk solely due to minimum wage, nor could we set an hourly wage low-enough that a typist pool could compete with a common word processor).

Ditto for location shifting: it's dependent on a) the transferability of the activity, b) the cost of shifting, and c) the price differential between the two locations. Minimum wage may be a component in this decision - but it will not be the only one.

For context: I work as a policy economist in Australia, principally in regional employment. The minimum wage rate here is (AU) $18.93/h, unemployment sits at trend around 5.5%. In my experience the primary driver for regional employment (often less complete markets) is labour demand rather than the cost of supply.

<comment><USER19> > Automation usually requires a high fixed cost to enable long-term low- > operating costs.

Sure, but it still has a relationship to wages. You take the fixed cost and amortize it over the expected lifetime of the equipment, add the operating and maintenance costs and compare to wages. If the automation costs $25,000/year per employee replaced then you use it as soon as employees cost more than $25,000/year. It's clear what happens when the cost of an employee rises from $20,000 to $30,000.

> nor could we set an hourly wage low-enough that a typist pool could compete > with a common word processor

Sure you could. No one would willingly take the job for so little money, but that doesn't mean the dollar value doesn't exist. But nobody needs to "save" those jobs because there are many other jobs that pay more. A $0.05/hour job is useless when there are unfilled $10/hour jobs. But a $10/hour job can be better than unemployment when there _aren 't_ unfilled $15/hour jobs and the employer's automation threshold is $12/hour.

> Ditto for location shifting: it's dependent on a) the transferability of the > activity, b) the cost of shifting, and c) the price differential between the > two locations. Minimum wage may be a component in this decision - but it > will not be the only one.

It's not a matter of it being the only factor, it's a matter of whether it pushes the number over the threshold. Which is what happens at the margin.

</comment></comment></comment></comment></comment></comment><comment><USER21> Still makes it practically illegal to produce less than $15/hr value. Can't produce that much? no work for you.

This ensures that, even in the article's revised view, those who _do_ suffer are those most needy.

<comment><USER14> I'd love to know how you get to that conclusion.

<comment><USER22> Its basic accounting. If you have to pay someone $15/hr, they better be providing at least that much value back to you, otherwise you're running a charity

<comment><USER23> Flip it. If you're gong to pay someone $15/hr, you better have something that needs doing that's worth that much to _you_.

One way to look at employment is that it's your responsibility, as the employer, to know how much a job is worth to you; it's their responsibility to perform that job.

If you're having people do something that's not worth what you're paying them? I would say that sounds like you're not running your business very well.

<comment><USER24> That's the point: business won't have people do something that's not worth what they have to pay them. That's what the OP said: "Can't produce that much? no work for you. This ensures that, even in the article's revised view, those who do suffer are those most needy."

</comment></comment></comment></comment></comment><comment><USER25> As a small business owner in a state that recently passed minimum wage hikes up to 50% higher than 5 years early let me share my experience. We have raised wages pretty dramatically but realistically it has absolutely nothing to do with the minimum wage hike. Since unemployment is so low in our state we actively need to compete with other businesses to hire people and the strongest selling point is offering better wages. Now obviously the hike has forced us to pay more than we regularly would.

The results of this is that we have raised the amount we charge customers. Those customers then complain that their having to pay more for the same service. At the same time every single apartment in this area has had its rent increased by a large margin. Cost of goods have gone up. Cost of services has gone up. House prices has gone up as labor cost has as well. The people making 15 per hour before are now getting paid the same as the entry level workers. Any employee that has been loyal to the company has not had the same wage increase as the other workers yet they are paying more for everything they purchase.

In my opinion minimum wage hike is "working" simply because of the low unemployment rate and the booming economy. The statistics don't really paint an accurate picture. Ask any of my employees if they are better off today than they were 5 years ago and most would say no. The employees we have had for 5+ years would say they are worse off today.

</comment><comment><USER26> So an economic free lunch, cool. /s

"Ce qu'on voit et ce qu'on ne voit pas"

<comment><USER27> There are certainly conceivable changes to economic policy that result in net gains to all parties. There's nothing theoretically impossible about arguing that such a thing has happened.

</comment></comment><comment><USER19> Policy-based evidence making. Reasonable economists find an inconvenient result, so pressure them to recant. Then they print something that doesn't contradict the original result, but it's less adversarial to the policy, so call it a reversal in the headline.

> As was demonstrated back in 1994 by economists Alan Krueger and David Card, > modest, gradual wage increases have not been shown to reduce employment or > hours worked in any significant way.

In other words, small changes have small effects. But also small benefits. What's the point of something that at best only breaks even?

<comment><USER27> A policy that is generally break even from an efficiency standpoint but reduces unwanted negative outcomes like poverty and income inequality is a clear win.

<comment><USER19> > A policy that is generally break even from an efficiency standpoint but > reduces unwanted negative outcomes like poverty and income inequality is a > clear win.

But the break even is on poverty and income inequality, even before you consider the inefficiencies. _Then_ the money has to come from somewhere -- either the employer (in many cases a local small business) has to eat it, or they pass it onto the customer in the form of higher prices. It also makes local businesses less competitive against the likes of Walmart and Amazon.

<comment><USER23> That would only happen if the employees with cut hours then didn't spend their now-free hours on other stuff. If they just end up twiddling their thumbs, sure, maybe it's break even.

Maybe the people whose hours get cut are those who need the extra time more than the extra cash. Maybe they take that extra time and use it making money elsewhere, outside of the scope of what the study could measure.

Do you know what those people did with that now-free time?

<comment><USER19> > Maybe they take that extra time and use it making money elsewhere, outside > of the scope of what the study could measure.

A study measuring hours worked that didn't account for hours worked in other jobs would be pretty useless.

> Do you know what those people did with that now-free time?

Something valued at no more than their original wage, as demonstrated by the fact that they had been willing to not do it in exchange for that amount of money. Meanwhile the thing they were previously doing at work was valued at least in that amount, as demonstrated by the fact that the employer had been willing to pay that much for it.

<comment><USER23> > Something valued at

I mean, good point, almost a great point, except, by whom? There are other forms of value than money.

You're right that it's unlikely they've made up the overall reduction in wages by doing something else and why, but you're missing what I'm trying to point out.

<comment><USER19> I gather your point is that the employee gets the value rather than the rest of society. But that's just the broken window fallacy.

Most companies' margins are small. More than 90% of the value typically goes to someone else -- customers, other employees, suppliers (and their employees), etc. Even the business owners for a lot of small businesses are only scraping by. There is no guarantee that 0.75X value can outweigh 1.25X value just by going to one person rather than another, and all the usual reasons to expect that it won't.

<comment><USER23> Oh hmm, no, that's not my point. My point is that unless the study also looked into what the people with fewer hours then did with the now-free hours, we all have insufficient information with which to make a good/bad judgement call on it.

I don't follow your utilitarian math. Can you rephrase?

> that the employee gets the value rather than the rest of society.

I don't think drawing this line is reasonable. The employee is part of society, trying to reason from a starting point of separating them from it just seems silly.

As far as I understand your argument, I definitely do not agree that it's a broken window fallacy. In your view, what is the broken window in this case?

(Not the fallacy, the thing that would be the literal broken window).

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER28> of course it doesn't.

It also didn't bring ford down a ~100 years ago like all of the economists predicted then either.

<comment><USER29> is there an upper limit to minimum wage ?

what would it be and why?

</comment></comment><comment><USER30> Needs to get more coverage, weighted by the impact the first claim had. Would a wayback machine for citations help find who is in duty bound to say "that thing we said, cited? they retracted.." or not?

</comment><comment><USER31> Left out of the boingboing praise, but in the abstract:

"On net, the minimum wage increase from $9.47 to as much as $13 per hour raised earnings by an average of $8-$12 per week. The entirety of these gains accrued to workers with above-median experience at baseline; less-experienced workers saw no significant change to weekly pay. Approximately one-quarter of the earnings gains can be attributed to experienced workers making up for lost hours in Seattle with work outside the city limits."

That seems opposite to the summary in Boingboing. It's also in agreement with many studies and theory which should price the lowest performing out of jobs as they cannot add enough value to make it worth an employer hiring them. Increased wages by fiat long enough merely increase inflation.

<comment><USER32> Wages are not a uniform entity. Increasing the minimum wage has very minimal economic impact becase it makes up a tiny fraction of the US economy. Consider increasing pay 7$ per hour for all 542,000 US workers workers making minimum wage * 40 hours a week * 48 weeks a year = 7.2 Billion per year that's chump change at under 0.04% US GDP. (That's right not under 4% but under 0.04%.)

Yes, many people make more than minimum wage, but not 7$ more than minimum wage. However, for them it's a smaller increase so again it does not add up to much.

<comment><USER31> I don't see how it addresses the issues in the research. Care to explain?

If min wage is set to X, anyone incapable of adding more then X to an employer is priced out of the job market. In this research the rise in wages resulted in reduced hours which were made up in neighboring markets which did not have this min wage.

<comment><USER32> I was addressing your inflation statement which is really not supported by evidence.

In terms of pricing people out of the workforce, that's not nessisarily a bad thing on net assuming a strong safty net. But again separate argument.

<comment><USER31> Two things: raising the min wage puts upward pressure on wages above the min also, so your estimate is not correct. Someone making min+1 will still expect to make min+~1 after the hike. Also, inflation need not be national to be inflation.

This is why places with higher min wages tend to have higher overall wages and higher overall prices. These things do not operate in a vacuum.

Look at prices where wages are low compared to process where wages are high, e.g., SF versus smalltown Alabama.

So there is ample evidence that these things are related. By taking national averages you necessarily miss the local variation which clearly shows a price/wage correlation.

</comment></comment></comment></comment></comment><comment><USER33> This implies that the critism was honest.

(Disclaimer, haven't read the article)

</comment><comment> village-idiot Minimum wage is nothing more than a privatized social safety net.

</comment><comment><USER34> WSJ's take on the same study: [https://www.wsj.com/articles/seattles-fake- free-lunch-154102...](https://www.wsj.com/articles/seattles-fake-free- lunch-1541026906)

<comment><USER35> The Wall Street Journal also likes to frame $260,000 and $650,000 incomes as typical Americans struggling to get by (originally posted on WSJ regarding Obama-era tax increases): [http://i.imgur.com/bdgZa.jpg](http://i.imgur.com/bdgZa.jpg)

It's hard to regard this Rupert Murdoch publication's opinions on money as grounded in any sort of reality.

<comment><USER36> The article ([https://www.wsj.com/articles/SB10001424127887323689604578220...](https://www.wsj.com/articles/SB10001424127887323689604578220132665726040)) said nothing of the sort. It said that while the bulk of the tax increases were at the high end of the income spectrum, many individuals and couples with incomes in the 180k-500k range could see significant tax increases, too. That was contrary to the general portrayal of the "American Taxpayer Relief Act" as retaining the Bush-era tax cuts on everyone with less than 400k in income.

<comment><USER35> > It said that while the bulk of the tax increases were at the high end of the > income spectrum, many individuals and couples with incomes in the 180k-500k > range could see significant tax increases, too.

It's amazing that a non-insignificant number of people on HN don't think that's on the high end of the income spectrum. In most places in America, you'd be considered quite handsomely rich if you're making $200,000 a year. It puts you very, very solidly in the top 5% of earners. $300,000 puts you in the top 1%.

That people think that's "contrary to the general portrayal of the American Taxpayer Relief Act" is bizarre. A comic with objectively high income earners making sad puppy dog faces because 1% of their massive income is gone is a sign that the publisher is out of touch with the reality that typical Americans face.

<comment><USER37> $200k wasn't in the top 5%, even in 2013. Squarely in the top 10%, though. Source: [https://www.cbo.gov/publication/51361](https://www.cbo.gov/publication/51361)

<comment><USER38> > $200k wasn't in the top 5%, even in 2013. Squarely in the top 10%, though. > Source: [...]

This is incorrect. The source you cite lists the average income by percentile group, which is not the metric one wants - the average income of the top 5% is skewed by the incomes of very high earners.

One actually wants the lowest income in a percentile group; the top 5% started at around 197,000 in 2013.

Source: pg 16 of the 2013 Census income report

[https://www2.census.gov/library/publications/2014/demographi...](https://www2.census.gov/library/publications/2014/demographics/p60-249.pdf)

</comment></comment></comment></comment></comment></comment><comment><USER39> yeah but does that take into account reduced benefits. Amazon raised minimum wage to $15/hour, which got a ton of press, but simultaneously eliminated stock compensation for those same employees, which got much less press.

<comment><USER40> This was still a major net positive for the employees of the warehouse, because the stock compensation was nearly worthless given vesting time and so forth.

<comment><USER19> > Several Amazon warehouse employees have criticized the move, stating they > would actually be losing thousands in incentive pay.

[https://www.theverge.com/2018/10/3/17934194/amazon- minimum-w...](https://www.theverge.com/2018/10/3/17934194/amazon-minimum-wage- raise-stock-options-bonus-warehouse)</comment></comment></comment>


Want to do a startup with bootstrapping! - <AUTHOR> http://geniteam.com Want to do a startup with bootstrapping!
By Khurram Samad: Founder & CEO GeniTeam
The write up is based on my personal experience and learning while working with serial entrepreneurs. After having helped various startups, I launched GeniTeam in 2006 to provide dedicated software engineers to help entrepreneurs develop products with bootstrapping. Over the years, my own startup has gained momentum and helping promising startups based in North America, Netherland and Israel.
GeniTeam Business Model:- Many people come across innovative idea but fail to materialize it for lack of resources. The barriers for high tech startup are high for huge upfront investment requirement. Hence, many people seek funding from venture capitalists, by giving up significant amount of equity or give up idea for lack of access to funding. GeniTeam provides an alternate to such entrepreneurs by allowing them hire virtual team members with GeniTeam, at fraction of cost to help entrepreneurs materialize their dreams. The dedicated virtual team members are hosted with GeniTeam in Lahore, Pakistan and whose growth is linked to growth of startup. The time difference allows entrepreneurs to monitor and instruct virtual team members in evening and generating cash flows for startup by doing consulting or job in day time.
How my faith strengthened on business model:- The company's business model has evolved out of my personal consulting for CambridgeDocs, an XML conversion company. I worked single handed from my home in Pakistan, to help the startup expand its product line. During my consulting, I refined "virtual team" model and build the confidence to expand virtual team in Pakistan. After 6-8 month of successful work, the company decided to start its offshore operation in Lahore, Pakistan. This strengthened my faith on my business model, as most of the engineers working with CambridgeDocs were graduates of Massachusetts Institute of Technology, USA. After establishing and training initial resources for offshore office, I started helping multiple companies. Over last 3 years, I have refined the processes for virtual team and created few more success stories.
Does GeniTeam take Equity:- We only take equity if we invest with the startup. Our resource cost is pretty nominal, and hence startup's generally don't need to share equity. The partnering startups are free to change vendor or quit us, if they wish. They also have an option of acquiring virtual team to own the startup team.
Then how does GeniTeam make money:- GeniTeam primary cash flows are through product development. GeniTeam is working on "Team Room", "Multiplayer Mobile Games over GPRS", and online tutoring application, developed in rich internet applications. In future, GeniTeam would like to help startups refine ideas and develop marketing plans.
Is GeniTeam a traditional outsourcing company? Our philosophy is radically different from traditional outsourcing companies. GeniTeam believes in building partnerships with startups, and growing with them. GeniTeam is serving niche high tech startup segment, not catered by traditional outsourcing companies. Distinguished by vision, our model allows partnering companies build and retain expertise X as they could do by hiring resource with them.
How can people manage people from 10000 miles away? This is the most frequent question I hear on sales. I believe internet has revolutionized our lives, and also the work environments. With such changes, virtual team and virtual office have become reality. However, the processes to manage virtual team are slightly different and require enhanced communication and reporting techniques. It requires almost 1 to 2 months, to fully reap the benefits of virtual team. I personally believe, it really worth investing time and few bucks in idea.
 How to Contact GeniTeam? Please visit www.geniteam.com to know us more and contact us at email@example.com for details.

 <comment><AUTHOR> I will try to answer the questions, to best of my knowledge. I understand traditional outsourcing has been detrimental to product development, and probably worked well for business process outsourcing. At GeniTeam, with a focus on high-tech startup, the processes and models are totally different to traditional outsourcing firms. I believe a dozen success stories will definitely help people give the model a thought. Hosting virtual team in Pakistan provided us with access to untapped skilled labor resources. With the recent surge in demand for skilled IT resources, startups won't be able to recruit resources within US; hence companies relying on innovative solutions to meet HR demands will get definitely get sustainable advantage. Despite the fact of my upbringing in Pakistan, the experience has been very good. The good universities in Pakistan e.g. LUMS, FAST, GIKI etc, builds basic problem solving skills, that can be applied across various problems. To instantiate the argument, I will share with you that our resources are working on ahead of curve technologies, i.e. Flex 2.0, Open Laszlo, Google Gears etc, for which it's even hard to find resources in USA.

</comment><comment><USER2> Is GenITeam your startup? There's certainly room in the marketplace for companies like GenITeam but most of the people on this site are strongly against outsourced development for the products they are building. That's cool you're running it out of Pakistan though, I haven't seen any freelance development firms in Pakistan before.

How is the local programming education? Do the Pakistani universities teach Microsoft languages or Java or something else?</comment>


Binomial Distribution (Easily Explained) - <AUTHOR> https://elbauldelprogramador.com/en/binomial-distribution/ <comment><USER2> Thank you , that was a nice read that explained things pretty clearly.

<comment><AUTHOR> Thanks for reading it! I am not the author, but the owner of the blog.</comment></comment>


Does Gravity Travel at the Speed of Light? - <AUTHOR> http://math.ucr.edu/home/baez/physics/Relativity/GR/grav_speed.html <comment><USER2> Steve Carlip used to be my advisor in grad school and his style of writing shows his beautiful way of explaining (and thinking about) deep questions in physics.

One think that I believe is important to point out is that this short essay is focusing on the experimental aspect of the measurement of the speed of gravity. It gives an explanation on why this is even an intelligent question to answer and why the answer we commonly accept is that gravity moves at the speed of light. I will never have better words than him so I won't add anything to what he said.

What I would like to point out, is that this essay is not talking about whether or not theoretically would be possible to have a speed of gravity faster than the speed of light. General relativity and special relativity have been tested on several aspects, and they pretty much are in agreement with all experimental constraint. There is no other theory that can explain everything we see (some theories tend to explain a few things, but not all of them, or they are too vague).

A theory in which the speed of gravity is faster than the speed of light isn't unconceivable per se, but no one has been able to write a completely consistent one yet, mostly because it would have large consequences on what special and general relativity imply for cosmology and particle physics (and causality). If gravity moved faster than the speed of light then we'd have to 'fix' a lot of problems coming down to paradoxes and stuff like that.

So take this essay as a way to appreciate how elegant and fine some experimental questions on gravity (and physics) are.</comment>


Silver Bullets and Fairy Tails - <AUTHOR> http://blog.exodusintel.com/2014/07/23/silverbullets_and_fairytails/

<comment><USER2> From this post: "The I2P vulnerability works on default, fully patched installation of Tails. No settings or configurations need to be changed for the exploit to work."

From [https://tails.boum.org/security/Security_hole_in_I2P_0.9.13/...](https://tails.boum.org/security/Security_hole_in_I2P_0.9.13/index.en.html) : "Tails does not start I2P by default. […] Still, an attacker who would also be able to start I2P on your Tails, either by exploiting another undisclosed security hole, or by tricking you into starting it yourself, could then use this I2P security hole to de-anonymize you."

So either there are two security holes (one amazing one that actually starts I2P, and one contained to I2P that finds your IP address once I2P has started), or they're exagerrating.</comment>


60 Really Cool and Creative Error 404 Pages - <AUTHOR> http://www.hongkiat.com/blog/60-really-cool-and-creative-error-404-pages/ <comment><USER2> I don't know if cool and creative is necessarily what I'd aim for.

Tell them what went wrong, tell them why it went wrong, tell them what they can do about it. Then, maybe, make a joke.

Here's mine. Nothing to write home about, but it describes the problem in terms my customers can understand, and gives them options which work for the majority of people.

<http://www.bingocardcreator.com/doesnt/exist>

I'd add a search box but it has never been a pressing priority since I can correct borked links on the backend, which means "blogger typoed a URL" only 404s until I get to my admin interface.

<comment><USER3> There's something about an apology in an error message which I find incredibly grating. I don't think it's just me -- the feedback we've had in user testing has backed this up.

But saying "We're terribly sorry" is worse because a) Who is "we"? and b) "terribly sorry" is even more grating than just "sorry".

</comment></comment><comment><USER4> Always put the site map on the 404 page, but you should be looking at the 404's and fixing them too.

If someone is sending 10 people a day your way with a mistyped url you should catch it and redirect it.

So if marshallk profiles your hot startup and sends everyone to <http://yoursi.te/bunnys.html> when they should have been going to <http://yoursi.te/bunnies.html> catching it and fixing it on your end should be part of the 404 view.

</comment><comment><USER5> They are cute but they aren't solving the problem and helping the user recover.

A better example is Motley Fool. It has a cute little haiku which defuses the situation but then they give a lot of recovery advice.

<http://www.fool.com/foobarbazqux>

</comment><comment><USER6> I've never put this much effort into my 404 pages. Usually it's just a "The page you typed in cannot be found. Please check the spelling or use the search box below if you need help finding it." Or something like that at least.

</comment><comment><USER7> None of these 404's are very helpful to the site user or administrator, just funny.

<comment><USER8> Yeah. I'd hoped they would show some error pages with some utility behind them. And not all of these are very impressive. The list is quite padded - though that's to be expected, with lists nowadays...</comment></comment>


Ask HN: Freelancer? How do you track your time/billing - <AUTHOR>

As any web freelancer, I have multiple clients, multiple rates and even the odd subcontractor.
Each client (hopefuly) pays at different time.
And I would love to see some history and statistics.
What would be a good tool ? <comment><USER2> Try slimtimer, it's free, has API and even ruby gem !

</comment><comment><USER3> I've been using freshbooks.com for quite awhile now and I like it a lot. I'm a one-man shop and it seems to fit my needs perfectly.

</comment><comment><USER4> I hear letsfreckle.com is good for this?</comment>


IPad ushers in curated computing, what's next? - <AUTHOR> http://arstechnica.com/gadgets/news/2010/05/curated-computing-whats-next-for-devices-in-a-post-ipad-world.ars

<comment><USER2> Actually, the concept isn't really new, people are just slapping a new name on it. Look at video game consoles: that's also "curated computing". That's one of the nicer examples of "more relevance through less choice".

The real question is just how far you can take it in one direction. I don't think that general-purpose computers can be taken too far in that direction, but that's just my personal opinion.

<comment><USER3> "Curated" computing is not going to result in the disappearance of the non- curated kind. As you point out, it's been going on for awhile. So long as GP Computing has a market, it will exist.

</comment></comment><comment><USER4> "Less Choice" is Apple's model, but it's not the only one. After playing around with the Nexus One from Google I/O, I'm convinced that a fully- functional platform is just as good as the locked-down Apple one.

I'd probably recommend Apple's mobile and tablet platform to less tech-savvy people because it's definitely a more streamlined experience for people who only do the things that it can do.

I'm torn right now because I really want an Android-capable, Google-branded tablet. It's not necessarily the curated computing experience, it's the form factor that's less frustrating than surfing on a phone keyboard, but more convenient than lugging my 15" laptop around.

</comment><comment><USER5> While arguably jump starting the market for tablets, I don't really believe the iPad defines what tablets will or will not do in the immediate future. I suspect we'll see far more flexibility in future devices, especially from Apple's competitors, who can use a more open approach as a selling point against the iPad.

<comment><USER3> A really good curated model has a definite market. It's also a large and lucrative market, since it represents the mainstream. Lastly, it's been an underserved market. (Come to think of it, isn't Facebook also "curated" networking?)

<comment><USER5> I totally agree, but as mmastrac points out, the form factor is very compelling. I can't imagine someone won't figure out a happy medium between "passive" users and more active ones.

<comment><USER3> Why not just different Configs to suit different users?

</comment></comment></comment></comment><comment><USER6> I wonder if some early aviators were outraged when commercial pilots first started piloting people around in closed bodies:

"Why do you need a pilot when you can fly these babies yourself?",

"The wind in your face is half the joy!",

"Flying is _supposed_ to be dangerous!".

<comment><USER2> It's easy to cry "dinosaur" when you're using a flawed analogy. Your flying analogy is about the evolution of a technology whose purpose has been narrow right from the start: get people and/or things from A to B _real fast_. Computing has very quickly evolved from a narrow purpose of "executing computations" to something extremely versatile. In that context, iPad is not really the evolution of computing, it's a specialization of one part of it.

<comment><USER7> > "Computing has very quickly evolved from a narrow purpose of "executing > computations" to _something extremely versatile_." [emphasis mine]

Has it? I mean, from the user perspective.

Whereas PCs _are_ extremely versatile, curated walled gardens like Facebook and the iPad argue very loudly that versatility itself is not something users care about. Certainly not at the high costs to usability and stability that have traditionally gone hand-in-hand with it.

It may very well be that only those on the bleeding edge are willing to pay those costs.

</comment></comment></comment><comment><USER6> Curated computing is exactly what a whole section of the market needs: No Viruses; No Malware; No Porn; Automatic backups as you charge; One finger Facebook.

<comment><USER7> I'd argue the market would react well to curated porn as well. Clearly, almost every single person online is interested. Remove the malware and unintended consequences (e.g. other people stumbling across your browsing history) and it would also be a huge hit with a substantial market.

Further, I think it's wrong to slip social judgment into a largely technological concern. Porn is something some users may not want and certainly don't want showing up when their kids use a device, but it's hardly on par with malware and viruses.

</comment></comment><comment><USER8> There are obvious benefits to "curated computing", but is there any evidence that the App Store wouldn't work if users were free to use software from other sources? If not, if the App Store would be completely undermined by giving users the ability to install software directly from the web, wouldn't that indicate that consumers don't actually prefer "curated computing", but are merely willing to put up with it in order to have the nicest device available?

<comment><USER9> Well, there's a spyware infested world of Windows computers and a large contributing factor to that is that they allow you to run software from any sources.

</comment></comment><comment><USER10> Perhaps 'curated computing' is just a more acceptable way of describing a walled-garden?</comment>