primecoder.github.io

PrimeCoder GitHub Pages

Follow me on GitHub

PrimeCoder GitHub Pages

Recent Blogs

Dec 20, 2020, Using Xcode 12.3 with XVim2 Plugin

Xcode 12.3 broke my XVim plugin. Then my code kept getting compile errors - like :w, or jjj in the source code everywhere - vim coders would understand this pain. It’s time to rebuild my Xcode to support XVim.

Xcode with Vim

More: Xcode 12.3 with XVim2 Plugin


Dec 07, 2020, Attempted to re-gen self-sign cert with wildcard IP address

I’ve got a new macbook for Xmas! :-) With new ip address, I was too lazy to re-gen server’s cert. So, I attempted to sign it with a wildcard ip address. It didn’t work :-(

# config.cnf
[alt_names]
DNS.1 = localhost
IP.1 = 192.168.0.*      <-- Try wildcard?
IP.2 = 127.0.0.1
IP.3 = YOUR_OTHER_IP

I also tried

[alt_names]
DNS.1 = localhost
IP.1 = 192.168.0.0    <-- Try 0.0?
IP.2 = 127.0.0.1

This didn’t work either.

See: Re-generate Self-Sign Cert


Nov 23, 2020, Testing secure-self-signed API with Python unit test.

From my self-signed Cert, below, sitting at a desktop (as in step 3), I added unit tests to test remote server (at step 8) as below.

class TestRemoteServer(unittest.TestCase):
    ...
    secure_url = f"https://{server}:{port}/{apiEndPoint}"

    # Specify path to CA cert (for client, see step 2)
    ca_cert = "certs/i-1/development-ca.crt"

    def test_remote_server_with_self_signed_cert(self):
        try:
            resp = requests.get(TestRemoteServer.secure_url,
                                verify=TestRemoteServer.ca_cert)
            self.assertEqual(200, resp.status_code, "HTTP Status Code must be 200")
        except Exception as error:
            self.assertTrue(False, "Other error!")  # Make this test fails

    ...

Nov 21, 2020, Self Signed Certs for iOS 14

Here it is! Steps for creating self-signed certificates that will make iOS 14+ apps happy.


Nov 20, 2020, Mac OS Screen Savers,

Similar thinkging to the screensavers on linux - screensaver on mac should:

  • show useful info
  • lock my keyboard/mouse and secure my mac with login screen
  • and, yes it must be pretty!

I started to explore Apple’s frameworks on Swift 5, SwiftUI, Combine Framework and Screensaver Framework, on iOS 14 and Mac OS 11, and realised the potentials for a unified framework that will run on all Apple’s platforms - MacOS/iPhone/iPad/AppleTV.

Mac OS Screensavers


July 21, 2020, Linux Screen Savers,

I was bored with all the beautiful screensavers on my Pi 4 server. I think my screensavers should display somethings more useful. So here it this! My initial collections of screensavers on linux. Mostly utilises ‘xscreensaver’ and ‘phosphor’ frameworks. I did add some work on implementing cache management to minimise calls to the remote services.

Linux Screensavers


June 8, 2019, Desktop Stopwatch Pre Release 0.2.0. Now with onscreen buttons.

Desktop Stopwatch 0.2.0


June 6, 2019, Adding buttons to Desktop Stopwatch. I started working on adding buttons to the stopwatch.

Desktop Stopwatch - a.k.a Pomodoro Timer. An introduction to a stopwatch utility for Mac OS (iCuriosity.com, June 3, 2019)

Package Management: CocoaPods & Xcode (iCuriosity.com, May 17, 2019)

Package Management: Carthage & Xcode (iCuriosity.com, April 28, 2019)

Package Management: Setup Carthage & CocoaPods (iCuriosity.com, April 28, 2019)


Notable Open Projects

Other Interesting Work


About Me

Hello. Welcome to my GitHub Pages. I’m PrimeCoder. I currently reside in this host - I call him “Ace”, he is alright, a bit clumsy at the beginning, but he is getting better - still needs more re-calibration and training from time and again. I channel all my creations through him. He is a bit of a hacker and once was nearly thrown out from the uni for hacking. I try to train him in Assembly, C/C++, Pascal, Modular-2, Lisp, Basic, Java, Javascript, Node JS, Python, Bash, Objective-C, and who knows what else he learns on his own. Recently, he takes particular liking in Swift and start learning Kotlin. He speak some English.

Thank you for visiting my page.

Peace

🤖