Programmering

Afvikling af den intense politik bag Node.js

Nyheden, der brød på Node Summit i sidste uge - at Joyent og andre foreslår at oprette en Node.js Foundation - kom ikke nogen overraskelse for nogen, der har set kontroversen omkring alles foretrukne JavaScript-platform på serversiden. Det har været klart i et stykke tid, at Node.js er vokset ud af sine rødder og blevet et vigtigt strukturelt værktøj for softwareindustrien.

Node.js værter hos Joyent planlagde ikke dette - koden havde været et medarbejderprojekt snarere end en strategisk investering. Mens Node.js er en vigtig del af Joyents drift, er det ikke et nøgleprodukt for virksomheden, som bestemt har brugt langt mere på at være vært for det, end det har modtaget i forretningsværdi som en pioner inden for containerbaseret skyinstallation. Joyent fortjener ære for at have handlet ansvarligt og opretholdt sit engagement som forvalter, på trods af den intense interesse - og voldsomme politiske intriger - som den befandt sig i.

Node har set græsrodsadoptagelse, der har ført til implementeringer af virksomheder af den slags, som mange genkender i open source, hvor CIO'er er sikre på, at teknologien ikke er i brug i deres forretning, før de rent faktisk spørger driftspersonalet. Det har igen ført til den sædvanlige dikotomi mellem operationsteams behov for stabilitet (ændres kun, hvor det er nødvendigt, helst sjældent efter streng testning) og udvikleres udsigter (som ønsker at prøve enhver ny idé nu eller før).

Som man kan forvente af et firma med en dyb forpligtelse til stabil drift, falder Joyent fast i den første lejr. Dets driftsfokus understøttes af store implementatorer af Node-applikationer globalt, hvoraf nogle findes som vejledning af den nye Node Foundation.

Men udbredt vedtagelse skaber også startups, der ønsker at udnytte nye behov og tjene penge på deres opløsning. Mange af disse startups er involveret i io.js-gaffelen i Node.js og opfordrer til hyppige udgivelser for at understøtte deres innovationer og forretningsplaner. Udviklere og iværksættere i den lejr har udtrykt forargelse over, at Joyent ikke har drevet flere udgivelser.

Deres kritik af Joyent har været hyppig og veltalende, men i sidste ende har ingen af ​​parterne monopol på sandheden. Joyent føler sig berettiget i sin forsigtighed med "sekvensen af ​​uheldige begivenheder" omkring de mangelfulde bestræbelser på at udrulle en frigivelse i løbet af det sidste år, hvilket ville have ført til kaos, hvis den havde nået brugerbasen. Når alt kommer til alt er Node.js en platform, ikke et bibliotek, og det skal styres konservativt.

Alt dette - virksomhedspolitik, brandudviklerudbrud og resten - overbeviser mig om, at Node.js har brug for et uafhængigt fundament. Ikke at jeg er fan af at oprette open source-fonde til hvert projekt - at placere dit projekt i en nonprofit løser sjældent nogen problemer, og de fleste projekter er bedre til at slutte sig til en eksisterende organisation.

Oprettelsen af ​​en regeringserkendt nonprofit har været historisk vigtig i open source til to formål:

  1. Som en imprimatur af "åbenhed" af en ellers proprietær aktivitet fra et enkelt firma, der tilfældigvis involverer open source-kode
  2. Som en måde at sandkasse forretningspolitikken ud fra det praktiske ved udvikling og skabe et neutralt sted for ægte samarbejde mellem jævnaldrende

I den første rolle forbliver problemerne, selvom de maskeres af finer af en nonprofit. Den anden rolle har brug for en solid samarbejdsbase, før den er på plads. Fonde løser ikke problemer, men de gør løsninger permanente, når de er på plads. Løs først problemer, lav et fundament bagefter.

Node.js har brug for et fundament til at føre tilsyn med det. Dets samfund er sandsynligvis allerede stort nok til at gøre ideen om at slutte sig til et eksisterende samfund som Eclipse eller Apache upassende. Men er det foreslåede fundament det rigtige svar? Bill Scott fra PayPal sagde på Node Summit, at PayPal støtter fundamentet, men holder øje med samfundet. Det forekommer mig at være den rette balance.

Det, der hidtil er blevet foreslået, er en pay-to-play-erhvervsorganisation i image af Linux Foundation med store gebyrer, der ikke er indtægtsrelaterede, for at skræmme startups og regler, der er udarbejdet af store virksomhedsdeltagere som Microsoft og IBM. Dette er bestemt ikke det rigtige svar for at bringe io.js partisans tilbage i folden. Den bitre politik omkring Node.js har bestemt brug for sandboxing, men det gør udviklernes ønske om at drive dagsordenen. En fungerende Node Foundation har brug for både den operationer-respekterende frigivelseskadence, Joyent søger, og det dynamiske F & U-rum, som io.js-iværksættere ønsker.

En model som den, der bruges af Eclipse, fungerer muligvis bedre her. Efter mange års udvikling har Eclipse nu et sæt tiltalende styringsfunktioner til denne situation, især pay-for-play-gebyrer, der også kræver engagement fra udviklere til projektet og strenge grænser mellem forvaltnings- og teknisk styring. Eclipse kræver også donation af varemærket til fonden, et skridt forsømt af projekter på deres fare, hvis de skal undgå fremtidig udnyttelse af varemærkeindehaveren.

Selvfølgelig kan alt dette være forgæves; et afgørende kontrolpunkt for Node.js, dets pakkehåndterer NPM, styres af et startfirma med samme navn. Opdelende politik kan gentage sig, medmindre det også behandles. Det ser ud til, at Node.js-samfundet, ikke kun Joyent, har sit arbejde skåret ud for det.