Blog: Tomcat og hvad jeg lærte af den arrogante softwareudvikler

Refleksioner over ansvar for egen læring som humanist i en IT-verden

Enhver, der ikke er superkoder, kender det. Systemet, softwaren fejler – men hvorfor?

Hvorfor? Spørger du udvikleren, vil han komme med et (utilfreds) grynt efterfulgt af en mængde spørgsmål og herefter én ud af to mulige responses alt afhængig af humør. Enten ”det er logik, (selvfølgelig fejler det) for du bruger det (softwaren) forkert”. Eller ”det fungerer på den måde at …. (lang teknisk forklaring du helt sikkert ikke forstår)”.

Jeg er en særlig race. Jeg er humanist (i en IT-verden), men jeg er også en nørd. Ikke nørd som mine cola-drikkende, bordfodboldspillende kollegaer, som synes, det er rigtig sjovt og farligt at tale om OutOfMemoryError og NullPointerExceptions. Men jeg er analytisk og elsker at fordybe mig i mystiske problemstillinger. Én af disse er mødet mellem humanisten, en billion tekniske termer, udvikleren, og min egen læring.

En anden er logging i Tomcat. Eller faktisk bare Tomcat-installation og -opsætning. Eller faktisk bare Tomcat. Hvis du ikke ved, hvad Tomcat er, så fortvivl ikke, for det gjorde jeg heller ikke (i går).

Prøv at google Tomcat. Værsgo: “Apache Tomcat is an open source software implementation of the Java Servlet and JavaServer Pages technologies”.

Hmm, leder videre: Se bare her (ComputerWorld, 2001): ”Tomcat er en open source Servlet og JSP Container – og hvad er så det? En Servlet er et lille Java-program, som kører under en webserver. Man kan tænke på det som en applet uden ansigt. En JSP Container afvikler JSP-sider, og JSP er Java-pendenten til ASP og PHP”.

Det er lige præcis her, det går galt:

  1. Jeg vil gerne vide, hvad Tomcat er, så jeg slår det op (fint)

  2. Jeg løber ind i det faktum, at Tomcat er en implementation af noget (?)

  3. Jeg møder flere nye termer: servlet, applet (90’erne har ringet, de vil gerne have dem tilbage), JSP Container, JSP-sider, ASP og PHP (suk).

Resultat: Jeg er ikke kommet meget videre. Så hvad gør jeg? Jeg er, ifølge James Bach, en social tester, med udmærkede social skills og finder – gæt selv – en udvikler.

Mødet mellem mig og udvikler udspiller sig således:

Mig: Det der Tomcat – jeg har installeret det, og vores applikation kører – men den skriver en masse fejl, og disse vil jeg gerne have ned i en fil.

Udvikler: Hvordan kører du Tomcat? Hvad mener du med fejl?

Mig: Øh, altså jeg trykker på startup i en windows stifinder og så starter Tomcat….

Udvikler: Det er jo fordi, du kører den forkert. Du har bare pakket zip-filen ud. Du har jo ikke installeret Tomcat. Du skal installere den som en service (eller gøre en masse andet jeg ikke kan huske, hvad han sagde. Læs: lang teknisk forklaring)

Mig: Nåh…. Så det, du siger, er, at jeg skal installere Tomcat som en service?

Udvikler: Ja. (endnu længere teknisk forklaring)

Mig: Ok. Men jeg vil altså stadig gerne have de fejl, den udskriver, ned i en fil, så jeg kan bruge det til at rapportere fejl med…

Udvikler: Hvilke fejl ”den” (himmelvendte øjne) udskriver? Tomcat eller vores applikation?

Mig: Øhhh. Pause. Peger på Tomcat console vinduet. Dér.

Udvikler: (Kigger på consol vindue) Men det er da klart – det er vores fejl.

Mig: Hvordan kan du se det?

Udvikler: Det kan man da se!

Mig: Hvordan kan du se det?

Udvikler: Jamen altså vi skriver altid (lang forklaring) og Tomcat skriver altid (lang forklaring), så derfor ved man, hvad der er hvad

Mig: Ok. (suk)

Mig: Men altså jeg vil stadig gerne have de fejl, som bliver skrevet i consolen ned i en fil

Udvikler: Ja, men så skal du sætte dig ind i, hvordan Tomcat logger

Mig: Øh ok

Udvikler: Det kommer jo an på, om du kører Windows, Linux, og hvordan Tomcat startes….

Mig: Ok… jeg prøver.

Mig: Går ind på Google og skriver…. ” tomcat 7 console output to file windows” og får 373.000 resultater.

Udvikler: Går tilbage til sit kontor og drikker mere cola og taler om vigtige OutOfMemory situationer med sine udviklerkollegaer….

Nu er det ca 24 timer siden, denne samtale fandt sted, og jeg har:

Læst utallige indlæg om Tomcat og logging på Stackoverflow, jeg har læst dokumentationen på tomcat.apache.org, jeg har powergooglet Tomcat og logging, til jeg var helt firkantet i hovedet, men vigtigst af alt: jeg har installeret Tomcat som en service, og jeg forstår, hvordan det fungerer nu, og jeg ved, hvor jeg skal kigge, når der opstår en fejl – for jeg har nemlig forstået nu, hvor log-filerne er placereret og hvorfor.

Har vi (ikke-udviklere, humansister, testere, almindelig dødelige) en forventning om, at softwareudviklere og andre superkoderee – og nørder kan løse vores problemer med et klik, og at vi ikke behøver at engagere os eller tage ansvar for det arbejde eller problem, vi sidder med? Det er lettere at spørge udviklerkollegaen, ja, end at lede selv, researche, læse, lede videre, prøve at forstå, læse mere, forstå mere – eller er det?

For næste gang jeg skal arbejde med Tomcat, så ved jeg jo, hvad jeg har med at gøre. Tomcat er bare et program. Og det program skal jeg bruge for at køre min webapplikation. Punktum. Og alt det med logging og fejlmeddelser til console vindue eller fil, ja det kan jeg jo selv finde ud af nu, fordi jeg har læst dokumentationen og forholdt mig til den kontekst, jeg arbejder (tester) i og selv har taget ansvar for at lære og forstå den.

Tak, arrogante udvikler. Uden dig og dine arrogante svar, havde jeg (tester og humanist) ikke taget ansvar for egen læring og var ikke kommet til disse vigtige erkendelser.

Posted in computer.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>