Android

age_guard - hex package for age verification

After having fun with building Claritas, I knew I want to publish more packages. Claritas is very simple and doing just one job (darkens or lightern colors) but looks like 79 people (at the time of writing it) were interested to download it. It’s 78 more than I expected :) (that makes me happy! :))

what is age_guard?

AgeGuard verifies if a person born at a given date meets provided age requirements. I needed this functionality at my daily work and I couldn’t find anything simple and suitable to my needs, so I built it.

Continue reading

Claritas - my first hex package

Yesterday I published Claritas - my first hex package! The idea for the package came when I worked on some task and needed dynamically generate a heatmap where the more intensive colour, the higher value of given scale in the heatmap. I used CSS for that, but I though that a pure solution in Elixir would make the code much cleaner. Here it is:

Continue reading

Very good books I have read in 2019

Top books I’ve read this year:

Disrupted: My Misadventure in the Start-Up Bubble

by Dan Lyons

This one is super funny and you once you start it, you can’t stop it. A Newsweek journalist after being laid off (in his early 50s), gets a job in the marketing department of a start-up. Being the oldest (but also the most experienced and …sane) he’s trying to find himself in the world of buzzwords where experience and good ideas lose with incopetence and bumptiousness. This books exposes the worst anti-patterns in managing people and explains the phenomenon of start-ups bubble in Silicon Valley.

Continue reading

Very good books I read in 2018

Top books I’ve read this year:

Eat That Frog! 21 Great Ways to Stop Procrastinating and Get More Done in Less Time

by Brian Tracy

What’s remarable about this book …is that it’s telling you nothing you wouldn’t know already but it actually helps yout to turn this knowledge into action. Even the book is written the way that keeps you focused on the topic (only 144 pages, no long chapters). Brian Tracy is a motivational speaker and that fact worried me before I ordered this book but luckily he didn’t include any coaching bullshit there (I consider coaching as making money on people who have low self-confidence).

Continue reading

Docker Security

Have you actually ever verified it?

If you are a developer, you probably deal with already set up environment and your only job is to write a Dockerfile and push an image to a registry (or even less work if use Continues Integration). Altough I’m going to focus on production environment where Docker images are pulled and running, which is set up by DevOps or sysAdmiss, there’s still a good few things to check on your end to increase the level of security:

Continue reading

Add libGDX to existing Android (Kotlin) project

LibGDX and Kotlin

Current libGDX version (night build v1.9.8) has issues with generating the boilerplate code when ‘Use Kotlin as the main language’ option is selected.

the error:

Continue reading

Bonding wifi and ethernet interfaces

How to aggregate multiple network interfaces into a single logical interface?

If you haven’t heard about network bonding - it’s a network setup that allows you to use two or more network devices to act as one interface, giving you expanded bandwidth and some redundancy. Basically you can turn a 1 GiB link into a 2 GiB link for the one virtual interface.

Continue reading

Distributed system design patterns

How to organize multi-container application

Sidecar pattern

Let’s start with a single node. It’s a common practice to seperate concerns also on the container levels. One container could act as a static content server, and the other could perform computations. They both exist on the same node and both have access to the same resources - although you may allocate different CPU and memory consumption.

Another popular scenario is to have a seperate container that handles logs of the other container as both share the same disk volume. This pattern is called Sidecar pattern.

Continue reading

Multiple git accounts

How to associate different git account to different projects?

Let’s say you have two github accounts, one used at work and the other for your own projects but you want to use both from one linux account. You want to work on each project without a need to type in appropriate credentials everytime you push changes. Firstly you need to generate unique ssh keys for each of them:

ssh-keygen -t rsa -C "your-work-email-address" -f NAME_OF_THE_FILE

For instance:

Continue reading

Running Go on Android

Running indirectly…

The Go Mobile project is marked as “experimental” and I guess it will take a couple of years until we’ll get some stable version. The way I’m going to show you how to run Go programs on Android is a bit tricky as it actually uses Termux which is an Android terminal emulator and Linux environment app. Technically we could install and run there many other languages, but let’s see how it’s getting on with Go. What makes Termux really interesting is the API we can use to access the Android API. For instance we can check our battery status, take a photo or check our device GPS location. Before we continue, install these two apps on your Android phone:

Continue reading