Donate to support Ukraine's independence.

11 Aug'23

Rebasing all relevant pull requests on a Github repo

If you chose rebasing as your primary git workflow strategy, it becomes important to keep your feature branches updated. Out of the box, Github offers automatic rebasing on many Dependabot pull requests. Dependabot PRs can be further rebased semi-automatically using the @dependabot rebase command issued in the comments.

For all other PRs, you need to set up a bot or a Github Action to do this automatically. One such action that could be used is peter-evans/rebase:

name: Rebase
    - cron:  '40 7 * * *'

    runs-on: ubuntu-latest
      - uses: peter-evans/rebase@v2
          # token: ${{ secrets.GH_PAT }} 
          # exclude-drafts: true …

Continue reading


30 Apr'17

Notes from “The Innovator’s Dilemma” by Clayton M. Christensen

The book is really good for people who are skeptical of the startup scene, both from the side of starting one (i.e. despising startup creation just for the sake of creating a startup) as well as for those in a managerial position in established companies, thinking that they produce by all means a superior product. While both of them are seemingly right, the market forces might decide otherwise.

So the first thing the book dismisses is the lack of competence within the enterprise to develop a technically competitive solution. Actually, it was usually the other way around – the very …

Continue reading

22 Jan'17

Notes from “Serve to win” by Novak Djokovic

I really enjoyed the book, it was very refreshing to read about the life of a top athlete outside the training ground. Usually they brag about super special training schedule and top teams supporting them, but this book was about everything except that.

“Sitting in a tiny living room […], I watched Pete Sampras win the Wimbledon and I knew: one day that would be me” (p. xvi)

To test if you are sensitive to gluten, he suggests to keep it off your menu for 2 weeks and then eat it for one day and see if you see any difference …

Continue reading

09 Jan'17

Deep Work notes

I read a handful of self-help books in the past years. Due to a number of reasons, I didn’t have a chance to apply many of the techniques that seemed useful at a time, so I want to catalogue them in 2017 for my future reference. This is the second summary in the series after HBR Guide to Getting the Right Work Done.

My apologies in advance if you expected a gist of the book that would let you skip reading it altogether. This would require much more work and serve no additional purpose for me as a refresher …

Continue reading

25 Oct'15

Installing Redis from source on ARM

Ubuntu has quite old packages in the default repositories. It is especially important for web development, where version compatibility may break often.

ownCloud requires a modern version of Redis to use it as a cache and to keep track of the file locks.

PPAs that provide Redis packages do not build for the ARM arch, however. Therefore, with my new Scaleway server, I’ll have to do it by hand:

apt build-essential
apt libjemalloc-dev

Here, apt is my handy alias apt=”sudo apt-get install”. If you ran into jemalloc problems before this article, be sure to perform a distclean before …

Continue reading

31 May'15

C/C++ based projects on

I learned about long time ago (thanks to my friend Shaun Mulligan from but didn’t dare to try it out for a long time. Maybe, because most of the examples were in Node.js and targeted Raspberry Pi. At the time, I was doing a project in ad-hoc and wireless sensor networks and implemented it using the Beaglebone Black, Arduino, an LWIR camera (in my case, FLIR Lepton), a reed switch and a pair of XBee modules. I used C/C++ on Beaglebone and with a partner we used Python/Django on Heroku.

By the …

Continue reading

22 Mar'15

Programming Arduino Pro Mini with USBasp V2.0

UPD 2016-05-14: Arduino Nano with CH340 ships from Aliexpress for less than $2 – I recommend you buy it instead (unless you know what you’re doing).

Do you really need to pay $25 for an Arduino? Many of my friends have the original Arduino and they work great, but I wanted to see how cheap I can go. Initially, I purchased the SunFounder Starter Kit and it worked 100% as advertised. Today we’ll see if we can get a fully featured Arduino under $5.

Recently, I came across the dirt cheap Arduino Pro Mini clones and decided to buy …

Continue reading

11 Mar'15

Review: HBR Guide to Getting the Right Work Done

New guide from HBR doesn’t sell you on a new technique, but instead opens with a chapter titled “You can’t get it all done”. The book presents a reader with two main ideas that seem rather obvious. First idea suggests that to get more time for our tasks, we must stop doing things we’re not supposed to. and that unswerving commitment to daily “rituals” forms the foundation of most successful people.

The title of that chapter immediately reminded me of the article published on The Atlantic and titled Why Women Still Can’t Have It All. After …

Continue reading

19 Feb'15

Install cvBlob on Debian

cvBlob installation looked like an easy task but took me a little while to figure out.

First, there are no libcv4 libcvaux4 libraries in Debian (at least in Wheezy). I installed libopencv-dev instead.

Next, there was a very strange problem that persisted after cvBlob installation:

$ ./red_object_tracking
./red_object_tracking: error while loading shared libraries:
    cannot open shared object file: No such file or directory

The solution was to run sudo ldconfig beforehand.

Full list of commands:

sudo apt-get install mercurial cmake libopencv-dev
hg clone
cd cvblob
cmake .
make install
sudo ldconfig
cd samples …

Continue reading

19 Feb'15

Update Git on Debian 7 to Git 2.3

Add the following repository to the sources.list:

deb precise main
deb-src precise main

Now, run sudo apt-get update and get the following output:

W: GPG error: precise Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A1715D88E1DF1F24

And fix it by running

sudo apt-key adv --keyserver --recv-keys A1715D88E1DF1F24

Now you can run

sudo apt-get install git

And afterwards verify your setup:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description …

Continue reading

Next → Page 1 of 10