Swift & Kotlin Queue Performance

     

This is an expansion on two articles that I did about this time last year: Swift & HackerRank (Part 1). Swift & HackerRank (Part 2). In those articles I marveled at how much faster Kotlin was compared to Swift in terms of queue performance. While I quantified the performance in terms of order of magnitude at a specific volume (3 orders of magnitude better performance for 1,000 enqueues and dequeues) what I failed to do was generalize the differences in terms of Big-O notation.


StarCraft Rust Bot

     

I finished my StarCraft Rust Bot! It’s now good enough to beat the hardest AI that ships with the game. All in only 152 lines. You can see the original source code here. Even though the code itself is brief, the journey to creating and testing it was not. Originally the bot was going to be built using BWAPI (Brood War API). Then I found out that BWAPI was written in C++.


Rust - Initial Impressions

     

As part of my New Year’s resolution I’ve been studying the Rust programming language with the ultimate goal of building a bot for the game StarCraft (hence the robot Mr. Krabs, since the Rust mascot is a crab and my end goal is to build a bot with it). I’ve been reading through the Rust Programming Language Guide and uploading my notes and intermediate projects here. So far the language syntactically (if not semantically) is very similar to Swift.


2023 Resolutions

     

This is the fourth year I’ve done New Year’s resolutions. You can read the previous years' entries here: 2020 New Years 2021 New Years 2022 New Years As the saying goes: man plans, God laughs. Last year I had planned to do 100 pushups/situps/pullups/air squats per beer, to complete a century race, participate in a HackerRank contest, and update my Worldwide Equipment Guide app. Of those I only completed the last.


KMM iOS Presentation layer

     

This is the last entry in a multi-part series on Kotlin Multiplatform Mobile. Today I will cover implementation of the SwiftUI user interface for the iOS app. I’m using the Army’s brand new ODIN API for a reboot of my WEG iOS and Android applications. The ODIN API provides in-depth information about a wide array of military equipment. I’m going to try and cut the code snippets down to only the most salient bits in order to keep this post’s size a little more manageable.