Um, so I'm sureyouget a lotoffeatures, requestsandfeaturesthatareproposedeverything.
Howdoes a featuremovethroughthecommitteethroughtheproposalprocess?
Um, wehave a stageprocessinthedocumentationofstageonethroughstage.
Forthereis a stagezero.
Um, computerscientists, wedon't knowhowtocount.
Westartcountingitzeroinsteadofone.
Um, but a stagezerostageoneisthisisanideathatthatsomeonethinkswouldbegoodtoaddtothelanguageinstageOneproposalbasicallysaysthecommitteethinkthisisworthwhiletoconsideraddingthelanguage.
Stagetwoisnowinthestepwhereyou'regonnalook.
AttspecTex s o.
Howyouspecifyit.
Youdefinesemanticsandthingslikethat.
Stagethreeiswhereit's implemented.
Bye.
Leasttwoimitationsandimplantationdoesn't necessarilyhavetobe, forexample, theenginejobsconventionsiteof a browser.
So, uh, for a weeconsistentlysay, it's worthnotingthat, um, ourstandardforwhetherornotwe'regonnatacklesomethinginthefirstplaceisn't Isthisnew, uh, syntaxor a P I somethingthatwewanttoadd?
It's Isthere a problemthatwe'regoingtosolve, which I thinkisah, maybe a differentapproachthan a lotofpeopleassumethatwemaketomakingchanges.
I don't knowifit's gonethatfast, but I haveseenproposals, forexample, thatairforveryverily, clearlydefined, um, featuresthatcomein a stagetwobecausethey'vecomewith a really, reallyclearusecase.
Um, I'm spacingontheexactwhen I knowthat a delegatemakeSamuelhad a couplecatchwentthroughveryquicklyup.
She'llcatchjust I'm a bitpuzzledbytheprocess.
Implicationthere.
I don't rememberanything s sotospeak, cominginhisstagetojustthatitrapidlyadvancedstage.
There's a fewexamplesfromtheinternationalizationpointofviewwherewebringthingsdirectlyinitsstagetwo, whichsortofsubwaysforhowtoproposalsworkoninternationalization.
Sowehave a subcommitteewherewewerewereviewinternationalizationPacificfeatures.
I findthatthebiggestbottleneckforusisgettingtheimplementations, becauseintheinternationalizationAP, eyestendstobetotendtohave a lotofdependenciesandaremoredifficulttoimplementsometimesbecauseyouknow, theyverygreatlyfrom, youknow, languagetolanguageand, um, regiontoregion.
Um, soSowetendtohave a lotofproposalsthatgetsstuckinstagethree, um, andthensayit's agethreefor a yearormorebeforethebrowsershaveallhavehaveimplantedthem.
Um, whereaswhereas I know a lotofotherproposalstogetstuckinstageone, stagetwo.
Andonething I wasjustgonnaaddreallyquicklyisthereissomewhatofanambiguityinthestage.
Is, umAndsotheconversationthatMarkand I werehavingrightnowisactually a veryhealthydebatethatcanoftenhappenaroundlikethereistherealityofhowthingsgothrough.
Andsoitisnotuncommonwere a groupofpeoplewholikebeingpedantic.
Itisnotuncommonthatduring a meetingwemayactuallystopanddiscusstheprocessandensurethatwe'rebeingfairtotheprocessthatwe'refollowingallthecriteriain I atleastliketothinkthatitis, toanextent, a livingthing.
Andwewanttobeflexible, andwewanttohave a processthatcreates a greatlanguage.
Um, so, youknow, evenjustthispastweek, I thinkprobablyalmost 1/3 ofthecommitteetimeinthethreemeetingsthatwehadwerediscussing a varietyofdifferentprocesschangesthatwereexploring, um, for a numberofdifferentreasons, includingpotentiallyintroducingMaurremoteworkthatwecoulddoarmorwaysofmeetinginbetweenmeetingsbecauseoneofthethingsthatcan't happen, um, forgoodorforbad.
Wefindtherearesomediscrepancies, andweworkthroughthosediscrepanciesandunifythings, andwe'regoingthrough a proposalnowwherethere's a littleunificationaroundthat.
Wecomparedwitheachotheraswellascompliantwithrespect, says I alwaysliketotalkaboutweaknessesaswell.
A strength A test 262 isanamazingpieceofwork, butit's important.
Understandthatitconsistsofvery, verydetailedunitteststhatgothroughthespeckindofinorderandtrytomakesuretoucheverythinginthespeckindividuallyis a unittest.
Sogoingforward, oneofthethingsthatthat I wasverymuchliketosee, uh, is, uh, somecreativethinkingonhowtobringmoreintegrationtesttotestingthelanguageonhowtodothatwithout a combinatorialexplosion.
Soifyou'reworkingonlike, opensourcelibrariesareworkingonthingsthatdirectlyimpactthestandardsthatwe'reworkingon, thereis a processinwhichyoucouldbeinvitedtocomeandattend a meeting.
Um, we I'm workingononeproposalrightnowformoduleattributeswhere I believe, but I couldbemistaken.
But I believeoneofthepeopleworkingonitisnot a delegate.
Oneofthechampionsissomeonefromtheecosystemwhohelpsmaintainbabble, whosebuildingoutexamplesoftheimplementation, Umand e I won't lielikeitis a littlebitof a blackboxtofigureouthowtogetinvolved.
But, um, whenyoufindthosecontactsinallthesepeoplewhoyouseeonthestagenowcanbein a placewhereyoucanstartthere.
Um, butifyouhaveideasandyoucanget a championexcitedaboutit, there's definitely a lotofwaysthatyoucanhelpdirectlyincreatingproposalsandpotentiallyevencometothemeetingoftheOpenJazzFoundation, inparticularis a memberas a nonprofit, andwehavewithintheOpenJazzFoundation a $40,000 a yeartravelbudgettocovertravelforpeoplewithinthefoundation.
Onthecomplexityofthelanguageis a holeandwhenyou'rethepromoterof a particularfeatureandandevenifyou'renotthepromoterwhenintheroomwerediscussingthefeature, we'reverynaturallyarefocusedonthinkingaboutthefeature, inwhichcaseweregenerallythinkingaboutum, uh, uh, thevalueofthefeature.
Wehave a monthlytoourphonemeeting, whichyoucan, um, youcansubscribetothatcalendarifyou'reinterestedand, um, Thailandtothosemeetings.
So, uh, I thinkmymyclaimsubjectivelyisthatatleast 80% maybe 90% ofnewfeaturesinthelastthreeorfouryearshavebeendonebydevelopersandnotimplementers.
I thinkthat's beenthecaserecently.
I believebeforethatthereisimplementedstormorwantingtoaddcertainfeatures, asasenginedevelopersoflanguageof'emdevelopers.
I thinkit's switchedinlikethelastfiveyears, and I guessonething I canaddaswell, um, especiallywhenwetalkedaboutstagewhenwetalkedaboutthedifferencebetweencomingwithsolutionsversuscomingwithproblems.
Andso I thinkthatwhilethesolutionsmaynotbeexactlywhat, um, developersfromtheecosystemhadinmindorevennecessarilywhatwehadinmindaswejustlikeaswe'restilldiscoveringtheproblemspace, theproblemsthatwerecomingtosolveourverymuchproblemsthatdevelopersairrunninginto I mean, I thinksomeoftheworkthatwe'vedonearoundmodulesis a reallygreatexampleofthat.
Likebeingabletowritemodularcodeverymuch a developerproblem.
So, uh, I thinkoneofthemostimportantthingsaboutthenatureofthecommittee, uh, isthatpeopleonthecommitteerepresentdifferentconstituenciesandhavedifferentperspectivesindifferentlongtermvisions.
Ah, back, I think, threeyearsago, now, uh, the, uh, therewas a setofpresentationsspecificallysolicitingfromcommitteememberswhowantedtopresentonthiswhattheirlongtermvisionforJavaScriptWaas.
I thinkoneoftheseit's alsogoinggoingonnowisthat, um, say, like, threeyearsago, nodewasreallyinvolvedintheconversationat T C 39.
No, nowverymuchiswealsohaveembeddeddevicesthatareusingJavascript.
There's a new T c T c 53 Um, andyouknowyou'retalkingaboutJavaScriptforvery, verysmallconstraineddevices, notnecessarilywearables, butcertainlythat's oneofthetargets.
Um, selfishly, mymyhopeforthelanguageoverthenextmanyyearsisthatwehave a lotofdifferentplaceswherewe'regonnawantrunJavaScriptverymuchliketohave a languagethatwecanruneverywhere.
Um, so, uh, fromthefromtheinternationalizationengineeringperspectiveourteamatGoogleisisislookingforwardtobuildinganitem, thenframeworknotjustforJavaScript.
Ah, sohavingtalkedaboutwhythisthiscompositionoflotsofdifferentgoalshasbeensobeneficialforJavaScriptonnowalsotellyoujust a bitaboutdivision I'vebeenpursuing.
When I joinedthecommittee, thestandardJavaScriptwasAtmosscriptthree, Uh, andthecommitteewaasum, mostofthecommitteewastryingtostandardizeonECMOscriptforwhen I joinedthecommittee, I joinedtherebellionagainst a scriptfor, um, oneofmyproudestaccomplishmentsonthecommitteeishelpingtokilllikenessscriptforno.
And, umand, uh, uh, uh, Thethingthatweweredesigninginsteadtheunderdogwas a timeAgnescrypt 3.1, became a rescript, foughtanECMOscript.
Fiveis a rareaccomplishment, a rarekindofaccomplishmenton a standardscommittee, whichisitssubtracted.
Uh, itgivestheuser's a betterlanguagebymakingitsmaller, Umuh, andspecificallytheintroductionofstrictmode.
Youcan't breaktheoldsloppycode, butthestrictmodewasanoptintocreate a simplerlanguagethatwasbetterbybecauseitleftoutsomanymissfeatures.
Youprogramin a moresecuremanner, andyoucancomposeprogramsthatarewrittenseparatelywithwithlessdangerthatthatwillhaveinadvertentinterferencewitheachother.
Soinparticular, I'vebeenworkingtowardsthevisionwecallSCS, securedin a script, whichisoneofthecirclesonthisonthis T shirt.
Wehaveanotherlanguage, Um, andthere's, I thinkthere's a littlebitof a dangerherethatwehavetobecarefulbecauseifwetakeeveryconstructandeveryotherlanguagethatwealreadyhavesomewayofdoingthatinJavaScript, weadded.
It's notjustthatfeature, butthatincollectivewithalltheotherpicturesandonethingtoaddontopalso, um, themotivationmaynotcomefromotherlanguages, but I thinkit's definitelyanimportantthingforusto, aspartof a researchis, ifwe'veidentified a problem, welookatthesolutionsthatotherlanguageshavecomeupwith.
Um, maybetheycomeupwith a greatsolutionthatwecancopy.
Buttheymayhavealsocomeupwith a solutionthatabsolutelydidn't work, whichwecanlearnfromandnotmakethesamemistakes.
Um, so I thinkthatanychampionwhoisreallydoingtheirduediligenceislookingatotherlanguages.
IfwewantedtoimplementConsulinthelanguage, we'd havetoalsoimplement, likeourowncolonelforinteractingwiththesystem, which I don't thinkMarkwouldbehappyaboutit.
I'llgiveittoyouaccidentstoAdamonthatprocess.
ButConsulisstandardizedatthewhatworkinggroup.
Whatworkinggroupstandardizes a numberofdifferentthings, includingthe l object, andthesearethingsthattraditionallywereimplementedinthebrowser.
Um, fetchisanotherstandardthatwasmadeatwhatworkinggroup, Butyou'reseeingotherruntimessuchasNodeandDennoandCloudflareEdgeworkersadoptingtheseWebstandardsthatarenotfrom T C 39 tomakepartoftheirruntime.
Um, wetalkaboutimplementersandenginesthat's like V eightor J s Corps, Um, orSpiderMonkey.
ThesearetheJavaScriptenginesinsideofthebrowsers, but a productlikechromeismadeupof a lotofdifferentparts, ofwhichtheJavaScriptengineisjustone.
So W three C, forexample, iswhereHTMLisspecifiedbetween W three C andwhatworkinggroupCSSisspecifiedat W.
Three.
C.
Webbassemblyhasspecified a W three c, andtheseorganizationshave a differentfasttracktointernationalstandardization.
Theyhavecompletelydifferentgovernancemodels.
Myunderstandingat W.
Three C, where I'venotdone a tonofwork, isthateachworkinggroupcharterstheirowncharterandoperatescompletelydifferently.
SotheCSSWorkinggroupinwhatworkinggroup, a CSSworkinggroupinWebassembly, workinggroupoperatecompletelydifferently.
Um, I dothinkthatespeciallywithdivisionthat I proposedearlier, thereis a neednowmoremorethaneverforthesevariousorganizationstobeworkingtogetherandthinkingabout a sharedvision.
Um, and I thinkaninterestingproblemforthenextcoupleofyearswillbestartingtothinkaboutlike, Hey, whereareneutralspaceswherewecanallcollaborate?
Michael's workingon a proposalforbuiltinmodules, forexample.
And a bigquestionis, Well, whoownsthebuiltinswherethosebuiltinscomefrom?
Howdowecategorizethosebuiltins?
Andyouneed a lotoftrustbetweendifferentgroupsifwe'regonnaexpectotherpeopletokindofrespectedintheflipsideisthereis a riskthatif t.
C 39 triestospendoverspecifyanoverstepthatpeoplewon't wanttoimplementthespeck, Um, thatis, thankfullysomethingthat's neverhappened.
Butitis a veryrealrisk.
I thinkthateverymemberonourcommitteetakesatthewehave a reallylargeresponsibility.