Mike's Blog

Passing on knowledge about software development and other related technologies.

A URL Shortner That Respects Your Privacy!

My daily work requires me to send or post links fairly regularly and I have always been a fan of URL shorteners. Unfortunately, most of these tools today are nothing but advertising platforms and data collection silos. So, I decided to write my own and make it respect both member's and users' privacy.

I used Rails 6 / Ruby 2.6 with Postgres deployed on Heroku to craft this tool. It has simple use analytics (if you create a simple account) and does not collect identifying info on visitors as I use GoatCounter for my analytics on... Continue reading

Getting Started With Ruby Arrays For Beginners

What exactly is an Array?

Arrays are objects (remember everything is an object in Ruby) that can store multiple values such as numbers or strings. Simplified, an array is a collection or list of things. Arrays are generally used to hold a collection of data that needs to be displayed or manipulated by your program. Their data can come from any source, user input, databases, or computed values. In Ruby (like many other languages), arrays are ordered, integer-indexed collections of any type object. This means that each element in an array is associated with and referred to by an ... Continue reading

Favorite Development Gems Part 1 - Rails-ERD

This is the first in a series of blog posts on development gems for Rails. I am assuming you know what gems are and their value in the Ruby/Rails ecosystem. If you don't, then here is a link to go check out.

Development gems are used during the development process only and not in production environments. The gems mentioned in this and in the next few posts are my favorites and really help get the work done when developing rails application. Let's get started.

This first post I will be focusing on the Continue reading

Creating A Basic Chrome Extension In Five Minutes.

Have you ever wondered how difficult it would be to create your own Chrome extension? What the process would be or what it would entail? Well, it turns out it is easy to get started. In this post, I will show you how to create a very basic Chrome extension in about five minutes.

What is a Chrome Extension?

They are small software programs that can modify and enhance the functionality of the Chrome browser. Chrome extensions extend Chrome’s capabilities. You write them using HTML, CSS, and JavaScript.

What can extensions do? Extensions can do quite a lot. ... Continue reading

Seeding your database in Rails - Part 2

In the first post about the seeds.rb file we covered the basics of how the seeds.rb file works. In this post, we will be looking at practical examples of how to use the seeds.rb file in a production situation. There are several issues you may have to deal with using the seeds.rb file in a project. First is determining if your data you are about to add to the database already exists. Let look at how we can do this.

first_or_create and find_or_create_by
There are two methods in Active Record that can be helpfu... Continue reading