Showing posts from 2020

A New Serverless Look

Until recently, I had no reason to build anything elaborate with a serverless architecture. Yet it's everywhere now! There's Amplify, Netflify, JAM, SAM, lambdas, workers and more to learn about.

A few weeks ago on another stuck-inside pandemic Saturday, it felt like a good time to experiment with Gatsby. The documentation is great, and there are plenty of articles and great community resources available. I wanted to find a theme or examples of pulling in Markdown files which I'd populate the files with notes, code snippets, and other handy references I've collected related to infosec recently. Then over time maybe dig through years of scattered snippets of knowledge that I find myself reaching for, like "that link to a presentation about the history of browser privacy standards that I know I saved somewhere!!!" among other greatest hits.

The Quick Start in the official docs provided an easy cli installation and familiar directory structure. There were o…

Changing PDF Metadata with Python

While updating a pdf recently, I noticed some metadata I wanted to change and a few annotations that were hidden from view but still in the file. However, the "Get Info" pane in Preview on OS X doesn't provide a metadata editor, nor does its Export function, so it seemed like a good opportunity to learn a bit more about the PDF standard and Python packages for getting the job done. Adobe Acrobat or other GUI's would've been much faster, but I'll likely need to do this programmatically again at some point like those of you who might've found this post by looking on your favorite privacy-preserving search engine for "change pdf metadata in python". So here we go.

Before starting, I hopped into a new folder and created a git repository with a first commit of my original pdf in case anything went wrong. Then I ran conda create --name pdf --python=3.8.1 and conda activate pdf to set up an Anaconda virtual Environment named pdf to keep my work isolate…