Web development

I first started developing web projects when I was young. First it was only html pages with css, but later I moved to php/MySQL, php/PostgreSQL, php/SQLite combinations. I wrote my whole personal CMS for various purposes (from blogging, finance data statistics, user management, web-shop) during this time. It was quite in early days of php and I was looking for a bit better solution. Soon Django as Python framework with CMS was a viable solution to maintain and start new web projects. As older php projects required increased maintaining and development I have decided to use twig as template engine of choice. JQuery, Javascript, AJAX came in as a side products to increase dynamics of the browsing experience, but were later a bit replaced with html5 and css3 possibilities. Knowledge of Google Analytics, Google AdSense, Google Webmaster Tools and other useful Google tools was obtained while trying to monetize the projects to some extent.

Projects

Below are some still maintained projects and their specifics.

Current website

Lets start with a bit of history of current website. It was written in php with support of twig template engine and MySQL. No CMS or user management is basically needed or implemented. Simple Google Analytics with Google AdSense are added just for fun. As part of the normal development practice also LetsEncrypt certificate was added in 2018.
In 2022 I was looking to containerize the website, to run it on my private RaspberryPi cluster and for that I wanted to get rid of the database dependency. With only around 100 entries, there is actually no real need for the database, but SQL back in old days was easy way to store raw data. Today as we want lean docker containers, which could replicate the data easily the option was to go with static website generator, but I wanted to avoid a huge rewrite so I decided to migrate MySQL to SleekDB.

Rolerski klub Ljubljana webpage

Since I am founder of the Rolerski klub Ljubljana this page has served as an learning example through time. It started as simple news website written in php with user management to add news. Background database was MySQL. Soon expansion begun with adding some management to create invoices and for a simple accounting system. It is integrated with Google Analytics for detailed statistics and used AJAX to refresh various parts of the website. Search Engine Optimization was constantly improved, but some limitations of the core system were soon spotted.
In 2015 new more modern look was established and system migrated to Django on PostgreSQL. Google Analytics with Events reporting and loads of AJAX was perfected to my current knowledge as well as previous lessons learned were implemented. SE optimization is easier and more maintainable while still providing a decent platform for the admins to admin content. JQuery was also added to produce a more modern look.

Inline skating halfmarathon Ljubljana

Rolerski klub Ljubljana organizes each year the inline speed skating halfmarathon (and marathon) in Ljubljana. We usually get around 50 to 100 competitors and to ease information sharing and registration I have designed and created a website. It is written in Django on PostgreSQL and deployed on Kubernetes Cluster as a stateless application since backups are formed from the existing pod while they are restored statelessly at each pod creation from the most recent backup. It is written in AMP (Accelerated Mobile Pages) which managed to make this an easy responsive design as well as much optimized for mobile devices with Webp image format.

Leerah blog and product presentation

I made a blog and product presentation website for my wife. After she learned Django she did not want to be bothered with complex website development for another pet project of her as well as she wanted to avoid private server hosting. With the emergence of static website generators from Markdown templates, which can be deployed and hosted directly from GitLab, we decided to go that way. I picked Hugo as a static website generator, because I wanted to dip a toe into GO programming language. She found Eureka template, which I then only slightly modified to also include Carousel and PayPal integration for the presented products.

Coloring art blog

I made a coloring-art website for my wife. Since she was learning Django, that was the go-to tool that I used and the new technology that I tried was AMP. My challenge was to build just one website (in AMP) for both desktop and mobile users. With all the challenges of the AMP (webeditors in Django do not support it, forms do not support it, mailchimp subscription does not support it) it proved to be a bad design decision. However after more than needed struggle I got all the above working, and I have even managed to opensource the mailchimp-amp extension for Django (probably needs some work).
Website design is quite simple, but the AMP part the made the real challenge and in background I also learned SCSS to produce nicer CSS (which is then embedded into a template because of the AMP) for the website, but the real advantage was a bit lost because of the AMP.
On the end I am proud to have produced 0 AMP error and warning website and I hope that the SEO is good enough to rank on first page on certain keywords.

Rolarska zveza Slovenije webpage

Another quick project for the association I am part of. It is a php and MySQL project with CMS for content and user management. It is also special as it has interface to add live results to the website while calculating scores and sorting by time or places. System enables us to run the whole race and broadcast it live online with same click. Printing data using A4 templates is also enabled. System is able to track progress of members and statuses of memberships. Website is using simple Google Analytics for user tracking.
Site still has old look and is currently pending renewal. News are updated regularly by admin base.

Bont.si webshop

Also website developed to support the Rolerski klub Ljubljana main sponsor. It needed to be online fast (time to first live version was 2 days) with basic webshop/webinfo capabilities while providing a bit more specific CMS. It is using quite a decent implementation of Google Analytics as well some AJAX to keep various parts updated during the search. It has implemented SESSION cookies with some specifics to provide seamless user interface. It also provides news with photo uploads through admin interface where images are automatically scaled and watermarked.
Some expansion was done especially with adding Cycling section to original Inline Speed skating section, but no major redesigns have occurred.
In 2020 the website got a bit of a redesign with the AMP version available and indexed. Also everything was moved to Twig templating engine and update for php7 syntax and PDO classes for the MySQL connection.
At begining of 2023 the AMP version was abandoned due to Google Analytics 4 not supporting AMP pages. As that has changed in late 2023 there is some reconsideration to bring the AMP website back.

Revija Vita online version of printed magazine

Expert health-education magazine Vita is very popular in Slovenia. The printed version runs out fast, so the magazine has soon expanded to web. Main idea was to keep the design of the printed version as close as possible, but to still make use of dynamics of the web. The website is visited by between 3000 and 12000 people each day. It is more impressive that content is exclusively in Slovenian, where overall population is just 2 million.
Revija Vita has more than 80 official releases at the time of writing and many more are expected to come. It also has news part where important health-educational news are shared.
It runs on the privately maintained server (by me), is based on php, MySQL and to improve mobile experience uses JQuery and some JavaScript.
There was a redesign made to Twig templating engine in 2018 which improved site maintainability and expansion with additional advertising spots.

ProRollerTour ranking

As I am an vivid inline speed skating enthusiast and actively present on the speed skating scene, I had opportunity to develop an ATP style ranking for best Marathon Inline speed skaters (men and women). The ranking is based on Django and PostgreSQL, with support of Javascript, JQuery and AJAX to provide decent user experience on Desktop and Mobile devices. Design of the website is not my idea, but I was provided with an image, which I then transformed into a live website.

Keyword-boost.com traffic-exchange with bounce rate lowering system

There was a need to drive traffic to my sites and there are a lot of traffic exchange sites online that allow you to visit other sites in exchange for others visiting yours. I identified the problem that this lowers your bounce rate as visitor basically only sees one page and leaves. Among this, these websites are also listed as referrals on the Google Analytics, so this kind of action is easily identifiable.
Idea was born that system can first redirect to Google or any other big search engine, input keywords associated with website, then visit the website and also make another view on the website. This way referral is from search engine, and bounce rate is lowered because of the second view. It worked well, reaching over 100 active users, but search engines kept adapting the statistics and also made it illegal in their terms of service to use such techniques, so I decided to stop it and delete all account information.
Website had brilliant implementation of Google Analytics, AJAX scripting, with .php and MySQL background (encrypted database system). Quite many nifty JavaScript and JQuery tricks were performed to achieve the desired goals.

Contributions to Open Source projects

For hobby I was contributing and using a lot of open source projects in the past. I never had confidence to maintain repositories or even start new ones, until I started working for Melexis. One of my tasks at Melexis is to enhance the Open Source mindset inside the company. Beside opening our tools also a lot more device drivers were opened.

Linux kernel

I am official maintainer for MLX90614 - Melexis Infra Red Temperature Sensor, MLX90632 - Melexis Infra Red Temperature Sensor and MLX90635 - Melexis Infra Red Temperature Sensor. There are some other contributions that I also made to Linux kernel and they can all be found

Private Kubernetes Cluster

I had few Raspberry Pi3 in the cupboard collecting dust, so I decided to make a Kubernetes cluster which could be used to host websites or do some computations for me. Since RPi3 is not powerful enough I added two Rasberry Pi4 (one is master and one node) to the cluster which now runs since 2018. In 2024 I have added another Raspberry Pi4 node as there were many pages now hosted on the cluster. Whenever I have some time, I try to write, develop and port applications to this Kubernetes cluster as I think that this is the future of IT. It was also a nice platform for testing few of my ideas from my book.

Private GitLab server

All the time of maintaining private web server has got me to also maintain private GitLab server where I could backup my existing projects. This has grown over time with addition of Dockerized GitLab-CI runners (Raspberry Pi Zero, Raspberry Pi3) on armhf and armlf architectures as well as huge knowledge base of tricks and pimps. Since server was regularly updated it kept me in shape with the IT practices and tricks to keep a decent availability. Because of the performance/disk space restrictions I have decided to close the GitLab server and just use public GitLab.com for future development.

Literature and references

As you can see on my blog I occasionally write something about my developer or coding experiences, but also some articles about traveling and my thoughts. This page serves mostly as my private blog and an easy followup of the solutions I have implemented for various occurring problems. It is a lot easier to search my own website than whole web again for the solution.

Major publications

Due to my extensive experience with Git Version Control System, I have written an article on GitLab.com about Numerous undo possibilities in Git.

Hacking Master Plan - Learn hacking tips and tricks

I wrote a fictional book where main character is using Raspberry Pi and Kuberenetes cluster to hack a bank

Other non-embedded projects

Garmin Watchface

Garmin watchface which displays time, current heartrate, 4 hour heartrate graph and battery status.

Google Play applications

I wrote couple of applications for Android phones. In old times when clock did not have stopwatch, the Advanced stopwatch application was able to log times (and lap times) or 3 competitors, and could export to csv for computer storing and processing. The Click a dot is a simple game where you need to click the dots without missing too much and before time runs out.

Writing backlink, SEO or promotional articles in Slovenian and English

Internet marketing is constantly expanding. I am in contact with Press agency MOREL and we can offer expertly written articles in Slovenian. Because Slovenian market is very small, we have decided to add English articles as well. This means we are writing SEO articles, backlink articles and promotional articles for our clients and you can pick various payment options like PayPal or bank transfer. For more details you can contact them directly on info@morel.si

10 articles, each 150 words for backlinking and SEO12 EUR + 22 % TAX Slovenian
10 articles, each 150 words for backlinking and SEO14 EUR + 22 % TAX English
20 articles, each 150 words for backlinking and SEO19 EUR + 22 % TAX Slovenian
20 articles, each 150 words for backlinking and SEO23 EUR + 22 % TAX English
30 articles, each 150 words for backlinking and SEO27 EUR + 22 % TAX Slovenian
30 articles, each 150 words for backlinking and SEO35 EUR + 22 % TAX English
Promotional article 150 to 600 words8 EUR + 22 % TAX Slovenian
Promotional article 150 to 600 words10 EUR + 22 % TAX English

Lately many of advertisers asked me to put banners on my page and to make customers spot their advertisement everywhere and to make things more official and transparent I have decided to put a short pricelist of current prices on this website. Of course you can also click on our banners from our advertising sponsors where you can get advertisement per impression, but if you want to show a bit more lasting support of my page there is special offer pricelist below.

Advertise on Crt's personal blog

468x60px banner in header20 EUR + 22 % TAX Contact me via contact form
120x600px banner od right side40 EUR + 22 % TAX Contact me via contact form

CodersRank profile

I find an interesting graph of my presonal/hobby project development experience (based on git commits) and open source contributions.