Een ontwikkelaar-evangelist vervult een belangrijke rol voor een bedrijf. Ze dienen als een communicator, een liaison, een doordachte stem en, nog belangrijker, een integraal onderdeel van de web-ontwikkelgemeenschap. Weinig mensen omvatten dat alles evenals Christian Heilmann. Momenteel werkt hij als een hoofdtechnisch evangelist bij Mozilla, hij heeft letterlijk het boek over ontwikkelaar envangelisme geschreven en biedt een aantal inzichtelijke bijzonderheden over zijn werk.
Ik ben op het moment een beetje bezorgd over hoe modieus het is geworden om een "ontwikkelaar evangelist" voor je bedrijf te hebben en hoeveel mensen zichzelf dit noemen zonder van een ontwikkelaar achtergrond te komen of eigenlijk technische informatie vrij te geven. Het lijkt erop dat mensen het potentieel en de voordelen hebben ingezien van het hebben van iemand als deze in hun bedrijf - wat me echt gelukkig maakt.
Aan de andere kant is het aan ons om ons grondgebied schoon te houden en er herhaaldelijk op te wijzen dat evangelisatie door ontwikkelaars geen productmarketing is.
Als iemand alleen over zijn producten spreekt zonder de concurrentie te erkennen of ontwikkelaars een keuze te bieden, is het geen evangelisatie van ontwikkelaars, maar gewoon marketing of reclame.
Een grote verandering die ik zie, is dat onze traditionele kanalen voor publicatie verschrikkelijk zijn uitgewist. Zowel LinkedIn als Slideshare is niet zo bruikbaar voor mij als vroeger, want ze zitten vol met ruis. Daarom ga ik voor een groot deel van mijn bereik naar Google+ en Facebook. We hebben ook veel gereedschappen bij de hand. Veel om uit te testen en mee te spelen. Ik ben erg enthousiast over wat Lanyrd voor ons in petto heeft - bekijk deze ruimte.
Een half uur op de crosstrainer is verspild of nuttig om bij te houden. Uw keuze.
RSS feeds - dat is waarom het nieuws over Google Reader me echt raakt. Feedly is echter een goede vervanger en ik heb Fever op mijn server geïnstalleerd. Veel ervan is ook constant aan het kijken naar wat uw collega's aan het doen zijn. Dus ga niet naar conferenties, geef je praatje en vertrek - bekijk wat anderen doen en controleer YouTube en anderen om op de hoogte te blijven van wat je concurrenten bedoelen. Ik kijk tech-gesprekken in de sportschool - een half uur op de crosstrainer is verspild of nuttig om bij te blijven. Uw keuze. De constante verandering in de webontwikkelwereld is precies dat - een constante. Als u een webontwikkelaar wilt zijn, moet u de hele tijd up-to-date blijven. Dat is wat ons werk zo geweldig maakt. Er is geen certificaat om voor te betalen; je moet de hele tijd leren.
Breng jezelf zoveel mogelijk naar buiten. Neem deel aan discussiethreads, ga naar meetups, spreek op niet-conferenties, neem deel aan hackathons en zie wat mensen doen in hun outreach die je stoort en doe het dan beter. Voor Mozillians (inclusief vrijwilligers) hebben we de Developer Evangelism Reps - een groep die ik leid die alle materialen die we maken, training en persoonlijke coaching krijgt. Ik moest dit starten omdat ik mezelf niet kon klonen.
Mozilla vindt het helemaal niet erg als we iets melden dat het internet beter maakt.
Ik moet niet wachten tot een product klaar is om erover te praten, en er zijn geen geheimen. Waar het lastig was in Yahoo om Google-producten te prijzen, vindt Mozilla het helemaal niet erg als we iets melden dat het internet beter maakt. Die vrijheid is het grootste verschil. Als iemand die voor Mozilla werkt, word ik door andere bedrijven uitgenodigd om met hen samen te werken en daar is geen probleem mee. Ik krijg ook informatie voordat het uitkomt, omdat Mozilla een kanaal is en geen commerciële concurrent. De trainingsvideo's die we samen deden, zouden bijvoorbeeld een nachtmerrie zijn geweest om door Yahoo OKed te worden; met Mozilla waren ze helemaal geen probleem. Mozilla geeft me een ongelooflijke hoeveelheid vrijheid en een geweldige gemeenschap om in te tikken. Ik kan ook alle vragen beantwoorden met "de code is beschikbaar, bekijk deze daar".
Omdat ik niet alle feiten weet, zou ik niet veronderstellen wat de reden was, en ik ben niet genoeg besmet om te denken dat mijn mening belangrijk zou zijn voor een groot bedrijf. Een show als Yahoo draaien is niet eenvoudig, er zijn veel eisen aan je - waarvan we er veel niet van weten.
Persoonlijk vond ik dat externe medewerkers ongelooflijk effectief kunnen zijn als je ze vertrouwt en ze houden van wat ze doen. Wanneer sommige mensen die vrijheid misbruiken, kan het lastig worden. Ik werk graag overal (luchthavens, cafés en hotels) en ik denk dat dit de toekomst is van werken. We hebben de technologie, we zouden niet moeten werken zoals vijftig jaar geleden. Als we een vaste 9-5-scheiding tussen werk en 'echt leven' blijven volgen, maken we van ons werk iets om geld en leven van te maken. Dat hoeft niet het geval te zijn.
Er lijkt een enorm verschil te bestaan tussen Amerikaanse en Europese conferenties.
Dat is een moeilijke vraag om te beantwoorden. Ik merkte dat de kwaliteit van de gesprekken elk jaar beter en beter wordt en ik ben dol op enkele van de nieuwe talenten die de laatste jaren zijn opgedoken. Mensen als Brad Frost, Jake Archibald en Lea Verou zijn een genot om te zien.
Wat ik echter ontdekte, is dat gebeurtenissen als instelling een vrij korte halfwaardetijd hebben. Veel evenementen die al een lange tijd bestaan, dalen af in middelmatigheid of 'hier zijn 12 nummers om uit te kiezen' reuzen. Grootte maakt een conferentie niet geweldig. Integendeel, ik merk dat kleinere evenementen van veel hogere kwaliteit zijn. Ik geloof ook niet in roadshows, het herhalen van dezelfde gesprekken over de hele wereld terwijl dezelfde informatie ook al beschikbaar is in opnames. Maar ze zijn enorm succesvol, dus wat weet ik over het organiseren van hen?
Er lijkt een enorm verschil te bestaan tussen Amerikaanse en Europese conferenties. Amerikaanse conferenties zijn veel meer een "goed, een ander" ding en zowel de sprekers als het publiek zijn veel meer gebrek aan glans. Als spreker in Europa, wees er klaar voor om iets nieuws en nuttigs te leveren of krijg heel directe en korte feedback van het publiek. Mensen hier willen hun waar voor hun geld krijgen en bijwonen van elk gesprek en elke activiteit rondom het evenement. In de VS zie ik veel komen en gaan en visitekaartjes uitwisselen, in plaats van zorgen te maken over wat sprekers te zeggen hebben. Natuurlijk niet overal, maar de instelling van IT-evenementen is in de VS veel ouder dan elders. Hiermee komt een beetje verveling en vervelen mensen zich. Onconferences probeerden dat te verstoren maar ontgroeiden hun oorspronkelijke anarchistische benadering. En laat me nu niet beginnen aan onze overload aan "hackathons". Veel zijn gewoon heel versluierde gebruikerstests en / of rekruteringsoefeningen.
verhalen. Implementatievoorbeelden en hoe wat u laat zien, maakt een verschil voor hen. Iedereen kan technische details opzoeken. Leg dus niet uit hoe in een twintig minuten durende live coderingssessie mensen zich vijf minuten later niet meer kunnen herinneren. Wijs in plaats daarvan mensen op waar ze na het evenement meer te weten kunnen komen. Natuurlijk zijn mensen verbaasd als je technische magie laat zien en je codeurspieren laat zien met tien onmogelijke dingen in vijf regels code, maar dat helpt niemand. Het houdt in ieder geval het idee in stand van "ontwikkelaars / ontwerpers" en "rockstar ninja overlords" die in mijn boek moeten sterven.
Het web controleren op nieuw talent in onze opmerkingen, ze ontmoeten op evenementen en hen vervolgens aanmoedigen om papieren in te dienen en zichzelf daar te krijgen. Ze coachen en helpen met het vinden van het verhaal in hun materialen. Veel mensen zijn bang om te spreken, omdat overal dezelfde mensen zijn uitgenodigd. Dus misschien nee zeggen en een lokale nieuwkomer in uw plaats voorstellen voor organisatoren van conferenties is een goede zaak. Ook het vermelden van het werk van mensen in uw gesprekken helpt veel.
Ik heb de laatste tijd vrij gedetailleerd over dit gesproken en ik voel dat de slinger in de andere richting begint te slingeren. Ik denk niet dat de een de ander helemaal zal vervangen, maar dat native apps en web-apps verschillende doelen hebben.
Web-apps zijn de evolutie van websites. We verplaatsen dingen die we doen op het bureaublad met geïnstalleerde apps naar het web - Google Documenten is daarvan een goed voorbeeld, of de meesten van ons gebruiken webmailclients in plaats van desktopmails.
Native apps zijn van nature bedoeld om in hun staat te worden opgelost en één ding goed te doen. Dat betekent dat ze altijd een superieure ervaring geven voor dit gebruik, maar het betekent ook dat ze beperkt zijn en saai of zinloos sneller dan een weboplossing.
Beide kunnen gelukkig naast elkaar bestaan.
Weboplossingen zijn flexibeler; Ik kan u een mobiele en een desktopervaring bieden, beide met verzorgde interfaces die het meest logisch zijn voor die omgeving en die met elkaar worden gesynchroniseerd. Native apps doen dat niet. Ik moet dezelfde uitdagingen op Temple Run op mijn tablet en mijn mobiel herhalen, in plaats van de twee te synchroniseren.
De reden is niet dat dit technisch niet mogelijk is. De reden is dat native apps producten zijn en hun taak is om meer te verkopen en te verkopen en geld te verdienen met upgrades. Ze zijn gebouwd met ingebouwde veroudering in gedachten, net zoals games op CD's en Floppies dat waren. Er zijn apps om ervoor te zorgen dat mensen de volgende iteratie van hardware willen, zodat ze de glanzender versie kunnen gebruiken.
Web-apps zijn er om te gebruiken en te upgraden zonder dat u het merkt. Beide kunnen gelukkig naast elkaar bestaan. Om het internet interessanter te maken voor huidige native ontwikkelaars, hebben we betere gereedschappen en conversietools nodig. ASM.js is daar een goed begin voor - het stelt ontwikkelaars in staat om in C ++ te schrijven in de omgeving waarin ze zich prettig voelen en met behulp van een tool naar JavaScript te converteren. Adobe bouwt ook een aantal geweldige hulpmiddelen voor ontwikkelaars om zich aan Flash te houden, maar geeft Canvas / WebGL-oplossingen weer.
Het web is het beste distributieplatform als u zich ver wilt verspreiden. Als u uw distributie moet controleren, is het voor sommigen angstaanjagend. We kunnen beide hebben. Ik ben niet bang voor native apps - als er iets is, zie ik ze als een rage, en platformonafhankelijke distributie betekent dat je werk moet dupliceren. Dat is niet slim.
Eerlijk gezegd verknoeien we ons als webontwikkelaars.
Eerlijk gezegd verknoeien we ons als webontwikkelaars. Toen de iPhone uitkwam en HTML5 als platform claimde, bouwde iedereen oplossingen die alleen op dit apparaat werkten. Dit is ongelooflijk kortzichtig en een herhaling van de fouten die we in de jaren 90 hebben gemaakt, waardoor we multi-miljoen dollar enterprise finance-systemen hebben die alleen in IE6 draaien en veel kosten om te onderhouden en te upgraden. Veel te veel weboplossingen die in het afgelopen jaar zijn uitgebracht, zijn 'alleen iPhone' en leveren dus geen goede webervaring op en zien er slecht uit en presteren slecht in vergelijking met native apps. Ze zijn de slechtste van beide werelden. Gelukkig zou de misvatting van "als het in Webkit werkt, het werkt overal" zelfs voor de meest verwarde ontwikkelaars duidelijk moeten worden. Webtechnologieën zijn er niet om een browser of een stuk hardware te bedienen. Dit betekent dat je hen van hun belangrijkste krachten berooft.
Het betekent dat ontwikkelaars zich moeten realiseren dat WebKit geen WebKit is en dat Android geen iOS is en OSX geen iOS. Ik denk dat het op de lange termijn betekent dat zowel Chrome als Safari beter worden en dat Apple zijn webgame moet opvoeren door meer technici aan te nemen, of er eerlijk over te zijn en volledig native te worden.
Het slaagt al tegen beiden, omdat het niet de bedoeling is om met hen te concurreren.
Het slaagt al tegen beiden, omdat het niet de bedoeling is om met hen te concurreren. FirefoxOS is er om web-enabled mobiele apparaten naar markten te brengen die nu alleen feature phones hebben.
De grootste kwelling die Mozilla had bij de verplaatsing van internetgebruik naar mobiele apparaten, is dat het betekent dat maar een paar mensen op deze planeet toegang krijgen tot deze nieuwe manier van webdistributie. Apparaten met iOS zijn niet wereldwijd beschikbaar en zijn erg duur. Android-apparaten kunnen betaalbaar zijn en worden in meer landen verkocht, maar de betaalbare hardware krijgt geen geüpgradede browser die in staat is tot nieuwe HTML5- en CSS-technologieën. Als u Chrome als de hoofdbrowser wilt gebruiken, moet u over de nieuwste telefoons beschikken. Zowel Firefox voor Android als Opera zijn terug beschikbaar voor telefoons met Froyo, maar we hadden geen telefoons die uit de doos kwamen met die browsers geïnstalleerd. Dat is de reden waarom Mozilla Firefox OS heeft gemaakt - om de kloof te dichten van opkomende markten die niet worden ondersteund door mobiele technologieën.
Firefox OS-telefoons zijn zeer betaalbaar, kunnen eenvoudig worden aangepast aan de behoeften van verschillende markten en eindgebruikers hoeven geen creditcard te hebben om inhoud en apps te kopen. Apps kunnen vanaf een marktplaats worden geïnstalleerd, maar ook overal op internet. Met behulp van een webzoekfunctie kunnen gebruikers apps vinden voor hun behoeften, niet op naam of beoordeling. En iedereen kan compatibele apps voor de telefoon vrijgeven zonder afhankelijk te zijn van een marktplaats om hun apps te distribueren. Het brengt het web naar de telefoon, niet andersom. Dit zijn ook de redenen waarom Firefox OS achttien mobiele servicepartners en vier hardwarepartners heeft, terwijl andere open platforms die proberen te concurreren in de high-end markt worstelen om distributeurs te vinden.
Firefox OS-apps zijn eenvoudige HTML5-apps met een manifestbestand.
Firefox OS-apps zijn eenvoudige HTML5-apps met een manifestbestand en meer API's om mee te spelen. Niets stopt ontwikkelaars met het bouwen van apps die goed werken in alle mobiele browsers, terwijl de extra functionaliteit van WebAPI's wordt toegevoegd aan de apps op Firefox OS. Geen van de API's is gesloten of verborgen - ze worden allemaal voorgesteld aan de normalisatie-instellingen en vele zijn al geïmplementeerd in andere browsers (bijvoorbeeld de batterij-API). De dynamische app-zoekopdracht in Firefox OS stimuleert het bouwen van mobiele websites voor alle browsers, die worden weergegeven als de preview van uw app. Wat dat betekent is dat mensen bijvoorbeeld kunnen zoeken naar "Skyfall" (de film) en IMDB.com krijgen als de eerste app die hen wordt aangeboden. Wanneer ze op het pictogram klikken, laadt de mobiele website van IMDB in een kader in de zoekinterface en kunnen mensen het gebruiken. Als ze het leuk vinden, installeert een lange tik de IMDB-app die niets anders is dan de mobiele site met een manifest (in de eenvoudigste vorm). Firefox OS-apps toevoegen aan wat we momenteel bouwen als mobiele sites; het vervangt ze niet.
Geholpen, heel veel. Natuurlijk irriteerde het een deel van onze gebruikersgroepen - vooral de zakelijke gebruikers - maar de meeste ontwikkelaars verwelkomen een browser die voortdurend verbetert, vooral als dat stil gebeurt (wat nu gebeurt op Windows). Het proces van het bijwerken van een browser naar de gebruiker op internet is gewoonweg gevaarlijk. Bijna alle beveiligingsgaten zijn gebaseerd op verouderde software of plug-ins.
De webgereedschapsruimte begon met de Firebug-extensie - althans voor de grote markt. Frontpage Express had enkele foutopsporingstools die eraan voorafgingen, maar Firebug was de grote, eenvoudig te gebruiken tool die we nodig hadden. Elke andere browser kopieerde vervolgens dat model in hun ingebouwde ontwikkelaarstools. Mozilla houdt Firebug nog steeds up-to-date en innoveert ervoor, maar op de lange termijn bouwen we native tools in de browser. Persoonlijk heb ik Firebug een tijdje geleden verlaten voor de ingebouwde gereedschappen. Deze kopiëren Firebug 1: 1 niet, omdat we de overload aan opties wilden vermijden die Firebug is geworden. Chrome's Devtools verschijnen wekelijks, leveren ongelooflijk nuttige dingen voor bepaalde edge-cases en voegen steeds meer toe aan de tooling binnen de browser. De ontwikkelaarstools van Firefox zijn nu meer modulair. In plaats van je de keukengootsteen te geven, kun je precies datgene inschakelen en uitschakelen wat je nodig hebt. Dit kan van tevoren complexer lijken, maar helpt ontwikkelaars zich te specialiseren. We hebben er ook een aantal verschillende bits in gebouwd, zoals een 3D-weergave van de diepte van de DOM, een kladblok om grotere JavaScript-blokken te schrijven en deze tegen de pagina uit te voeren, en een opdrachtregel om de volledige ontwikkeltools te besturen met toetsenbordopdrachten , waardoor ontwikkelaars zonder een muis kunnen debuggen.
Zoals altijd, is het belangrijk om op de hoogte te blijven van wat de browser u biedt. Dat, en vinden wat je echt effectiever maakt, dan dat wat op het eerste gezicht nuttig lijkt, maar dan een paar minuten later vergeten is.