I have been expanding on my coding knowledge by learning a new language and a language that I saw as being very popular Python and I think is useful to know is Python. Early on in 100 Days of Code — The Complete Python Pro Bootcamp for 2021 course on Udemy one of the projects you build is a Random Password Generator in which you enter the number of letters, numbers, and symbols you want your password to have and it returns a random password.

Photo by Jason Dent on Unsplash

This can be useful in that its randomness is creating very secure passwords that would…


To further develop my programming skills, I have looked at learning new languages and technology. While deciding on what to focus my time and energy on learning I looked at what is different about the languages and one difference that comes up is Static or Dynamic typing within the language. Throughout the Flatiron school Bootcamp, the main languages we learned were Ruby and JavaScript, both of these have dynamic typing.

Photo by Margot RICHARD on Unsplash

There are several other languages with static typing, like Java or C. The difference between static typing and dynamic typing is that with static typing the variables you want to…


Being able to test the code you have written is an important part of coding. For several projects that I worked on, after writing some code for an application, I would then test the code by going into the application, checking whether everything is working as expected and that I had not broken anything.

However, there is another way to test our code without going into our application. This is by writing out some test code that we can run with a command. …


Backtracking is a general algorithm that can be used to find one or multiple solutions to some computational problems. Basically, how we use backtracking we make some sort of choice if that choice is wrong we ‘backtrack’ to where we can make a different choice and move forward from there until we get a correct solution or run out of options in a case where there is no solution.

Photo by Daniel Irwin on Unsplash

From this, we can see how backtracking is very often associated with recursion where we recursively call a function to move through the different options until we break out of the…


For most of the projects I created while attending the Flatiron Software Engineering program and since have used Ruby/Ruby on Rails as the backend and JavaScript as the Frontend. I have since been learning Node JS as a backend language and using Express as it is a popular framework for Node JS. In this post, I will write about validating the information being sent when a form is submitted.

When we work with and have forms online there are often validations in the form to ensure you are filling out the form correctly and with valid information. A popular form…


When coding and working through algorithms and code challenges, if I needed to loop over or iterate through something we can use a loop. I wrote an earlier post on using a for loop which is a common loop where we loop while a condition is met and then do something so the condition changes each time. A while loop is similar to this in that we keep looping while a certain condition is true, unlike the for loop which usually has 3 parts the while loop just contains the condition that while true the loop will run. …


With Ruby and Ruby on Rails we can create and generate full-stack applications. If we want to we can also just use Ruby for the backend or the API with a different front-end and we can use Rails to do this. To start in our terminal we create a new rails app (provided you have rails installed) with the code:

rails new app-name-api -d=postgresql --api

This will generate all the rails files, the added flags of d is to select the database as a PostgreSQL database (Rails defaults to SQLite if this flag isn’t put in) and the api flag…


In programming, we can work with Matrices, which can be created with a 2d Array which is simply arrays nested inside an array (it is also possible to create greater multi-dimensional arrays 3d, 4d by further nesting).

Photo by Nick Fewings on Unsplash

A 2d array would simply look something like this.

[[1,3,9,4],
[5,7,9,5],
[1,1,1,2],
[6,3,8,4]]

We can access elements in this 2d array the same way that we would a regular array with [] just another level deeper so array[i][j] with the i representing the row and the j representing the column. So if we wanted to access the 1 in the top left corner…


In programming, there are several different data structures each with its own benefits and drawbacks. One of these data structures is called a Linked List, within linked lists, there are Singly-linked lists and Doubly linked lists. As the names suggest the difference between the two is singly linked lists have one link between two nodes going in one direction. Whereas, doubly linked lists have two links between nodes one link going to the next node and one link to the previous node. Below is a visualization of the difference between the two:

A linked list can be created and used…


Working through data structure and algorithm problems it’s important to come up with solutions that are efficient and continue to work efficiently even as the data set gets larger. This means having a good Big O time complexity, and for certain problems sets one way to do this is with Hash Maps.

Photo by Agê Barros on Unsplash

A hash map stores key-value pairs in JavaScript a hash map can be a Javascript object or JavaScript’s built-in Map object. Other languages have their own versions of this too, for example in Python it’s a dictionary or in Ruby, it’s a hash, the main idea is the…

Ronan McClorey

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