I'veseenJessicatalk a bunchoftimesbeforeandalwaysreallyenjoyedhertakeonlikecultureonthewayteamsworktogetheron.
So I'm very, veryexcitedtobealsowelcomehere.
ThioJamstackconferencepeacemaker.
Very, verywelcome, JessicaLord.
Thankyou.
Thankyousomuch, Phil.
Um, yeah, Thankyou.
That's wellsaid.
MynameisJessicaLord.
I workat, um, a companycalledSpiceinNewYorkCity.
I workonthebackendand a bunchofverynotjammystuffatall.
Andbut I'm so I'm nottalkingaboutanyofthattoday.
Today I'm gonnasharesomestoriesaboutveryjammythings I workedonWhen I getHuband I codeforAmericaandgethopeis a codesharingsite, Um, andcodeforAmerica, ifyoudon't know, is a nonprofitbasedhereinSanFranciscoforwritingopensourcesoftwareforcitygovernmentsthatcitygovernmentscanuseandbebetteratgoverning.
Um, butfirst I wanttogointothestatementandandreally, why?
I'm thrilledtobehereand a partofthedamnsatcomandreallylovedthisareaofthewebthemost, andexcitesmeisbecause I really, trulybelievethateveryoneis a developerthateveryonecouldbe a developer, thateveryonemightbe a developer.
Theymightbeontheirway.
Theywillbe a developersoon, ortheyactuallyalreadyourdeveloper.
Thereactuallymightbe, andit's definitelyillegal, Um, butit's it's oneofthesewaysinwhichourprofessionisdifferentthanotherpeople's, and I mightreallyregretthismetaphorlater.
Allthesepeoplewhoaren't consideringthemselves a professionaldeveloper, they'restillusingthetoolsthatwehavebuiltandcontributedandareusing.
But I thinkit's importantthatwhenwebuildthetoolswedoandcreatetheenvironmentswedoforWebdevelopment, wethinkaboutthesetoolsinthecontextnotjustofotherdevelopersexactlylikeus, butforpeople, notdevelopers.
Butaren't developerspeople?
Yes, butthey're a subsetofpeoplewhocould, wouldandshouldbedeveloping.
Andsoformeandwhy I lovethejamstack.
And a lotofthework I doisbecause I wanttobuildthings, isthatthere's morepeoplebuildingthings, and I thinkitinflateseveryone.
There's thisquote I lovefrom a NeilDashwhoistheCEOofglitchformallyfoughtCreek.
Butnow, fullyandonglitch, itseemsmoreimportantthanevertoencourage a diversecommunityofcreatorstoexperimentwiththeirbroadestsetofideas.
I thinkthat's sotrue, andtomeit's reallyimportantbecausecodingis a powerfulliteracyandandit's notjustthethebroadestpeopleouttherewhomightbedevelopersorwhoaren't developers.
But I mean, it's alsothepeopleyouworkwith, becauseyouprobablyworkedwithpeoplewhoaren't developersorpeoplewhohaven't beendeveloperstheirwholelivesorpeoplewhoaredevelopersbutcamefrom a totallydifferentstackthanwhatyou'reworkingonnow.
Andso I thinkit's reallyimportantthatwedon't thinkof a professionaldeveloperastheonlykindofdeveloperandthateveryonecanbenefitfrombuildingthingsontheWebbecausehtml, CMSandJavaScript, theystillwork.
ButitusedtobecalledAdamShell, anditwas a dependencyinAdam, whichisgethubstexteditorAnditlivedthereandgethomedidn't wanttodoanythingwithit.
Therewasnovisionforit.
Therewasnoplan.
And I hadbeen a goodhusbandrecentlyhadmovedontotheAdamteam.
Andas I dovedeeperintotheAdamCodeandonboarditandlearnedthatallthethingmakingeverythinghappenedwasthisthingcalledAdamShell, I startedtothinkitwasactuallymoregamechangingthanAdamitself.
I thinkAdamis a greatTexother, Um, butAdamShellfeltreallygamechangingtome, andso I startedtofightforit.
It's dependentonahwholeothertoolchainfordocumentationand a wholeothertemplateinglibrary, andthere's a wholeotherhurdleintowonboardingjusttofixthedocumentation.
And I wantedtomakethemostofwhatexistsnow, which I feltword's goodenough.
Andsowheneveryoudownloadelectron, youget a copyofthedocumentation.
It's allmarkeddown.
Andso I wanttostartfromthere.
Thatistheonesourceoftruth.
AllchangestodocumentationhappenthereandthenSo I neverlearned.
Ruby, I gethub.
So I put a bunchofnotesscriptsintomyJekyllsitethatbasicallytookthetarfilefromanelectronrelease, wouldstreamoutthedocksfolder, readthefilepath, readthecontentofitwhichhadnowbeenstandardized, sowaspredictable, andthengeneratethefrontmatterandallthethingsthatJekyllneededsothatitcouldthentakeallofthosethings, streamthemoutoftherepoandthenputthemnicelyintoahJekyllsiteinthewaythatJekyllwantsthem.
Andso, yeah, like I mentioned, thestyleguidewasreallyimportant.
Knowingthat I wasgoingtobeputtingitonthisjackalsiteand I wouldhavethebenefitofCSSsoitcouldmaketheledgeabilityofthedocumentation a littlebitbetterthanjustreadingthemarkdownfiles.
There's also a fewthingsthatare a littlebitelectronspecific, butbecauseit's pullingthedocksfromthereleasesofElectron, wegettohaveversiondocumentationonthesite.
Andthenthereis a T L D R lineonallofthepagesbecause I feellikedocumentation.
So I wantpeopletohaverightatthestart, a placetogoandnoifthereinthewrongplaceornot, um, andthenelectronblursthelinesbetweenwhat's frontandwhat's backendandthenintroducesnewcomplexitywithhavingtwoprocesses.
Andthenbecausewhenwe'reonthesiteandwehavethepowerofCSStoimprovereadability, weaken, dothingslikemakeitmoreclearwhen a methodoraneventissomethingthatonlyhappenson a Macsystemor a windowsystem.
Butit's reallyimportanttodothiswithoutforsakingtheoriginalmarkdown, because I didn't wanttodosomethingsothatitlookedgoodonthesitebutthenwashorribletoRita's markdown.
I wantedtothinkaboutpeoplewhoweren't comingfromthedesktopappspacebecausepeoplewhoarealreadyinthespacewhoaremaybeworkingat a startupthatused, like, chromiumembeddedframeworkandthingslikethistheyalreadygotit.
So I don't careaboutthem.
Like I careaboutthepeoplewhowerefrontanddevelopersorpeoplewho I didn't thinkthattheycouldeverbuild a desktopapp.
I wantedpeopletoknowthatanelectron, itsHTMLyoucanopenitup.
And I alsowantedthisapptobe a learningtoolinsideandout.
Andsothecodeitselfisstructuredin a waywhereeverythingisorganizedandnamedsothatyoucanmatchitup.
Sowhen I mentionedearlierabouttherebeingthetwoprocessesanelectronhere, willyouopenupthecodefortheAPP?
Youcanfindexactlythename, thematchingnamefor a futurethathappenedandfindthecorrespondingrenderersandmainprocessfiles.
Andbecauseit's anelectronappandbecausewehaveknowedavailableinour H twomile, whateachpagedoesisactuallyusesallofthesamplecodetheAPPgivesyouisthecodeitself.
Andtome, thisthejamstackwasessentialthatkeepingitsimplefromthestartwasessentialsothat I couldadvocatefortheprojectsthat, likeit, actuallybuildthesethingssothat I couldmaintainthesethingsandtherewaseasytoonboardpeople.
Onceitbecame a realteamandwegotmorepeopleonit.
Itwaseasytogrowfromthere.
Um, youmightfindyourselfin a positionlikethis, too.
Soit's not.
It's notalwaysanaltruisticthingof, like, I'm doingthisforthegoodofhumankind, butyoumightfindyourselfin a positionwhereyouneedtomaintainlessanonboardpeoplefaster.
Allright, sothesecondpartisaboutspreadsheets, something I lovetotalkabout.
Um, andthisgoesbackThio.
Mybackgroundisactuallyurbandesignandarchitecture.
Erand I wasanurbandesignerattheCityofBostonintheUrbanDesignTechnologyGroup, andfromthere I wenttodotheCodeforAmericaFellowship, which I mentionedearlierforbuildingopensourcesoftwareforcitygovernmentsandsomething I tookwithmefromCityHallintothisfellowshipWaas a reallydesiretomakeitsothatpeoplecouldedittheirowncontent.
Sotherewasn't thisbottleneckplaceswhere I t hadtodoeverythingbecause I feltliketheWebwasfurtherthanthat.
Um, andso I ammostlytalkingaboutGooglespreadsheetsherewhen I sayspreadsheets, butreally a lotofthestuffyoucoulddoifyou're I mean, ifyourspreadsheetisinMicrosoftofficeonExcellikeifyoucangetittoJason, youcanstilldo a lotofthesethings.
Um, thewebsites, theyhaveproblems.
Andsoevenifyou're a professionaldeveloperwhoknowshowtodoallofthisstuff, therearecertainprojectswherethesebecomehurdles, evenforyou.
Andthey'rehurdlesforpeoplewhoaren't fulltimedevelopersandspreadsheetsmake a lotofthiseasierornot a problematall.
EspeciallywhenyouthinkaboutourAm I gonnahave a collaborator?
Am I gonnabeworkingwithsomeonewho's not a developer?
Andso I thinkthereissomuchuntappedpotentialaboutwhatwecandothatinvolvessomanypeoplewithspreadsheets.
Okay, Onelibrary I wanttotalkaboutiscalledtabletopJsandtabletopbasicallygivesyouthedatayouwouldexpectfromtheGoogle a p I, whichthegoo a p I doesn't giveyou, um, ifyoutriedit.
Ifyouuseitdirectlytogetyourspreadsheetstuff, youget a bunchofextrastuffthatyoudon't want.
Um, andifyouuse a Googleform, youalsocanonepreventpeoplefrommessingupyourspread.
Sheifthat's a concern, Um, butyoucanalsoevenmakeitevenmoreapproachabletopeople.
Ifyoudon't wantpeopletohavetolookat a spreadsheet, a ghoulformwillfeedinto a spreadsheet, andthenyoucanhookthatspreadsheetupto a website, andthere's alsonodeploying.
Andthisisn't justformapping, butanybodythathas a querystringthatmatchesthedatayouhave, youcanstartusing, andthenyoucandototallystaticdatatowhich I havedoneforprojects.
Ifyouhave a spreadsheetthatisn't goingtochangethatoftenanddoesn't havethatmanyeditors, youmightwanttodothis.
YoucanusetheversionoftabletopandNotopulldownthespreadsheetJasonrightitto a fileandthenuseitasstaticdatawithyoursight.
Andyoucanalsouseittoebackupthingsthatway.
There's also a sitecalledifthis, thenthatthatletsyouturnlikealmostanythingyoudotodayintodataon a spreadsheetand I What I likethemostisthatyoucankindofhaveyourowncopyofyourdataessentiallyandliketherecouldbeanotherdiscussionbecausetechnicallyit's likeonGoogleand I don't knowthelegalitiesofthat.
Butin a wayyouhaveyourowndatasoyoucandothingsliketotallydisplayyoursocialmediainthewaythatyouwantorjustarchiveitlikeyouwillhave a copyofeverythingyou'vedoneonDDE, a spacethat I thinkisalsoreallyinterestingand, tomecouldjustexpand.
Isthespreadsheetas a CMSright?
Likethespread, shecanbe a CMS.
Youcouldwriteblockpostsin a spread.
SheyoucouldhaveCSSpropertiessavedinthespreadsheet, anditcouldallfeedanaltarto a website.
Andlastly, I wantedThiojustmentionthesiteglitch, whichMontycomementioned?
Two.
IfyouhavenotplayedaroundwithGlitch, itis a greatwaytoputit.
Yourprojectsin a spacewherepeoplecanavoid a deathsetupcanjustgostraightintoyourcode, startplayingwithitandmakingtheirownversionofit.
I havethespreadsheet, you'realongglitchum, sothat's mine.
Um, butcheckoutglitch.
Andlastly, I hopethatthesehavebeensomeinterestingideasandthatyouthinkaboutkeepingitsimplefromthestartbecauseyoumightbein a positionwhereitbenefitsyoutokeepitsimple.