Hmmmmm

Despite what my résumé may say, there are a lot of things about Javascript that I don’t really know. I see the word ‘monad’ floating around a lot. Not really sure how this ‘garbage collector’ people talk about works (maybe if I brought it a gatorade?). JS has typed arrays?

Of these mysteries in this programming language, the most mysterious of them all was prototypes. I kept seeing prototype everywhere and I had no clue what it meant. So in this week’s installment of the blog I’m going to talk about prototypes and inheritance in Javascript.

What is a prototype?

In Javascript a prototype…


Tokushoryu, emotional after winning

Eight months ago I completed a 15 week, Full Stack Software Engineering Bootcamp. It was challenging. It was edifying. It was fun!

For my final project which I would be doing by myself I decided to create the world’s first Fantasy Sumo Wrestling app. Couldn’t be too hard, right?

Wrong. Turns out very hard. Especially if all you’ve done are some color by number assignments and little journal single page applications (no offense intended, loved the bootcamp curriculum, my cohort-mates and all of our projects, definitely wasn’t prepared for this though).

I wanted to take a moment to walk through…


Source

In the midst of my coding bootcamp, my instructors briefly taught us about linked lists. I knew that I needed to know linked lists because they could appear on an interview but I had no idea how it related at all. We had been learning Ruby and JavaScript; why not just use an array? Why does this exist?

It wasn’t until I read a more thorough description of how data structures are stored in memory that I understood why a thing like a linked list can be helpful. …


Donald Knuth, James H. Morris and Vaughan Pratt

Today’s blog is about a famous algorithm called the Knuth-Morris-Pratt algorithm after these guys up top.

Legend has it that James Morris conceived of the algorithm and then “a few weeks later” Donald Knuth was creating the same thing in the field of automata theory. Morris and Vaughan Pratt created a report on it in 1970 and then all three of them got together to publish the algorithm in 1977. That is the very very brief history of it, but what is it?

The Knuth-Morris-Pratt, henceforth called KMP, is a string matching algorithm that takes advantage of the fact that…


Source

In today’s edition of Learning Java after Javascript I will be going through the Java implementation of selection sort.

Given an unsorted array, selection sort goes through the array finding the lowest value and places it at the beginning of the array, and then the second lowest, etc. The solution today will have an average time complexity of O(n²) and constant space complexity.

Selection Sort

To start we establish a base case. If nothing is in the array we return an empty array. After that we begin to iterate through the array.

In the first for loop we start at the…


Me

In today’s blog I will be briefly going through a “basic” sorting algorithm implementation in Java: bubble sort. Right off the bat I’d like to recommend VisuAlgo to see this algorithm in action. So without further ado…

Bubble Sort

Bubble sort iterates through a collection of comparable items (usually alphanumeric values) and checks the values two at a time. It looks to see which value is greater and moves the larger value to the larger index.

First we check to see if there are no items in the array and if so we return an empty array. Then we create a…


Hiro Isono

Wow, what a big tree.

Would be a shame if someone removed one of it’s…nodes…

In today’s edition of Learning Java after Javascript I will be removing nodes from a binary search tree. This was one of the harder operations on binary search trees for me to understand so I wanted to walk through it again. Here is a very simple BST class:

Basic Binary Search Tree class in Java

Removal

What makes node removal particularly difficult are the number of edge cases involved. Until now all of the operations I had done on trees and binary search trees were fairly…


Mostly decided to learn Java because of the logo

Learning Java after Javascript is a series I am writing to document my progress in learning a new language.

As my terrifyingly attentive and aggressively supportive followers know, I recently finished a software engineering bootcamp where I learned Ruby, Rails, Javascript and React. In order to continue learning while I look for a job, I have decided to pick up Java from the book Building Java Programs (https://www.thriftbooks.com/w/building-java-programs-a-back-to-basics-approach_stuart-reges/296941/#edition=7929069&idiq=7923614).

In today’s post I will be illustrating differences in syntax between Java and Javascript by showing how to implement breadth-first and depth-first searches in a tree-like data structure. The examples that follow…


The author of this article
The author of this article
A picture of me in class

I recently completed the immersive software engineering bootcamp through Flatiron School and am excitedly beginning the job search in my new field. Little did I know when I signed up for Flatiron at the beginning of this year that I would be doing all of it from my room.

When I was first considering signing up for a bootcamp I talked to several friends who were currently enrolled at Flatiron, had already graduated or had attended a different program. One thing that struck me about all of these conversations was that each person had a lot of enthusiasm for programming…


I did not know what exactly the Virtual DOM is.

Because of this aching hunger for knowledge I (with the help of Arby’s), set out to quench myself at the buffet of Javascript history.

Vanilla-Flavored DOM

For an appetizer, a short primer on the regular ol’, very-much-not-virtual DOM.

The Document Object Model or DOM is an “abstraction of structured text.” It allows client-side interactivity between a language like Javascript and a text like an HTML file. Each element is represented as a node branching off from the root node, the document object. …

John Rusch

Musician and Software Engineer following his enthusiasm

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store