Software

11 Nov 2018

Birkana in Rust with HTTP

Recently I read this awesome article about representing hexadecimal numbers using runic system. So I created this little program that takes hexadecimal string on stdin and spits out SVG data on stdout. Github link. To make it easier, and also to learn about state of Rust’s HTTP frameworks, I wrote a small HTTP server for this, and it is open to the public. Github link. Lessons learned: SVG in Rust.

29 Jun 2018

Nanny

Nanny is a monitoring tool that monitors the absence of activity. Nanny runs an API server, which expects to be called every N seconds, and if no such call is made, Nanny notifies you. Nanny can notify you via these channels (for now): print text to stderr email sentry sms (twilio) slack (webhook) generic webhook (HTTP POST callback) xmpp (jabber) Usecase? Ever wrote invalid crontab record? Ever had it call bash script that failed silently without doing what you wanted, and you noticed months later?

18 Jun 2018

Diskspace Notify

Checks periodically for free disk space and alerts user via email when there is not enough free space (threshold set in config). It does not aim to replace any large monitoring tools, origin of this tool is pretty simple. I ran out of disk space on my root partition, which caused it to break. I was suprised initially, why would you not be able to ssh onto a machine that ran out of space on / partition?

13 Feb 2018

State of software in 2018

It is now year 2018. Last year has seen some large strides in our technological prowess. All the big companies are now making AI personal asistants, smartphones in our pockets are more powerful than ever, you can shoot videos in 4k resolution with 60 frames per second, you can use software to make your photos much better instead of having actual optics. It is surely great time to be alive.

23 Jan 2018

Fail Fast

Do you remember all the posts about new businesses (read startups) need to fail fast (Business section)? Release first version as soon as possible to make them competitive? (insert peperidge farm meme here, haha) Recently it seems to me like almost every company adopted this startup mentality in their products. While I understand the need to release your product before the competition does, I disagree with using the consumer of said product as a beta-tester.

18 Aug 2017

Developer Notebook

First, a little bit of background. I’m a software developer. I use PC’s all day. I’ve been programming on Windows, Linux and MacOS devices. At first, I thought that I can’t live without “proper” keyboard and mouse combination and at least 2 external monitors. This was when I was using Dell notebook with my ArchLinux. When my colleague switched to Macbook Air 13", and started cursing about how he hates it, I was pointing and laughing at him for using Apple product.

18 Apr 2015

Django Pages

A small and simple CMS (content management system) like Drupal, Joomla, WordPress. It may not have as much plugins and templates like WordPress but it is super simple application with django admin with WYSIWYG editors for page and post editing. It is designed for easy web content editing with no previous experience in HTML or CSS. Just install it once, use default template or create one for yourself (or hire someone to make it) and use it.

26 Apr 2014

Wallpaper Changer

Python application for dynamic changing of wallpapers depending on certain conditions (time of day, date, wheather, cpu temperature, etc…). This tool comes with some pre-tested images that work pretty well. It will run on background and update the wallpaper based on the time of day. It does this by merging few of the images together, so you can have nice sunny day as wallpaper during the day, and darker starry one during the night.

17 Jun 2013

Python Chat

A simple CLI chatserver that uses server-client RSA key based authentication. I added dynamic keypair generation for server and clients (on startup each generates 4096b long key) and exchanges public keys when connected. This way there is no need to create encrypted keys for clients and server. Github link.