This website is currently under construction and may contain partially broken functionality.
Welcome to my personal website. It’s main purpose is to serve as a blog but will likely contain miscellaneous stuff as time goes on. Down below you’ll find a feed of all my blog posts sorted by date with the newest ones first. However clicking the Blog navigation menu item at the top of the page will take you to a dedicated blog section, categorized by topics.
Earlier today I released a new version of ulog which is a lightweight and threadsafe logger with support for C/C++. This release combines a few different changes over the last several months, most notably full support for C++ code, and simplified macro usage for file logging. Below I’ll detail the various improvements
Full Support For C++ Code It appears that string handling in C++ is slightly different than C, with “strings” defaulting to a const char * type, whereas in C defaulting to a char * type.
Within the field of cyber security, penetration testing is a method of evaluating the security of a system, sometimes put under the umbrella of ethical hacking. There’s a number of certifications for ethical hacking, however none is perhaps as well known as the OSCP (Offensive Security Certified Proffesinal) certificate.
For those familiar with OSCP, it is common knowledge that it is a very difficult exam, lasting a total of 24 hours with the goal being to compromise as much of the lab environment as possible, with many people not passing the first attempt.
Overview DNS is a key component of modern day technology. Whether you are running a homelab, or simply browsing the internet, DNS will play a crucial role in how you use many internet protocols. It is however often overlooked when setting up a custom network, or when exploring different methods of using the internet in a way that affords you better privacy, and reduces the ability for tech companies, and governments to track your internet usage.
I’ve been sitting on this blog post for quite some time now, and was unsure of whether or not to publish it. In part I felt a bit crazy, mostly due to the fact that outside of a few rare circumstances, not a lot of people were talking about the same problems I was. If they were, it was very brief and no one was being persistent in the same way I was.
Introduction When I decided to start learning the C programming language, and after I got through reading introductory material, namely The C Programming Language 2nd Edition as well as Effective C: An Introduction to Professional C Programming I found myself wondering what can I work on that would help sharpen my newfound skillset.
I figured that a good way to spend my time learning C, and one that would help me become more familiar with the language was to recreate common functionality that I use on a near day to day basis when programming with Golang.
Introduction Recently I started learning the C programming language. Coming from a language such as Golang, I was a bit lost on how to do traditional code development practices, namely CI (Continuous Integration). With Golang the information is pretty easy to find for a variety of different CI providers; But C on the otherhand, not so much.
A First Attempt Within the last 3-4 months I began using CircleCI for all of my Golang projects to great success.
Overview When I was in college for computer systems administration, one of my instructors mentioned that the best way to become familiar with technology, and be a proficient systems administrator, was having a homelab. The homelab allows you to get your hands dirty with real technology in ways similar to on the job experience, but without the pressure about of accidentally taking down a mission critical system.
It’s also a great environment for trying out new technologies, and staying up to date on existing ones.