Android dialog to choose a directory or file based on AlertDialog
This dialog could be used to let the user choose a file or directory. Since it is based on AlertDialog it doesn’t have to be instantiated through startActivity() and therefore could be used, for...
View ArticleHelp to fight Internet censorship!
Since Nov 1st 2012 the new Russian law implementing the Internet censorship comes into effect. This law allows several agencies of the Russian government to add any Internet site they consider “harmful...
View ArticlePreventing WordPress comments spam
There seem to be an easy way to prevent a significant number of WordPress comment spam. The majority of spam comments nowadays come with either a bunch of URLs, or with a generic message such as: Hi...
View ArticlePractical difference between epoll and Windows IO Completion Ports (IOCP)
Introduction This article compares the difference between the use of epoll and Windows I/O Completion Port (hereby IOCP). It may be of interest to system architects who need to create a...
View ArticleRunning Mac OS X under qemu/KVM on AMD CPU
Due to the excellent work of Gabriel L.Somlo it is possible to run the emulated Mac OS X on Linux under Qemu/KVM. The changes seem to be minimal, and the operating system emulation works well – as long...
View ArticleOpenSuSE 13.2: do not use BTRFS as rootfs
OpenSuSE 13.2 comes with BTRFS chosen as your default rootfs, replacing the old trusted ext4. Unfortunately the kernel version it ships with contains a known flaw which breaks some software using...
View ArticleBreaking the one-time pad encryption
Following up the second week task for the excellent Cryptography course by Prof. Jonathan Katz at Coursera, and took the second programming assignment. This time it is about breaking the one-time pad...
View ArticleBuilding a Raspberry Pi-based camera powered by Ethernet
The first built camera was installed in a remote place with no Ethernet connection, so it had to be WiFi-connected. The second camera, however, would replace an existing outdated IP camera, so there...
View ArticleSDK Design Goal #2: Design for Extensibility
This is a third article in the SDK Design Goal series. Please see the introduction article “How to present the licensed technology the right way?”. So if you followed the Design Goal #1 article, your...
View ArticleSDK Design Goal #3: Design for Backward Compatibility
This is a fourth article in the SDK Design Goal series. Please see the introduction article “How to present the licensed technology the right way?”. This goal works together with the prior one, Design...
View ArticleSDK Design Goal #7: Design for Troubleshooting
This is a eights article in the SDK Design Goal series. Please see the introduction article “How to present the licensed technology the right way?”. No matter how good your SDK is, and how easy to...
View ArticleSDK Design Goal #8: Design for Synergy
This is the last article in the SDK Design Goal series. Please see the introduction article “How to present the licensed technology the right way?”. You have made your core technology available for...
View ArticleKaraoke Lyrics Editor version 2.2 released
A few minutes ago a new version of Karaoke Lyrics Editor – a free, open-source (GPLv3) software to create and edit Karaoke lyrics in many formats, with optional export to CDG and Video formats. This...
View ArticleHow to fix USB error on ATTINY85 and V-USB at 16MHz with internal oscillator
When compiling V-USB for attiny85 clocked at 16MHz using PLL (internal oscillator), the device was not recognized with “Device not accepting address” error messages in the kernel log. The problem was...
View ArticleWhy your app can’t see SD Card on Android Marshmallow
On Android Marshmallow just having the READ_EXTERNAL_STORAGE in your AndroidManifest.xml is not enough anymore to read the SD Card. Your app now needs to explicitly request this permission from the...
View ArticleCustom date configuration in KDE Plasma Digital Clocks
The new Digital Clock widget in KDE5 is nice, but lacks certain valuable configuration options. Notably: You can only choose between three fixed date formats (short, long and ISO). Short and ISO...
View ArticleHow to send and receive data between your IoT device and Android device using...
Four ways to send and receive data between your IoT device and Android device using USB I develop IoT devices such as smart home controllers for fun. Those devices are usually based on microcontrollers...
View ArticleMy experience with Triplebyte
This article reviews my personal experience with Triplebyte, which is widely advertising at Linkedin now. I am not working for them and I was not asked nor compensated in any way to write this. My...
View Article