Thursday, December 24, 2015

Squeeze every minute out of those 24 hours

Life is short, and days are shorter.

That's a good one. I may have come up with a proverb there. Maybe that will show up on one of those calendars with a daily motivational quote. Until then, how about I stop wasting time.

Currently I work full time, I have a family, I have certain social obligations, I am learning to code, and I need to eat and sleep daily. The thing that allows me to do all this is something I've never really had a good grasp on in the past: time management. It is quite simple when you put pen to paper. Just simply write out what you need to do. Next, prioritize those things. Finally, figure out an amount of time that is either required or that you hope to give to each thing.

I literally had to break everything down. I had to figure out how much of my time my job REALLY takes up. It isn't as simple as 40 hours a week. There is time spent getting ready, commuting, and so on. So when I applied this level of detail to everything on my list, I came up with a very clear plan. I also had to decide which of the things were not very important at this time in my life.

Now, my days have structure. I have a very good idea of where my time is being spent. Think of it like a budget, only the resource I am budgeting for is time instead of money. On a good day, I am about 90% in line with what I planned. But that's not all, as I've also definitively set priorities and distinguished the needs from the wants.

This is just one of the many changes I have made in my life these past few months. Ever since I decided that I wanted to learn how to code, each day has been a test. Each day that ends with a few more lines logged, is yet another day of proving to my self that I can and will do this. And yes, I had to actually prove it to myself. Any time I have had a new idea or found a new interest, it would just be a matter of time before I was on to the next. But not this time. This time I am for real.

One day I may be able to write well enough to get my thoughts and experiences down in a logical and entertaining format. One day I may be able to meditate for more than 45 seconds. One day I may even be able to run a full marathon. But one thing for sure is that one day I will be a paid software developer.

Thursday, November 19, 2015

Lift-off the Dock*

It's been too long. I am so bad at keeping up with this. So much has happened since the last post. I don't even know where to begin. But I can type almost as fast as I can think now, so I'm just gonna go with it. Stream of consciousness blogging. Is that a thing?

So, I have built a website. Not just one from The Odin Project. I wanted to put my newfound skills to real world use. I posted on Facebook that I was willing to build a website for a lucky someone. I believe I wrote about this in the last blog.

Anyway, I built the site: www.coilbutter.com. This was a fun project because I really like the e-liquid they make, so helping them get their name out there was fulfilling in itself, let alone the fact that I actually made the website. I used Word Press to make the site, which helped out a lot. It still took every bit of my limited knowledge to set up and customize the site. Man, I am only 4 months removed from not knowing a lick of HTML and CSS.

The great thing about learning programming is the instant gratification it gives me: I have a problem, I come up with a solution, I make it, problem solved. There are many missteps in between, but the end result is that a problem was solved. And the crazy part is that I haven't even got to the real programming yet. I just made a website. Not software or something that actually does anything.

But that all changed tonight. I have had this idea for a new way to shop for a certain product (sorry about the ambiguity there) and I am now in the process making it happen. I am lucky that I have someone to guide me along in this process, and I definitely recommend that anyone trying to learn a new skill find a mentor. Tonight we set up a virtual machine through Docker. It basically sets up a mini internet so that I can play around with the project I am building in real time. I wish I understood how it worked, and if you are curious, google it.

That brings me to something that has been on my mind all night. So many people have come before me and done some truly awesome things to make my life easier. I mean, aside from the fact that I don't have to hunt for my food or worry about dying from the water I drink. But these tools that are so freely available to me are remarkable. I hope that one day I can contribute something to this world that leaves a mark. It doesn't have to make me rich- it would be enough if it just made someone else's life easier.

I am sure there is plenty more that can be written to fill the gap between this post and the last, but for now, this will have to do.

Sunday, October 11, 2015

Finding a purpose

I have always learned best by doing. In elementary school they told me I am a kinesthetic learner. Turns out, that is a highly recommended way to learn to code: Do, break, fix, repeat! Match made in heaven.

Right now my schooling has me working on HTML, CSS, and Javascript. Unfortunately, I am fresh out of ideas for websites to build. So I posted on Facebook that I am willing to do some work for someone in need, and I ended up with a couple of projects to work on. This is exciting! Now I can use my time and energy on the code instead of spending it thinking of an idea or my own project.

While HTML, CSS, and Javascript are not languages I plan on mastering, they are an integral part of anything built online. What good is a piece of software nowadays if you don't have a website up to show it off to the world? So I am doing what needs to be done. The Odin Project -the online school I am using to learn code, and henceforth referred to as TOP- wants me to learn these languages, so I will learn them. Simple as that.

One thing I definitely want to point out is that there is no substitute for real world practice. I have completed every tutorial and read every word of every page that TOP has lead me toward, yet it took me almost 8 hours to set up my website on a server and to get it up and running. Nothing I previously learned had prepared me for that. I was constantly running into issues and had to search for answers. I am told this is also how a lot of work gets done by actual developers.

Either way, the payoff was well worth it, as usual. My website is up and everything is coming along smoothly. I am still enjoying every second, and I am learning so many things every day. This is something I can see myself doing for a very long time.

When I started out a few months ago, I honestly believed that it was too late. I thought I was too old, too far behind everyone else, and just had too much going on to dedicate the time to this. Now I realize what a terrible way that is to look at it. It's a terrible way to look at anything. I am a human, and that means I can do anything I set my mind to. Wasn't it the Egyptians who built those big buildings in the desert without machines? Yeah, I think I can figure this thing out. I just have to keep at it.

Thursday, September 17, 2015

Still Going Strong

I haven't posted in a while, which would usually mean that I have completely given up on whatever I was writing about. Nothing could be further from the truth!

Ever since I received that dreaded email from App Academy informing me that I did not get accepted into their program, I have been hard at work. I will admit that being rejected was a huge blow to the ego, however, I learned a few things about myself since then.

It turns out that I thoroughly enjoy programming. I actually love it. I love it so much that instead of drowning in my sorrows for weeks on end, I immediately sought out another learning tool to help me get to where I want to be. There are so many resources for aspiring developers, and each one has its own set of pros and cons.

For me, App Academy seemed like the best option given that I had little money to spend, and I wanted to be job ready as soon as possible. The thinking was that any sacrifices I would have to make during the bootcamp would be worth it in the end when I got a high paying developer job. This included a few assumptions of course. I would first have to actually finish the bootcamp. Then I would actually need to get a job, and quickly. Looking back on it now, I am relieved that I didn't get in.

So I did some research: first looking at other bootcamps. I checked out some online schools as well as open-source courses. Given my current situation in life, the best option for me ended up being a free, at-your-own-pace, online curriculum. It's call The Odin Project. You can get all the info you need about it at theodinproject.com.

I have been having a blast lately learning HTML and CSS, with Javascript coming up right around the corner. I must say that the tough application process for App Academy jump started my schooling, and I do not regret it one bit. It actually may be one of the best things I could have done early on. I got very deep into Ruby and learned about a lot of tools programmers use which has made life easier.

Still, this is some very challenging stuff, and sometimes it can be frustrating, but when I get the webpage or program to finally do what I want, the payoff is more than worth it. Experience has taught me that so many things in life are like that.

I plan on posting here once a week at the very minimum, so stay tuned! Whatever you are doing in life, do it with passion, or don't do it at all. I love my life,  and I am excited to wake up every day to see what is coming next.

Until next time...

Saturday, August 15, 2015

Rejected, but not Defeated

I did not get accepted to App Academy.  After a month of long nights, learning concepts that made my head feel like it was going to explode, and constant trial and error, it would appear as if I am walking away empty handed.  Turns out that is not the case at all!

This past month was amazing.  I learned a lot about what it takes to become a developer.  What's more, I learned a lot about myself.  I am going to be a developer.  Few things have been this clear to me in my lifetime.  The constant challenges, with solutions to be found at the finish line.  I love it.

Applying to App Academy jumpstarted my learning, and has only made me hungrier for more.  So now I am taking a step back to find my own path, but I have been blessed with some clear direction as a result of this past month's work.

I don't know exactly what I want to specialize in, or what type of company I want to work for, but I have a strong belief that I am headed in the right direction to find all of that out.  I am still learning the basics, trying to make things work together.  My morning was spent learning how to use git and Github so that I can start a Ruby track from TestFirst.org.  It was very frustrating, especially since I was having a hard time finding the help I needed on Google.

But thats what this is: trial and error, getting failure messages when my code sucks, and figuring out how to fix it.  And I love it!

Tuesday, August 4, 2015

Reliance on others

Ruby is kicking my ass right now. And so is App Academy. After completing the first coding challenge, I was invited to take a shot at the second one.

For the past week I have been going over the prep work for the second coding challenge. A lot of the material is complicated and I am having a hard time wrapping my head around it. I haven't given up, though. I thoroughly enjoy the challenge. There have been many nights that have ended up being much longer than the 3 hours I have committed to. Its fun!

One thing that has helped me tremendously is blogs written by others who have been where I am now, which finally brings me to the intended topic of this post: Reliance on other people's experiences helps markedly.

Luckily, this is an idea that I am very familiar with. So, when I get into a jam that seems too hard to ever understand or figure out, I find someone that has been there. Not only do they typically have a good answer for me, but the fact that they can say that this same topic or problem was an issue for them is reassuring. Thanks to the internet, and especially blogging, I don't even need to personally know someone to be able to relate to them.

So when I get stuck, and I feel like the stupidest person on the planet, I simply look to the people that have come before me. Not just for answers, but for common ground as well.




Sunday, July 26, 2015

Intense week!

What a week! I don't even know where to start.

I completed the first coding challenge for App Academy. When I looked that the three problems, I was amazed. I didn't immediately know what the answers were, but I could feel myself walking through the solutions. This is something I have struggled with early on.

When it comes to writing some code to solve a problem, you have to be aware of every single step that takes place in order to solve it. I have always excelled at math and all forms of problem solving, but I did a lot of the work in my head. In fact, does anyone remember when the teacher would give credit for showing your work? That was actually a problem for me. I could just look at a question, and for the most part, end up with the answer without putting too much down on paper. Well that doesn't work for computers. The computer needs you to tell it every single step to take. I had to learn how to be conscious of my thought process. It has taken a lot of practice, but its clearly paying off.

I will definitely post updates with regards to the App Academy admissions process.

Another fun project I worked on all week was installing a version of Linux called Ubuntu on my computer. I had been doing all my work from a Windows machine, which I understand is not the preferred way to go about things. Since I can't afford to buy a Mac at the moment, I installed Ubuntu so that I can work in a very similar environment as Mac. I'll let someone else's blog explain all of that.

This ended up taking up most of my time spent on the computer for the last few days, but I can already see that it was worth the hassle.

One last thing I want to put out there is that I am very grateful to have started learning programming. My entire outlook and perspective on life has improved drastically. It has to have something to do with believing that this is the right career choice for me. I know that the road ahead is a long one, but the path has been well paved and it's definitely the one I want to be on.


Friday, July 17, 2015

So many variables!

In the short amount of time that I have been at this, I have devised seemingly hundreds of "paths" to take to become a developer. There are so many languages, text editors, frameworks, etc. that it can be overwhelming to think about. So I took some advice, and focused more on the type of programs I'd like to make: the type of work I think I'd like to end up doing. From there, I worked my way back.

I ended up deciding to take on Ruby. Since I am working on a Windows laptop (for now) I went ahead and used RailsInstaller to get everything up and running. It was quick and easy, with no hiccups whatsoever.

*Since I am new to all of this, I believe that doing as much from the command line as possible is best. However, I do not plan on working with Windows for much longer, and rather than spend a few hours trying to learn DOS and Powershell, I will do it the right way when I get that Mac

My immediate goal is to complete the application process for a web development boot camp called App Academy. I only know what I have read about them, so I won't turn this post into an advertisement. This would be the quickest, albeit absolutely toughest route to take to become a paid developer. Wednesday is my personal deadline for being fully prepared and taking the first coding challenge.

If I don't get accepted, it will not deter me one bit. I know deep down that this is what I want to do, and that with enough work I can get really really good at it. And I feel very fortunate to live in a time that all of the information I need is at my fingertips. There are countless stories of people who are self taught that now have rewarding careers as programmers. It's a beautiful thing.

It's getting late, and my brain is fried from 3 hours of studying. I have been working through Chris Pine's Learn to Program. Yes, I would definitely recommend it to a friend!

Until next time...

Tuesday, July 14, 2015

Hello World!

I know, I know: very unoriginal title. Well, it fits. I am starting this blog to record and share my experience as a 28 year old starting from scratch on a journey to learn computer programming and ultimately secure a job - a paying job - as a developer.

My life has been a series of ups and downs, twists and turns. Everything that has happened has lead me to this very post. For the first time in a very long time, I feel 100% in my bones that I have found what has eluded me for my entire adult life: a career path.

I am whats called a "Jack of all trades, master of none." I have a history of diving head first into something, only to get tired of it, or realize I can't be the best in the world at it, and quit. I have been doing this since as far back as I can remember,

So, for the past few weeks, I have been looking into what it takes to become a computer programmer. It honestly started from pure curiosity. Sure, I know some people in the field, and I understand the money can be great, but what got me looking into it was an article I read online. I don't even remember the name of the article. I read a lot. My head is full of useless information.

I followed links from the article on down the rabbit hole, and next thing I knew I was signing up for an MIT OCW Intro to Computer Science class. After 2 lectures, I was in love. And now, almost a month later, I am still in love.

So, this is my journey to become a developer:  Starting from scratch.