My current setup learning and developing Rust

So I am currently trying to learn some rust after years with Objective-C and Swift. But i don‘t want to do it on a random computer but trying to implement it on my iPad.

While the iPad is about as bad as possible for any programming work on device as there are neither any really good IDEs nor do you have the possibility to run any compilers or interpreters on device. There are some good text editors, but the only really good ones useable for programming I found only had support for Python (and playgrounds for Swift).

So how can I do programming work on the ipad Pro? Simple - using it as a remote shell. This basically means I only use the iPad for it‘s nice screen estate and the keyboard and it‘s very much replaceable by any random PC or device that has a terminal.

My basic setup consists of a Raspberry Pi 3+ that acts as a server at home with rust compilers and more setup I will talk about later. Second Part of my setup is obviously the iPad, a 2018 iPad Pro 12.9 with 256GB and LTE. It is coupled to an Apple Pencil (that is of no use in this setup) and a Folio Keyboard.

The actually interesting parts are the software parts. On the iPad I Use Blink, which is a remote Shell app that supports MOSH (a SSH like remote shell that has advantages when used via unstable or slow connections). It supports external Screens as well - that is what makes it super awesome. Initially it sounds awkward to use external screens on an iPad without a mouse - but on a shell there is no need for a mouse...

The Raspberry is setup with a Mosh-Server so that blink can connect to it. The terminal is running with a heavily configured TMUX that allows me to retain sessions in between connections and allows for multiple „windows“ on one screen and has some more possibilities. The Terminal by itself is a ZSH, that isn heavily configured as well (oh-my-zsh with a few more). It is themable and thus gives a colorful screen even though it is just a terminal. Additional plugins include autocomplete and Git-plugins.

The heart of it all though is VIM - the editor that you have to google how to exit the first time you use it. It is heavily customized as well with plugins ranging from rust-vim and vim-fugitive (for git) to nerdtree and quite a few more. Vim running on the left haft of the terminal (thanks to tmux) allows for having a terminal window on the right half off the screen that lets you compile and run written code instantly (or as fast as the raspberry compiles it).

There are a few disadvantages to a solution like this including not having the advanced features that proper IDE‘s offer, but for learning a language, it is very good to have to do everything by hand and not having too much automatism (and Rust doesn‘t really have IDE‘s available anyway). The advantages for me are outweighing the disadvantages by far currently. The iPad offering a near perfect screen estate with very low distractions while still offering multitasking for google or stack overflow (via Splitview or Slide-Over). The portability is unbeatable (even more so if my iPad was smaller, but that‘d mean less screen estate).

Best of 34C3

As I have just been to 34C3, here is my "best of" of talks seen so far:

and the talks I still want to and have to watch: (among others)

PSA - Brace yourselves - English posts are coming

Nur ein kleines Announcement - Ich werde hier ab jetzt einige Blogposts in Englisch schreiben. Hintergrund ist ganz einfach der, dass in meinem Freundeskreis die Zahl der Nichtdeutschsprachler weiter wächst und einige Beiträge für Diese interessant sind.

Eng: Just a small announcement - I am going to post some of my next blog posts here in English. Reasoning behind that move is that my friends are getting more and more international and some posts might appeal to those not speaking German as well.

Image courtesy of Stuart Miles at FreeDigitalPhotos.net

Meine Kickstarter-Funds

Auch ich habe mich in letzter Zeit auf den einschlägigen Crowdfunding-Websites rumgetrieben und einige Projekte gefunded und beobachte auch noch einige, die ich vielleicht mit unterstützen werde.

Von mir gefundet:

Tech
  • LithiumCard -Ein schlanker mobiler Akku für Smartphones
  • Sliimo - Induktives Laden für iPhone mit guten Ideen
Games
Sonstiges
  • Quickey - Eine super Idee für den Schlüsselbund - Messer, Feile, Flaschenöffner

Von mir beobachtet

Tech
  • Keeo - Alle Schlüssel an einem, auf Wunsch mit USB-Stick - Aus FFM
  • Sherlybox - Private Cloud auf Raspberry Pi-Basis
  • GOkey - Speicher für den Schlüsselbund mit Bluetooth-Verbindung zum Smartphone gegen Verlust
Sonstiges
  • La Fenice - Induktives Kaffee/Espressomaschinen-Konzept
  • Marbel - E-Skateboard :)

Einfaches Aufsetzen eines OpenVPN

Ich habe schon seit längerem ein Droplet bei DigitalOcean und nutze das unter anderem für meine OwnCloud und manche andere Sachen.

Jetzt wollte ich hier auch mal ein VPN-Client installieren, damit ich nicht immer den VPN auf meine FritzBox machen muss, da bei meiner Leitung daheim ja leider der Upload relativ langsam ist.

Also kurz bei DigitalOcean in die tollen Community-Tutorial geschaut und diesen Artikel gefunden. Mit wenigen Schritten einen kompletten Server installiert, der auch noch super funktioniert - Genial.

Der OpenVPN Access Server macht das Einrichten eines VPN-Servers wirklich einfach. Die Anleitungen sind super und das aufsetzen geht fix.

Disclaimer: Die DigitalOcean-Links sind mit meinem Referral.