Coding with Titans

so breaking things happens constantly, but never on purpose

Free courses during COVID19 pandemic

Because of the COVID-19 we are all locked in our houses since a month. There can’t be a better investment during that time, then learning a new skill that will stay with us after it’s all over. So hear me, my friends in tech and please let me share this condensed list of totally free resources to become a better developer and system architect. Enjoy, learn and stay healthy! Video and online courses PluralSight - #FreeApril - 1 month only (already expired! Read more →

Remove dotNet Core from macOS

I just realized that several years of .NET Core running on macOS have passed. And during that time I have installed all possible SDK, runtime and patches. Now, most of them are so old I don’t even dare to run them anymore nor write an app against, always staying on the bleeding edge. Let me then proudly present a bash script to remove the unnecessary ones. It was based on the official info on how to do it right. Read more →

Multiple parallel authentications in ASP.NET Core 3.x

One day you write an application and all seems to go smoothly and quickly. The other day you have a brilliant idea, new improvement that was bothering you for very long time. Even due to world global pandemic (ironic, right?) you finally found a free slot to implement it! Then you got immediately blocked, stopped and wasting whole day on browsing the Internet looking for a solution. You start experimenting, playing with the technology/framework/library and finally you open the documentation and read the manual. Read more →

Raspberry Pi quick SSH remote access from macOS

Managing a farm of Raspberries can be a difficult task. It becomes even more cumbersome and tiring, if each of them has the ssh-daemon service running on a different port and uses a different administrator account name. So could I login to them quicker / more efficiently without repeating those parameters all the time and most importantly without remembering all their combinations? Like in following command: $> ssh [user]@[hostname.domain] -p [port] user@host's password: . Read more →

Fix keyboard in Windows 10 on MacBook Pro (Early 2011)

Due to corona-virus pandemic my kids stayed at home and started distance learning. I was already practicing remote work from longer period and their appearance came as unfunny disturbance. They started occupying my critical devices each morning just to check if something new to do was assigned to them by teachers. I really found this video matching my situation. Then they were playing with some on-line courses… Instead of going and buying some used or post-leasing equipment (as suggested here) I came out with an idea of letting my kids play and do their homeworks on an old MacBook Pro 13’’ from 2011. Read more →

HowTo: Remove GiT remote branch

Things has been simplified over time and my old guide about Git Commands has been improved a bit. At least in the context of removing remote branches. Now, it’s as easy as passing --delete parameter along with pushing changes to the server. git push origin --delete <remote_branch_name> Response will look like following: To github.com:phofman/xyz_project.git - [deleted] <remote_branch_name> What is even more beautiful in this syntax is that it also works for remote tags! Read more →

HowTo: Enable Android Developer Options on Philips TV

Finally, at some point in application development cycle there is a need to test it on a big screen. Four months ago we started playing with Philips 55PUS7502/12. Big enough to see all the details. So how to get started? Press Settings on the remote and navigate to Settings > All settings > Android Settings. Open System Information. Click 7 times on Compilation version. This should enable “Developer Options”. We just crossed half of the way. Read more →

OpenCV 3.4.9 for Android with a little bits of native C++ code

Another task on the horizon: integrate OpenCV 3.4.9 into an Android application written in Kotlin. Additional requirement complicated this task a bit. Let’s also try to have some C++ code around, that is shared with other platforms and that interacts and configures OpenCV video processing. Of course nobody expects any rough edges nor problems, right… One might think it’s a typical scenario and lots of mobile apps use OpenCV this way. Read more →

Docker image for Android CI

And the day has finally came. Turned out my docker image for Continuous Integration to build Android native apps doesn’t work anymore. Honestly, it wasn’t even my fault. At first glance the OS was OK, Android SDK was also OK, but then fastlane installation was not happy about something. And that little something turned out to be a real PAIN … in my arm! Ruby ta-da-da-tam! But how was that? Read more →

Secure access to PostgreSQL on Raspberry Pi

First time this month I thought about doing something right. It’s the end of the year and what about creation of really secured environment for my PostgreSQL database on a Raspberry Pi, that I could expose publicly. What could go wrong here :) ? The goals were clear: Setup a dedicated low-privileged system user, so I could proxy to the database over SSH. Create a new low-privileged PostgreSQL user, so it can access own database only (or ones created in the future). Read more →