Coding a generator can be a lot of work. There are a ton of factors that you need to consider. Here’s how I did it using vanilla JavaScript.

Sudoku Board

What is Sudoku?

Before I begin explaining how to generate unique Sudoku puzzles, it is important to review the rules of Sudoku.

Sudoku is played on a 9x9 grid, sectioned off by rows, columns, and 3x3 ‘boxes’. The ‘cells’ in each row, column, and box need to be filled out with the numbers 1–9, without repeating numbers. In order for a Sudoku puzzle to be valid, it must only have 1 unique solution. In other…

The problem I solve in my project implements similar functionality like a shopping cart.

Shopping cart resting on keyboard


While creating a React app for my final project at Flatiron, I ran into a problem where I needed to be able to associate aspects of my app with different users, but did not need to have user authentication — there were no parts of my app that needed to be private.

The basis of the app I built was to allow users to look at random images generated by the Picsum API, and vote on them, and thus, collectively, users would find the ‘best’ images…

An overview of JavaScript Classes, this keyword, and explicit function binding


After first learning Ruby in Flatiron’s Software Engineering Bootcamp, JavaScript was at times a bit difficult to understand. When working with Ruby, and it’s popular framework Ruby on Rails, you write code that is encapsulated almost exclusively in classes. You take a blueprint, and instantiate many people with that blueprint. In JavaScript, you have many people, with no blueprint. While ES6 introduced a class structure to JavaScript in 2015, JavaScript is still not intended to be an Object-Oriented language. You can read all about why you shouldn’t be…

Improve user experience by beautifying your checkboxes


Default checkboxes in forms can be monotonous, which is fine when you’re signing away your rights, or claiming to have read through terms and agreements, but not when you need users to constantly interact with a form. Take Snapchat for example. When you take a picture, you can then select which friends to send it to by clicking on their name. This looks and feels a lot better than having to click a box next to their name. Luckily, it is not very difficult to make checkboxes more user-friendly. I recently built…

Three things to know before starting a project with Sinatra.


Sinatra is a Ruby web application framework. It is more lightweight than other web frameworks, and is often used without the standard Model-View-Controller(MVC) pattern you would find in a Ruby on Rails application. However, if you were to create an MVC application with Sinatra, here are some tips that could help you along, as well as save you some headaches.

Use Corneal to Generate Sinatra Template

Corneal is a gem that generates a template for your MVC Sinatra app. It creates all the folders and files that you will…

An introduction to algorithms with a common interview problem


Perhaps you are familiar with the 3Sum problem or a derivative of it. The problem is as follows: Given an array of n integers, find elements a, b, and c such that a + b + c = 0. Return all unique triplets that sum to 0. There are variations where you may be given a target sum instead of 0, or may need to find only one such triplet, but the process more or less remains the same:

Simple: Using 3 For Loops

For this method, we are going…

Growing up in a small suburb of New Haven, CT, I had little exposure to the world of coding. We all did. California and its tech revolution — a land of entrepreneurial opportunity, kaleidoscopic documents, data tabulations, bean bag chairs, tremendous glass windows covered with dry-erase computations, and red bricks weathered by fog — seemed a world away for those of us who were indoctrinated with dreams of becoming doctors, lawyers, writers and skilled laborers. And thus, it wasn’t until my family moved to the Bay Area during my senior year of high school, was the allure of this inspiring…

Julian Rosenthal

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