Apples Fout
Wil je een startup beginnen? Word gefinancierd door Y Combinator.
November 2009
Ik denk niet dat Apple beseft hoe erg het goedkeuringsproces van de App Store kapot is. Of beter gezegd, ik denk niet dat ze beseffen hoe belangrijk het is dat het kapot is.
De manier waarop Apple de App Store runt, heeft hun reputatie bij programmeurs meer geschaad dan al het andere wat ze ooit hebben gedaan. Hun reputatie bij programmeurs was vroeger geweldig. Vroeger was de meest gehoorde klacht over Apple dat hun fans hen te kritiekloos bewonderden. De App Store heeft dat veranderd. Nu zijn veel programmeurs Apple als kwaadaardig gaan zien.
Hoeveel van de goede wil die Apple ooit had bij programmeurs, hebben ze verloren door de App Store? Een derde? De helft? En dat is alleen tot nu toe. De App Store is een voortdurende karma-lek.
Hoe is Apple in deze puinhoop terechtgekomen? Hun fundamentele probleem is dat ze software niet begrijpen.
Ze behandelen iPhone-apps zoals ze de muziek behandelen die ze via iTunes verkopen. Apple is het kanaal; zij bezitten de gebruiker; als je gebruikers wilt bereiken, doe je dat op hun voorwaarden. De platenlabels gingen, met tegenzin, akkoord. Maar dit model werkt niet voor software. Het werkt niet voor een tussenpersoon om de gebruiker te bezitten. De softwarebranche leerde dat in de vroege jaren 80, toen bedrijven als VisiCorp lieten zien dat hoewel de woorden "software" en "uitgever" bij elkaar passen, de onderliggende concepten niet. Software is niet zoals muziek of boeken. Het is te ingewikkeld voor een derde partij om als tussenpersoon tussen ontwikkelaar en gebruiker op te treden. En toch is dat wat Apple probeert te zijn met de App Store: een softwareuitgever. En een bijzonder overheersende, met kieskeurige smaken en een rigide huisstijl.
Als software-uitgeverij in 1980 niet werkte, werkt het nu nog minder nu softwareontwikkeling is geëvolueerd van een klein aantal grote releases naar een constante stroom van kleine. Maar dat begrijpt Apple ook niet. Hun model van productontwikkeling is afgeleid van hardware. Ze werken aan iets totdat ze denken dat het af is, dan brengen ze het uit. Dat moet je doen met hardware, maar omdat software zo makkelijk te veranderen is, kan het ontwerp profiteren van evolutie. De standaardmanier om applicaties nu te ontwikkelen, is snel lanceren en itereren. Wat betekent dat het een ramp is om elke keer dat je een nieuwe versie uitbrengt lange, willekeurige vertragingen te hebben.
Blijkbaar is de houding van Apple dat ontwikkelaars voorzichtiger moeten zijn bij het indienen van een nieuwe versie bij de App Store. Dat zouden ze zeggen. Maar hoe machtig ze ook zijn, ze zijn niet machtig genoeg om de evolutie van technologie terug te draaien. Programmeurs gebruiken launch-fast-and-iterate niet uit luiheid. Ze gebruiken het omdat het de beste resultaten oplevert. Door dat proces te belemmeren, zorgt Apple ervoor dat ze slecht werk leveren, en programmeurs haten dat net zo veel als Apple dat zou doen.
Hoe zou Apple het vinden als ze, wanneer ze een ernstige bug in OS X ontdekten, in plaats van onmiddellijk een software-update uit te brengen, hun code moesten indienen bij een tussenpersoon die er een maand op zat en het vervolgens afkeurde omdat het een icoon bevatte dat ze niet leuk vonden?
Door softwareontwikkeling te breken, bereikt Apple het tegenovergestelde van wat ze bedoelden: de versie van een app die momenteel beschikbaar is in de App Store, is doorgaans een oude en buggy versie. Een ontwikkelaar vertelde me:
Als gevolg van hun proces, zit de App Store vol met halfbakken applicaties. Ik maak bijna elke dag een nieuwe versie die ik uitbreng aan bètatesters. De versie in de App Store voelt oud en waardeloos. Ik weet zeker dat veel ontwikkelaars er zo over denken: één emotie is "Ik ben niet echt trots op wat er in de App Store staat", en het wordt gecombineerd met de emotie "Echt, het is de schuld van Apple".
Een ander schreef:
Ik geloof dat ze denken dat hun goedkeuringsproces gebruikers helpt door kwaliteit te garanderen. In werkelijkheid komen bugs zoals de onze de hele tijd door en dan kan het 4-8 weken duren voordat die bugfix is goedgekeurd, waardoor gebruikers denken dat iPhone-apps soms gewoon niet werken. Nog erger voor Apple, deze apps werken prima op andere platforms die onmiddellijke goedkeuringsprocessen hebben.
Eigenlijk vermoed ik dat Apple een derde misvatting heeft: dat alle klachten over App Store-goedkeuringen geen serieus probleem zijn. Ze moeten ontwikkelaars horen klagen. Maar partners en leveranciers klagen altijd. Het zou een slecht teken zijn als ze dat niet deden; het zou betekenen dat je te toegeeflijk tegenover hen bent. Ondertussen verkoopt de iPhone beter dan ooit. Dus waarom zouden ze iets moeten repareren?
Ze komen ermee weg ontwikkelaars te mishandelen, op de korte termijn, omdat ze zulke geweldige hardware maken. Ik heb een paar dagen geleden een nieuwe 27" iMac gekocht. Het is fantastisch. Het scherm is te glimmend en de schijf is verrassend luid, maar het is zo mooi dat je jezelf er niet toe kunt zetten om je er druk om te maken.
Dus ik kocht hem, maar ik kocht hem, voor het eerst, met tegenzin. Ik voelde me zoals ik me zou voelen als ik iets zou kopen dat gemaakt is in een land met een slechte mensenrechtenrecord. Dat was nieuw. Vroeger, toen ik dingen van Apple kocht, was het een onvermengd genot. Oh jongen! Ze maken zulke geweldige spullen. Deze keer voelde het als een Faustiaans pact. Ze maken zulke geweldige spullen, maar ze zijn zulke klootzakken. Wil ik dit bedrijf echt steunen?
Moet Apple geven om wat mensen zoals ik denken? Wat maakt het uit als ze een kleine minderheid van hun gebruikers vervreemden?
Er zijn een paar redenen waarom ze erom zouden moeten geven. Eén is dat deze gebruikers de mensen zijn die ze als werknemers willen. Als je bedrijf kwaadaardig lijkt, zullen de beste programmeurs niet voor je werken. Dat heeft Microsoft veel pijn gedaan vanaf de jaren 90. Programmeurs begonnen zich beschaamd te voelen om er te werken. Het leek op verkopen. Toen mensen van Microsoft met andere programmeurs spraken en zeiden waar ze werkten, waren er veel zelfspotgrappen over het feit dat ze naar de duistere kant waren overgestapt. Maar het echte probleem voor Microsoft waren niet de gênante momenten van de mensen die ze inhuurden. Het waren de mensen die ze nooit kregen. En je weet wie ze kreeg? Google en Apple. Als Microsoft het Keizerrijk was, waren zij de Rebel Alliantie. En het is grotendeels omdat ze meer van de beste mensen kregen dat Google en Apple het vandaag veel beter doen dan Microsoft.
Waarom zijn programmeurs zo kieskeurig over de moraal van hun werkgevers? Deels omdat ze het zich kunnen veroorloven. De beste programmeurs kunnen overal werken waar ze willen. Ze hoeven niet voor een bedrijf te werken waar ze bezwaren tegen hebben.
Maar de andere reden waarom programmeurs kieskeurig zijn, denk ik, is dat kwaad domheid voortbrengt. Een organisatie die wint door macht uit te oefenen, begint het vermogen te verliezen om te winnen door beter werk te leveren. En het is niet leuk voor een slim persoon om te werken op een plek waar de beste ideeën niet de winnaars zijn. Ik denk dat de reden dat Google "Don't be evil" zo gretig omarmde, niet zozeer was om de buitenwereld te imponeren, maar om zichzelf te beschermen tegen arrogantie. [1]
Dat heeft tot nu toe gewerkt voor Google. Ze zijn bureaucratischer geworden, maar verder lijken ze trouw te zijn gebleven aan hun oorspronkelijke principes. Met Apple lijkt dat minder het geval. Als je nu naar de beroemde 1984-advertentie kijkt, is het makkelijker om Apple voor te stellen als de dictator op het scherm dan als de vrouw met de hamer. [2] Sterker nog, als je de speech van de dictator leest, klinkt het onheilspellend als een profetie van de App Store.
We hebben gezegevierd over de onbegrensde verspreiding van feiten.
We hebben voor het eerst in de geschiedenis een tuin van pure ideologie gecreëerd, waar elke werker kan bloeien, veilig voor de plagen van tegenstrijdige en verwarrende waarheden.
De andere reden waarom Apple moet geven om wat programmeurs van hen denken, is dat wanneer je een platform verkoopt, ontwikkelaars je maken of breken. Als iemand dit zou moeten weten, dan is het Apple wel. VisiCalc maakte de Apple II.
En programmeurs bouwen applicaties voor de platforms die ze gebruiken. De meeste applicaties - de meeste startups, waarschijnlijk - groeien voort uit persoonlijke projecten. Apple zelf deed dat. Apple maakte microcomputers omdat dat is wat Steve Wozniak voor zichzelf wilde. Hij kon zich geen minicomputer veroorloven. [3] Microsoft begon op dezelfde manier met het maken van interpreters voor kleine microcomputers omdat Bill Gates en Paul Allen geïnteresseerd waren in het gebruik ervan. Het is een zeldzame startup die niet iets bouwt dat de oprichters gebruiken.
De belangrijkste reden dat er zoveel iPhone-apps zijn, is dat zoveel programmeurs iPhones hebben. Ze weten misschien, omdat ze het in een artikel hebben gelezen, dat Blackberry een bepaald marktaandeel heeft. Maar in de praktijk is het alsof RIM niet bestaat. Als ze iets gaan bouwen, willen ze het zelf kunnen gebruiken, en dat betekent het bouwen van een iPhone-app.
Dus programmeurs blijven iPhone-apps ontwikkelen, ook al blijft Apple ze mishandelen. Ze zijn als iemand die vastzit in een gewelddadige relatie. Ze zijn zo aangetrokken tot de iPhone dat ze niet weg kunnen. Maar ze zoeken een uitweg. Iemand schreef:
Hoewel ik het ontwikkelen voor de iPhone leuk vond, geeft de controle die ze uitoefenen op de App Store me niet de drive om applicaties te ontwikkelen zoals ik zou willen. Sterker nog, ik ben niet van plan om nog meer iPhone-applicaties te maken, tenzij het absoluut noodzakelijk is. [4]
Kan iets deze cyclus doorbreken? Geen enkel apparaat dat ik tot nu toe heb gezien, zou dat kunnen. Palm en RIM hebben geen hoop. De enige geloofwaardige concurrent is Android. Maar Android is een weeskind; Google geeft er niet echt om, niet op de manier waarop Apple om de iPhone geeft. Apple geeft om de iPhone zoals Google om zoekopdrachten geeft.
Is de toekomst van mobiele apparaten er een die door Apple is vergrendeld? Het is een zorgwekkend vooruitzicht. Het zou jammer zijn om nog een sombere monocultuur te hebben zoals we die in de jaren 90 hadden. In 1995 was het schrijven van software voor eindgebruikers effectief identiek aan het schrijven van Windows-applicaties. Onze afschuw voor dat vooruitzicht was het belangrijkste dat ons ertoe aanzette om web-apps te bouwen.
Tenminste, we weten nu wat er nodig zou zijn om de greep van Apple te doorbreken. Je zou iPhones uit de handen van programmeurs moeten krijgen. Als programmeurs een ander apparaat zouden gebruiken voor mobiele webtoegang, zouden ze daar in plaats daarvan apps voor gaan ontwikkelen.
Hoe zou je een apparaat kunnen maken dat programmeurs leuker vinden dan de iPhone? Het is onwaarschijnlijk dat je iets beter ontworpen kunt maken. Apple laat daar geen ruimte voor. Dus dit alternatieve apparaat zou waarschijnlijk niet kunnen winnen op algemene aantrekkingskracht. Het zou moeten winnen door een bepaalde aantrekkingskracht die het specifiek op programmeurs had.
Eén manier om programmeurs aan te spreken is met software. Als je een applicatie zou kunnen bedenken die programmeurs moesten hebben, maar die onmogelijk zou zijn in de afgebakende wereld van de iPhone, zou je ze waarschijnlijk kunnen laten overstappen.
Dat zou zeker gebeuren als programmeurs handhelds als ontwikkelmachines zouden gaan gebruiken - als handhelds laptops zouden verdringen zoals laptops desktops verdringen. Je hebt meer controle nodig over een ontwikkelmachine dan Apple je over een iPhone laat hebben.
Zou iemand een apparaat kunnen maken dat je in je zak draagt als een telefoon, en dat toch werkt als een ontwikkelmachine? Het is moeilijk voor te stellen hoe het eruit zou zien. Maar ik heb geleerd om nooit nooit te zeggen over technologie. Een apparaat ter grootte van een telefoon dat als ontwikkelmachine zou werken, is naar huidige maatstaven niet wonderbaarlijker dan de iPhone zelf zou zijn geweest naar de maatstaven van 1995.
Mijn huidige ontwikkelmachine is een MacBook Air, die ik gebruik met een externe monitor en toetsenbord in mijn kantoor, en alleen als ik reis. Als er een versie was die half zo groot was, zou ik dat verkiezen. Dat zou nog steeds niet klein genoeg zijn om overal mee naartoe te nemen als een telefoon, maar we zitten binnen een factor 4 of zo. Zeker die kloof is te overbruggen. Sterker nog, laten we er een RFS van maken. Gevraagd: Vrouw met hamer.
Noten
[1] Toen Google "Don't be evil" adopteerde, waren ze nog zo klein dat niemand zou hebben verwacht dat ze dat zouden zijn.
[2] De dictator in de reclame uit 1984 is overigens niet Microsoft; het is IBM. IBM leek in die dagen veel angstaanjagender, maar ze waren vriendelijker voor ontwikkelaars dan Apple nu is.
[3] Hij kon zich niet eens een monitor veroorloven. Daarom gebruikte de Apple I een tv als monitor.
[4] Verschillende mensen met wie ik sprak, zeiden hoeveel ze de iPhone SDK leuk vonden. Het probleem zijn niet de producten van Apple, maar hun beleid. Gelukkig is beleid software; Apple kan het onmiddellijk veranderen als ze willen. Handig, nietwaar?
Dank aan Sam Altman, Trevor Blackwell, Ross Boucher, James Bracy, Gabor Cselle, Patrick Collison, Jason Freedman, John Gruber, Joe Hewitt, Jessica Livingston, Robert Morris, Teng Siong Ong, Nikhil Pandit, Savraj Singh en Jared Tame voor het lezen van concepten hiervan.