Comfortable console SSH login with private keys

Vom 7. Dezember 2009

On the virtual machines of my university SSH public / private keys are used for authentication. I usually connect to other servers using the ssh program in the terminal which looks like this:

ssh host

Pretty easy and straight forward. This command tries to log in at host with your current user name and asks you for a password.

When using public / private keys things are different. Your public key is stored on the server and the private key is on your PC. Instead of a password these keys are then used to authenticate you on the server. The only annoying thing is, that the ssh program first tries to log in via the normal password method. It then needs some time (several seconds) to figure out that the server does not support this method. A nice way to avoid this waiting time is to tell ssh to directly use the publickey method:

ssh -o PreferredAuthentications=publickey host

This command (found here) tries directly and only the privatekey method. However for a lazy programmer like me it’s a bit to much to type. One way to satisfy you laziness on the command line are bash aliases, kind of named shortcuts for often used commands. You can drop this line into the .bash_aliases file in your home directory:

alias sshpk='ssh -o PreferredAuthentications=publickey'

Whenever you know open a terminal and type in sshpk bash replaces this shortcut with “ssh -o PreferredAuthentications=publickey”. So I’m now able to lazily log into a host which uses SSH public / private keys:

sshpk host

Nice and short.

I know that there are other tools to keep track of many SSH logins. SSHMenu is one of them and I used it several times. However it never survived the natural selection of occasional reinstallations of my machine…

Abgelegt in: Sonstiges | Kommentare ansehen und hinterlassen

Level 60 Word-User

Vom 28. November 2009

Bei dem Vortrag über Computerspiele hat Prof. Kriha erwähnt, dass viele Computerspiele den Benutzer mitsamt seiner Entwicklung einbeziehen. Rollenspiele z.B. behandeln den Benutzer mit fortschreitendem Level anders (schwerere Aufgaben, anspruchvollere Umgebungen, usw.). Viele normale Anwendungen jedoch behandeln den Benutzer nach 3 Jahren immer noch genauso dumm wie am ersten Tag… obwohl der Benutzer z.B. nach 3 Jahren Arbeit mit Word sich (wahrscheinlich) in seinen Fähigkeine im Umgang mit Word doch erheblich verändert hat. Dennoch gibt es keinen Level 60 Word-User.

Was eigentlich als Witz gemein war, hat mich dennoch etwas zum Nachdenken gebracht. Könnte man nicht das Level-System aus den Rollenspielen irgendwie sinnvoll in größere Programme einbinden? Könnte man nicht Aufgaben stellen mit denen dann das Level des Benutzers steigt? Eine Art Level-orientiertes HowTo, das der Benutzer je nach Lust und Laune weiter machen kann.

“Zeichnen sie einen Pfad mit min. 10 Knoten verschiedener Art”, “Erstellen sie ein Rechteck und schneiden sie einen Kreis heraus”, “Herzlichen Glückwunsch zu Level 5”. Inrgend etwas in diese Richtung sollte sich doch verwerten lassen, so dass zumindest das Lernen eines Umfangreicheren Programms Spaß macht. Mal sehen, ob man das nicht in ein Projekt mit rein packen kann…

Abgelegt in: Programmieren, Sonstiges | Kommentare ansehen und hinterlassen

Computerspiele, Lehrer und die Medienoffensive

Vom 28. November 2009

Beim 6. Gamesday vor einigen Wochen hat uns Herr Lenzinger vom Regierungspräsidium zu einem Vortrag über Computerspielen eingeladen. Dabei ging es darum, bei einer Konferenz (weiß nicht, was es genau war) ca. 70 Lehrern der Medienoffensive ein wenig in dieses Thema einzuführen. So eine Gelegenheit lässt man sich nicht entgehen, also sind wir am Donnerstag (28.11.09) zu 6. aufgebrochen um die Ehre der Gamer etwas zu verteidigen.

Während des Planungstreffens hatten wir uns eigentlich darauf eingestellt, dass es mehr oder weniger auf eine “Killerspiele”-Diskussion hinauslaufen würde. Jedoch war ich echt positiv überrascht, dass viele der Anwesenden sich wirklich ernsthaft über das Thema informieren wollten.

Den Anfang hat Prof. Kriha mit einem 45 Min. Vortrag über seine Erfahrungen mit Gamern gemacht (Verständnis von komplexen Systemen, denken immer an den Benutzer, usw.). Um die künstlerischen Aspekte zu betonen haben wir den Assassin’s Creed II Debut Trailer gezeigt, um die Technik etwas zu erläutern den CryENGINE 3 – Beauty, Speed, Interaction Trailer. Nach diesen ersten Teil hatten glaube ich die meisten Anwesenden in etwa verstanden, dass die Spieleentwicklung durchaus eine der Meisterdisziplinen der Informatik ist.

Um dann auch mal wirklich ein Spiel “live” zu sehen, hatte ich die Ehre, Crysis am Beamer zu zeigen. Um erst mal die Grafik etwas für sich sprechen zu lassen hab ich die Anfangsszenen mit fem Absprung gezeigt (ab dem Flugzeug, das die Insel anfliegt). Danach eine kurze Vorstellung der Funktionen des Nano-Suites und der Waffen wie z.B. dem “Tactical Attachment” und dann war da auch schon die erste Patrouille. Wir haben das Spiel kurz angehalten und in die Runde gefragt, was die Anwesenden in dieser Situation im Spiel tun würden. Ich bin einfach vorbeigeschlichen. Um die Anwesenden noch mehr zu verwirren sind wir im Spiel zum ersten Sonnenaufgang nach vorn gesprungen, haben uns den wunderschönen Sonnenaufgang angeschaut und den GPS-Störer auch gleich noch abgeschaltet ohne jemanden zu verletzen. Viele waren scheinbar erstaunt, dass man ein vermeindliches Killerspiel auf diese Art spielen kann und die Umgebung doch merkwürdig ästetisch wirkt.

Um eine richtige Diskussion anzuregen hab ich die GPS-Störer-Stelle allerdings auch mal “actiongeladen” Gespielt. Für das Bot den Raketenwerfer ausgepackt (per Cheat), mit Max. Strenght eine Hütte eingerissen und einen Soladten durch die Gegend geworfen… insgesamt etwas Chaos angerichtet (und dabei einige male fast drauf gegangen, unter einfach!). Diese Szenen wiederum hat doch einige beachtlich schockiert. Darauf hin hab ich die Frage in den Raum geworfen, was für Szenen die Anwensenden zeigen würden, wenn sie 10 bis 100 Millionen in die Entwicklung gesteckt hätten und es jetzt Verkaufen müssten. In Kinos laufen Action-Filme sehr gut… ich glaube da haben einige verstanden, warum selbst die Spielefirmen ehr solche Action-Trailer zeigen und eben nicht, wie jemand um Gegner herum schleicht (Splinter Cell sei hier eine positive Ausnahme). Das hat die Diskussion echt gut angestoßen. :)

Nach der etwas längeres Diskussion haben dann 3 Studenten Gild Wars gezeigt um die MMOGs(Massively Multiplayer Online Games) mal zu entmüstifizieren. Nach einer kleinen Einführung in der Stadt (wie bildet man Gruppen, wie handelt man, usw.) ging es raus in die Wildnes. Nach ein paar Minuten hat jemand aus dem Publikum gemeint, dass es ja eigentlich recht “langweilig” sei… Einige waren auch über diese Art der Spiele sichtlich erstaun. Darauf hin gab es dann noch eine interessante Diskussion über das Suchtverhalten diverser Dinge (halbes Jahr voll, danach verliert es seinen Reiz, usw.).

Alles in allem war es eine sehr interessante Sache. Mich hat vor allem die Offenheit und das Interesse der Anwesenden begeistert (wir haben sogar die Pause sausen lassen). Nach dem Vortrag kahmen einige zu uns und haben sich nach Spielen erkundigt (z.B. nach Assassin’s Creed II), weil sie sie interessant fanden. Andere haben uns gesagt, dass sie jetzt nicht mehr so viel Angst vor der ganzen Sache hätten, denn jemand der WoW oder Guild Wars spielt, wird wohl kaum zum Amoklauf motiviert. Alles in allem war das Feedback auch bei der Diskussion sehr positiv. Ich bin sehr froh, dass das Thema Computerspiele inzwischen durchaus ernst genommen wird. :)

Abgelegt in: Sonstiges | Kommentare ansehen und hinterlassen (2)

Eine Insel

Vom 17. November 2009

Es ist schon einige Monate her, seit ich hier das letzte mal ein paar Worte zum besten gegeben habt. Das lag nicht etwa daran, dass ich nichts zum schreiben gehabt hätte… viel mehr überschlagen sich meine Gedanken während des Studiums so schnell, dass es mir schwer fällt, irgend etwas davon verständlich nieder zu schreiben.

Aber nun zurück zum Thema. Eine Insel. Ein Roman von Terry Pratchett… und im Gegensatz zu den normalen Themen hier mal etwas nicht technisches.

Dieser Roman hat mich total von den Socken gehauen. Zum einen den für Terry Pratchett typischen, absolut genialen Erzählstil, zum anderen aber auch sehr tiefgründige und nicht so lustige Gedanken. Wie kommt man damit klar, wenn man der einzig Überlebende auf seiner ganzen Heimatinsel ist? Warum lassen die Götter, die man verehrt, so etwas zu? Warum sind manche Dinge auf der Welt so wie sie sind? In diesem Roman steckt einfach so viel drinnen, dass es mir gerade schwer fällt, meine Gedanken dazu zu ordnen. Eines ist für mich jedoch klar: Dieses Buch hat mein Denken etwas verändert und wahrscheinlich den ein oder anderen Stein beiseite geschoben…

Um zwei Sätze aus den “Anmerkungen des Autors” zu zitieren:

Gedanken

Dieses Buch enthält einige. Ob sie zu Hause ausprobiert werden, bleibt jedem selbst überlassen!

Terry Pratchett

Ich werde sie ausprobieren…

Abgelegt in: Bücher, Romane, ... | Kommentare ansehen und hinterlassen

KISS?! Wer braucht das schon…

Vom 17. Juni 2009

Als Programmierer kommt man vielleicht in eine Phase, in der einem die eigene Phantasie davon rennt. Dann denkt man sich innerhalb von einer Stunde ein schön Aufgebautes System aus, das bloß leider auch sehr umfangreich und komplex ist. In meiner persönlichen Entwicklung hab ich mehr als einmal Monate an etwas programmiert, dass ich mir in einer Stunde ausgedacht hatte…

So schön das auch sein mag, so schlimm waren für mich persönlich die Folgen: Selbst wenn ein System besonders gut durchdacht war, sobald ich an die Implementierung gedacht hab, ist der Eifer in Frust umgeschlagen. Es würde eh zu lange dauern, diese Idee zu implementieren, also kann ich es auch gleich sein lassen.

Diese nüchterne Einsicht hätte fast dazu geführt, dass ich mit dem Programmieren aufgehört hätte. Wofür auch programmieren, wenn man die Sachen, die man im Kopf hat, eh nicht so Umsetzen kann? Wofür, wenn man seinen eigenen Ansprüchen an schönen Code nicht gerecht wird und damit auch keinen Spaß an der Sache hat? Ich habe mich in der Programmierung verloren… nur noch des Programmierens halber programmiert und dabei oft die eigentlichen Probleme aus den Augen verloren.

Glücklicher weise bin ich damals mehr durch Zufall und englische Literatur auf eine andere Art der Programmierung gestoßen. Dort ging es auf einmal um Prinzipien wie KISS und DRY. Erst dank dieser Prinzipien hab ich verstanden, dass es von Vorteil ist, ein System möglichst einfach zu halten. Weniger Code, weniger Fehler, übersichtlicher, schneller zu implementieren und einfacher zu warten.

Nach einiger Gewöhnungszeit gelang es mir dann sogar wieder, mir Sachen auszudenken, die in überschaubarer Zeit programmierbar waren. Zwar auch durch die Hilfe diverser Sprachen und Frameworks, aber in erster Linie indem ich in der Lage war, unnötige Funktionen wegzulassen und so das System möglichst einfach zu halten. Komplexität hat zwar auch seine Schönheit, aber etwas, dass ein Problem auf bestechend einfache und ausdrucksstarke Weise löst, hat einen ganz anderen Reiz.

Leider scheint man beim Studium auf solche Prinzipien nicht wirklich Wert zu legen. Warum auch Dinge einfach halten, wenn man sie kompliziert machen kann? KACAP scheint da der Trend zu sein. Warum sollte man als Programmierer auch an das Problem denken, dass man eigentlich lösen wollte? Das währe ja fast so schlimm wie ein Programmierer, der leistungsorientiert oder wirtschaftlich denken kann…

Langsam bekomme ich den Eindruck, manche Vorlesungen bewegen sich in diese Richtung.

Abgelegt in: Programmieren, Gedanken | Kommentare ansehen und hinterlassen

Projekte

Simple Localization
Ein einfaches, aber macht- volles Übersetzungsplugin für Ruby on Rails.
Table Navigation
Ein jQuery Plugin um per Tastatur schnell durch Tabellen zu navigieren.

Über was ich schreibe…

Newsfeeds

Kommentare