Not Invented Here, nu som lib!

Sprang idag över följande kanonsköna lib: NIH Utility Library (libnih). Från beskrivningen:

libnih is a small library for C application development containing functions that, despite its name, are not implemented elsewhere in the standard library set.

libnih is roughly equivalent to other C libraries such as glib, except that its focus is on a small size and intended for applications that sit very low in the software stack, especially outside of /usr.

It expressly does not reimplement functions that already exist in libraries ordinarily shipped in /lib such libc6, and does not do foolish things like invent arbitrary typedefs for perfectly good C types.

Nordea – e-legitimation

Systemkrav: Windows XP, Vista eller 7 – med Internet Explorer 7 eller senare.

“Nordeas e-legitimation är kostnadsfri” – förutom att du behöver köpa en licens för ett operativsystem från Microsoft. Tittar vi på Dustin så går det som minst på ca 1370 kronor.

De lustiga i kråksången är att BankID som Nordea använder inte alls har dessa krav. Det fungerar fint med både Mac OS och Ubuntu/Linux. Jag menar att det är precis tvärtom – BankID är kostnadsfritt, men Nordea lägger på en kostnad om ca 1370 kronor.

Way to go, Nordea!

PS. SAML-baserad e-legitimation lanseras 1 juli 2013. DS

PS2. JavaScript-snurran som ser till att bekräftelsekoder från dosan formateras vackert “123456789” blir “123 456 789” är sådant skrivet att man måste skriva in tillräckligt långsamt för att inte fastna med “123  456  7” – way to go 2! DS

PayPal Spam

Just got a really well formatted, articulated phishing/scam mail. It was so good that I actually looked up whois information for one of the domains (they even bothered to use https). Anyhow, comparing the whois-data for paypal.com with paypalobjects.com shows this:

fredrik@a-machine:~$ diff ppo pp
8c8,14
<    Domain Name: PAYPALOBJECTS.COM
---
>    Server Name: PAYPAL.COM.ZZZZZ.GET.LAID.AT.WWW.SWINGINGCOMMUNITY.COM
>    IP Address: 69.41.185.207
>    Registrar: TUCOWS.COM CO.
>    Whois Server: whois.tucows.com
>    Referral URL: http://domainhelp.opensrs.net
>
>    Domain Name: PAYPAL.COM
[...]

So, I won’t open the attached form that requires a “fairly modern browser to work”. :-)

Skilj på Mina och Dina

Din El har förstått det här med mitt och ditt. På deras webbplats finns en sektion som kallas “Din sida”. ComHem däremot rör ihop det och kallar det Mina Sidor. Liksom Västtrafik, se detta exempel:

Västtrafik kör med Mina sidor
Västtrafik kör med Mina sidor

Ungefär 17 gånger nämns Du/Dina och 5 gånger Mina. 0 (noll) gånger förekommer mina naturligt i texten/dialogen med kunden. Vad sägs om följande:

A) Välkommen till Dina sidor. För att logga in, skriv in ditt lösenord.

B) Välkommen till Mina sidor. För att logga in, skriv in mitt lösenord.

C) Välkommen till Mina sidor. För att logga in, skriv in ditt lösenord.

Återaktivera domän hos Loopia

En domän förföll, det diskuterades huruvida tjänsten som hostades där skulle fortsätta eller om kunden ville lägga ner projektet. Efter att den förfallit så beslutade sig kunden för att fortsätta köra.

  1. Jag försöker då köpa domänen på nytt via Loopias vanliga gränssnitt, eftersom domänen försvunnit från listan över “mina domäner”.
    Detta misslyckas pga “tekniskt fel kontakta support”. Detta har jag stött på flera gånger: om någon (inte bara jag)  tidigare köpt en domän och hostat den hos Loopia men inte längre kontrollerar den, då kan ingen registrera om den via Loopia – man måste ringa in till supporten, de gör en abrovinsch i sitt system och sedan är det fritt fram igen.
  2. Jag ringer in till supporten (en lördag kl 11) men får veta att jag behöver få hjälp av registry-/domänavdelningen som är tillbaka först på måndag.
  3. Jag ringer på måndag och får “hjälp” med att få tillbaka domännamnet i listan. Jag behöver nu bara gå in och återaktivera domänen.
  4. Jag går in och försöker hitta en knapp som det står återaktivera på. Efter lite letande finns knappen, men den går inte att trycka på: Jag behöver först fylla upp mitt Loopia PrePaid-konto så att återaktiveringen kan dras därifrån.
  5. Jag tycker på länk för att försöka fylla upp PrePaid-kontot. En faktura skickas via mail.
  6. Jag får ett mail med faktura, ser bra ut, och jag trycker på länken “Betala fakturan med bankkort”
  7. Loopias sida hoppar fram men nu står det att jag försöker betala en annan domän (hackernight.se), en domän som är i drift, betald och fin och inte skall förnyas förrän om 4 månader. (Det står också att jag kommer fylla på PrePaid.)
    Jag kontrollerar fakturanumret och ser att det stämmer, men specen på webben är annorlunda från den i PDF:en.
  8. Jag ringer in till supporten och frågar vad som står på. Jag får information att det inte kommer dras pengar åt något håll automatiskt eftersom jag valt manuell hantering av PrePaid.
    Jag: “Så trots att det står att jag betalar för en viss domän, så kommer jag i själv verket inte göra det?”
    Loopia: “Just det, det kommer inte bli fel utan så som du vill.”
  9. Jag tar en skärmdump och skickar till support@ (enligt uppmaning över telefon) för att kunna lösa buggen.

Det är inte bra när ett fakturanummer kan ge olika fakturaspecifikation eller uppgift om vad fakturan handlar om. Det brukar revisorer ha synpunkter på. Själv blir jag bara villrådig och undrar så klart hur deras system fungerar

Jag gillar skarpt att Loopia har ett enkelt gränssnitt, prisvärd tjänst (i övrigt) men

  1. När det väl är dags att betala går det bara via DIBS vilket betyder att man måste ha med sin bankdosa för att genomföra en registrering. Jag har inte min bankdosa med mig i fickan hela tiden. De flesta domäner jag köpt över åren har helt klart varit en reaktion på en ny idé som någon kläckt helt appropå, påbörjar registrering men måste vänta tills jag kommer hem för att avsluta och genomföra den verkliga registreringen.

Jag har varit en nöjd kund, alltid fått snabb och bra hjälp. Det är bara synd att jag behövt ringa, år efter år med samma ärenden.

Det finns dessutom ett fint API för att kontrollera sina domäner. Betalning  – oavsett om det går in i PrePaid eller betalar en faktura – kräver bankdosa. Mindre bra för integration och automatisering. (Så det argumentet faller lite på målsnöret.)

Uppdatering: fixade länkar och skrev till API-argument (och jag fick bra hjälp via mail och twitter innan jag redogjorde här – supporten är kanon, det är “systemet” det är fel på).

Internkommunikation

Jag var iväg i Varberg nyligen och introducerade branchkollegor till Agile, Scrum och XP (inkl en praktisk övning – dojo style med KataStringCalculator). Uppdraget kom in ganska sent men jag och Janne gav oss an det ändå. Vi höll låda i fyra timmar och lämnade sällskapet i god stämning och med förutsättningslösa frågor om möjligheter att göra något mer framöver. Alles gut.

Tidigare i mitt arbetsliv har jag jobbat med arbetslag som varit mycket uppdelade – inte bara i form av plats utan också tid. Det hela fungerade dock bra mycket tack vare väl fungerande internkommunikation. Allt arbete var helt självpåtaget – det fanns ingen arbetsledare som delade ut uppgifter eller ansvar eller på något sätt managerade – alla medarbetare (13 över åren) tog sig an det som kändes prioriterat och utmanande. Inte en enda gång gjordes arbete dubbelt. Inte en gång kom någon och sade “va, är det redan gjort?”.

IRC – Internet Relay Chat. Alla “hängde” på en IRC-kanal (sådan som det sjungs om i “Boten Anna”) som bara var till för jobbet. Där skrev man när man gjorde något, när något var klart och man diskuterade lösningar och problem. När man så började sitt arbete så bläddrade man igenom det som hänt sedan sist och fick på 2-10 minuter en perfekt uppdatering av läget. Inte olikt stå upp-möten.

Tillbaka till nu:

  • Kollega 1 – 2 dagar sedan, 17:39: “[Kund] sa att erat bidrag var mycket uppskattat idag :) Grymt jobbat!”
  • Kollega 2 – 2 dagar sedan, 17:39: “Hur gick gigget i Varberg? Var de mottagliga?”
  • Kollega 3 – 2 dagar sedan, 18:08: “Hörde att er kund var mycket nöjd med dagen. Hoppas ni hade en bra stund oxå.”

:)

  1. Det är kul med intresserade och stöttande kollegor (som ser till helheten och inte bara att kunden skall vara nöjd).
  2. Om IRC är low tech och e-post är high tech så har vi ett undantag som bekräftar regeln “med högnivå [språk] har vi sett upp till 5 gångers ökad effektivitet” (Brooks, Mythical Man-Month).

Som parentes kan sägas att jag börjar fundera mer – det finns nämligen två verktyg för internkommunikation: e-post (alla@) och socialwok (som liknar facebook fast för en sluten grupp, dvs företaget).

  • Om vi antar att båda verktygen är lika svåra att använda, kommer frågor via riktad mail istället för över woken pga man är rädd att visa upp misstag (det kanske gick dåligt i Varberg)?
  • IRC var alltid sökbart för vem som helst som kom och gick i gruppen – undrade man varför någon låtit DNS:en peka på en extern maskin så kunde man söka igenom IRC-loggarna snabbt (< 10 sekunder) och kanske få svar. (E-post är ju mycket inlåst, socialwok klarar en del men kontexten försvinner – endast tråden med sökträffar visas).
  • RSS hade potential att lösa problemet med att IRC kräver att man är uppkopplad när varje textrad skickas för att få ta del av den.
  • XMPP är ytterligare ett alternativ.

Det var länge sedan människans största uppgift var överlevnad, vi klarar enkelt att bibehålla lång livstid (i vår del av världen iaf). Jag har länge tänkt att det största uppgiften nu för (vår del av) mänskligheten är kommunikation. (Huruvida det är sant eller inte skall jag låta vara osagt, entrepologer har bättre insikt.) Det går åt massor med energi för att kommunicera, många blir upprörda över dåligt fungerande kommunikation (eller glada, som jag idag :) och jag tycker jag ofta ser bevis på att kommunikation verkligen är kung. (Jag vet att jag pratade om detta med Annette Welander (marknadsansvarig) på Chalmers Studentbostäder när jag började där 2003). Sedan dess har twitter och facebook blivit stort i Sverige. Mitt projektarbete på gymnasiet var en plattform för kommunikation som ratades. Problemet var kanske att den var skriven i C istället för PHP?)

Crystone Renewal Disorder

Loopia har en bugg som gör att kund B inte kan registrera en domän som kund A tidigare registrerat via just Loopia. På grund av detta vände jag mig till Crystone för drygt två år sedan. Deras tjänster är dock överprisade och krångliga att hantera (tycker jag) och jag sade därför upp kontot så fort jag flyttat över domänen till annan part.

I veckan kom så ett mail från Crystone med rubriken “Renewal Order 058XXX” om noll kronor. Det kan man kanske tycka är ok – det kanske är viktigt för Crystone att visa att de har kvar mig i sitt register, men att jag inte har några tjänster och därmed inga kostnader att betala för dessa tjänster nu när jag (tydligen) valt att förnya tjänsterna automatiskt.

Så, jag tänkte be Crystone plocka bort mig ur sina register. Dessvärre är denna renewal order skickad från no-reply@crystone.se och länken i mailet till support (www.crystone.se/support) fungerar inte (404). Skönt att de iaf avslutar mailet som man inte kan svara på med: “Skicka aldrig kreditkortsinformation eller lösenord till oss via e-post.”