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.

Nu kan man manipulera Googles algoritm!

Jag finner det märkligt att man på senare år kan läsa artiklar om hur Googles algoritmer kan manipuleras. Här är ett exempel: Facebooks algoritmer manipulerades inför USA-valet. (Jag väljer att undvika den tekniska diskussionen om att man inte manipulerar någon algoritm över huvud taget, utan indirekt manipulerar Googles index.)

Fenomenet med att ändra innehåll som Googles sökmotor utgår ifrån har funnits länge, och har gått under namnet sökmotoroptimering eller sökmotormarknadsföring. Jag har till och med gett tips på sökmotoroptimering för 13 år sedan på den här bloggen, innan jag började jobba på universitet och skriva om andra saker. Tanken med sökmotoroptimering är dock enkel. Eftersom Google använder orden i länktexterna för att (delvis) avgöra vad en hemsida handlar om innebär det att man kan påverka sökresultaten genom länktexterna på en hemsida. Redan 1999 uppdagades de första större påverkansförsöken med så kallad Googlebombning, att få vissa hemsidor att hamna högre upp i sökresultatet på helt irrelevanta sökord.

Kanske fick det mest uppseende under det amerikanska presidentvalet 2004. När man sökte på ”miserable failure” dök nämligen George W. Bush upp som första förslag i sökresultatet. På andra plats Michael Moore.

Det kollektiva minnet, åtminstone uttryckt i dagstidningarnas texter, om vad som har hänt tidigare i historien är relativt kort. Däremot kan sökmotoroptimering förstås ha större politisk betydelse nu än för 14 år sedan. Men än så länge verkar många tyckare anta att det påverkar val, snarare än att faktiskt visa att så är fallet. Men kom ihåg, det som kan antas utan belägg kan lika väl avfärdas utan belägg.

Vad som varit populärt på Twitter under ett år

Trender är vad de sociala medierna som Twitter och Facebook själva kallar vad som är populärt just nu. Genom att undersöka dessa är det möjligt att se vad folk skriver och diskuterar.

Eftersom trender är offentliga för alla att se, är de sällan avbilder av vad människor skriver, tycker eller tänker eftersom trenderna också kan påverka vad människor väljer att skriva om. Det som är populärt kan därför bli ännu mer populärt (samma problem finns med opinionsundersökningar).

Här är exempelvis de tio vanligaste trenderna på Twitter under året, med antalet trender inom parentes:

  1. #ffse (1 662)
  2. #aktuellt (1 435)
  3. #lyrikfredag (1 374)
  4. #sthlmpol (1 218)
  5. United (1 042)
  6. Liverpool (1 027)
  7. Chelsea (1 001)
  8. Zlatan (983)
  9. Hovet (939)
  10. #GONINJAS (922)

Exakt hur Twitter avgör vad som är en trend är höjt i dunkel, men trender reflekterar dels vad som händer just nu snarare än vad som händer för dagen, och dels volymen av tweets. Med andra ord, ju fler tweets under en kort period, desto större chans att det blir en trend. Av det skälet valde jag att samla in trender varje timme, dygnet runt, under ett år.

Trender är personliga, men det är också möjligt att ange en plats för var man vill se trender. I det här fallet har jag valt Sverige som plats för att se vad som skrivs i Sverige under ett år.

Nedan ser du några diagram jag tagit fram för massmedier och politiska partier, som bygger på trender från mars 2016 till mars 2017.

Massmedier

Massmedierna har jag plockat fram genom att helt enkelt gå igenom ett stort antal av de mest förekommande trenderna och sedan lagt in dem i diagrammet.

SVT-programmen Aktuellt dominerar tillsammans med Opinion Live, men Expressen Live kommer inte långt efter. Det är de som har trendat flest gånger.

Politiska partier

När det gäller de politiska partierna visar diagrammet nedan hur ofta respektive partis namn har trendat. Räknat på detta sätt är det Moderaterna som har flest trender.

Du hittar hela analysen i form av en R Markdown notebook: Vad som trendat på Twitter under ett år. Data finns även fritt tillgänglig via GitHub.

Hur länkar man till en specifik PDF-sida?

Ibland behöver man länka till PDF-filer. Men ofta är informationen man ska länka till begraven djupt inne i en rapport eller i värsta fall en tjock bok.

Så hur gör man egentligen om man vill länka till en specifik sida? Lägg till #page=14 i slutet av adressen för att länka direkt till sidan 14. Svårare än så är det inte!

<a href="http://example.org/document.pdf#page=14">Gå till s. 14</a>

Titta här för ett exempel på en text jag skrivit om argumentation och debatterande:

Hoppa direkt till sidan 14

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.

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.

 

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.

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.

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?