Webbutveckling

Hur man bygger webbplatser med fokus på struktur, tillgänglighet och användbarhet (inte så mycket kod). Det var det bloggen handlade om från början.

Ett superenkelt knep för säkrare lösenord

Lösenord

Jag har skrivit om lösenord tidigare och gett en massa tips. Men det är sällan man orkar läsa igenom allt. Så därför kommer här ett superenkelt tips för att skapa säkrare lösenord.

Skriv ditt lösenord som en hel mening.

I normala fall skriver man något i stil med 5hkJb%2f4 där man förväntas blanda stora och små bokstäver med några specialtecken. Detta är ju omöjligt att komma ihåg.

En bättre strategi är då att ta en mening som faktiskt betyder någonting. För att enkelt komma ihåg den så kan du använda en metafor. Ju livligare metafor, desto bättre.

Hur lång tid tar det att knäcka lösenordet? En bra tjänst man kan använda är Password Haystacks för att se hur lång tid en så kallad brute force-attack skulle ta. En brute force-attack innebär att  en dator testar alla kombinationer tills den hittar lösenordet – det ena lösenordet efter det andra. Denna metoden kommer alltid att knäcka ditt lösenord, men det tar ohyggligt lång tid. Men hur lång tid då?

Här är några exempel på lösenord du kan få av mig, och uppskattningsvis hur lång tid de tar att knäcka med brute force med flera datorer som arbetar tillsammans i ett kluster:

Lösenord som hel mening Tid att knäcka enligt Password Haystacks
Astrid Lindgren rider på en polkagris 7.87 hundred billion trillion trillion trillion centuries
Statsministern borde gå och kamma sig 66.90 trillion trillion trillion trillion centuries
Varför sjunger Håkan Hellström så jävla illa? 2.14 thousand trillion trillion trillion trillion trillion centuries

För att summera: En lång mening tar rätt lång tid för en dator att gissa sig till. Och det är enklare att komma ihåg för oss människor.

Dela:facebooktwittergoogle_plus

Binero = nedtid

Webbhotellet Binero, eller Binere som jag skämtsamt brukar kalla dem på Twitter, är inte speciellt duktiga på att hålla sina servrar igång. Titta på den röda kurvan nedan så ser du.

Nedtid för Binero – 11 februari till 5 mars

Binero nedtid

Den stora toppen till höger är 5 mars där hela Binero var oåtkomligt i 5 timmar under morgonen och drygt 3,5 timmar under kvällen. Datan kommer från Pingdom som har mätt min webbplats voodoofilm.org. Jag har inte tagit med tidigare datum eftersom den låg på en virtuell server på GleSys.

Man får vad man betalar för, brukar det ju heta. Nog stämmer det i många fall.

 

Dela:facebooktwittergoogle_plus

Ny typ av spam på forum svår att upptäcka

spam

Spam på forum är rätt vanligt. Det handlar oftast om länkar som syftar till att ta positioner på ett ord i Google eller någon annan sökmotor. Men nu redigeras länkarna in efter inläggen har publicerats, vilket gör dem svårare att hitta.

Spam är en oundviklig del av internet, i synnerhet på bloggar. Det sker huvudsakligen automatiskt av så kallade spambotar. Det innebär att den mesta av all spam ser likadan ut och därför relativt enkelt kan rensas bort lika automatiskt.

Men jag har råkat ut för en annan sorts spam som jag inte sett tidigare (jag har drivit forum i tolv år och bloggar i sju år).

Det är användare som skriver helt vanliga inlägg på forum och därefter redigerar in spam i efterhand. Här är ett exempel från ett av mina forum som det såg ut innan spamlänken redigerades bort:

Haha det lät [url=http://se.flirtfair.org/]inte lika bra[/url] på svenska. Jag har alltid sagt logo box (:

Normalt sett är spam maskinöversatt från engelska, vilket gör att kommentarerna uppvisar roliga felöversättningar. Men kommentaren ovan (liksom all annan sådan spam jag drabbats av) är högst sannolikt skriven av en livs levande svensk. Kommentaren är ofta vagt relaterade till ämnet, texten ovan är däremot direkt relaterat till trådens innehåll även om den inte tillför speciellt mycket till debatten.

Problemet med de här länkarna, och varför de är så svåra att upptäcka, är som sagt att spamlänkarna redigeras in i efterhand. Det gör att denna typ av spam är svår att upptäcka eftersom diskussionen kan vara över när väl spamlänkarna redigeras in i texten. Lyckligtvis har jag duktiga moderatorer som hjälper mig liksom medlemmar som är duktiga på att rapportera in spam, så det redigeras i normalfallet bort innan dagen är slut.

Här är ip-adressen för kommentaren ovan, som går till Tyskland (liksom alla annan spam från användaren):

IP: 85.178.5.152
Värdnamn: e178005152.adsl.alicedsl.de

Sammanfattningsvis, kännetecknande för denna typ av spam är alltså:

  1. Texten är högst troligen skriven av en svensk (alltså inte maskinöversatt).
  2. Inläggen är ofta generellt skrivna och svagt relaterade till ämnet som diskuteras.
  3. Spamlänkarna redigeras in i efterhand. Oftast drygt 24 timmar efter att inlägget har skrivits.
  4. Det är 1-3 slumpvist valda ord som används som ankartext i länken.
  5. Hittills har alla spamlänkar gått till dejtingsidor.
  6. IP-adressen kommer inte från Sverige.

Jag hoppas att den här informationen ska hjälpa andra att hålla rent på nätet.

Dela:facebooktwittergoogle_plus

Varför Javascript suger

Varning för programmerarhumor.

Javascript är ett väl använt programmeringsspråk på nätet. Frågan uppstår då och då om det är ett ”riktigt” språk eftersom det finns en del egenheter som är fullständigt ologiska, till exempel hur olika typer av objekt typkonverteras.

I den här presentationen på fyra minuter får man ett gott skratt kring problemen med Javascript.

https://www.destroyallsoftware.com/talks/wat

Videon kommer dock vara rena grekiskan om du inte vet vad ord som ”object”, ”array”, ”string” eller ”integer” betyder.

Dela:facebooktwittergoogle_plus

Trello: Organisera projekt skitenkelt med andra

Då jag arbetar med flera olika medier har jag svårt att hålla allt i huvudet och behöver ett verktyg som hjälper mig. Post it-lappar på väggen gillar jag, men omgivningen blir inte så vacker då. Dessutom kan jag inte ta dem med mig. Det är här Trello kommer in i bilden.

Trello kan närmast beskrivas som att göra-listor som fästs direkt på webbplatsen likt post it-lappar. Hela gränssnittet är intuitivt och för mig var det därför ingen inlärningskurva alls, utan jag kunde börja arbeta i det direkt, vilket jag gillar väldigt mycket.

Så här ser min arbetsyta ut för tillfället:

Som synes i bilden samlar jag olika typer av projekt där, i nuläget arbetar jag med en bok, en kortfilm och ett par webbplatser. Jag organiserar alltså allt mitt arbete i Trello (i stora drag) och använder sedan specifika verktyg för delmomenten i varje projekt.

En vanlig kalender, på papper, är något jag inte heller klarar mig utan. Jag har aldrig gillat digitala kalendrar trots att jag är en webbnörd som dessutom utvecklat kalenderapplikationer.

Även om jag för tillfället använder Trello ensam så fungerar det ypperligt i team. Eller rättare sagt, det är gjort för att användas i team. Kolla på videon så fattar du galoppen:

Trello is a collaboration tool that organizes your projects into boards. In one glance, Trello tells you what’s being worked on, who’s working on what, and where something is in a process.

Kort och gott, om du vill ha ett verktyg som bara fungerar utan att du behöver lära dig något, och dessutom arbetar i ett team, är Trello något du bör titta närmare på. Det fungerar ju som synes utmärkt även för oss som inte arbetar i team. Och ja, det är gratis.

Mina verktyg för att utveckla webbplatser

Trello använder jag för en överblick över alla mina pågående projekt. Jag gillar att man ser allt på en enda skärm, och en stor monitor förenklar det.

För webbutveckling använder jag vanligtvis scrum-influerade metoder. När jag säger influerad innebär det att jag inte följer den fullt ut, utan använder en slags iterativ process där jag gör saker i små steg och utvärderar – inte helt olikt scrum. Att jobba ensam med scrum är dock meningslöst, därav förenklingen.

Till det har jag testat en betaversion av PangoScrum ett tag, men tycker det är något invecklat (gränssnittet är inte intuitivt). Därutöver har jag använt BaseCamp i flera år för att hantera att göra-listor för enskilda projekt och iterationer i dessa projekt. Det fixar biffen utan besvär.

Jag använder också HighRise för att hantera kontakter. Jag är tillräckligt paranoid för att undvika Gmail för det. De har redan tillräckligt med data om mig. I övrigt använder jag också Remember The Milk som att göra-lista för rent personliga uppgifter (av typen ”tvätta bilen” och ”släng grejer på tippen”).

Det är några av de webbapplikationer jag använder för att organisera mitt arbete. Vad använder du själv?

Dela:facebooktwittergoogle_plus

Dela inte upp din webbtext på flera sidor

Om du har en lång artikel är det sällan en bra idé att dela upp den på flera sidor. Använd i stället en enda lång sida. Att skrolla är inte farligt.

På senare tid har en del webbplatser valt att dela upp långa artiklar på flera sidor, vilket kräver ett klick framåt. Tanken är förstås god, man vill inte skrämma iväg läsaren med för mycket text på en gång. Men det uppstår i stället ett annat problem, nämligen att man måste klicka sig fram och vänta på att sidan laddas klart innan man kan läsa nästa del, och man kan inte heller skaffa sig en enkel överblick. Jag har till och med sett skräckexempel där webbdesignern delat upp varje stycke på en ny sida, vilket innebär att man inte får något sammanhang i texten utan tvingas klicka fram och tillbaka varefter frustrationen ökar: ”Ge mig texten på en gång så bestämmer jag själv hur jag vill läsa den!”.

M3 – ett avskräckande exempel

Tidningen M3 delar regelbundet upp sina artiklar på olika sidor, som synes nedan i denna artikel som är drygt 1 000 ord och 5 800 tecken (lite mindre än två utskrivna A4-sidor text):

M3 har valt att lägga två stycken text på varje sida (med bild mellan styckena), vilket gör sidorna väldigt innehållsfattiga. Google vill i bästa fall ha minst 500 ord på en sida, så den här utformningen är dålig ur nästan alla aspekter.

Problemet bottnar ofta i en (van)föreställning att mycket text är jobbigt för läsaren, och att man bäst delar upp den i mindre bitar. Och det är förstås helt sant, men utförandet har tyvärr missuppfattats. Vad man ska göra är att använda mellanrubriker och andra typografiska element som delar upp texten i mindre bitar. Inte nya sidor. För även om vi traditionellt sett skannar webbtexter så blir internet mer och mer vårt primärmedium för att faktiskt läsa text av olika slag (av det enkla skälet att fler av texterna finns på nätet).

Användbarhetsexperten Jakob Nielsen ger dessutom följande tips när han pratar om Mini-IA: Structuring the Information About a Concept:

If you have a long article, it’s almost never good to simply chop it up into a linear sequence of pages. If the only navigation is a link saying ”continue” or ”next page,” then it’s typically better to stick it all on a single page and rely on scrolling instead of page-turning.

Ett undantag är iPad och andra tablets eftersom de har naturliga gester för att byta sidor. Dessutom bör man på en e-handelssida använda sig av olika sidor vid betalningen eftersom de följer logiskt efter varandra. Först granskar man innehållet i kundvagnen, sedan får man fylla i betalningsuppgifter på andra sidan och till slut, på tredje sidan, får man bekräfta sitt köp. (Man kan ju inte gå till sidan tre utan att först ha gått igenom de föregående.)

Wikipedia – ett inspirerande exempel

Många av Wikipedias texter är väldigt långa, som denna om Bipolär sjukdom, men har utomordentligt bra disposition så att man ändå enkelt kan hitta det man letar efter:

Artikeln har drygt 6 300 ord och 45 000 tecken som ger drygt 14 stycken A4-sidor text. Den är alltså mångdubbelt längre än M3:s webbtext, men ändå betydligt enklare att navigera i. Förvisso finns det ingen reklam på Wikipedia, vilket kan bidra till att den uppfattas som renare, men i det här fallet är vi endast intresserade av strukturen på själva webbtexten. Med ett konsistent val av mellanrubriker och underrubriker har Wikipedia grupperat informationen i logiska block som är enkla att hitta (innehållsförteckningen ligger dessutom överst i texten, inte underst som hos M3).

Jakob Nielsens tips är att dela upp innehållet i delar på detta sätt:

In many situations, the best alternative is to chunk information into individual content units, focusing on logical cohesiveness; you can then describe each unit accordingly and let users navigate directly to the unit that meets their needs. (Note: ”page 3 of 5″ is neither descriptive nor deserving of its own page.)

Hur du bygger upp ditt textinnehåll handlar alltså mer om vanlig traditionell textbearbetning snarare än några tekniska finesser som paging (att bläddra mellan sidor). Läs gärna Konsten att formatera dina inlägg och artiklar för att lära dig mer.

Hur vi läser på nätet (och hur dina webbtexter bör se ut)

Dela:facebooktwittergoogle_plus

Objektorienterad CSS

CSS har varit en enkel sak i alla tider – det är ba å gör’t. Men här kommer en idé som omkullkastar hur jag arbetar med CSS: Objektorienterad CSS.

Ett exempel är att man inte ska använda ID i selectors, det vill säga skriva så här:

#post {width: 400px}

I stället ska man bygga modulbaserade komponentbibliotek, vilket kanske låter komplicerat men det handlar om legoblock som appliceras på innehållet.

Man kan fråga sig vad vitsen är med att skriva CSS på det här viset, men uppenbarligen ska det ge snabbare rendering i webbläsaren. I den här videon berättar Nicole Sullivan, som tidigare arbetat med Yslow, mer om hur det fungerar:

Hon har även tillsammans med en kollega gjort verktyget CSS Lint som är ett väldigt strikt valideringsverktyg för CSS.

Vill du börja med objektorienterad CSS kan https://github.com/stubbornella/oocss/wiki vara av intresse för dig.

(Via ReadWriteWeb)

Dela:facebooktwittergoogle_plus

Du har inte rätt att styra vad andra säger om ditt företag

Kritiker

Då och då kontaktar företag mig. De säger ”kan du ta bort dessa inlägg från ditt forum” och pekar på några användare som jämför priser för en produkt. ”De påstår att mitt företag är dyrare än konkurrenterna” fortsätter företagaren och försäkrar att de far med osanning. Men saken är den att du inte har rätt att styra vad andra säger om ditt företag. Du har däremot en rätt att göra samma sak: Att yttra dig.

Det forum jag driver är en mötesplats för människor. Jag har förvisso ett elegant regelsystem som tillämpas strikt, men det säger ingenting om att man inte får tala osanning. Jag betvivlar inte på något sätt att företagaren ifråga har rätt om sitt pris. De är säkert billigast på marknaden. Men det är däremot inte min sak, som drivet forumet, att se till att de påståenden som görs stämmer överens med verkligheten. På en öppen mötesplats har även motdebattörens åsikt rätt att komma till tals. Men med företagarens egna logik skulle jag lika väl kunna censurera honom i stället för användarna.

Häromåret var det till och med ett juridikföretag som menade att det var olagligt att ”förtala” deras företag. Jag skrattade, eftersom förtal är ett brott mot personer. Inte företag. Juridikföretaget hade alltså inte ens koll på den juridik de sålde till sina kunder, vilket är ett bottenbetyg i min bok (som är en Moleskine för övrigt). Deras kommunikation luktade naturligtvis lika bedrövlig som den tjänst de försökte våldföra sig med.

Yttrandefriheten innebär att även obekväma saker får sägas

Jag raderade förstås inget av de här inläggen, utan hänvisar helt enkelt till att vi alla har rätt att uttrycka våra åsikter och att det bästa man kan göra är att själv ge sig in i debatten i stället för att hytta med näven och ropa efter förbud.

Jag har många gånger ställt upp tankeexempel där enbart positiva saker får sägas. Vad det resulterar i är lätt att se eftersom vi redan har sådana länder och vi brukar fästa etiketten ”diktaturer” med snabblim på dem. Om du däremot försöker få den som äger forumet att radera och censurera allt du ogillar så bör du nog överväga att stå i en verkstad och svarva metallkoner i stället.

Så hur hanterar man negativ kritik?

Att dina kunder har flyttat ut på nätet innebär inte att du ska göra ditt yttersta för att hindra dem. Det innebär att du också ska flytta ut på nätet och möta dem där de finns. För som vi kan se ovan så är det en dålig idé att försöka censurera de som sprider dåliga vibbar om ditt företag. Internetmogna företag utvecklar i stället digitala strategier för att hantera besvärliga kommentarer och bygga upp sitt varumärke på nätet.

Några allmänna tips för att hantera negativ kritik om ditt företag på internet:

  • Var personlig. Det heter ”sociala medier” därför att det knyter ihop människor. Vi vill ha ett ansikte på företaget och inte bara ett företagsnamn. Utveckla en strategi för hur du ska profilera företaget i den externa kommunikation. Ska ni ha glimten i ögat eller sträva efter att verka kunniga och trovärdiga?
  • Var transparent. Visa vad du står för, vad du gör och vad du ska göra. Försök inte dölja dina intentioner eller arbetsmetoder. Det ställer krav på ditt etiska arbete och folk kan lättare få förtroende (och försvara dig) om de vet vad vad du sysslar med – och hur.
  • Dela med dig av fakta och information. Om någon säger något som är osant ska du korrigera med rätt fakta och ange källa. Gå aldrig till personangrepp eller börja hota användare. Då bör du säga upp ditt internetabonnemang i stället.
  • Vidta åtgärder. Se till att fixa problemet som du kritiseras för eller kompensera den kund som blivit drabbad. Skyll inte ifrån dig på underleverantörer, eftersom det till syvende och sist är du själv som valt underleverantören.
  • Bemöt kritiken på plats. Det är viktigt att du bemöter kritiken på den plats där den uppstod. Uppstår den på Twitter så bemöter du den på Twitter. Uppstår den på din blogg så bemöter du den på din blogg. Om du inte gör det kommer den negativa kritiken fortsätta att stå obemött (åtminstone ser det ut så). Därför gäller det att vara där dina kunder är, och hålla koll på förändringar.

Vill du inte att ditt personliga namn syns på Google?

Om du googlar på ditt eget namn, vad får du fram då? Många privatpersoner hör av sig till mig och vill att jag tar bort deras namn från mitt forum eller någon webbplats de varit med och arbetat kring. Även journalister som jag köpt (!) nyheter ifrån har velat ta bort nyheterna så att deras namn inte dyker upp vid en sökning. Det du ska göra då är att själv ta kontroll över ditt sökresultat. Bygg en hemsida med ditt eget namn som domän (jag har peterdahlgren.com) och se till att den kommer upp överst i sökresultatet. Du har som sagt inte rätt att censurera. Men du har rätt att yttra dig!

Jag måste samtidigt påpeka att yttrandefrihet är något av mina specialintressen. Förutom att som här förklara hur man bör agera så skriver jag också om yttrandefrihet ur ett politiskt filosofiskt perspektiv på mina andra blogg där jag försvarar yttrandefriheten mot galna fundamentalister som vill avskaffa den för sin egen religions skull.

Dela:facebooktwittergoogle_plus