IaaS to PaaS: Migrating to Shopify & Webapps
I’ve been quite busy the past few weeks, contributing only minimal structural changes to the WTF project.
Given the expected traffic and cost considerations, I decided to move away from the Azure B1M VM setup I had configured last year.
At my current job, I’ve gained more experience with Azure and realized that Static Web Apps could be a more suitable alternative to self-hosted VMs and scaling.
I also decided it would be smarter to integrate the shop via Shopify into my regular website hosted on GitHub Pages, which is also static, replacing WooCommerce and eliminating the WordPress overhead.
Fabric.js, YAML Pipeline & Model Category
I recently posted about the TypeScript changes, but a lot more has happened over the last month. I wasn’t really able to post a full summary until today, so here’s a major recap.
First off, I implemented a new drawing functionality with Fabric.js. This allows users to draw on the screen when Caps is pressed or when the Presentation Mode is accessed. Holding Alt+Shift draws rectangles, while the Mouse Wheel changes the color.
Typescript: Partial Migration, Book & Exam
For years, I worked exclusively with vanilla JavaScript—no React, no Vue, no Angular. I know about all of these frameworks, but I never had the opportunity to work with them. Angular, in particular, has bugged me because it has recently become the bread and butter of frontend development for full-stack developers. Angular is heavily dependent on TypeScript, so what better use of my free time and vacation than to dive into that?
AI Refactoring for larger files
I had some really ugly code in description.js that had grown tremendously in size over 2years. As context: description.js is the centerpiece for displaying any sort of visual description, including resizing, badges, icons, etc. It handles 95% of the interaction with the .json data files.
As of last week, description.js had reached the atrocious size of around 2800 lines of code - which is extremely bad, to put it mildly. It’s also the biggest single file in the project aside from the third-party libraries.
New: Visual Scope Identifier
Yesterday, I added visual identifiers to better identify the currently selected Scope:
One continuous line for the Local Scope… …and a point-based circle for the Global Scope: Both markers resize and adjust position according to the base vortex movements - so it looks like one homogeneous part. I thought this would be a handy and useful visual clue.
After implementing that, I also redesigned the former Perspective icons that are now labeled as Scope:
Oscillating Circuit: LC Charging & Discharging
After implementing Low-Pass and High-Pass filter mappings last week on the global and local scope, I took the time to focus more on coils and capacitors.
Because this entire topic is already quite complex, let me explain its importance in simple terms:
Capacitors, Coils, and Resistors are the three main building blocks of electronics. There are about two dozen other components, but these three are fundamental. Together with chips, they account for over 90% of the action on any circuit board.
Release Nearing: Recent Updates
So first off, I can report further success in correctly mapping BPMN 2.0. Previously, I extended it to the Cycle format, but yesterday I managed to identify the Sub-Process and generic task difference. I also managed to replace the XOR-Gateway with the correct AND and OR variants, also called Parallel- and Inclusive gateway.
If you’re a bit into Logic Gates, you know that the actual default Gateway in BPMN, the Exclusive Gateway, is essentially an XOR-Gate.
ISO/IEC 20000:2018 Foundation
After taking the 27001 Foundation last week, I decided to give it a try and peek into ISO 20000 as well. I had passed an ITIL V3 Foundation cert almost a decade ago and figured it would be a good fit to refresh some insights on IT Service Management aka ITSM. It’s somehow bread and butter to a lot of organizations, and 20k is also a standard you can certify against.
ISO/IEC 27001:2022 Foundation
I recently had a short gig at a local internet carrier where I got in touch with the topic of ISO/IEC 27001 - which is fundamentally relevant to the protection of information.
Briefly, the standard deals with the implementation, maintenance, and continuous improvement of an Information Security Management System, abbreviated to ISMS. This system ensures that standard measures (‘controls’) are implemented so that information is safe.
I never fully understood how Risks, Controls, Processes, and Policies worked together in a unified way and how they fit into the bigger picture.
Recent Updates: 4-Stroke Engine, Economic Bubble
I managed to do quite a chunk of fixes and updates the recent days:
Technically i fixed the alignment of images at Perspective switch while completely horizontal I cleaned up the JSON language files with a custom C# Console Application i built: It calls additionally Azure API’s for translations if needed. I might extend that tool in the future, it was quite useful and saved a lot of manual work. On the end of descriptions there was progress as well: