roothausen

  • Impressum
  • Administration
  • Kontaktformular
  • Jabber
  • Tagcloud
  • Twitter
  • Soup
  • Github

Entries from April 2009

Camstick

15:35

Wednesday, April 22. 2009

Ein Kommilitone von mir hat heute die Ergebnisse seines letzten Semesterprojekts oeffentlich gemacht. Darum moechte ich hier mal etwas Werbung fuer das coole Projekt machen:

camstick is a symbiosis of camera and joystick to symbolize you that you can not only use your webcam for simple video chats but for interacting with your computer using your webcam. Camstick is started as a project work of mine at the Stuttgart Media University. Now i want to share my result with you!
Posted by Sven Pfleiderer in computer, misc, zeitgeist | Comments (0) | Trackbacks (0)
Defined tags for this entry: computer, java, media, misc, software, webwide, zeitgeist

Newsbeuter 2.0

21:50

Tuesday, April 21. 2009

Nach langer Wartezeit wurde nun der von mir genutzte und fuer Arch Linux gepflegte Feedreader newsbeuter in der Version 2.0 freigegeben. Die Liste der Neuerungen liesst sich bisher sehr gut:

  • Added more flexible dialog handling
  • Improved position handling in article list (fixes #112; thanks to Isaac Good)
  • Fixed a lot of bugs (#102, #111, #117, #130, #131).
  • Added ability to specify a list of OPML URLs when using OPML as URL source.
  • Added config option "keep-articles-days" to optionally keep articles only for a limited number of days.
  • Added config option "bookmark-interactive" to indicate that the configured bookmarking command is interactive.
  • Don't display authentication information in URLs (fixes #121).
  • Replaced mrss with new RSS/Atom parser.
  • Added ability to search for text from the article view.
  • Added basic support for Yahoo Media RSS.
  • Made article view pager configurable.
  • Improved HTML rendering of links and underlined and bold text.
  • Added ":source" commandline command to (re)load configuration files.
  • Implemented "pipe-to" key to pipe articles to external commands.
  • Implemented backtick evaluation for configuration files.
  • Extended filter language with "between" operator.
  • Added "age" attribute for articles to filter them for relative age (in days).
  • Extended "set" commandline command to toggle boolean variables and reset configuration variables of all types to their default.
  • Added ability to configure local files as feeds.
  • Added a "random-unread" key to go to a random unread article.
  • When opening articles from a search result dialog, make search phrase stand out in article view.
  • Persist commandline and search history.
  • Implemented commandline completion.
  • Improved help dialog so that it now shows unbound functions.
  • Added ability to sort feed list and article list by interactively choosing the sort method.
  • Improved and extended conditional HTTP download handling.

Ich habe gerade die Arbeiten am PKGBUILD fuer Arch Linux fertig gestellt und dieses in AUR hochgeladen. Ich wuensche euch viel Spass damit!

Posted by Sven Pfleiderer in computer, web | Comments (0) | Trackbacks (0)
Defined tags for this entry: computer, feedreader, linux, media, newsbeuter, opensource, unix, web

Smack: XMPP fuer java

23:08

Saturday, April 18. 2009

Da ich gerade an einem Projekt arbeite, dass XMPP auf Java verwendet, hab ich mir zu Testzwecken eine Klasse gebaut, die Smack verwendet und ein paar Moeglichkeiten der API nutzt. Es ist unter anderem moeglich sich zu verbinden, das Roster auszulesen und empfangene Nachrichten anzuzeigen. Da mir bei der offiziellen Dokumentation Beispiele gefehlt haben, die man auf einen Rutsch kopieren und bearbeiten kann, moechte ich hier ein wirklich lauffaehiges Beispiel veroeffentlichen. Ich hoffe, damit kann jemand was anfangen:


import java.util.Collection;

import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.PacketListener;
import org.jivesoftware.smack.Roster;
import org.jivesoftware.smack.RosterEntry;
import org.jivesoftware.smack.RosterListener;
import org.jivesoftware.smack.SASLAuthentication;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.filter.PacketTypeFilter;
import org.jivesoftware.smack.packet.Message;
import org.jivesoftware.smack.packet.Packet;
import org.jivesoftware.smack.packet.Presence;

public class SmackTester {

        private XMPPConnection conn;
        private String username;
        private String password;
        private String server;

        public SmackTester() {
                // debug option
                XMPPConnection.DEBUG_ENABLED = false;

                username = "einuser";
                password = "einpasswort!";
                server = "jabber.foo.bar";

                makeConn();
                doConnect();
                makeRoster();
                chatAction();

                // wait ... (I know that's pretty ugly)
       
                while (conn.isConnected()) {
                        try {
                                Thread.sleep(Long.MAX_VALUE);
                        } catch (InterruptedException e) {
                                e.printStackTrace();
                        }
                }
        }

        // nothing interesting here
        public static void main(String[] args) {
                new SmackTester();
        }

        private void doConnect() {
                // let's connect
                try {
                        conn.connect();
                        conn.login(username, password, "someRessource");
                } catch (XMPPException e) {
                        System.err.println("Login failed!");
                        e.printStackTrace();
                        System.exit(1);
                }
                System.out.println("Login succesful!");
        }

        private void makeConn() {
                ConnectionConfiguration config = new ConnectionConfiguration(server,
                                5222);
                // pass some connection options
                config.setSASLAuthenticationEnabled(true);
                SASLAuthentication.supportSASLMechanism("PLAIN", 0);

                conn = new XMPPConnection(config);
        }

        private Roster makeRoster() {
                Roster roster = conn.getRoster();
                Collection<RosterEntry> entries = roster.getEntries();

                // print out all entries in roster
                System.out.println("---------- entries in roster -----------");
                for (RosterEntry entry : entries) {
                        System.out.println(entry);
                }
                System.out.println("---------- entries in roster -----------");

                // react to changes in roster
                roster.addRosterListener(new RosterListener() {
                        // called methods ...
                        public void entriesDeleted(Collection<String> addresses) {
                                // do stuff
                        }

                        public void entriesUpdated(Collection<String> addresses) {
                                // do stuff
                        }

                        public void presenceChanged(Presence presence) {
                                System.out.println("Presence changed: " + presence.getFrom()
                                                + " " + presence);
                        }

                        public void entriesAdded(Collection<String> arg0) {
                                // do stuff
                        }
                });

                return roster;

        }

        private void chatAction() {
                PacketTypeFilter filter = new PacketTypeFilter(Message.class);
                PacketListener myListener = new PacketListener() {

                        public void processPacket(Packet arg0) {
                                if (arg0 instanceof Message) {
                                        Message msg = (Message) arg0;
                                        System.out.println("Message: " + msg.getFrom() + " "
                                                        + msg.getBody());
                                }
                        }

                };

                // Register the listener.
                conn.addPacketListener(myListener, filter);
        }

        private void doDisconnect() {
                conn.disconnect();
                System.out.println("Disconnected");
        }

}
 
Posted by Sven Pfleiderer in computer | Comments (6) | Trackbacks (0)
Defined tags for this entry: computer, im, jabber, java, opensource, programming, software

Simyo APN Einstellungen

20:44

Saturday, April 18. 2009

Ich nutze seit etwas ueber einem Monat Simyo als Provider fuer mobiles Internet. Da ich viel zu oft nach den richtigen Einstellungen suchen muss, moechte ich hier mal als Beispiel die Einstellungen fuer Android posten, die man sicher auch fuer andere Geraete uebernehmen kann:

Name: Simyo
APN: internet.eplus.de
Benutzername: simyo
Passwort: simyo
MMC: 262
MNC: 03
APN-Typ: default

Sollten weitere Optionen angeboten werden, kann man diese leer lassen.

Posted by Sven Pfleiderer in misc, web | Comment (1) | Trackbacks (0)
Defined tags for this entry: android, misc, mobile, web

STOPP!

20:06

Friday, April 17. 2009

So viel zum Thema:

Zensursula legt los

Update: Es gibt auch schon erste Reaktionen des FoeBuD. Und wenn wir schon dabei sind: Hier ist noch ein Artikel von gestern.

Posted by Sven Pfleiderer in web, zeitgeist | Comments (0) | Trackbacks (0)
Defined tags for this entry: bad world, privacy, security, web, webwide, zeitgeist

LinuxDay 2009

23:14

Tuesday, April 14. 2009

Gute Nachrichten: Auch dieses Jahr wird es an der HdM Stuttgart einen LinuxDay geben. Dieses mal bin auch ich aktiv daran beteiligt:

Es steht fest: Es wird einen zweiten LinuxDay an der Hochschule der Medien in Stuttgart geben.
Am 25.05.2009 ab ca. 12.30 Uhr an der Hochschule der Medien
Das Vortragsprogramm wird zur Zeit noch festgezurrt, nähere Informationen folgen in Kürze.

Weitere Infos werden im Blog, bei Markus auf twitter und auch hier veroeffentlicht.

Posted by Sven Pfleiderer in misc, web, zeitgeist | Comments (2) | Trackbacks (0)
Defined tags for this entry: computer, life, linux, misc, opensource, web, webwide, zeitgeist

LaTeX Template fuer Praesentationen

22:40

Saturday, April 11. 2009

Nachdem ich es schon lange vor hatte, habe ich mich nun mal an LaTeX heran getraut und damit die ersten Texte formatiert. Als die Ergebnisse nach den ersten Gehversuchen schon sehr vielversprechend aussahen, habe ich zudem beschlossen meine naechsten Praesentationen ebenfalls in LaTeX zu schreiben. Auf der Suche nach einer Vorlage bin ich auf diesen Beitrag in einem Forum gestossen, der mir sehr geholfen hat:


\documentclass[ngerman]{beamer}
\usepackage{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usetheme[secheader]{Madrid}
\useinnertheme{circles}
\setbeamercovered{transparent}
\beamertemplatenavigationsymbolsempty
 \author[Tester]{Tester}
 \title[Minimalbeispiel]{Minimalbeispiel ist immer BESSER}
\begin{document}
\begin{frame}[plain]
 \maketitle
\end{frame}

\begin{frame}
 \tableofcontents
\end{frame}

\setbeamertemplate{headline}
{
  \leavevmode%
  \hbox{%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{section in head/foot}%
    \usebeamerfont{author in head/foot}\raggedleft\thesection.~\insertsection\hspace{2em}\null
  \end{beamercolorbox}%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{subsection in head/foot}%
    \usebeamerfont{author in head/foot}\hspace{2em}\raggedright\insertsubsection
  \end{beamercolorbox}}%
  \vskip0pt%
}

\section{Test}
\subsection{Test unter}
\begin{frame}
 \frametitle{Testfolie}
\begin{itemize}
 \item Eintrag
 \item Ende
\end{itemize}
\end{frame}

\section{noch ein Test}
\subsection{noch ein Test unter}
\begin{frame}
 \frametitle{Testfolie}
\begin{itemize}
 \item Eintrag
 \item Ende
\end{itemize}
\end{frame}
\end{document}
 

Wirft man diesen Code nun pdflatex vor die Fuesse, generiert dieses eine schoene Praesentation, die man sich hier ansehen kann.

Posted by Sven Pfleiderer in computer, misc | Comments (2) | Trackbacks (0)
Defined tags for this entry: code, computer, misc, opensource, presentation, shortys, software

Android SDK: Passwoerter in Preferences maskieren

20:45

Friday, April 10. 2009

Ich sitze hier gerade in einer Hacksession bei Chris und versuche einer Preference-Activity beizubringen, dass Passwoerter in einer EditTextPreference maskiert werden. Nach etwas rumsuchen, bin ich auf die Loesung gestossen. Hier ein kleiner Prototyp:


<EditTextPreference
android:key="password"
android:title="Ich bin ein Passwortfeld"
android:summary="Hier kannst du dein Passwort eingeben"
android:dialogTitle="Bitte Passwort eingeben!"
android:singleLine="true"
android:password="true"
/>
 

Ich frage mich allerdings, warum man in der Dokumentation davon nichts findet ...

Posted by Sven Pfleiderer in computer | Comment (1) | Trackbacks (0)
Defined tags for this entry: android, code, computer, google, gui, programming, sdk, software, xml

Android OTA-Upgrade erzwingen

18:38

Wednesday, April 1. 2009

Sollte jemand auf die Idee kommen eine alte Version von Android (z.B. den -RC7 Build in Europa) mal "schnell" auf den neusten Stand bringen zu wollen hier ein paar Schritte mit denen man auf neue Upgrades und den Status des Downloads pruefen kann:

  • Man besorgt sich das Programm AnyCut aus dem Market. Dazu sollte die Suchfunktion genutzt werden.
  • Danach legt man mit Anycut eine Verknuepfung auf "Activites/Device Info" an
  • Ist das erledigt, startet man die Verknuepfung auf dem Homescreen, scrollt bis ganz nach unten und drueckt "Check for upgrade"
  • Dort kann man den Downloadstatus beobachten und bekommt die Meldung, dass ein Upgrade verfuegbar ist, sobald es herunter geladen wurde. Ich persoenlich haette ja zuerst gefragt und dann herunter geladen aber ... ;-)

Anmerkung: Ja ich hatte fast zwei Wochen lang ein G1 und bin momentan dabei mich in das SDK dafuer einzuarbeiten. Ja ich werde noch detaillierter darueber bloggen und nein ich besitze es nicht mehr, da es sich heute wieder auf den Weg zum Verkaeufer gemacht hat.

Posted by Sven Pfleiderer in computer | Comment (1) | Trackbacks (0)
Defined tags for this entry: android, computer, google, shortys, software
(Page 1 of 1, totaling 9 entries)

JavaScript String .fromCharCode

Calendar

« April '09 »
Mo Tu We Th Fr Sa Su
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      

Quicksearch

Kategorien

  • XML computer
  • XML misc
  • XML web
  • XML zeitgeist


All categories

Archiv

  • February 2012
  • January 2012
  • December 2011
  • November 2011
  • October 2011
  • Recent...
  • Older...

Feeds

  • XML RSS 2.0 feed
  • ATOM/XML ATOM 1.0 feed
  • XML RSS 2.0 Comments

Links

Retinacast
Shackspace
Yaxim
Radio Tux
Kais Blog
Blumen Pfleiderer
Alk
paxos
filzo
Marc Seeger
polzifer
Moritz Haarmann

Tags

android bad world blog blogging browser changes code comic computer contentmanagement encryption feedreader firefox free fun google gui hardware howto html im jabber java life lighttpd linux linux&unix markup media misc mobile murphy networking newsbeuter opensource picture politics presentation privacy programming regular expression rss ruby s9y scala screenshot sdk security server shortys software stuff tail -f /var/log/life test tool tv unix video web webdesign webwide windows xml zeitgeist

Lizenz

Creative Commons License - Some Rights Reserved