Journal: Neueste Artikel erscheinen hier (Seite 5 von 19)
VNC mit openSUSE oder Debian Linux (Howto)
Die Verwendungsmöglichkeiten einer Remote-Desktop-Lösung reichen von Fernadministration bis Support. VNC erlaubt den Fernzugriff auf graphische Benutzeroberflächen. Eine Kurzanleitung zur Installation von VNC-Server und -Client unter openSUSE und/oder Debian:
Server
Zunächst benötigt man auf dem Server (der Computer dessen Bildschirm übertragen werden soll) einen VNC-Server, wie z.B. x11vnc:
sudo zypper install x11vnc #oder Debian: sudo aptitude install x11vnc
Als nächstes legt man eine Passwort-Datei an, in der das Passwort für den Fernzugriff gespeichert wird:
mkdir ~/.vnc x11vnc -storepasswd ~/.vnc/passwd #(fragt nach einem neuen Passowrt) chmod 0600 ~/.vnc/passwd
Da die Firewall den benutzen Port 5900 blockieren sollte, wird das Passwort nur gebraucht, da sich nicht jeder Benutzer des Server-Computers in den Desktop einklinken können soll. Nun könnte auf dem Server schon der VNC-Server gestartet werden, doch das mache ich dann vom Client:
Client
Zunächst stellen wir sicher, dass es ein VNC-Client installiert ist:
sudo zypper install tightvnc #oder Debian: sudo aptitude install xtightvncviewer
Da die Verbindung sicher sein soll und Firewalls umgehen soll, wird das ganze über SSH getunnelt (Mehr zum SSH-Tunnel am Beispiel MySQL), und der Server gleich mit gestartet, durch dieses kleine Script: (Es setzt eine konfigurierte OpenSSH Public Key Authentication voraus)
#!/bin/bash SSHLOGIN=user@vncserver ssh -L 5900:localhost:5900 $SSHLOGIN "x11vnc -localhost -display :0 -rfbauth ~/.vnc/passwd" & sleep 3 vncviewer localhost
Optional kann man auch die SSH-Option -C angeben, die bei Netzwerkverbindungen mit geringer Bandbreite (Internet) die Daten komprimiert und somit alles schneller läuft. Theoretisch.
Arbeitet man auf verschiedenen remote Desktops kann man $SSHLOGIN durch $1 ersetzen und dann das Script mit der passenden User/Server-Kombination für SSH starten.
Das Script verlangt die Eingabe des des oben gesetzten VNC-Passworts, dann müsste der Remote Desktop zu sehen sein.
Italienreisen 2 (3D)
In den 4 Wochen, die ich während meiner (voraussichtlich letzten) Schulferien in Italien war, konnte ich selbstverständlich einiges an Inspiration sammeln. Darum hier einige weitere „italienische Produkte“:
Aus dem Knoten von Ravello ist diese noch kleine Architekturstudie entstanden:
Und auch dieses abstrakte Gebilde:
So sieht der Knoten dreidimensional aus: (Allerdings stimmen die Überschneidungen nicht überein, da sonst die Gefälle zu groß werden. )
Und dieses Objekt ist auch ein Derivat des Knotens:
Ravello Knot 3D Glass
Edit 2009-10-02
Ein anderes Mosaik hatte eine eher sechseckige Form. Nach eingehender Meditation habe ich zunächst dieses Objekt mit dem orthographischen Modus des blender-Renderes erstellt:
Und noch etwas 2x6-eckiges:
Und noch ein bisschen 6-eckiges:
Twitter - What am I doing?
Everyone is writing about twitter now, everyone is thinking he's missing things going on at twitter, newspapers report about eyewitnesses tweeting things and twitters user count and press representation is was rapidly growing. So what's that all about? It's about a microblogging service that started in 2006 as a small project of Biz Stone and Evan Williams, who wanted their colleagues to answer the simple question "What are you doing?".
I have been a member of Twitter since March 17, 2007 and have tweeted 439 times since then until now (actually not too many updates). Anyway I mentioned a slight change in how people use twitter. This usage history resulted in a rich variety of uses of twitter. Here are some behaviours I collected "through the years":
The What-are-you-doing-guys
There are some users that nearly only answer THE question when it comes to twitter. You are likely to find mostly tweets like "@having breakfast" or "preparing lunch" in their profiles.
It's really funny to follow one of those What-Are-You-Doing-Guys and then meet her. You won't have anything to say, because you do already know (nearly) everything about your fellow tweople.
Also you do really have a log about all the small things you did in life. This might be very interesting some years later.
The Chatroommates
These tweople that only use twitter like a chat are a bit incompatible to the others. They have evolved in the SMS times, when twitter was THE way to text your friends. You might find many senseless tweets like "ok pals I'm off" or "@yomama sure".
The 140-Excited
Some people seem to not want to tell everyone what they are doing and don't have too many friends on twitter, so they don't really have to use twitter. But everyone does, so do they. This is why they seem to focus on (bad?) jokes, proverbs and short quotes.
The Newsfeedorz
When you have found a stream with only headlines and links or 6 of 7 tweets starting like "new blog post: " you know you have found a Newsfeedor. They use twitter only for posting "news". There are famous ones like CNN and rather not too famous ones. And of course many advertisers have fount their new channel at twitter. The very bad thing about them: It's usually not original content and it's most of the times better available through RSS.The Readers
This group is a bit underrepresented. Some of them don't even have a twitter account. They are reading through someones profile (subscribing their stream as RSS) or using one of the services that aggregates twitter messages, like delicious.com. Or they use twitter as a real-time opinion-of-the-tweeting-world search engine. I think the twitter makers had a good reason to change their homepage to a mere search page.
The Retweeters and Answerers
A phenomenon at twitter is retweeting. If you want to pull the attention of your readers to a statement of someone else you retweet that (you just tweet it again putting RT @name in front of it). Or you tell everyone your opinion about it (like: opinion (via @name)) or as direct answer (@name blaaa). Now some tweople only do this. If you look through their stream you will find dozens of answers and you don't get what it's all about. This is a true Retweeter/Answerer.
The Trendy
This is by definition a very popular behaviour: Commenting on the trending topics on twitter. Some "answers" are really funny - and of course it's a cool way to share personal experiences. It's a kind of very fast global FB. Just don't overdo it. (And don't just write "#iamsinglebecause it's trendy". )
So what's correct?
As always - nothing. So what do I do? Simple: Mix. I retweeeet what I like or want others to know, I answer questions, I keep a log of some things I did, I stay informed about my friends, and I post stuff I put into the cloud.You can always find new scenarios where you can use a 140-char-messages-posting-page. For example I have started to collect new/strange/biased/funny (German) words. And sometimes I post cryptic messages. For example this one related to the sense of life, a movie, Alice in Wonderland and the time I arrived at school that day.
And because it's always 140-character limited you can display your twitter status e.g. on your website. I do that through my lifestream. My homeserver that serves as a very neat clock too also shows my twitter status to my family.
Italienreisen
In den 4 Wochen, die ich während meiner (voraussichtlich letzten) Schulferien in Italien war, konnte ich selbstverständlich einiges an Inspiration sammeln. Darum hier einige „italienische Produkte“:
Drei Bilder, nach einem in den Straßen Pompeis entdeckten Wandmosaik erdacht:
Das Konzept dieser Figur ist recht interessant, da alle Strecken gleich lang, alle Winkel ganzzahlige vielfache von 30°, und alle Eckpunkte auf 3 konzentrischen Kreisen sind. Zudem findet man einige regelmäßige Vielecke. Mit geometrischem Wissen kann man hier die Entfernungen zweier beliebiger Punkte oft im Kopf ausrechnen bzw. wissen.
Dieser Knoten stammt aus der Kanzel im Dom von Ravello, wo er als Mosaikornament zu sehen ist:
3D-Perspektive mit einer kurzen Formel

3D-Effekt mit Javascript
Für die Gestaltung von 3D-Effekten, sind zwar duzende Hardware-beschleunigte Toolkits parat, doch im Fall von HTML-Canvas bzw. auf Webseiten generell sieht das Angebot nicht so reich aus. Das hat mich dazu bewegt, selbst einen kleinen Blick in die Mathematik hinter 3D-Projektionen/3D-Perspektive zu werfen. Meine Erkenntnisse konnte ich in einer kurzen Formel zusammenfassen.
Wer sich nicht für die Mathematik interessiert, kann natürlich flash oder eine der vielen Canvas-3D-Librarys verwenden.
Das Prinzip hinter der 3D-Projektion ist meist das einer Lochkamera. Lichtstrahlen fallen vom abzubildenden Punkt im Raum durch ein Loch und auf einen Schirm. Diese Art der Projektion war eine der ersten bekannten und mit ihrer alten Bezeichnung „camera obscura“ (lat. für dunkle Kammer, die in der der Schirm angebracht war) namensgebend für die heute auf Linsenoptik basierenden Kameras.
Die Lochkamera ist leider nicht so lichtstark wie die Linsenoptik und ihre Schärfe ändert sich nicht mit der Entfernung, sondern mit der Größe des Lochs.
Im Gegensatz zur Linsenoptik ist die Lochkamera aber durch den einfachen Strahlensatz zu berechnen. Mit dem Strahlensatz kann man ganz einfach die Koordinaten eines Punktes im Raum umrechnen in Koordinaten auf dem Schirm. Dazu genügt folgende Funktion:
F:ℝ³→ℝ², F(x,y,z)= P( x*d / z | y*d / z ) ; d: distance to screen
Dass diese Funktion klappt, zeigt dieses Beispiel. Hier eine Graphische Erläuterung:

Strahlensatz für Perspektive. Schwarz: Abzubildender Punkt/Lichtstrahl, Blau: Kamera, Grün: Kameraparameter Bildweite, Rot: Koordinate auf dem Schirm, Lila: Ursprungskoordinaten
Wegen dem Strahlensatz gilt x' / x = d / z, aufgelöst x' = d*x / z, analog für die y-Koordinate.
Etwas logischer wäre vielleicht der Schirm hinter dem Loch, vor allem da Objekte näher an die Kamera heran kommen können, doch so kann man sich den Schirm wie den Computerbildschirm vorstellen, durch den man in die Raumillusion hineinschaut.
Diese Formel erledigt die Abbildung in der Kamera. Jedoch muss der Punkt bereits in Koordinaten relativ zur Kamera gegeben sein. Da man normalerweise Punkte zunächst durch ein Weltkoordinatensystem definiert, muss man sie erst transformieren.
Bei meinem einfachen Beispiel beschränkt sich die Transformation zunächst auf eine Verschiebung entlang der z-Achse und später habe ich noch eine Rotation um die y-Achse hinzugefügt. Diese Koordinatenumrechnungen lassen sich in Transformationsmatrizen beschreiben.
Dann fehlt eigentlich nur noch die Darstellung. Im Beispiel wird der Text durch einfache CSS-Manipulationen an die richtige Position gebracht, und die Kreise werden mit dem canvas-Element gerendert.
Mit einem solchen Modell lassen sich schon einfache Drahtgitter problemlos darstellen (Demo), da eine Kante zwischen zwei Punkten im Raum auch eine Strecke zwischen zwei Punkten auf dem Schirm darstellt, und uns somit die Berechnung dieser Bildpunkte erspart. Für eine ausgefeiltere Darstellung kann man Dreiecke oder Polygone verwenden (Demo), für die ungefähr das selbe gilt, nur dass z.B. ihr Winkel zu einer Lichtquelle für die Kolorierung verwendet werden kann
Für nahezu realistische Lichteffekte bedarf es allerdings eines anderen Modells, genannt Raytracing, bei dem man den Weg rückwärts geht und bei der Kamera anfängt. Das wurde übrigens auch schon in Javascript umgesetzt, ist aber für Echtzeit-Anwendungen eher ungeeignet (vielleicht kommen bald die ersten Computerspiele mit der - in Realtime - noch neuen Technik).














