Statische Seiten sind im Gegensatz zu dynamischen Seiten (PHP, Python, etc.) ja recht schnell. Mit OpenRat gibt es ein CMS auf PHP-Basis welches genau das liefert, ein dynamisches Backend und statische Seiten. Das ganze ist dabei noch Beta und unter http://www.openrat.de/ zu finden. Auch eine Demoversion gibt es auf der Webseite.
Ramen wurde eingestellt
Im Oktober 2010 wurde die Entwicklung der Open Source Software Ramen eingestellt. Bei dieser für Linux, Windows und Mac OS erhältlichen Software handelt es sich um eine Compositing Lösung für Videos. Der derzeitige Entwickler hat einfach keine Zeit mehr für das Projekt. Doch hier sieht man wie ich finde wieder einmal die Vorteile von Open Source. Jeder der es möchte kann sich den Sourcecode schnappen und die Software weiterentwickeln. Der Entwickler teilte das Projekt vor der Einstellung in eine Shared Library und eine GUI welche in Python geschrieben wurde. So können sich andere Projekte auch nur den Sourcecode der Bibliothek schnappen und ihn verwenden. Hoffen wir mal das sich jemand der Weiterentwicklung annimmt. Die offizielle Seite von Ramen ist unter http://ramenfx.org zu finden.
Weitere Informationen gibt es unter:
http://blog.ramenfx.org/blog/
http://www.slashcam.de/artikel/Essays/Ramen-R-I-P.html
Bildbetrachter für große Bilder auf Basis von JavaScript
Man nehme ein ziemlich großes Bild z.B. mit einer Größe von 20000 x 20000 Pixel und möchte es im Browser anzeigen. Kein leichtes Unterfangen.Doch dank panojs kann hier Abhilfe geschaffen werden. Damit kann man solche Bilder nämlich anzeigen. Das gesamte Bild wird dazu in Kacheln zerlegt (mittels eines Pythonskriptes) und dann je nach Zoomstufe nur Stückchenweise angezeigt oder heruntergerechnet. Das ganze ist Open Source und steht unter der Apache 2.0 Lizenz. Zu finden ist die Software dabei unter http://code.google.com/p/panojs.
google-docs-fs
Nachdem ich gestern gefragt hatte wie ich die Cloud in meinen Rechner bekomme, bekam ich einige hilfreiche Kommentare. Danke nochmal an alle Kommentatoren :) Und dann wollte ich google-docs-fs natürlich gleich mal ausprobieren. Also ging es erstmal auf das Google Code Projekt unter http://code.google.com/p/google-docs-fs/ und lud mir dort die entsprechende deb Datei herunter.
Bevor das Paket dann installiert wird, sollte noch das Paket python-gdata heruntergeladen und installiert werden. Dieses findet sich ebenfalls auf der Seite. Diese Paket ist auch über den Paketmanager verfügbar, allerdings ist die dortige Version zu alt um mit google-docs-fs benutzt zu werden. Danach sollte das google-docs-fs Paket installiert werden. Anschließend kann das ganze mittels:
gmount directory
gemountet werden. Das unmounten sollte dabei über
gumount directory
geschehen. Was ich bei meinen versuchen noch nicht herausgefunden habe ist ob man google-docs-fs das Passwort direkt übergeben kann. Im Moment wird es nämlich jedes Mal interaktiv abgefragt. Ab und an gab es auch Probleme mit einigen Dateien, die jedoch auf dem ersten Blick keinem Muster folgen.
Weitere Informationen gibt es unter:
http://code.google.com/p/google-docs-fs/w/list
ChronoTweet 0.30
Aus meinen Bedürfnis heraus bestimmte Tweets nach einer bestimmten Zeit wieder zu löschen entstand folgendes kleines Skript, welches hier nun in der Version 0.30 vorliegt. Es wurde ein Fehler behoben der verhinderte das die Tweets gelöscht werden wenn man zu viele Tweets in der vorgebenden Zeit geschrieben hat:
# ChronoTweet v0.30 # https://seeseekey.net # # Installation # http://pypi.python.org/pypi/simplejson installieren (apt-get install python-simplejson) # http://code.google.com/p/python-twitter/ installieren # wget http://python-twitter.googlecode.com/files/python-twitter-0.6.tar.gz # tar -xf python-twitter-0.6.tar.gz # cd python-twitter-0.6 # python setup.py build # python setup.py install # # chrono_tweet - Dateirechte 700 # crontab -e # Import import time import twitter # Optionen twitter_account_name = "seeseekey" twitter_account_password = "1234567890" remove_time_in_seconds = 151200 # 42 Stunden hashtag_sensitive=False hashtag="#ChronoTweet" # Programmlogik api = twitter.Api(username=twitter_account_name, password=twitter_account_password) stati = api.GetUserTimeline(twitter_account_name, 9999999) for s in stati: #Fuer jeden Status currentTime = time.mktime(time.localtime(time.time())) createTime = s.GetCreatedAtInSeconds() diffTime = currentTime-createTime if diffTime > remove_time_in_seconds: #Wenn Zeit groesser remove_time_in_seconds if hashtag_sensitive==True: if s.text.find(hashtag) != -1: #Wenn ChronoTweet print(s.id) api.DestroyStatus(s.id) else: print(s.id) api.DestroyStatus(s.id)