Atom—High CPU Usage Fix (2017)

Today my mentor recommended that I give Atom another shot. I had previously tried Atom on my own and loved it, but it quickly started to blow up my CPU, often hitting 90%+. I had searched for a fix before, but no answers turned up. But today, that changed.

Just recently an answer to my prayers was posted here. To fix the high CPU usage problem, simply press cmd+shift+p and type ‘package’ to get to the package management screen. Search for ‘git’ and disable both git-diff and github.

Software Development Track—New Start

Today I started my Software Development Track. The first week’s goals consist of mostly material that I have covered on my own time so this will be an easy week. Because I have covered some of the material I am planning on also getting ahead on some of the upcoming material.

I have used Team Treehouse, Codecademy, and some Udemy courses on my own to learn to code. But, the program I am in uses Code School. Having fully completed the first HTML/CSS course (Front-end Foundations) I’d like to say a word or two about Code School.

From the material I have covered so far, I am very happy with Code School. Code School’s courses work similarly to Team Treehouse’s but with fewer multiple choice quizzes (which I never felt were very helpful anyways). Although, for those learning on their own I think that a combination of a few various resources is going to be the most comprehensive way to learn how to code.

If I were to start over today, I would use Team Treehouse and Code School for my building my coding foundation. From there I would fill in the gaps with Udemy courses that target more specifically what I want to learn. The reason I suggest to use both Team Treehouse and Code School is because they both explain in depth different things. Where one may not explain why you might want to code something in a particular way, the other might give you those reasons. Having both resources has given me an opportunity to learn to the material once and then fill in the gaps again after with the other. Both teach the same material, but the overlap is incredibly helpful.

Software Development Bootcamp Goals

In less than a week I will be starting my online software development boot camp, and I am nothing short of ecstatic. I am excited to learn about the tools of the industry, and I can’t wait to make use of them in my own designs.

Ultimately, I believe I want to get a job in the San Francisco bay area. But who knows if that will change. A software development job itself is the goal, at least for now. Once I secure a job I’d like to pay off some debt and save up some money to pursue some of my own entrepreneurial endeavors. I’m always thinking of new ideas, games, businesses that I want to explore. So maybe somewhere down the line once I’ve built up enough passive income to move somewhere a little slower paced, I will. That’s my dream, to build up passive income and my own brand/businesses so that I can ‘work’ doing what I love most, thinking, creating, and playing.

This boot camp will be laying down the foundation of my ‘formal’ software development training. In a year I will have the skills to enter the workforce as a honest and true developer. I honestly cannot wait to develop the skills to create all of the ideas I have in my head. Pen and paper only help so much, but I want to be able to code and program the games, apps, and business that I think about day in and day out. Words can barely describe what these tools mean to me.

How to start learning software development

Whether you are still in high school, getting your second degree, work part time, or are already retired you are probably reading this because you want to start teaching yourself how to program. But there is just one problem, where do you start?

What follows is what has worked for me over the past two weeks and I definitely recommend taking a similar course of action. Assuming you know your long term goals (where you want to be) and how much time per day you are willing to put in (how hard you want to work), we can start talking about how to get started. There are tons of great resources online, some paid and some free. Because there are so many resources available to us these days it can be hard to trim down all the options so here are a few of my favorites in no particular order:

Team Treehouse ($-$$$)

I love Team Treehouse. They offer multiple different tracks that cover a multitude of languages and topics. They also offer Techdegrees. I went with the $50/month option here and it has been completely worth it. The courses are well made, taught well, and offer tons of hands-on practice. You’re tested in multiple different ways so you know that you are nailing down each subject before moving on. If you have the money, I would definitely recommend Team Treehouse.

Codecademy ($)

I started with Codecademy’s $20/month plan and hit the ground running because it was set up in a way that allowed me to get through the material quickly while also learning A LOT along the way. My favorite bit was the plethora of projects that were available to practice working on in the HTML/CSS/Javascript courses. Unfortunately, around the time I was getting through some of their courses they were also taking some down to replace with newer, ‘better’ versions. I didn’t like the new courses they were putting up though because they had fewer projects that I could follow along on my own terms, in order to learn. The new courses focused less on that, and I think that was a mistake on the part of the company. Not only that, but they were pushing forward courses that were not completed or were fairly buggy (not a good sign when learning code from them). So overall, I would check out their free option, if you like what they have (and maybe they’ve cleaned up a bit) then their paid option just might work for you.

Udemy ($-$$$)

Udemy, Udemy, Udemy. YES! What a great resource! There are tons of great courses on Udemy that can quickly get you up to speed on almost anything. Complete beginner? No problem! Just need to brush up on some key skills? No problem! Udemy offers tons of courses from tons of different professionals. It is just a matter of wading through the courses to find what will best serve your needs. Don’t be afraid of the high prices though, they frequently have sales where many courses can be bought for $10/ea!

Freecodecamp ( – )

I haven’t personally used Freecodecamp much, but because of all the good that I have heard about it from others, I figured it at least deserves to be on the list. It is free after all, so if that is what you are looking for, look no further! Check it out!

Youtube ( – )

Youtube is one of the greatest resources for beginner’s looking to begin coding. There are tons of free tutorials that range from crash courses to semester-long programs at universities. A little ‘search-fu’ and you will likely find someone to teach you what you want to learn.

Stack Overflow ( – )

Anytime you run into a problem while coding, where do you go? Google? When that doesn’t work, head over to Stack Overflow. While your Google skills may be important, be sure that Stack Overflow becomes one of your regular resources. You’ll thank me later.

W3 Schools ( – )

Lastly, W3 schools offers great tutorials and resources for learning HTML/CSS/Javascript. They deserve the shoutout!


If you there are any other resources that you think belong on this list, let me know! Email me at matt@livefullstack.com or tweet at me @LiveFullStack

My Why

I wanted to answer the question of why I created this blog more fully. Here is a quick quote from my first blog post:

Why? Because I wanted to hear more about other people’s journeys who have done what I am about to do, but there aren’t a ton online. So I’m creating a resource for those who may be thinking about also taking this route towards starting a career as a software developer. I want to create a record of my journey. Along the way, I will learn a bit about myself, and hopefully, anyone who reads will have a chance to learn a bit about me too. My story includes years of college, but at this point, no graduation. And as someone who is lucky enough to have parents who are willing to support me (financially and otherwise) to pursue my passion, I want to show others what this journey looks like, from college drop out to software developer.

To understand how I ended up here, you first need to understand where I’ve been. After high school, I took a short bit of time off to work full-time. I grew up in the days of Myspace when decorating your page with HTML was cool. And I definitely loved to do so. So now that I am out of high school, I decided web design would be a fun major, so off I went to an expensive, for-profit college that I later left for two reasons. One was that they treated some of the students very poorly, and the other was that I found I was much more interested in the coding and programming side of the field rather than the design itself.

Next, I moved to a community college to work on my general education as I decided on the perfect major for me. Fast forward past a short stint at a Bible college (which is a whole other story), and I find myself at San Francisco State University in the Computer Science program. Now, throughout the years I’ve taught myself little by little how to code small things, so having transferred into the program, I knew a bit already. Unfortunately, SFSU did not like that my transferred CS classes were taught in C++ rather than Java, so they forced me to retake some of the classes which was incredibly frustrating.

The past year has been a rough one for me, all while attending SFSU. My family moved to Oregon, I was in a car crash, and I have been dealing with bouts of depression. But luckily, I have a very supportive family, girlfriend, and group of friends. But that leaves the story right where I am in the present.

I’m tired of school, but I love learning. I don’t like the environment that universities are teaching computer science in or the way they present a lot of the material. So that’s why I’ve decided to attend a part-time online coding boot camp. My goal is to be working a full-time position in software development by August 2018. So this blog will allow those of you who are interested in my story to follow along. Whether you just love me (hi mom!), are interested in programming, or are thinking about dropping out of college to pursue a software development job, please join me.

My plan is to post short insights that I get as I self-teach myself and move on with the boot camp. I’ll be posting about my struggles and hardships, and also about my projects. I’m sure I’ll likely do a lot of tutorials and reviews of studying materials and such. Beyond that, I’ll be posting little tidbits about all facets of life pertaining to the modern software developer.


For now, I am using a mixture of Team Treehouse and Udemy courses to prepare myself to begin the boot camp in late July or early August. I am currently learning the MEAN stack.

[Project]

Check out my latest coding project. It is a simple to-do list web app with a few features. The text input for new tasks can be toggled using the top right icon, tasks can be added, crossed off, and removed at the user’s discretion. Written using HTML/CSS/JS.

Font Awesome offers some amazing icons that I was incredibly happy to use. And Google Fonts offers an easily accessible, and hefty, supply of fonts for everyone. I’m ecstatic to have found such amazing resources. Although I did run into some problems when using the trash icon. I was continuing to get two printed to the screen when appending the ul with li‘s. The only way I was able to fix it was to take out the two or three lines that appended and rewrote what I thought was the exact same code. Except for this time, no bug! Works for me!

[jQuery] keypress vs keydown vs keyup SIMPLIFIED

So you’re learning jQuery and you just got to events. Congrats! But now this whole keypress, keydown, keyup thing is throwing you off. Don’t worry, I can help you separate those ideas.
Let’s first start with keydown and keyup since they are easier. They are pretty self-explanatory. When a key is pressed DOWN, the keydown event is sent to an element. If the key is kept down, that event is sent to the element each time the character is repeated. This means if you have a text box and you hold down the ‘a’ key for two seconds and five a’s appear, a keydown event would have been sent 5 times if it had been listening properly to that textbox. Keyup works much in the same way except the keyup event is only sent when a key is let go of.
Now the tricky part, on to the keypress event. The keypress event is sent to an element when a key pressed. For example, I can add a listener for the key ‘A’ rather than ‘a’. The keypress allows the user to listen for other characters that may be modified using other keys such as the shift key. Take a look at this html/js snippet: code snippet