About

~/ $ whoami #

My name is Nic because elementary school me didn’t see the point in adding a redundant character to my name. I’ve been living IT in some form or another for as far back as I can remember.

Currently I’m a Senior IT Systems Engineer working for a satellite data analytics company. I have my hand in everything IT, heavy on the automation, cloud systems, AWS/GCP/Azure, Google Workspace, fleet MDM, etc. I’ve worn every hat available to some extent. I’ve done firewall configuration (IPSec tunnels to cloud VPCs, policy design and maintenance, etc), networking, security and forensics, GIS (I know right? Was related to a home-school locator I wrote based on addresses. Led me down a crazy path that included visualization, GeoGis Python libraries, and geographic queries in Postgres…), AD, website maintenance (wordpress, django, drupal, flask, etc…), email/app policies, etc. Name it and I’ve probably done it.

Fiction: Dune · Bobiverse · Blindsight/Echopraxia · The Expanse · Memory Sorrow & Thorn · Surface Detail

Big fan of GCP even if the army of PhDs can’t market to save their lives. Once you dig into it and start to build solutions though, things really start to click. Weirdly I attribute that to being late to market. They’re essentially building out cloud native tech on the back of a significant improvement in collective cloud native knowledge. Example being AWS Sigv4 inter-service auth is secure and reliable, but the web has essentially standardized on OAuth2 and JWT. The result is that everying in GCP is secured via the same methods you’re likely securing your client facing apps with. You don’t have to context switch when building your app and dealing with inter-service communication.

My nerd background is heavily anchored in my 1985 birth year. My first computer was a Packard Bell with a 286. My First programming book was given to me by Mr. O’Leary, and was an old yellow book on Quick Basic that I wish I could find :/ My first program was a Basic program that counted to a million on a school Apple 2. I wanted to be a computer programmer for NASA when I grew up. Read everything John Christopher wrote, played everything MicroProse made. I was once grounded in elementary school for waking up at 5am to play Civilization before school. MOO, Meklar for lyfe! Parents could send me to bed, but they couldn’t keep me from waking up! SSI Goldbox Games, loved Star Control II. Breaking the Chmmr out from the shield on Procyon, mmmmhmmm the memories! The “wubwubwub” track from X-Com with the lights off, awesome!

Built computers and did home tech support for money in junior and high school. Hosted lans, biggest one had 40 something friends with computers in my parents house. Built the computers and website for the EAST Lab in high school, then administered the lab. Took a Cisco CCNA class in high school. Taught reading, got certified in lifeguarding and swimming instruction, delivered furniture while attending UCSB for Linguistics.

Non-Fiction: Behave · Range · Antifragile · Superintelligence · Biocentrism

Graduated and started working at Westminster High School as a computer lab attendant. Was recognized by the site tech as being more capable than the lab tech job required. Started scripting up solutions to automate various tasks in Python. Scripted our school’s directory into a Google Apps for Education domain. Was hired at the district level to do the same for the district. Responsible for the recommendation that purchased the first 300 Chromebooks. Promoted to Web Developer from Network Technician. Designed, developed, and deployed our MyClasses portal to AWS, giving parents a unified pane of glass to view their student’s progress. Promoted to Systems Analyst. Outgrew that gig and was lucky to snatch up a new one significantly closer to space! Progress baby!

Why a Blog #

I enjoy writing and a blog is a good place for me to present my thoughts on the topics that I’m interested in. I read or heard somewhere that we all contribute to the collective experience of each other and as a result, what you think or feel is likely to be valuable to someone somewhere. So maybe someone somewhere will read something here that helps.

Movies: Thank you for Smoking · Don't Look Up · Dredd · A Knight's Tale · Event Horizon

I’m also a firm believer that attempting to teach a topic to people, even if it’s to the vast amorphous masses, advances your understanding of the topic. I want to be constantly improving in my field and there comes a point when you must attempt to convey what you’ve learned to others to achieve that improvement. Win win.

Perspective #

One of my goals is to be continually expanding my experience, building my repertoire, filling my toolbox. The knowledge that I build is dependant on the situations that I’m exposed to so I hope that this place will also serve to expand those situations in the pursuit of growth.

I use Python because it was the first programming language I tried where the first non-trivial program I wrote ran the first time, no bugs.

I use vim because of a Pycon talk about Flask, where the speaker spent most of their time talking about Javascript. I learned little about Flask or Javascript, but I’ll be damned if I wasn’t sold on how efficient vim navigation and editing was in that live session! Now I can’t imagine not being an ssh session away from a comfy vim terminal made so by a lovingly tended .vimrc file.

I prefer Go because I was using uwsgi, gunicorn, and Celery for literally everything, and helping people learn how to use those was far more difficult than emailing someone an .exe that had no external dependencies. Go is perfectly suited for cloud and broad collaboration. Plus, 15-30mb docker images. That’s right, mb. Eat your heart out cold start times.

I prefer text interfaces, configuration, processing because of the thousands of pages containing outdated images of wizards or GUIs I’ve had to try and interpret. Imagine having to update your guides or tutorials every time a designer decides that an installer wizard doesn’t pop enough? Worse if the wizard validates steps, meaning if I have to update an image to reflect an interface update four steps into the process, I might actually have to perform the four steps. If the configuration for the app I’m setting up was text, I could version the darned thing in a Git repo, job done! Just say no to wizards and GUIs!

Weirdest project..? #

School district I worked for was moving from a legacy client/server student information system (SIS, think ERP for student data) to a web based product. Boss was asked during a meeting with staff representatives if the new system would support their call-slip printers (counselor needs to pull a kid out of class, you need a note/hallpass). Queue me, “sure, I’ll take a look at it." Damned things were LPT port dot-matrix receipt printers. End result of my POC was a Flask app that took in form data, queried the SIS database for student schedule info, then serial-ed that info via a custom SDK module I wrote for the printer to loudly print out a receipt that showed the student’s info, schedule, and reason for being called out of class. Ended up not using it when staff were convinced they could get a similar result via printing a report from the new SIS, but that was an odd project that was fun to work on.