A Portrait of Work

From The Streets To The Code Editor


Home A Journey Shared

Navigation


Portfolio
Background
Work Style
Personal Interests

Portfolio


The Deconstructed
Learning System


A learning system that can be used and applied to help you learn anything. (In The Works)

KPI Application


A proprietary application that keeps track of financial records
and shows small business owners key performance indicators based on those records

My personal company website


A personal website/application built in Django, (Deployed via Google Compute Engine, In active development)

Universal Repository
of
Flagged
IP Addresses


An ever growing lake of IP addresses from wannabe hackers

Linux
You’re Welcome


A Very Simple Linux Guide And Reference (In The Works)

Controller DF


A Python library which spins up a quick webapp that has features to manipulate a data frame

Azure PlayFab API Diagram


A simple diagram to help understand Azure PlayFab API

Machine Learning
You’re Welcome


A Machine Learning Guide And Reference (In The Works)

RememberMe


An AI modeled after a loved one that you can interact with (Prelim Stages)

Flight Tracking


An application to simulate tracking a flight

Work Style


I am obsessed with computers and programming. When most people pack it in for the day I continue to work on anything I can. I really like the feeling of being mentally exhausted and crave it. It’s currently 3am as I type this.

I have three ways of beating fatigue, staying interested and tricking my brain to do more.

Standing

Sitting

Laying Down

The structure of the way that I begin a project.

First really understand the actual idea or problem that is trying to be solved then:

  1. Type out all of the necessary things im going to need to make the thing work.
  2. Break up whatever it is im working on into section.
  3. Then ill type out as many details and caveats for each section as I can think of.
  4. Then ill use simple words to start puttting the logic together that im going to need to make things work.
  5. After that I start to consider mechanically what the logic is going to look like in terms of code

    ie.

    • Ill need to import these modules to handle a, b and c
    • Many people are going to use this code ok ill need a class so people could instantiate a bunch of these objects.
    • In the initializer ill have x, y, z
    • Should I use a loop or recursion in this one method. Ok ill test both and time them maybe use a generator in this other part.
    • We are going to be storing this large thing in memory ok maybe ill chop it up make the program faster.
    • Alright ill catch this one exception over here.
    • Im gonna need some conditions to check this other thing at the gate
    • Ok where in this thing could someone do something stupid let me make it so they can’t do something stupid.
    • etc..
  6. Think about the best way to implement something.
  7. Then finally ill start to code stuff out.
  8. Ill check to make sure I dont have a bunch of the same logic all over the place if I see code like that in a Function or Method many times ill just add another paramater and refactor.
  9. With step 7 in mind ill see what parts of the code I could reuse somewhere else and if it’s a good or bad idea for whatever reason.
  10. Sometimes I might start considering if the thing is scallable or not.
  11. Ultimately I will test the code and refactor as need be.

I work hard at not falling into the trap of being over confident and as a result becoming married to an idea. The skill of recognizing that someone elses idea is better than yours is more valuable than over confidence in your own idea. It’s a massive skill to be able to see that an idea is superior to yours in a way that removes your ego from the equation to simply get something done quicker or better.

Background


This section mostly details my historical relationship with computers

The beginning

I had a couple friends who at the time, came from money in my eyes and had computers which they were kind enough to share with me when I visted them. I loved computers right from the jump and wished I had my own. I used to watch one of my friends dad work on computers and do some programming and wished I knew how to do what he was doing. We used Apple II machines in school sometimes and I wondered why we couldn’t always just be using them for school to learn everything.

A Machine of our own

When I was 15/16 years old in 98/99 my brother got a job and bought a Dell which he paid monthly for. I was waiting on the doorstep every day for it and was there the moment it was delivered. I brought the box inside the apartment and unboxed, then set the machine up on a desk. I called my brother at work and asked him if I could turn the machine on. He said “NO! Wait till I get home you shouldn’t have unboxed it, leave it alone!” I waited till he got home and watched him go through the setup steps of personalizing the windows 98 environment. I hovered over his back the entire time and after an hour or so of him being on the machine he stopped moving the mouse around and kind of just starred at the screen. Then he said, angrily, “Fine! Use it!” and got up and walked away. I sat down immediately and didn’t get up for at least 8 - 12 hours. I slept a small amount of hours the first couple weeks because I just wanted to be on the machine all day.

Introduction to Linux

I learned what Unix was from watching the movie hackers. I was first introduced to Linux from reading Unix books and manuals in the public library.I spotted a book on Linux next to a Unix manual “Linux A-Z”. The idea of having my own Unix like operating system was enough to make me think that maybe I too could be a hacker if I learned enough.I wanted to be 1337

Within the first month of finally having our own computer I made an attempt to have a dual boot system with Windows and Linux. As a result, I quickly I learned what a master boot record was and how it was related to a boot loader. I was trying to run Linux Slackware along side of Windows using the LILO bootloader. So I partitioned the 60gb hard and allocated 10gb’s for Linux hoping my brother really wouldn’t care or notice. It was a disaster! The machine wouldn’t boot into either operating system and something was producing all 9’s across the entire monitor, repeating. I didn’t know what to do and when my brother came home and saw what I did he looked at me and just said, “FIX IT!” then went to his room.

I pulled the hard drive out of the machine and hopped on the bus to the local internet cafe so I could fish around the internet to see if I could find some answers. I talked the internet cafe owner into allowing me to disasemble one of his test machines so I could attach my hard drive on as a slave in hopes of sorting the issue out. Long story short I fixed the problem later that day shortly before the shop closed at night. There began my Linux journey.

Now in retrospect if I had to create a Linux slogan based on my Linux journey it might be something like:

Linux

An operating system for people looking for long journeys into manuals, cryptic documentation and forums filled with arrogant people and RTFM responses.

25 years later here I am with 5 different machines all running Linux.

Sidenote:

Linux and Computer Programming has always been a very personal journey. In fact I only recently made one friend (2023) who I can talk to about Linux or programming and he’s in his 60’s his name is Pat. In my neighborhood it wasn’t cool that you were into computers and you needed to be cautious about the words you used around people if you wanted friends. My family and friends have no clue what I have been doing with computers all of these years. As a result of this I have no network of piers and am only now finding out how important piers can be when you want to find actual work in the field as opposed to just being obsessed on your own time.

Interests


That’s the bulk of my interests and for 40 years on earth I feel like its a pretty small list.