November 2017 Updates

  • New Auto (Specifier) page under Programming->Languages->C++.
  • New Streams page under Programming->Languages->C++.
  • New Affine Transformations page under Mathematics.
    The standard form of a affine transformation matrix.
  • New Projective Transformations page under Mathematics.
    A quad-to-quad transformation of an image, going from a rectangle to a complex non-rectangular quadrilateral with no parallel edges.
  • New GCC Profiling page under Programming->Compilers->GCC.
    A profile of the execution time of the example code. Graph was created using gprof and the gprof2dot tool.
  • New Premade Recipes page under Programming->Embedded Linux->Yocto.
  • Updated the Python SWIG Bindings From C++ page with a tutorial on how to pass (and call) callbacks from Python code to C++ code, and information on custom typemaps and typechecks (with working code examples).
  • New BlogAssets repository and a central place to store all code examples/diagram source files for this website.
    A screenshot of the GitHub BlogAssets repository.
  • New Visual Studio Code page under Programming->Integrated Development Environments (IDEs).
    The icon for Microsoft’s Visual Studio Code.
  • Fixed many of the broken links (approx. 60) on this blog, via the help of the great WordPress plugin Broken Link Checker.
  • Added new Git Subtrees page under Programming->Version Control Systems->Git.
  • Created a new repo called CppTemplate (on GitHub), with the purpose being for it to provide a way to quick start development on a new C++ project.
  • New GCC Code Coverage page under Programming->Compilers->GCC.

October 2017 Updates

September 2017 Updates

August 2017 Updates

July 2017 Updates

June 2017 Updates

May 2017 Updates

April 2017 Updates

NinjaCalc Is Now A Web App

NinjaCalc, a “collection of embedded engineering related calculators”, is now a web app (go to http://ninja-calc.mbedded.ninja/ to try it out)!

NinjaCalc is now a web app! A screenshot while selecting a calculator using the new web app at http://ninja-calc.mbedded.ninja/.

Up until now NinjaCalc has been a desktop app written in Java (as NinjaTerm still is). However, the functionality that NinjaCalc provided had no need to be a installable desktop app, and I had long desired to move it to the easily accessible web.

When I recently discovered vue.js, I finally decided to make the move (after trying both React and AngularJS a year or so ago but deciding not to use them). It was the simplicity and flexibility of vue.js which was the deciding factor. Porting took about 3 weeks of full-time work (luckily I was unemployed at the time).

After trying out Heroku as the deployment platform, I eventually choose to deploy it on my server instead due to increased configuration flexibility (incl. the ability to setup the Apache server routing with .htaccess files). rsync is used to copy the production files over ssh onto my server.

The newest version of the Java based NinjaCalc (v1.3.0) can still be downloaded from https://github.com/mbedded-ninja/NinjaCalc/releases/tag/v1.3.0, although this will slowly deviate from the web app as the web app is developed further.

Existing users of NinjaCalc may appreciate the similarity between the Java app and the web app. The results can be found below!

GitHub Repo: https://github.com/mbedded-ninja/NinjaCalc
GitHub Project Page: http://mbedded-ninja.github.io/NinjaCalc/
NinjaCalc Web-app: http://ninja-calc.mbedded.ninja/

January 2017 Updates