Coding with Titans

so breaking things happens constantly, but never on purpose

HowTo: Change Docker containers storage location with WSL2 on Windows 10

Once I started playing with Docker on Windows it quickly turned out that latest version heavily rely on WSL 2, in comparison to an older Hyper-V based approach. One thing that changed significantly during this technology transition was lack of a setting screen to actually define the location (and other params), where the containers and downloaded images should be stored. As the space they occupy grows really fast and default is not always the best place for it! Read more →

HowTo: Add CocoaPods private ZIP file as dependency

As an iOS developer you often hear about dependencies management. Looking into this subject deeper quickly leads towards CocoaPods and Carthage as two very popular solutions, yet build with totally different mindsets and assumptions. First one is a centralized solution, with full list of existing potential dependencies, while the latter one simply downloads the GitHub repo locally and builds it or only references the prepared binaries. And even if I like and used Carthage in my previous projects, I had to put it on hold for some time, because of its lack of support of XCFrameworks and in general the Xcode 12 style of development. Read more →

HowTo: Downgrade BIOS for Gainward GTX570

It bothered me for a very long time since I fixed my PC - why is StarCraft 2 so slow on Gainward GTX570? I remembered this card to be kinda good. And my suspicious about something being wrong with my setup escalated quickly when I found an older Gainward GTX275, which was performing astonishingly better than the current one. Yes - smooth Medium with 30fps is still far better than Very Low and 12-15fps. Read more →

HowTo: Using assets in Android unit-test project

You have probably heard already a tremendous number of times that unit-testing your Android code is important. It’s all true and still valid. And there is one recipe I tend to forget quite often, which I also found extremely useful, while writing tests exercising (or relying onto) any external data. In this scenario, all the content is kept outside of the unit-test itself and is simply read at runtime from resources (aka assets). Read more →

HowTo: Get currently active version of Xcode

Sometimes knowing the current version of Xcode used to build the stuff from command line becomes a useful intel. Here is the recipe on how to obtain this information in a clean manner. Easiest command would be to call: $ xcodebuild -version That produces output like: Xcode 12.5 Build version 12E262 As an improvement I could use sed to simply extract the number from a line with the Xcode prefix: Read more →

HowTo: Select running iOS simulator while automating testing

One thing was always a dilemma for me - running iOS automated unit-test from a command line. On the first look the command looks simple, it’s just a call to xcodebuild with a bunch of parameters. What can go wrong there, right? $ xcodebuild -resultBundlePath "$test_results_path" -workspace "$workspace_path" -scheme "$scheme_name" -sdk "$sdk_version" -destination '$destination' -testPlan "$plan_name" -only-testing:'$single_test_path' test Where: test_results_path - describes the path, where to store test outcomes (. Read more →

Restoration of Tajfun

Exactly - last week was a good one to fix something. Among all the gray matters that surrounds me I picked up a single task and completed it. It’s really an empowering feeling. I had a hope of restoring my old PC Tajfun from its cyber-grave as it has been more than a quarter since it breathed its last byte. If you’ve read the previous story, you would provably know, that I already took the old and broken Asus motherboard and visited a service workshop. Read more →

HowTo: Find and mark all FIXME / TODO in Xcode project

This time it won’t be a guide I came up myself from scratch. Recently I joined a totally new Swift project and wanted to quickly understand, what it does. Then I had an idea of navigating and finding issues, that were left there by my fellow previous developers. Those specially marked lines are usually left there and aren’t meant to be brought to light. Mentally they can be ignored for years by their creators. Read more →

Binary XCFramework

During WWDC2019 Apple introduced a new binary package, that AAaaaaaaaaaaa Now, new version of Swift Package Manager can distribute those binary packages. Video and internationalized https://medium.com/@anuragajwani/how-to-build-universal-ios-frameworks-using-xcframeworks-4c2790cfa623 https://www.appcoda.com/xcframework/ https://instabug.com/blog/ios-binary-framework/ https://medium.com/@anuragajwani/how-to-distribute-compiled-universal-ios-xcframeworks-using-swift-package-manager-8eaf8395985f https://medium.com/@anuragajwani/how-to-build-universal-ios-static-libraries-using-xcframework-a3f70f998c38 https://medium.com/onfido-tech/distributing-compiled-swift-frameworks-via-cocoapods-8cb67a584d57 Creating XCFramework using SwiftPM is impossible today. https://github.com/apple/swift-package-manager/blob/main/Documentation/Usage.md @obj for non NSObject child classes is supported only from iOS 13.0+ –> https://forums.swift.org/t/xcframework-requires-to-target-ios-13-for-inter-framework-dependencies-with-objective-c-compatibility-tested-with-xcode-11-beta-7/28539 Issue with Realm + Obj-C cooperation –> https://github.com/realm/realm-cocoa/issues/3073 Looking for a good guide about using Swift Packages Manager and examples with Xcode - take a look here. Read more →

Power failure due to fried bus bar

This year (and absolutely last month!) seems to be very hard for me. Am I really so much unlucky? Or did it accumulate to balance any earlier happiness? Because today (Sunday!) I experienced a total power failure in my home office. My wife tried to print child’s homework, while we lost power in wall sockets of the room with the printer. However lights remained OK, also other places in my apartment were not affected. Read more →