Happy New Year 2025
2024 saw 505k (505,000) page views for blog.mbedded.ninja! This was up from 436k last year, an increase of 69k or 16%. This is a placeholder for the reference: fig-stats-graphs shows the page views and other key stats per year.
NinjaTerm went through 11 releases from v4.12.1 to v4.19.0. Some significant features were added, after it got turned into a PWA just before the start of 2024. It has 75 stars on GitHub and had 3.1k page views (as reported by Google Analytics).
NinjaCalc went through 2 releases from v3.5.2 to v3.5.4. These were minor releases which just fixed a broken URL and added the Umami analytics functionality. It has 30 stars on GitHub and had 52k page views (as reported by Google Analytics).
CppLinuxSerial went through 1 release from v2.8.1 to v2.8.2. This added changes to the CMake build system to allow add_subdirectory()
to work correctly. It has 387 stars on GitHub.
Blog page views were based on a combination of Umami and Google Analytics. Umami was used were data was available due to it not being blocked by ad blockers, otherwise Google Analytics was used. Google Analytics values were adjusted to “Umami” values based on the average difference between the two. The average difference was calculated over all months that both were available. This is a placeholder for the reference: tbl-2024-page-views shows the page views for each month from the different analytics services. These were used to create This is a placeholder for the reference: fig-stats-graphs.
Month | Umami | Google Analytics | Umami (interpolated) |
---|---|---|---|
Jan | n/a | 41k | 54k |
Feb | n/a | 42k | 55k |
Mar | n/a | 33k | 43k |
Apr | 40k | 30k | 40k |
May | 40k | 30k | 40k |
Jun | 36k | 32k | 36k |
Jul | 39k | 33k | 39k |
Aug | n/a | 28k | 37k |
Sep | n/a | 26k | 34k |
Oct | 47k | 30k | 47k |
Nov | 44k | 37k | 44k |
Dec | 36k | 24k | 36k |
Total | n/a | 386k | 505k |
For all months in which data was available for both, Umami reported 282k views, and Google Analytics reported 216k views. Umami is 31% higher than Google Analytics.
Most Popular Blog Pages
This is a placeholder for the reference: fig-engagement-pages-and-screens shows the top 10 most popular pages, ranked by number of page views.
Blog Acquisition
This is a placeholder for the reference: fig-traffic-acquisition shows the top 7 sources of acquisition traffic in 2024. As usual, most of the traffic was from organic search (e.g. Google search engine).
Blog Word, Page and Image Counts
At the end of 2024 the site had 704k words, up from 639k words last year (an increase of 65k). These words were spread over 1313 pages (up from 1221 pages last year), and included 3,222 images (an decrease of 1,296 from 4,518 images images last year). Even though many new images were added last year, the total dropped because I purged all of the redundant images that were still hanging around in the public/
directory from when the site was migrated away from Wordpress.
Achievements in 2024
- The blog was migrated from Hugo to Astro.js. I’m really happy with the change, as Astro.js component syntax is much clearer than Hugo’s, and Astro.js lets me use React components if needed (I use React on a number of other projects).
- I fully embraced the
.webp
image format (which has great compression size), and almost all new raster images are now in this format..svg
is still used for vector images. - Site-wide search was added to the blog. This became easier to implement after the migration to Astro.js.
- Added a “cover image” feature to each page. Each page can now have a cover image assigned to it (a piece of metadata in the frontmatter). This cover image is used in the parent page’s “child pages” section to display beside the page description. It is also used for the social media preview image.
- Added figure, table and equation numbering support (I had this in Hugo, but lost it when migrating to Astro.js).
- NinjaTerm got heaps of new features added, after it got turned into a PWA just before the start of 2024.
Plans For The 2025 Year
- Add more content to the blog (as always!).
- Keep adding features to NinjaTerm.
- Make sure CppLinuxSerial can work with CMake’s
FetchContent
feature (it’s an easy way to include external dependencies).