• Apple,  Mac Security

    Our Journey To A Quantum-Safe Secret Manager

    Once upon a time, when the COVID was upon us, I retreated into my lab to write a book on the history of computing. I was fortunate, privileged, and delighted to get the chance to interview some of the people who built the foundational technologies that power our digital lives. People who invented the first data packets, installed the first nodes on the internet, developed the first search engines, and founders of companies that have become household names. Many from the history of computing began their careers as academics. Their original research was published as they pursued their PhDs. I started to notice some trends. A few notable ones caught…

  • Apple,  Swift

    Penn State and MacAD.UK Presentations

    Working on presentations is always fun! Here are two that I’m giving this summer. The first is part one of a deck on Extensions Management (and more on the past of managing them). That was delivered at MacAD.UK and I’ll post the video once those are up. The second is a deeper dive into the current state of extensions management, which I’m giving at Penn State MacAdmins. Hope these help someone in some way, shape, or form.

  • Apple,  Machine Learning,  Machine Learning And Artificial Intelligence,  Programming,  Swift

    New App TestFairy Writes Unit Tests With AI

    I just posted a new app to GitHub called TestFairy. It’s at https://github.com/krypted/TestFairy. It automatically generates unit tests for either a file or a highlighted piece of swift code. It does this using the OpenAI API, so leverages a LLM to write test code. It’s pretty straight forward. Simply highlight the code and in the Editor Menu, click TestFairy, then Generate Tests. I had hoped to post it for free to the App Store, but I didn’t want to distribute my OpenAI API key, or write an intermediary microservice that housed my key that an app uses. The use of an API key is considered an end-around to the In-App…

  • Programming,  Python

    Python script to identify CIDR notation

    It’s not uncommon to expect CIDR notation vs an IP address in a script (e.g. one that’s being passed to another API. So the following script is an example of using the re module to identify if an entry is in CIDR or not (since it’s not always obvious how to go about doing so): The array can easily be changed or filled with a network mask or array of them rather than fixed as they are here – and the output could easily be to call another function rather than to just print output.

  • Apple

    Using Viruses For Good

    I get prompted any time one of my books is cited in legitimate research journals. A group of Kuwaiti researchers wrote a paper that, to quote the researchers, finds that “In a nutshell, this research indicates that there is a possibility of converting computer viruses into beneficial programs for storage space and CPU optimization.” The paper is available here: http://www.jatit.org/volumes/Vol101No10/19Vol101No10.pdf I’ve often said that agent-based device management tools (and let’s keep in mind that MDM is an Apple-supplied agent) are in a way commercially supported advanced persistent threats. After all, they have similar command and control architectures… These are often larger, monolithic architectures that grow, and so consume more resources…

  • Machine Learning And Artificial Intelligence

    Regulation And Coexistence With AI

    I’ve been writing little machine learning and AI bits of code for a pretty long time and while I’m not very good at it, I feel like the one thing I’ve learned is not to look for what I want to see. “Lying with statistics” was one of the most impactful courses I took in college. The confirmation bias in my works before and after we’re substantially different. Turns out you can look at fatalities from driverless cars or put them in perspective when compared to fatalities for the same number of hours driven by humans. Or focus on the mean vs the average. The perspective a quant has shapes…

  • Machine Learning,  Machine Learning And Artificial Intelligence,  Programming

    Detect Deepfakes and Hacked Audio Programmatically

    Deepfakes are a type of synthetic media where a person replaces parts of an image or video with something else, like someone’s likeness. The act of creating deepfakes is known as deepfakery. Deepfakes can be used to create fake news, spread misinformation, or damage someone’s reputation. They can also be used by a service like JibJab just to be funny, although those are obviously cartoonish and not meant to actually fool anyone. There are a number of different approaches to detecting deepfakes. Some of these approaches are based on image forensics, which is the study of digital images to identify and extract hidden information. Other approaches are based on machine…

  • Programming,  Web Development

    HTTP Success and Error Codes

    When you make a request to a web server, the server will respond with a status code. The status code indicates whether the request was successful or not, and if not, what the error was. There are lots of different HTTP response codes, which are three digit codes that generally align with the following classes: Of these, some of the most common ones we run into include the following: HTTP response codes are typically more used by web developers (and web browser developers) to bettter understand the status of a request and to take appropriate action. For example, if a request returns a 404 Not Found status code, the web…