Self -
Development Education Training Discipline

HTML / CSS / JavaScript Frontend


Amazon Web Services (AWS)


Java


Git Version Control


Node.JS


This Website's Interface


My source code for this website's frontend interface is in this Github repo folder. Coded, tested, and debugged using VSCode & Chromium-browser DevTools features.

Here are some other pages on this site, which you can visit by clicking each image:

I designed & coded each of these pages individually. They are entirely my original work, including the reponsive features and animated effects.

My HTML/CSS/JavaScript visual effects on the homepage & Professional index show that I have familiarity & flexibility with composing frontend technologies together, without needing to use or reference any external code.

The overall pages show that I have vision when it comes to constructing original work and bringing unfamiliar designs to life, even when using only the 3 basic frontend technologies.

This Website's AWS Root-Domain Infrastructure


This website is deployed and maintained using these AWS products:

  • CloudFront - site content delivery
  • Route 53 - DNS management & configuration
  • S3 - site interface file hosting
  • IAM - security policy configuration for code pipeline automation
  • Certificate Manager - SSL certification for HTTPS

I configured all of these services to fit my needs. These needs include deployment itself, along with domain routing management and basic CI/CD through a custom-restricted-policy IAM user account for this website's GitHub code repository through GitHub Actions.

I documented the exact steps I took to deploy this site domain here on my development log.

Java Programming Textbook by Joyce Farrell


In my first introduction to coding, I went beyond expectations for a fresh newbie and completed every exercise from a Java programming textbook. Coded using Notepad & JGrasp.

Java Programming, 6th ed., by Joyce Farrell
Java Programming, 6th Edition, by Joyce Farrell

The course, only an elective in my physics / mechanical engineering curriculum, required a fraction of the work from the textbook. However, I was self-driven toward programming right when I discovered the craft, so I did much more than was required. The code I kept from this era is my receipt for having passion for this work from the beginning.

The code that shows my proof of this completion is in this GitHub repository.

This Website's Git


This website's code is version controlled through this GitHub repository.

Supplementing this, my work through Git includes:

  • Git Bash CLI - primary management & local configuration
  • GitHub Desktop - simple secondary management for quick minor code pushes
  • GitHub SSH - dynamically configured to push to different repos through different accounts
  • GitHub Actions - used to define a basic CI/CD pipeline for automatically deploying site updates to AWS

Deployment automation is defined through YAML configuration in a GitHub workflow, which tells the remote runner to check out the code, to retrieve AWS credentials from secrets I set up in GitHub, and to run a CLI command to sync the website's files to the specified repo folder.

Eloquent JavaScript Textbook by Marijn Haverbeke


I read through & coded along with this entire textbook that covers JavaScript in both the browser and Node.JS. I refreshed & further contextualized concepts I was familiar with, learned several concepts I was unfamiliar with, and coded my own programs after every lesson. I have these programs to show in the "Exercises" subsections on the page linked here:

My full self-study guide & notes detailing my engagement with the entire textbook

I created the above page to track my progress, to host my code, and to use the notes I took there as future reference material for myself.

I plan to use this refreshed knowledge as a springboard for further self-development projects, like:

  • self-study on JS-based Web frameworks like Angular and React / Next.JS
  • usage of Node.JS as a vehicle for creating live backend Web applications / APIs & have them deployed through a subdomain of this website, using EC2 infrastructure, CI/CD tools, and Docker
  • exploration of loose ends from the book, such as websockets, SVG, higher HTTP versions, and the publication of my very own NPM packages

All in all, this is a worthwhile investment as a foundational work for future self-development. According to past teammates & coworkers, I was already particularly skilled with what JavaScript I knew, but with this formal deep dive, I unlock a more complete understanding of the many things that are built off of JavaScript, present and future.

Eloquent JavaScript, 4th Edition, by Marijn Haverbeke
Eloquent JavaScript, 4th Edition, by Marijn Haverbeke; full text made available online by the author

Node.JS Live Filesystem


This is my first proper self-contained product using only Node.JS without abstractions built on top of it.

The Live Filesystem is a basic live-hosted file explorer & file manager that's accessible through an also self-developed Web UI. It performs basic functions of system file explorers like Windows Explorer & Mac Finder, organizing the contents of a system-selected internal folder & its subfolders and allowing filesystem interactions from a live Web page. The Node server will serve the files from its attached filesystem when requested, and it also supports manipulation of the files & folders in the system.

At the time of writing, it's a simple proof of concept for a self-authored Node.JS live Webapp with several request types & filesystem interactions, but it's entirely extensible and may serve as (at least intellectual) groundwork for my further work with Node.JS.

The source code for this application is currently here in my website's Node subdomain GitHub repo. Its initial requirements are outlined as this exercise at the bottom of a textbook chapter I was studying, but I took the requirements & ran with them to create an extended version of what was requested.