Posts

Difference Between a Class and an Object

One of the things when I began Object-Oriented-Programming that I had difficulty understanding was the difference between a class and an object. So many developers use the words object and class interchangeably but they are different. I'm hoping that this post will help people understand the difference. A class is what defines an object. People often say that an object is an instance of an class and that is true but I want to simplify it for people who are just starting to code in an Object-Oriented-Programming Language. The way that I can explain it in the simplest terms is you must code a class in order to create an object. Let's look at the example below. I have coded a very basic class called Person which has their first name, last name, and age. This is how you create a class public class Person { private String firstName; private String lastName; private int age; public Person(String firstName, String lastName, int age) { this.firstName = f

Pluralsight, the best bang for your buck

After looking at multiple online resources to learn new programming languages and get a refresher on ones you already have experience pluralsight.com  is by far the best website to use. It has different paths based on different frameworks and practice tests to show your improvement over time. Some of the paths that I have has used are: Angular, Core Spring, and Java. You can get a 10 day free trial by clicking the link here . I highly recommend that you have an idea of what programming language you want to learn/improve on before getting the trial and get the most out of it.

Save yourself a future headache and learn the command line

For a software developer, knowing how to navigate through the Terminal command line is very, very important. Starting out, you may think that it's not that big of a deal. But if you ignore this crucial "soft" skill for developers, it will come back to haunt you at the worst time. To give you an example, a friend of mine who was doing freelance work was in the process of migrating a software product from his local machine to a remote server. His client told him that he would have to do the entire migration through SSH (Secure shell). For those that don't know, SSH is a safe way to remote into another computer from your local machine and make changes to the remote machine. But here's the kicker, SSH requires you to access the remote machine from a terminal and use commands from the terminal. Having minimal experience with the command line, my friend struggled to do even the simplest of commands such as copying moving files, running and testing his changes, and keepi

Git is my version control system of choice

Learning a version control system is a crucial part of any aspiring software developer. Version control systems are used by any serious software development team to keep a secure history of changes made within their product. Today, I am going to talk about my personal favorite version control system, Git. Git is a free, open source, Distributed Version Control System and it is used in many major companies such as Amazon, Google, and Intel. To be honest, if I were in an interview panel for a software development position and the interviewee said that they didn't use a version control system or didn't seem to have an interest in a certain version control system either way, I would almost immediately say that we should not hire that person. Knowing a version control system is that crucial . Showing that you have used version control shows that you've worked on projects by yourself or on a collaborative team and that you are mindful of changes and keeping your code well orga

Enki, the Duolingo of programming

I want to talk about a tool that I use to reenforce programming concepts that I have learned. Enki , is the best app to use on a daily basis to embed programming syntax and concepts into your brain. And the best part is, it's free and it only takes about 10 minutes every day! Enki has mini modules to give you information about a particular topic and then give you a question to help you see if you understand how to use that knowledge. The topics that they provide include: Web Development, Python, Javascript Java, SQL, Linux, Computer Science topics, Git, and Computer Security.  My advice to get the most out of this app is to pick at most three topics at a time to try and master. The app allows you to pick what skill level you believe to be in the particular area that you have chosen and build from there. The app also allows you to switch levels at anytime so if you thought that you were an expert in Java but then feel overwhelmed about the questions thrown at you, you are abl

Checkout My GitHub Repositories

Hey everyone, Here is a link to my GitHub profile. Feel free to look at the repositories I have put on there over there and all the ones that I have forked and built upon as well. Thanks for reading this blog and good luck on your own programming journey. Comment below links to your own profile if you have a GitHub account. I and others might checkout your repositories and give yourself some exposure. Best of luck on your personal endeavors!

My Programming Playlist

Hey guys I was at work and decided to make a small playlist of some of my favorite songs to listen to while programming. Here is a link to the playlist. Hope you all enjoy and feel free to comment some of your favorite songs to listen to while you program!