Ordnett i terminalen

Oppslagsverkene som er tilgjengelig på Ordnett er mye brukt i forbindelse med studiene, men jeg har etterhvert funnet det noe tungvint å skulle benytte nettsidene, dessverre.

I et forsøk på å gjøre Ordnett lettere tilgjengelig for meg selv kodet jeg i høst en liten kodebit som lar meg gjøre oppslag direkte fra terminalen, som jo alltid er oppe.

Bruk av ordnett fra terminalen.

Bruk av ordnett fra terminalen.

Jeg har nå lagt ut denne kodebiten i kildekodekontrollen på GitHub, og de som måtte ønske å benytte den kan laste den ned. Det er fortsatt noen feil og mangler, men programmet i seg selv gjør jobben. Jeg skal få ordnet med noe versjonering og debian-pakker etterhvert for de som foretrekker det.

For de som måtte håpe at dette er et magisk program som gir ekstra tilganger, så beklager jeg. De som er koblet opp i NTNU sitt nettverk vil få opp alle alternativene som er i koden, mens andre må forvente at tilganger koster penger med mindre nettleverandøren har en avtale.

Bruken av programmet er veldig enkel, for eksempel kan oppslag i norsk-engelsk-ordbøker, oppslag i bokmålsordboka og i alle tilgjengelige se slik ut:

ordnett -ne fritid
ordnett -bok fritid
ordnett fritid

Om noen skulle ta en titt på koden, så vet jeg at ikke alt er like bra, jeg skrev mesteparten kort tid etter at jeg begynte å programmere i Python, men får håpe det blir bedre etterhvert.

Ting som jeg vet mangler:

  • Mulighet for å legge inn innlogging
  • Det er fortsatt en del tegn som kommer opp feil
  • Underveis i formateringen hender det at mellomrom fra nettsidene forsvinner

SSH uten passord

nettverkSSH er en protokoll for sikker kommunikasjon mellom datamaskiner, fortrinnsvis maskiner med BSD, Linux og Mac OS, men kan også brukes fra Windows-maskiner ved å benytte Putty. Jeg ønsker her å vise hvordan man kan gjøre dette på maskiner med BSD, Linux og Mac OS, for Windows; se Putty sin dokumentasjon.

Dersom man ønsker å benytte seg av innlogging over SSH uten passord er det viktig å husket at dersom noen får tak i din private nøkkel vil man også andre kunne logge seg inn som deg.

For å komme i gang må man lage nøklene som er nødvendig, og da åpner man en terminal og skriver følgende kommando:

ssh-keygen -t rsa

Det vil komme opp noe tilsvarende dette, og man trenger ikke lenge inn nye verdier med mindre man ønsker å ha passord på nøklene:

Enter file in which to save the key (/home/brukernavn/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/brukernavn/.ssh/id_rsa.
Your public key has been saved in /home/brukernavn/.ssh/id_rsa.pub.

I hjemmemappen er det nå laget to nye filer:

  • .ssh/id_rsa – Den hemmelige nøkkelen som ikke må gies til noen andre
  • .ssh/id_rsa.pub – Den offentlige nøkkelen som sendes til den andre databaskinen

Nå som nøklene er opprettet er det tid for å kopiere over den offentlige nøkkel til maskinen man ønsker å koble seg til. Skriv inn passordet ditt når du får spørsmål om dette.

ssh-copy-id -i ~/.ssh/id_rsa.pub brukernavn@ssh.domene.net

Nøkkelen din er nå lagt inn i filen .ssh/authorized_keys på den eksterne maskinen. Nå kan du logge deg på uten passord, bare prøv:

ssh brukernavn@ssh.domene.net

Dersom det ikke fungerer, så kan det være at muligheten for innlogging uten passord er slått av den eksterne maskinen.

Husk å ikke strø rundt deg med private nøkler!

Koding uten kildekodekontroll

For første gang på lenge skulle jeg bare programmere litt uten å ha koden i kildekodekontroll. Det var for å se om jeg kunne få det til, og etter litt for kort tid fungerte det nøyaktig som det skulle. Siden koden gjorde jobben sin var det tid for å gjøre litt refactoring. Det var klokka 10, og koden fungerer ikke igjen enda…

Så, for å plukke relevante tips fra boka The Pragmatic Programmer av Andrew Hunt og David Thomas:

(23) Always Use Source Code Control
Source code control is a time machine for your work – you can go back.

(47) Refactor Early, Refactor Often
Just as you might weed and rearrange a garden, rewrite, rework, and re-architect code when it needs it. Fix the root of the problem.

Jeg lover; aldri igjen uten kildekodekontroll.

Hemmelig epost?

Sikkerhet

NRK kunne i dag slå opp at Sverige fra og med 1. januar 2009 kan følge med på hva nordmenn gjør på Internett når nettverkstrafikken går innom Sverige. Dette har vært oppe også tidligere i år, men det ser ut til å utebli løsninger som kan være med på å løse dette nye problemet.

Les mer »

Bachelor i realfag

I dag kom beviset på min gjennomføring av bachelor ved NTNU. Ble litt paff da det var rekommandert sending til meg på postkontoret, og forstod absolutt ingenting før jeg så NTNU sin logo på brevet.

Da er det vel bare til å stå på for å komme seg igjennom også master, får begynne med de to eksamenene som gjenstår før jul…