Nåväl, 2012 har kommit till slut. En mängd utmärkta handledning och artiklar publicerades under året, både här på Nettuts + och på andra håll runt om i världen. För att dokumentera året sammanställde jag en lista med sextio av de bästa handledningarna, månad för månad. Du kommer säkert hitta några som du missade längs vägen!
Ibland är det lätt att bli överväldigad av hur mycket det finns att lära sig i denna bransch. Om jQuery råkar vara på ditt personliga "behov att lära dig snart", kolla in Jeffrey Way kurs "Lär dig jQuery in 30 Days". Om du ger honom femton minuter om dagen för nästa månad, hjälper han dig att bli en jQuery-pro - och det är gratis!
.htaccess-filer används för att konfigurera Apache, liksom en rad andra webbservrar. Trots .htaccess filtypstillägget, är de helt enkelt textfiler som kan redigeras med hjälp av någon textredigerare. I den här artikeln granskar vi vad de är och hur du kan använda dem i dina projekt.
Kollar upp HTML5, CSS3, etc funktioner, vet om de är klara för användning, och om så är reda på hur du ska använda dem - med polypyfills, fallbacks eller som de är.
Innan du utforskar några JavaScript-ramar som hjälper till att strukturera applikationer, kan det vara användbart att få en grundläggande förståelse för arkitektoniska mönster. Designmönster är bevisade lösningar på gemensamma utvecklingsproblem och kan föreslå strukturparadigmer som hjälper oss att lägga till någon organisation i vår ansökan.
Steve Souders diskuterar effekterna av webbplatsens hastighet på användare som ger råd om att skapa högpresterande HTML5-applikationer.
Löften är en spännande jQuery-funktion som gör det lätt att hantera async-händelser. De tillåter dig att skriva tydligare, kortare återuppringningar och behålla applikationslogiken på hög nivå separat från lågnivåbeteenden. När du förstår Löften, vill du använda dem för allt från AJAX-samtal till UI-flöde. Det är ett löfte!
Jag har fått den här frågan mycket: "Hur fick du din terminal för att se hur den gör?" Om du har märkt min terminal och är nyfiken på hur jag ställer upp det här är handledningen för dig! Naturligtvis, det du lär dig här kommer att räcka för att komma igång med att skapa din egen anpassade kommandotolp!
I den här artikeln granskar vi processen med att använda JavaScript, från ett MVC-baserat perspektiv, för att manipulera DOM. Mer specifikt kommer vi att konstruera våra JavaScript-objekt, deras egenskaper och metoder och deras instanser parallellt med vårt visade beteende (vad användaren ser).
Jag har använt SASS för ganska mycket allt jag gör nyligen. Här är några musings på resan. Från hold-ups, till trip-ups, till avstängningar. Från appar och team till arbetsflöden och syntax.
getUserMedia
getUserMedia
är ett API som ger en webbsida tillgång till en användares kamera och mikrofon via JavaScript. Den stöds i Opera 12 och Opera Mobile 12 för Android, och WebKit i Chrome Canary bygger (instruktioner). Liksom många andra API: er, ingår det inte i den "riktiga" HTML5-specifikationen. Det började livet som HTML5
I denna handledning kommer vi att se på att bygga en helt funktionell kontakthanterare med hjälp av Backbone.js, Underscore.js och jQuery. Vi tar en titt på de grundläggande komponenterna som gör Backbone tick samt några av de bekvämlighetsmetoder som exponeras av Underscore. (Se hela sessionen.)
I den här handledningen demonstrerar jag hur man skapar vintage (precis som Instagram gör) foton med PHP och ImageMagick. Vänta? Vad? Ja, du kan göra så mycket med PHP och ImageMagick, och det är bara att skrapa ytan!
ECMAScript 5 introducerade strikt läge till JavaScript. Avsikten är att tillåta utvecklare att välja in en "bättre" version av JavaScript, där några av de vanligaste och mest allvarliga fel hanteras annorlunda. För ett tag var jag skeptisk, särskilt med en enda webbläsare (Firefox) som ursprungligen stödde strikt läge. Snabbare fram till idag stöder alla större webbläsare strikt läge i sin senaste version, inklusive Internet Explorer 10 och Opera 12. Det är dags att börja använda strikt läge.
Här är rub: När du laddar JavaScript från en tredje part ska du göra det asynkront. Du kanske vill ladda dina egna skript asynkront, men för den här artikeln får vi fokusera på tredje part.
Förutsättningarna för prefix gör orealistiska krav på hur utvecklarna underhåller webbplatser. Det finns mycket konversation om hur prefix fungerar (genom att ändra policy), men jag tror att de redan står i strid med utvecklarens arbetsflöde.
Stängningar betraktas ofta som en bananskonst i JavaScript-området. En gång mästare tillåter de dig att skriva några riktigt fantastiska JavaScript. Den här artikeln får dig att få fart på magiken i JavaScript-stängningar.
Om du arbetar med ett stort projekt, kommer du utan tvekan att ha ett byggnadsskript eller en massa uppgiftsskript för att hjälpa till med några av de repetitiva delarna av processen. Du kan använda Ant eller Rake, beroende på vilket språk projektet är skrivet i. Men vad använder du om projektet är främst JavaScript? Det är problemet som Ben Alman tänkte lösa när han skapade Grunt.
Jag är ganska säker på att jag inte kommer att överraska någon här genom att säga att CSS sprites har funnits ganska länge nu, uppfostra sina något kontroversiella huvuden på webbutvecklingsområdet så tidigt som 2003.
Eftersom weblandskapet blir alltmer komplicerat blir det extremt viktigt att leverera solide webbupplevelser till ett växande antal sammanhang. Lyckligtvis ger responsiv webbdesign webbdesigners några verktyg för att skapa layouter som svarar på vilken skärmstorlek som helst. Vi använder flytande nät, flexibla bilder och mediafrågor för att få layouten att se bra ut oavsett storleken på enhetens skärmdimensioner.
Jag skrev en README den andra dagen för ett projekt som jag hoppas att andra utvecklare kommer att titta på och lära av och när jag skrev det insåg jag att det var den sortens sak som kan ha skrämmat i helvetet av mig en för några år sedan, vad med sina lediga nämnder av Node, NPM, Homebrew, Git, Test, och utveckling och produktion bygger.
Många webbutvecklare använder SSH ("Secure Shell") varje dag för att hantera sina servrar, säkerhetskopiera filer, arbeta på distans och en mängd andra uppgifter. Idag ska jag förklara vad SSH är, göra en kort historiköversikt, och slutligen lära dig hur du ställer upp den på din fjärrserver eller till och med ditt lokala nätverk. Låt oss börja!
I åtta månader fick jag möjlighet att praktisera med YUI-teamet på Yahoo, medan jag avslutade min civilingenjörsgrad. Idag vill jag dela de tio bästa sakerna som jag lärde mig av min erfarenhet av YUI.
Att bygga en pärla brukade vara en komplex uppgift som skulle kräva antingen en exakt kunskap om pärlemodellen, sig själv eller några dedikerade verktyg för att skapa en lämplig panna. Idag kan vi använda den utmärkta Bundler för att ta bort denna komplexitet och behålla mängden genererad kod till ett minimum.
Vi har täckt PHPs PDO API ett par gånger här på Webuts +, men i allmänhet fokuserade de artiklarna mer på teorin och mindre på applikationen. Denna artikel kommer att fixa det! För att uttrycka det klart, om du fortfarande använder PHPs gamla mysql API för att ansluta till dina databaser, läs vidare!
Den här gången lär du dig om Adapter, Decorator och Factory mönster.
JavaScript är ett nyfiken språk. Det är lätt att skriva, men svårt att behärska. I slutet av denna artikel kommer du förhoppningsvis att förvandla din spaghettikod till en fem-rätters måltid, full av läsbar, underhållbar yumminess!
I denna Netuts + mini-serie bygger vi en webbapplikation från början och dyker in i en bra ny PHP-ram som snabbt tar upp ånga, kallas Laravel - ett enkelt och elegant PHP 5.3-ramverk.
Från tid till annan blir servrar och databaser stulna eller komprometterade. Med detta i åtanke är det viktigt att se till att vissa viktiga användardata, som lösenord, inte kan återställas. Idag ska vi lära oss grunderna bakom hash och vad som krävs för att skydda lösenord i dina webbapplikationer.
Klasser, klasser, klasser överallt. Vad händer om vi inte behöver CSS-klasser alls? Vad händer om vi slutade oroa sig för hur många klasser vi använder och vad vi borde kalla dem och bara slutade med dem en gång för alla? Det skulle inte vara någon uppenbarelse för dig att säga att HTML-element kan stylas utan att använda klassattributet, men har du övervägt de många fördelarna som kommer från förgående klasser helt och hållet?
AngularJS är som den saknade Batarang på ditt verktyg bälte av webbutveckling awesomeness. Det ger dig tvåvägs databindande som både är lätt att använda och snabbt, ett kraftfullt direktivssystem som låter dig använda skapa återanvändbara anpassade komponenter, plus mycket mer. Express är en utmärkt webbserver för Node.js som tillhandahåller routing, middleware och sessioner. Förresten arbetar de två ganska bra tillsammans!
Agile eller Agile Development - vi hör dessa ord oftare dessa dagar. Men vet vi verkligen vad det handlar om? Hur kan det hjälpa oss att bli effektivare, samtidigt som det har mycket roligt utvecklingsprogram? Hur kan vi använda den för att kommunicera med affärsmän och göra denna kommunikation enkel och konstruktiv för båda sidor?
En gång i tiden fanns en fil. Det var på din dator, och du ville få det på en server. Någonsin undrat varför det finns så många sätt att göra det? Vi förklarar några av grunderna för implementering i den här artikeln så att du förstår när du ska använda vad. Låt oss börja!
Låt oss erkänna det: PHP-samhället har fördröjt lite när det gäller att förespråka testdriven utveckling. Vi vet att vi borde, men inte ens i dag gör en stor del av samhället det. I den här nya serien av videor och handledning, skapad av Nettuts + -teamet, hoppas vi att ändra det. Lita på mig: det är inte så tufft som du tror.
Att göra spel i HTML5 Canvas är inte så svårt när du lär dig logiken i spelet du skapar. I denna handledning lär du dig hur du skapar ett icke-så-grundläggande ping-pong spel i Canvas. Låt oss först och främst titta på huvudkonceptet och lite grundläggande logik bakom det här spelet.
Förra veckan var 7dfps-utmaningen, en öppen utmaning där deltagarna var tvungna att göra en FPS på bara en vecka. Sådana tävlingar är väldigt intressanta för dem som vill experimentera med saker. Att utmana dig själv är IMO det bästa sättet att lära sig nya saker. Du kanske också känner till den kända "Ludum Dare" tävlingen. Jag lärde mig att använda Backbone.js och Three.js (ett känt bibliotek ovanpå WebGL) på bara en vecka, så du har ingen ursäkt för att inte kunna göra detsamma
Så du har accepterat utmaningen att gå tjock på kundens sida; bra gjort. Du har övervägt alla ramar där ute och är osäker på vilken du ska välja? Du är inte ensam. Läs vidare.
Den här artikeln hjälper dig att gå igenom Vagrant för att hantera dina virtuella maskinförekomster och förklara hur du kan utnyttja marionetten för att tillhandahålla olika resurser, som PHP och PostgreSQL.
Event-driven programmering kan vara överväldigande för nybörjare, vilket kan göra Node.js svårt att komma igång med. Men låt inte det avskräcka dig; I den här artikeln kommer jag att lära dig några av grunderna i Node.js och förklara varför det har blivit så populärt.
Den vanligaste frågan jag får efter att jag skickade min responsiva navigationsmönsterartikel är: Hur hanterar jag komplex navigering för lyhörda mönster? "
Idag ska vi kombinera några olika verktyg och skapa ett enkelt nodpaket som gör att en användare kan söka i en katalog för filer. I den här handledningen kommer vi att använda Grunt för att göra mycket av arbetet för oss, se hur man gör ett Node-skript körbart på kommandoraden och äntligen se hur vi publicerar det till Node Package Manager (npm) så att alla kan installera Det.
Organisationen kan göra eller bryta underhållet av en ansökan. Med mindre applikationer är organisationen uppenbarligen tydlig; Men eftersom applikationen växer och som antalet applikationsutvecklare och avancerade ingenjörer som producerar kod ökar kan den mer förvirrande organisationen bli. I det här inlägget kommer vi att gå över några grundläggande begrepp för att hålla ansökningar organiserade så att finna relevant kod är en effektiv och systematisk process.
I denna screencast bygger vi en relativt enkel klass med TDD-tekniker. Under vägen diskuterar vi olika PHPUnit-metoder, hur man skapar spotta objekt och mycket mer! Jag uppmuntrar dig att arbeta med; det är det bästa sättet att lära sig!
De flesta backbone-handledning kommer att beskriva processen att skicka RESTful-förfrågningar till servern. Men hur tar vi in den data med våra ramar på serverns sida? Hur vet vi vad förfrågningsadresserna är? Hur övervakar vi dessa förfrågningar med Chrome Dev Tools? Jag ska visa dig allt detta och mer i denna skärmdump.
När du tar den lyhörda webbdesignväg är en del av affären flytande nät. Det vill säga behållarelementen i procentbredder. Bara ett exempel: an
I denna två delserier ska vi titta på Web Storage, en av de bästa och mest intressanta funktionerna för att komma ut ur HTML5-specifikationen. Vi tittar på historien om både webblagring och cookies.
JavaScript-testning är ett känsligt ämne. Vissa utvecklare är stora förespråkare för det (inklusive mig själv), medan andra inte ser behovet eller nytta. Ett stort hinder är det enkla faktum att det ibland kan ta en stor mängd inställningar för att komma igång. Ju längre det tar desto sannolikt är det att utvecklaren helt enkelt inte stör. Därför är Testem så fantastiskt; det gör testningen så enkel som möjligt, och ännu viktigare, kul!
Ett av de många designmålen för JavaScript-språket var att hålla det enkeltgängat och, i förlängning, enkelt. Även om jag måste erkänna att det är någonting enkelt, med tanke på språkkonstruktionernas idiosynkraser. Men vad vi menar med att vara "single-threaded" är att det finns bara en tråd av kontroll i JavaScript; ja, tyvärr kan din JavaScript-motor bara göra en sak i taget. Nu låter det inte för restriktivt att använda flera kärnprocessorer som ligger i viloläge på din maskin? HTML5 lovar att ändra allt detta.
Det har varit en ojämn åktur när det gäller namespace support i PHP. Tack och lov blev det lagt till språket i PHP 5.3, och den tillämpliga strukturen i PHP-koden har förbättrats kraftigt sedan dess. Men hur exakt använder vi dem?
Jag har sett många kämpar när de först träffar Backbone.js. I denna blogginlägg kommer jag gradvis att refactor lite kod från hur jag brukade skriva JavaScript innan, i korrekt Backbone.js-kod med hjälp av modeller, samlingar, visningar och händelser. Förhoppningsvis kommer denna process att ge dig en klar förståelse av kärnabstractionerna i Backbone.js.
Validerande former har notoriskt varit en smärtsam utvecklingsupplevelse. Genomförandet av klientsidan-validering på ett användarvänligt, utvecklingsvänligt och tillgängligt sätt är svårt. Innan HTML5 fanns det inga sätt att implementera validering Därför har utvecklare använt sig av en mängd olika JavaScript-baserade lösningar.
Oavsett vår nuvarande kompetensnivå var vi alla nybörjare vid en tidpunkt. Att göra klassiska nybörjarefel kommer med territoriet. Idag har vi bett om en rad olika Internet-författare för att chime in med sin lista över fallgropar och lösningar - på många olika språk. Lär av våra misstag; gör inte dessa saker!
Att vara ett rent funktionellt språk begränsar Haskell dig från många av de konventionella metoderna för programmering i ett objektorienterat språk. Men erbjuder begränsande programmeringsalternativ oss verkligen några fördelar över andra språk? I denna handledning tar vi en titt på Haskell och försöker klargöra vad det är och varför det bara kan vara värt att använda i dina framtida projekt.
Jag tror inte att jag måste övertyga dig om att testa din JavaScript-kod är en bra idé. Men det kan ibland vara tråkigt att testa JavaScript-kod som kräver en DOM. Det betyder att du måste testa din kod i webbläsaren och kan inte använda terminalen, eller hur? Fel, faktiskt: skriv in PhantomJS.
Denna vecka var jag planerad att ge ett helt nytt samtal på YUIConf, JavaScript APIs du aldrig hört talas om (och du har). Tyvärr innebär en schemaläggningskonflikt att jag inte kommer att kunna delta. Så istället för att låta arbetet med att sätta ihop ett märke- = nytt samtal gå i spill (eller annars försenas) bestämde jag mig för att sätta ihop en skärmdump av samtalet.
Mitt dagliga liv spenderas på egen hand hos BSkyB ... Jag jobbar på stora webbplatser, de sista som tog mig över ett år för att bygga framsidan för (och det är fortfarande pågående). För mig, i min värld är dålig CSS en mycket specifik och besvärlig sak; när du arbetar på en webbplats i flera månader har du inte råd med dålig kod, vare sig det är CSS eller på annat sätt, och någon dålig kod behöver rättas.
Det är vanligt att en klient skickar en begäran om en fil som inte finns på servern eller finns på en annan plats. Detta kan ske av olika orsaker. Du kan flytta dina filer runt servern (eller till en helt annan server), eller kanske du vill presentera en logisk filsystemstruktur för att ansluta klienter.
Verktyg kan göra våra arbetsflöden känslösa sömlösa, så att vi kan fokusera på vad vi bygger och inte oroa oss för processen. De flesta webbutvecklare, på alla delar av stapeln, arbetar från kommandoraden. Det finns otaliga verktyg som kan göra dig mer produktiv. Det här är inte fullblåst kommandoradsapplikationer, till exempel Git, men ganska enkla och komposibla verktyg, vilket kan förbättra ditt arbetsflöde som webbutvecklare.
Dependensinsprutning har varit ett vanligt föremål för diskussion bland många företagsutvecklare under de senaste åren. Många fruktade att de skulle kunna offra för mycket tid att bygga sin applikationsarkitektur utan att göra något verkligt arbete. I den här artikeln ska jag förklara varför PHP-utvecklare borde överväga att dra nytta av beroendeinsprutning, när de bygger stora, skalbara projekt.
Programmerare som jag är ofta skrämda av design - men en liten ansträngning kan ge en stor avkastning på investeringen. Här är en kodares tips för att göra någon webbplats snabbt ser mer professionell ut. Jag är en programmerare. Jag är inte en designer. Jag har en examen i datavetenskap, och jag har inget emot Comic Sans. (Det ser glatt ut.) Fortsätt.
Har du någonsin haft en fjärransluten terminalsession, bara för att få din anslutning att gå ut halvvägs genom en stor uppgift? Då återansluts du, vet inte någonting om dess framsteg (om någon) och nuvarande status. Skärmen är lösningen på detta problem. På skärmen kan du starta terminalsessioner som du kan koppla ifrån och återuppta när som helst.
Tja, det är min lista med 60 bra tips och handledning från 2012. Du har förmodligen några egna favoriter; låt oss höra dem i kommentarerna!