Getting Classy With Lua

We’re going to talk about working with classes in Lua. I assume you’ve read the basics of Lua and about Object-Oriented Principles. We are going to gloss over some concepts (like metatables) and instead focus on getting the basics down.

To start off, Lua is not really a truly object-oriented language. Classes can be implemented in several ways and there are several libraries and extensions which add classes.… Read the rest

A Quick Breakdown of CrySIS / Dharma – October 2019

There’s a new variant of CrySIS and Dharma going around. It appears to be very similar to the variant floating around in July, but the toolkit it drops alongside the ransomware payload is a little different. This infection is nasty, and frighteningly efficient.

What Happened

The infection requires a human element which complicates things. Basically, an attacker gains access through a credential exploit, RDP exploit, or similar and works to privilege escalate using the toolkit.… Read the rest

Why STEM Needs the Liberal Arts

I lived down the hall from a group of STEM majors in college. They were great guys, but communication was not their strong suit. I still remember walking into my computer science major friend’s room and watching him have a complete meltdown at the thought of reading something “as hard as” Mary Shelley’s Frankenstein. This book is taught in some high schools, or even earlier.… Read the rest

Bluetooth on Debian or Ubuntu

Bluetooth is great for freeing yourself from the tangle of wires (which is great when dealing with kids). It can be a little bit of a pain to setup sometimes. This article covers getting Bluetooth working on Debian or Ubuntu. If you’re on Ubuntu or some other Debian derivative, the necessary packages are probably already installed. This article was originally written using Debian 10 as a base which should correspond to roughly Ubuntu 14.04 to 19.04 (though some package names may change).… Read the rest

The Quick and Dirty Guide to Object-Oriented Principles

Object-oriented programming is by no means new, but it’s definitely not old news either. Even though functional programming and similar may be the new hotness, Object-Oriented programming (OOP) is still arguably the backbone for the majority of the industry. OOP is the natural evolution of procedural programming and turns lone functions and data structures into reusable, encapsulated objects and allows for greater abstraction.… Read the rest

Teaching to Reinforce Your Own Learning

I’ve seen a flood of news from email chains and group chats about learning by teaching as an easy way to master skills faster, especially in tech. Rubber duck learning (where you explain the concept to a rubber ducky) is common in software development, but this new trend is a shift to actually teaching other people. Several articles about learning retention have been passed around to accompany this trend.… Read the rest