Einträge über Computer

I had my first computer with 5 and started C programming when I was 13. Then I made some simple websites using PHP which grew into ever more complex ones. In 2007, I created some Java applications, some of them are still among the portfolio on this page. While I was an intern at the DLR, I started to learn Python and IDL, which introduced me to matrix based languages. For the numerical methods lecture and especially my bachelor’s thesis I used C++. During my master’s thesis I have learned Haskell for fun. Later on for my PhD thesis I also learned R and the Wolfram Language.

See my portfolio of programming projects.

My most popular hobby project is the Vigilant Crypto Snatch, a little program that buys crypto currency whenever the prices fall.

This section of my site is for articles about programming practices and performance tests. Also various stuff about computer hardware and software.


Verbindungstanz mit Sony Kopfhörer

Beim Bahnfahren gehen mir manchmal die anderen Reisenden ziemlich auf den Geist. So habe ich irgendwann den Entschluss gefasst mir einen großen Kopfhörer mit aktiver Geräuschunterdrückung (ANC) zu kaufen. Nach dem Spruch »wer billig kauft, kauft zweimal« bin ich dann beim Sony WH-1000MX3 gelandet. Der hatte zu dem Zeitpunkt das beste ANC. Das ist ein Kopfhörer, den man per Bluetooth oder analogem Klinkenstecker mit seinen Geräten verbinden kann.

Was ich allerdings unterschätzt habe ist wie nervtötend Bluetooth im Alltag dann doch sein kann. Ich hatte 2008 einen Apple iMac mit Bluetooth Tastatur und Maus. Das Teil hat beim Einschalten festgestellt, dass Eingabegeräte fehlten und hat nach BT-Geräten gesucht und sich automatisch mit den nächstbesten verbunden. Das war richtig gut nutzbar. Bei einem PC muss man erstmal eine USB-Maus anschließen, damit man den Kopplungsdialog öffnen kann.

Diese Kopfhörer haben jetzt das Problem, dass sie sich immer nur mit einem Gerät gleichzeitig verbinden können. Die von Bose haben das Problem anscheinend nicht. Und gibt es noch Probleme mit den historisch gewachsenen Protokollen bezüglich Musikwiedergabe und Sprachaufnahme.

Weiterlesen…

Missing Glyphs in Kindle E-Book

A Kindle e-book shows some missing glypths, I tried to get it fixed.

Although I loathe DRM protected e-books, as described earlier, I bought a book from Amazon. It is the Kindle edition of Reinforcement Learning, second edition. The version is mostly fine, except that a few glyphs are missing:

This isn't the first time that an electronic book doesn't work. When I download free e-books from Project Gutenberg, I don't expect them to be perfect. Also they come as EPUB, and I need to convert them to MOBI using Amazon's tool. But this is a book I bought from Amazon to read on the Kindle, so it better be perfect.

Weiterlesen…

Analoge und Digitale Notizen

Obwohl ich eigentlich gerne mit der Hand schreibe, erstelle ich meine Notizen am Ende doch viel lieber am Computer. Ein Erfahrungsbericht.

Ich hatte schon 1995 so ein Stift-Tablet als Eingabegerät für den Computer. Das konnte man damals nur anstelle einer Maus anstecken (USB gab es noch nicht). Das hatte ich manchmal zum Abpausen von Vorlagen genommen, es war vor allem Spielzeug für mich. Später lieh ich mir manchmal das große Wacom Intous meines Vaters, um 2007 kaufte ich das Wacom Bamboo in der DIN-A6-Größe. Mein Uni-Laptop, ein ThinkPad X220 Tablet, hat einen eingebauten Stift (Wacom Technik). Ich habe also schon immer einen Zugang zu Stifteingabe am Computer gehabt.

Gleichzeitig stehe ich aber auch immer wieder in Schreibwarengeschäften oder Schreibwarenecken in anderen Läden und bin ganz fasziniert. Stifte und Blöcke könnte ich mir stundenlang anschauen. Hübsche Regale mit schicken Aktenordnern, buntes Papier und satt schreibende Stifte haben irgendwie etwas anziehendes. Bei in Leder gebundenen Terminplanern stelle ich mir vor, wie viel Spaß das Reinschreiben wohl machen wird.

Und dann ist da dieser große Kontrast. Ich hasse Zettelwirtschaft. Ich scanne den ganzen Papierkram am liebsten ein und stecke ihn einfach nur in eine Kiste. Die Originale braucht man eh fast nie wieder, daher tut es ein unsortiertes Papier-Endlager völlig. Wenn ich Informationen digital habe, so kann ich einfach eine Sicherungskopie erstellen, es mit Leuten teilen, es bearbeiten. Und vor allem kann ich es in beliebig viele Ordner sortieren, die Sortierung wieder ändern und danach suchen.

Weiterlesen…

Android immer langsamer

Mein Android-Gerät wird durch die Softwareupdates immer langsamer. Ich sehe dafür keinen vernünftigen Grund, es nervt mich nur noch.

Mein letztes Smartphone habe ich 2017 gekauft, so ein 200 EUR Modell. Das scheint mir in absoluten Zahlen noch immer wahnsinnig ausgestattet: Achtkernprozessor mit 2 GHz Taktrate und 4 GB RAM. Ich will ja echt nicht den »Opa erzählt vom Krief« machen, aber mein dritter Computer hatte einen CPU-Kern mit ähnlicher Taktrate, 256 MB RAM und Festplatten mit einigen GB Speicherkapazität. Damit konnte ich schon einiges machen, auch parallel. Mehrere Programme passten locker in den Arbeitsspeicher, zu dem Zeitpunkt waren 64 MB der Standard.

Ich habe noch immer ein Laptop von 2011. Das hat einen Zweikernprozessor und 8 GB RAM. Damit kann ich ziemlich viel gleichzeitig machen, eine fette Python-IDE offen haben, viele Browser-Tabs, E-Mail-Programm, Musik und noch Blog-Artikel schreiben. Dann läuft da noch ein RSS-Reader, Passwortmanager und eine Handvoll anderer Dinge. Ich kann ohne Verzögerungen zwischen den Arbeitsflächen wechseln, alle Programme sind sofort da.

Auf dem Handy war das früher auch so. Da konnte ich recht schnell zwischen den Apps wechseln, der Browser war auch vernünftig schnell. Aber mit der Zeit wurde der immer langsamer. Ich sehe ja den Trend, dass Software immer ineffizienter wird, und man dadurch immer bessere Computer braucht. Damals hörte ich mit Amarok, iTunes und Clementine meine Musik. Der Last-FM-Client war mit Qt geschrieben worden und hat auch nicht viel Speicher gebraucht. Jetzt braucht Spotify 200 MB für ein einfaches Interface. Die haben halt die komplette Chromium-Engine und noch einen Haufen JavaScript da drin. Das ist letztlich ein eigenes Betriebssystem für eine eher einfache Anwendung. Mit mehreren dieser Dinge hat man dann auch einen hohen RAM-Verbrauch.

Weiterlesen…

New Tab Design in Firefox 89

Firefox 89 has a new design for the tabs, and I find it less usable than the previous version. With a different theme one can get back the contrast.

Today I received Firefox version 89 on my laptop, and I let it choose the system theme. On my KDE machine, it now looked like this:

Can you see which tab is active? I really have to closely look to see the dark gray border around the active “tab”, which is just a button.

Weiterlesen…

Neuer Drucker

Einen neuen Drucker auszusuchen ist Fischen im Trüben. Der Billigste funktioniert aber erstaunlich gut.

Es wurde Zeit, einen neuen Drucker zu kaufen. Mein Samsung C410 hatte irgendwann einen Elektronikschaden, da ging nichts mehr. Die Elektronik auszutauschen kostet mehr als der ganze Drucker, dazu waren die Toner auch schon ziemlich leer. Das hätte sich nicht mehr gelohnt.

Also habe ich nach einem neuen Schwarz-Weiß-Laserdrucker geschaut. Mehr brauche ich gar nicht um Texte und Versandetiketten auszudrucken. Duplex brauche ich auch nicht, aber WLAN musste sein. Der Drucker soll von mehreren Rechnern aus genutzt werden, daher reicht USB nicht. Es gibt einige dieser Drucker ab ungefähr 110 EUR, jedoch ist nicht klar, worin sie sich unterscheiden. Manche haben noch Duplexdruck, andere haben einen LAN-Anschluss.

Dann steht bei einigen Druckern, dass sie auch unter Linux laufen. Das ist meist ziemlich furchtbar, man installiert sich merkwürdige Software der Hersteller und muss frickeln. Der von Samsung ging unter Linux, und ein Brother ging auch. Ein uralter HP auch. Auf den Seiten der Hersteller findet man da meist nicht so richtig viel handfestes.

Weiterlesen…

Keyboard.io Model 01 Keyboard Switch Failures

The Keyboardio Model 01 is a nice keyboard, but the Matias Quiet Click key switches are getting on my nerves. I had various issues and have replaced four of them in the past weeks.

For a couple years I have a Keyboardio Model 01. I quite like it, but the key switches are my least favorite part. They have used Matias Quiet Click switches. They are stiffer than my favorite Cherry MX Brown. The difference is not so extreme, and they are reasonable pleasant to type on.

My grievance is that they apparently break rather quickly. The first issue was the R key, it started to emit multiple characters when I pressed it. I had a pleasant e-mail with Jesse Vincent, one of the producers. He has told me that it could be residual lubricant from the factory. I should be able to clean it myself, and he gave me some instructions.

Weiterlesen…

My GNU Autohell Story

In academic software development I have seen one software suite which was known to be hard to compile. I was tasked to do try it, and ended up writing a 1200 line Bash script which took care of all the edge cases.

While I was working on my Master thesis at the university in 2016, I worked with a software package for lattice quantum chromodynamics simulations. It is written in C++ and has multiple modules, resulting in around 600,000 lines of code. One of my first tasks was just getting it compiled on the computer. That sounds like it should be easy, but it was a five week journey into GNU Autohell. This story is a couple of years old, but a recent conversation with a coworker has brought it back into memory and I want to share it now.

Simulation software of that type needs to be run on a supercomputer, there is no way that one could gain any traction on a single server, let alone a laptop. Academics get their computer allocations via grants, and larger groups usually have multiple grants in parallel on different machines. Each machine has a slightly different target audience and therefore it makes sense to have budgets on multiple machines. The work group has its own simulation package, but my task was to try out the “competitor's” package to find out whether it would be useful for us. Perhaps a collaboration would emerge if it turned out to be viable. Nobody in the group had significant experience with that, so I had to start from scratch.

Weiterlesen…

Survey of Plot Systems

I present a few different plot libraries for Python and R and show my favorites.

During my years as a physicist I have created a bunch of plots from data. My first experience was with xmgrace in 2011, which was already outdated back then. I tried gnuplot and later GNU Octave. I've made the transition to Python and Matplotlib, where I stayed several years. For my PhD I started using R, but skipped using base R plotting and directly went for ggplot, which still is my favorite plotting library as of today. My first industry job got me back to Python, where I tried to find something like ggplot. The first candidate was seaborn but I just didn't like it. It wanted to be ggplot for Python, but it is not. I eventually found Altair and was amazed. The interactivity with Vega-Lite is super cool. Bokeh provides even nicer interactive widgets, but the plotting interface in Python does not feel as declarative.

In this post I want to go through a somewhat simple plotting example and show how the different plotting libraries do that. We will be using the Anderson's Iris data set as that is built into R and Python libraries already and makes the examples reproducible without any extra data files.

Weiterlesen…

Personal Blog vs. Social Media Profiles

Having a personal website or relying on social media profiles has different advantages. I try to reflect on both.

Most people don't have their own website. My father designs web pages for a living, so naturally I was shown how it works early on. I experimented with web design and development since I was like 13 years old. Over time I have noticed how the design part isn't really for me, and I now only do the programming and content part. This blog wasn't designed by me, I just took a program that converts text files into a blog.

If I only cared about getting content out there, I wouldn't need to do so much work. I could have started writing it somewhere else, like on Medium or Facebook. My travel pictures wouldn't need to be part of a blog post, they could go on Flickr, Instagram or Facebook. My programming knowledge could also be on Stack Overflow. It isn't necessarily better or worse, it is just pretty different. In this post I want to share some experience with both.

Weiterlesen…