Samstag, 15. Dezember 2012
Nach der ernüchternden Evaluation der Desktops vor etwa eineinhalb Jahren war es nun an der Zeit, irgendwas aktuelles zu installieren, da ansonsten der Support für meine bisher betriebenen Ubuntu-11.04-Installationen ausgelaufen wäre.
Auch nach einiger Überlegung, ich kann mich nicht mit Unity oder Gnome-3 anfreunden, ich schaff es einfach nicht (Das Dock bei den beiden Systemen brauchte auf meinen Rechnern eine spürbare Zeit zum aufklappen. Da das die einzige Vorgehensweise ist um mit der Maus ein Programm zu wechseln, ist das ein no-go). Bei KDE fielen mir nach wenigen Minuten wieder Inkonsistenzen und Instabilitäten auf, so dass das auch gleich wieder von meinem Rechner verschwand.
Ich halte eigentlich nicht viel von Forks alter Software, die schlafen nämlich meistens ein bevor der Unterbau fit für neuere Entwicklungen ist, aber in diesem Fall bin ich wirklich bei MATE hängen geblieben. Genauer gesagt habe ich ein Lubuntu-System installiert (damit der Unterbau recht schlank ist) und darauf dann MATE-Pakete eingespielt. Das ganze auf dem neuen Rechner, den ich nach dem Bauvorschlag der c't gebaut habe, bootet in 2 Sekunden (nach dem BIOS) zum Desktop. Der Rechner ist schneller gebootet als der Monitor aus dem Standby erwacht.
Der Desktop ist das woran ich mich die letzten 1,5 Jahre gewöhnt habe: Effektiv Gnome-2. Leider mussten die alles umbenennen, was es natürlich schwer macht, da die vorhandenen Desktop-Icons ins Leere laufen und das was man schnell mal per Alt+F2 startet, nun plötzlich anders heißt. Aber man kann damit leben.
Als Anwendungsprogramme möchte ich mich nicht mehr auf einen Desktop festlegen und verwende daher z.B. Thunderbird und Firefox bzw. momentan Chromium. Letzteren soll ich mir nach einigen Ratschlägen unbedingt anschauen. Bisher überzeugt er mich aber nicht wirklich, ich denke in Kürze werde ich wieder Firefox benutzen.
Donnerstag, 8. März 2012
Heute bin ich über alten Sourcecode gestolpert, den ich teilweise vor langer Zeit erstellt hatte und auch diversen Leuten versprochen hatte, das "irgendwann" als freie Software zu releasen.
Im Zuge eines Warum eigentlich nicht jetzt?-Anfalls habe ich jetzt mal zwei git-Repositories erstellt und den Code dort eingespielt und gebe diese hiermit frei.
Für beide Projekte gilt: Das war Software die ich selbst gebraucht habe und sie ist in genau dem Zustand in dem ich sie bei mir momentan benutze. So ist meist die Konfiguration im Code, auch wenn ich hoffe, dass keine Zugangsdaten mehr irgendwo enthalten sind. Die Software ist vermutlich in dem Zustand in dem sie hier angeboten wird für niemanden nützlich.
Folgende Projekte gibt es hier:
Bib2011 steht für "Bag-in-Box-Kassenprogramm". Ich verwende für unsere Mosterei schon länger ein eigenes Programm zur Kassenverwaltung. 2011 habe ich dies von Grund auf neu gemacht, gedacht für die Nutzung auf einem Touchscreen.
Der Code basiert auf Python und Qt4. Die UI-Designer-Dateien sind auch dabei.
python-solarmax ist eine Bibliothek um Ertragsdaten aus Solarmax-Wechselrichtern auszulesen. Das Paket besteht aus einer Python-Bibliothek zur Kommunikation mit dem Gerät und einem kleinen Programm das diese Bibliothek nutzt um die Ertragsdaten regelmäßig in einem SQLite-Datenbank zu speichern.
Das (proprietäre) Kommunikations-Protokoll habe ich zunächst reverse-engineered, indem ich die Hersteller-Software in einer virtuellen Maschine benutzt habe und dann im Netzwerk die Daten ausgewertet habe. Nachdem ich das praktisch fertig hatte, bekam ich vom Hersteller doch noch eine Dokumentation des Protokolls, allerdings mit unbrauchbaren Lizenzhinweisen (keine Veröffentlichung des Protokolls und keine Herstellung von Software die veröffentlicht wird). Ich habe also die Bibliothek ohne die Dokumentation fertig geschrieben.
Wenn jemand die Software interessant findet und für irgendwas eigenes brauchen kann, würde ich mich sehr über eine Nachricht freuen.
Dienstag, 17. Mai 2011
Man kennt mich als KDE-Nutzer. Schon vor Jahren hatte ich mehrmals einen GNOME-Desktop ausprobiert, aber irgendwie war ich stets nach wenigen Minuten auf Dinge gestoßen die man nicht (auf normalem Wege) einstellen konnte und die einfach "anders" waren als ich es gerne gehabt hätte. Mit freier Software verbinde ich grundsätzlich auch dass eine Software sich an die Wünsche des Nutzers anpassen kann und das war bei KDE immer wesentlich einfacher zu haben als bei GNOME.
Ich habe also stets KDE gelobt und fand GNOME beschränkt, zu "appelig" und irgendwie nicht nutzbar. Und die für GNOME entwickelten Standardprogramme waren auch schon lange ein großes Problem.
Sogar das KDE-4-Desaster habe ich zähneknirschend über mich ergehen lassen. Nachdem aber KDE nun auch in den jetzt aktuellen Versionen vor (für den einfachen Anwender) nervtötenden Fehlern nur so strotzt, habe ich mich entschieden, dass ich für meine Kunden und meine Familie zukünftig GNOME verwenden möchte und habe dieses völlig vorurteilsfrei auf meinem Desktop installiert um Erfahrungen damit zu gewinnen. Das ist jetzt ungefähr 4 Wochen her und die ersten Nutzer sind schon auf erfolgreich GNOME umgestellt. Für einfache Anwender hat GNOME den großen Vorteil, dass es nicht mit offensichtlichen Fehlern nervt.
Wie sieht es aber mit meinen eigenen Erfahrungen aus? Nach 4 Wochen Dauernutzung kann ich guten Gewissens sagen: Der Test war ohne Vorurteile. Und ich habe gemerkt, dass beide genannten Alternativen unerwartet gravierende Schwächen haben.
Ich möchte mich hier vor allem auf die Schwächen der Programme stürzen, die ich im Rahmen des Tests ausprobiert habe.
"Was ist der schlechteste Desktop? Ein Erfahrungsbericht" vollständig lesen
Freitag, 8. August 2008
Ab und an hat man eine Idee, welche Anwendung der Menschheit noch gefehlt hat und will dieses Manko umgehend selbst beheben. Oft kommen dabei gute Ideen bzw. Anwendungen heraus.
Schlecht ist allerdings, wenn die Umsetzung dann doch genau das nicht macht was sie verspricht.
So gesehen beim einfachen Web-Service DownForEveryoneOrJustMe. Gibt man dort eine Adresse ein, die erreichbar ist, ist das eine nette Bestätigung, dass es funktioniert.
Gibt man aber eine Adresse ein, die einen Timeout verursacht (was ja ab und an vorkommt, wenn eine Seite wirklich down ist), dann erhält man nach einer entsprechenden Wartezeit einen Fehler von Google, dass auf der Website ein Fehler aufgetreten sei. Also der Timeout des bei Google betriebenen PHP-Scripts kommt früher als der HTTP-Timeout beim Versuch die Seite zu testen. :)
Sonntag, 16. Dezember 2007
Seit einiger Zeit habe ich ein Nokia 6230i und kann das auch per Bluetooth nutzen. Seit wenigen Tagen merke ich, dass gammu mit der Konfigurationsdatei die ich hier geklaut habe elendig langsam funktioniert. Jede Aktion dauert erstmal 2 Minuten für den Verbindungsaufbau.
Anhand der Gammu-Doku habe ich jetzt gesehen, dass mittlerweile offenbar ganz andere Namen für die selben Optionen eingeführt wurden. Nach einigen ausprobieren kam ich auf folgende Konfiguration: [gammu]
model=6230i
port=00:17:E3:8E:FA:BC
connection=bluerfphonet
synchronizetime=no
use_locking=no
startinfo=no Ergebnis: Der Verbindungsaufbau dauert jetzt ca. 3-4 Sekunden. nicht vollkommen perfekt aber erträglich.
Für die besserwissenden Hacker: Das Einschalten von use_locking erzeugt als User einen »permission denied«-Fehler. Das Einschalten von synchronizetime verstellt jedes mal die Uhr, da es nur Stunden und Minuten synchronisiert, nicht aber die Sekunden. Sekunden werden immer auf Null gesetzt. Nein, ich habe den Bug nicht reported.
Montag, 10. Dezember 2007
Neulich konnt eich mich endlichmal aufraffen, mich um automatisiertes Onlinebanking zu kümmern um nicht immer alle Lastschriften für schokokeks.org manuell machen zu müssen.
Die gute Nachricht zuerst: Es geht einfacher als ich vermutet hatte. Ich benutze jetzt diese Kommandozeile:
aqbanking-tool debitnote --bank=60291120 --account=671279017 --rbank=12345678 --raccount=192837465 --rname="Kundenname" --value="123,00:EUR" --purpose="schokokeks.org" --purpose="Re-Nr. 1234, Kd-Nr. 05" --purpose="vom 2007-12-01" --force-check --exec
Diese Zeilen lasse ich mir von einem Script zusammen bauen, das die Daten der aktuell offenen Rechnungen aus der Datenbank liest.
Aber nun zum Ernst der Lage:
Ich hatte vor einiger Zeit in einem Blog-Posting dazu aufgerufen, dass man an das AqBanking-Projekt spenden sollte, damit der Entwickler die Spezifikationen für die neuen Volksbank-Karten kaufen kann.
Ich hatte diesen Aufruf nicht gelöscht oder geändert, weil ich der Meinung war, auch wenn diese Spezifikationen jetzt beschafft wurden, sollte der Autor einen Anreiz haben, den Code auch zu schreiben.
Jetzt allerdings muss ich diesen Aufruf entschieden zurücknehmen. Der Grund dafür ist hier zu finden:
http://www.aquamaniac.de/sites/aqbanking/user.php#aqbanking-cli
Eben dieses Kommandozeilen-Programm, mit dem ich obigen Kurztipp durchführe, wird aber der kommenden Generation der AqBanking-Schnittstelle kommerzielle Software werden und nicht mehr frei zur Verfügung stehen.
Natürlich ist das keine komplette Katastrophe, man kann (vermutlich) eines der auf AqBanking aufbauenden Programme als Vorlage für ein relativ minimalistisches, neues Kommandozeilen-Programm benutzen. Aber alleine das Vorgehen, dieses Programm ohne Erklärung, mit der fadenscheinigen Begründung "Da dieses Tool hauptsächlich professionell benutzt wurde, ist es nun nicht mehr frei verfügbar", kommerziell zu machen, finde ich sehr bedenklich.
Kombiniert mit der Erkenntnis, dass dieses Projekt nur Code annimmt, wenn die vollständigen und uneingeschränkten Verwertungsrechte an Martin Preuss übertragen werden, finde ich dieses Projekt ab sofort nicht mehr unterstützenswert. Trotz der unbestrittenen Leistung, die Martin Preuss in dieses Programm investiert, finde ich diesen Umgang mit Code-Beiträgen Dritter nicht angemessen für ein freies Projekt.
Samstag, 8. Dezember 2007
Diese Woche erschien die neue Version der Handy-Java-Software »Mobile Trail Explorer«, Version 1.8.
Mit dieser Software und einem Bluetooth-GPS-Empfänger ist es möglich, GPS-Tracks aufzuzeichnen. Das größte manko der Vorversion war, dass die Software gelegentlich beim Speichern abstürzte (die berüchtigte "OutOfMemoryException") und damit der komplette Track weg war. man durfte also nicht vergessen, nach spätestens 500 Trackpoints zu speichern, da sonst die Datenmenge zu groß wurde.
Nicht so mit der neuen Version!!
Jetzt gibt es die Option "GPX-Stream". Dabei wird sofort begonnen, die Datei zu schreiben. Die Software schreibt Punkt für Punkt in die Datei und hält nicht einfach alles im Speicher. Dadurch gibt es keine Wartezeit und kein Speicherproblem nach Abschluß der Aufzeichnung.
Kurzanleitung:
- Menü
- Manage Trails
- Option
- New GPX stream
- Dann kommt die Frage des Telefons ob auf die Speicherkarte geschrieben werden darf
- Danach noch »Start/Stop recording«
- Nach Abschluß der Aufzeichnung (»Start/Stiop recording«) kommt der üblicher Speichern-Dialog, mit der zusätzlichen Option am Ende »Close GPX Stream«
- Der Name der resultierenden Datei beginnt mit »stream_«
Besonders erwähnenswert:
Wenn das Programm abstürzt oder versehentlich beendet wird, geht nichts verloren! Beim nächsten Start fragt das Programm ob der alte GPX-Stream fortgesetzt werden soll. tut man das nicht (»Forget about it«), hat man aber auch trotzdem noch eine Datei, bei der man nur das XML manuell schließen muss, die Punkte sind dennoch alle drin.
Noch nicht getestet habe ich, ob in diesem GPX-Stream auch die Waypoints drin sind.
Nach diesem ersten Eindruck der neuen Version: Prädikat »Absolut empfehlenswert!«
Ja, die wesentlichste Neuerung war, dass das Program OSM-Tiles als Hintergrund anzeigen kann und damit die eigene Route live visualisieren kann. Aber ohne vernünftige Daten-Flatrate und ohne schnellere Verbindung ist das für mich etwas sinnlos. Ich freu mich einfach über die neue GPX-Stream-Funktion.
Samstag, 7. April 2007
Ich hatte vor einiger Zeit den Tipp erhalten, dass man mit »Disconnected IMAP« (oder auch »Cached-IMAP« genannt) bei KMail das Verhalten hin bekommt, das ich so lange gesucht habe: IMAP aber ein Cache, der mir erlaubt, zumindest die neuesten X Mails jederzeit schnell und ohne Netzverbindung verfügbar zu haben.
Gehört, getan, habe ich mein IMAP-Konto erstmal mit einem Rotations-script ausgestattet (alle Mails älter als 1 Monat wandert in eine andere Mailbox) und das was noch da geblieben ist dann per »Disconnected IMAP« eingerichtet. Erst einmal klang das alles recht gut, die Mailbox war extrem schnell da, man kann ständig jede Mailbox öffnen, auch wenn grade eine andere abgeholt wird.
Die erste Ernüchterung kam sehr schnell: Das Abrufen der Mailbox dauerte etwa 20 Mal so lange wie vorher. Jeder Ordner für sich dauerte fast so lange wie sonst der komplette Baum. Das liegt daran, dass KMail nicht nur nach neuen Mails schaut sondern auch lokale Änderungen (gelesen, ...) hochladen muss.
Ich habe als automatisches, periodisches Abholen eingestellt, sodass ich immer alle Mails sehe. Da man auch während des Abholens andere Ordner schon lesen kann, ist das kein Problem.
Was aber etwas störend war: KMail bzw. der ganze Rechner geriet etwas in Stocken, wenn der IMAP-Abruf-Vorgang lief. Erst fiel das gar nicht sonderlich auf, dann aber immer öfter (man erkennt irgendwann den Zusammenhang ;) ). Als ich bemerkt habe, dass man während des Abrufens keine Mail mehr vernünftig verfassen kann (das Fenster war oft für ~10 Sekunden reaktionslos), habe ich den Entschluss gefasst, wieder zurück auf normales IMAP zu stellen.
Da meine Mailbox jetzt sowieso relativ klein ist, geht auch da das Abrufen sehr flott.
Fazit: Disconnected-IMAP ist eine schöne Idee, funktioniert auch prinzipiell ganz gut, muss aber noch deutlich besser auf Nebenläufigkeit optimiert werden.
Montag, 8. Januar 2007
Mein kleines Gewerbe läuft jetzt seit zwei Jahren. Um möglichst wenig Probleme mit den Behörden zu bekommen, habe ich mich dazu entschlossen, auch ohne spezielle Schulung oder sowas einfach alles relevante aufzuschreiben. Das soll die Steuererklärung einfacher machen.
Im ersten Jahr habe ich dazu eine einfache Tabelle benutzt in die ich alle Daten eingetragen habe. Das war auch noch nicht viel Arbeit, einfach alles eintragen und immer wieder ein paar Zeilen zusammenzählen lassen um die Beträge zu ermitteln. Da die nach dem jahr fällige Steuererklärung mich vor enorme Probleme gestellt hat (was kommt denn jetzt eigentlich wo rein?), habe ich mir von Chris die Steuer-Software T@x von Buhl-Data empfehlen lassen. das ist eine Windows-Software, die im Wine-Bundle daherkommt und grade mit dem mitgelieferten Wine auch erstaunlich reibungslos funktioniert. Damit ging die Steuererklärung gut und das Finanzamt hat das von dem Programm ausgedruckte Formular anstandslos akzeptiert. Das fand ich klasse, hat mir alleine dafür mindestens einen Tag Arbeit erspart.
Über das Jahr weg konnte ich auch jeweils die Buchungen in das Programm eintragen, mit dem Ziel, jetzt im neuen Jahr noch nichtmal mehr die Beträge manuell eingeben zu müssen. Außerdem konnte ich so die monatliche USt-Voranmeldung bequem aus dem Programm heraus machen.
Leider ist die Produktstruktur dieser Software so, dass man nur jeweils einen Steuer-Jahrgang damit erledigen kann, für die nun fällige Erklärung 2006 braucht man die neue Version für 2007. Da das Programm grade bei der Steuererklärung gute Dienste geleistet hat, wollte ich also gleich die neue Version bestellen.
Doch dann die Enttäuschung. Es gibt keine Linux-Version. Schnell den Support angeschrieben und das da als Antwort bekommen:
vielen Dank für Ihr Schreiben. Sehr gerne werden Ihre Fragen zu dem
Programm "t@x 2007 Linux download" beantwortet.
Bisherige Ausgaben von tax waren mit dem Windows-Emulator Wine unter
Linux lauffähig. Mit den aktuellen Programmversionen von Wine gibt es
jedoch technische Schwierigkeiten, die im Quellcode von Wine zu beheben
sind. Alle bisherigen Anstrengungen, auch unter Einbeziehung der
Programmierer von Wine, waren jedoch vergebens.
Für das Veranlagungsjahr 2006 ist daher keine Linux-Ausgabe der Software
t@x erhältlich.
Vielen Dank für Ihr Verständnis.
Oha. Das ist deutlich.
Da lässt man sich einmal auf proprietäre Software ein und dann sowas!
Nun zur nächsten Frage: Was nun? Ich haben jetzt ein Jahr mit Tabellenkalkulation gemacht und das skaliert irgendwie nicht gut. Mit den damals ~2-3 Einträgen in Monat war das ok, aber jetzt kommen schon öfter mal 30 Einträge in Monat, da wird das auch mal umständlich.
Eine spezielle Software habe ich nicht gefunden (Komm mir keiner mit Gnucash, das benutze ich zum Banking, aber für eine so einfach Buchhaltung / EÜR ist es mir zu umfangreich. Wenn man damit richtig arbeiten will, muss man doppelte Buchführung machen).
Meine Lösung wäre jetzt eine eigene Datenbank zu machen. Oder kennt denn jemand ein geeignetes System, das eine einfache EÜR macht und ein paar Auswertungen bieten kann? Umsatzsteuer-Voranmeldung ist übrigens nicht mehr Pflicht, die fällt jetzt endlich weg weil meine Steuern beinahe weniger sind als die Bankgebühren. :)
Samstag, 25. November 2006
Ich programmiere zur Zeit (schon lange immer so nebenbei) an meinen Python-Bibliotheken zur Datenbank-Ansteuerung. Nichts allgemeines sondern sehr speziell auf die Zwecke des Keks zugeschnitten.
Die letzten Tage bin ich richtig schön weitergekommen, habe meine Bibliotheken ausgebaut, meine Objekte so weit es geht abstrahiert und auch Schreibzugriff auf die Datenbank damit ermöglicht. Eigentlich hat alles geklappt. Nun wollte ich das Frontend noch schnell darauf umstellen. Eigentlich kein Problem, denn ich muss ja nur die Attribute des Objekts füllen und commit() aufrufen.
Nur war dann beim Speichern der Daten immer nur die Hälfte in der DB. Beim debuggen war alles da, beim Testen aller Klassen war alles da. Nur nach dem Erzeugen der Objekte und vor dem DB-Zugriff muss irgenwas schiefeglaufen sein.
Des Übels Wurzel: Ich habe einen kleinen aber feinen Teil in Pythons Dokumentation übersehen: Klassenvariablen. Eine Klassenvariable (die man in der Klassen-Definition einträgt, anstatt sie mit self.var in einer Methode zu setzen) gilt für alle Objekte der Klasse und ihrer Subklassen gemeinsam. D.h. solange man mit einem Objekt arbeitet gibt es kein Problem. Erst wenn man mehrere Objekte der selben Klasse hat und an einer solchen Variable was ändert, dann passieren merkwürdige Dinge.
Auch wieder was gelernt. ;-)
|