Sunday, December 21, 2014

Taking a Different Direction with Coding

Because of the holidays- I have not the time to code as much as I'd like. But now I'm busy as ever!

First things first. For those who don't know, Food for Thought is my main squeeze.  And so,  I have a keen interest in customizing it's theme and design for a while to differentiate my style along with the content. I am going to spend less time with Ruby on Rails, brush up on my HTML and CSS, and possibly also begin PHP.

(If you don't care- skip on to here (don't worry, my feelings are only mildly hurt)).

This is why.

To change my website's theme to look the way I'd like it to, I need CSS.

For CSS, I'll use CodeAcademy (because I've used Teamtreehouse and W3School to learn HTML and CSS in the past and I want to see how differences in teaching style might affect the way I absorb information).

I've also needed plugins specifically for my website and I'm too distrustful and impatient to look through dozens of different plugins when it's likely that I'll want to tinker with them regardless of choice.

There's nothing else to say on the topic, but I'll just say one more thing.

I wouldn't recommend to anyone that they try to learn two programming languages simultaneously, especially if they are beginners like me. Especially especially if they are also juggling a third project (or job, school, etc). It wasn't an easy decision to make and I don't know if I'll stick with it but for now, I'm in it to win it- Game on.

My Progress with One Month Rails
For everyone else who doesn't care, here's been my progress with One Month!

I'm on Day (13/30) of One Month, so far we've (and by we I mean I) been introduced to Bootstrap, which is a program that basically makes your websites look real pretty real fast. It was made by the founders ofTwitter and interestingly, many popular websites you know use it (like Twitter!).
  • I've learned how to easily integrate Bootstrap with my Rails project. Adding different components from Bootstrap to my project according to their functions, and I learned the basics of customizing these components.
  • I've learned how to create Navigation bars (WOOOHOOO).

There's not much to say because mainly I've been (in the little amount of time I had to work this week) familiarizing myself with Bootstrap's different components.

If you're a web developer, there's a high probability that bootstrap be a good friend of yours so this is pretty significant I think. 

Cons of Bootstrap- as many people suggest, since it's so popular among website builders, you'll have a difficult time differentiating your website's design with others. This may not be a bad thing as some people noticed, because then it allows you to compare a website based on its utility rather than its sexy appeal. 

Eg: One Month Rails has a great website not because it's beautifully designed but because it's very good for teaching ruby on rails.

That's all I have to say, deuces folks. 

Monday, December 15, 2014

Initial Impression of One Month Rails (12/15/14)

I've had One Month Rails for 2 days and I'm on Day (5/30).

  • One Month Rails is run by a small-knit team of less than 10 people I believe. 
  • The course I'm learning is taught by the CEO of the company -- Mattan Griffel, an active member of the Quora community (which means he's often talking to users and potential users).
  • They were slow to respond to a problem I had signing up (they were rejecting my debit card!) but after a few hours, the problem resolved itself.
  • To their credit, they are very welcoming and seem like very personable people to talk to.  The executives themselves take the proper measures needed to make their customers feel comfortable approaching them with a problem and making them feel as if they are now part of a small community. That's a plus to me when shitty customer service is the standard in many industries
  • The first few videos show you a very easy way to install all of the programs you'll ever need to code with Rails. Honestly, I appreciated their approach to this since I think I would've needed to spend hours if I was left to figure it out myself.
  • The next few videos show you the bare basics of using the Command Line and explaining why it'll be relevant to your project. They give you extra resources if you want to learn more on whatever topic they are talking about if you're interested. They also set you up with Github, also a daunting process made easy.
Right now I feel like a spectator following along as we are setting everything up, but I have a feeling that'll change as we dive into the actual learning. 

Finally, the course assumes you have no prior knowledge going into the subject, the instructor's voice is easy to listen to, he goes at a good pace, and the video allows you to speed up or slow down to your preference. 

Saturday, December 13, 2014

Starting Ruby on Rails (And a Free 25% Off Coupon!)

I am going to take a break from the Ruby courses on Team Treehouse so I can start with Ruby on Rails.

I made this decision long ago. Though multiple people say you can jump right into Ruby on Rails without any prior Ruby experience, I wanted to at least familiarize myself with the syntax so I can try to understand what is I'm learning and not just spit out what the course instructor tells me to do.

Now, if you're wondering what the difference between Ruby and Ruby on Rails is- I got you covered. 

Check out this link: What is Ruby on Rails

Or as Michael Jerome phrased it:

"The Rails framework is some pre-written code for common tasks (e.g. saving to a database) to save you reinventing the wheel when programming in Ruby." - 

Long story short, Ruby is the programming language (comparable to PHP or C++) and Rails is the web application framework that's built off of Ruby.

One more thing, I'm using One Month Rails to get an introduction to Rails (I've talked about why in my last post) and the course itself costs $99.

Well I have a 25% discount for this course so if anybody here wants to grab it, please just reach out to me and I'll be happy to share.

Don't be shy- you don't get what you don't ask for in life.

Wednesday, December 10, 2014

1st Week of Progress: 12/10/14

Seven days in and unlike in the gym, I can already see some real gains.

Though I did a lot of window shopping for what I'm going to be using in the following weeks, I only used teamtreehouse this week to get a solid introduction to Ruby.

After a week of tinkering, I am able to create an interactive questionnaire that can do a bunch of random things that have no practical application. What I'd like to do this week is create a Ruby program that can tell you how much money you'll spend on gas driving from A to B. Taking car model, miles driven, $/gal, under consideration.

What I've Used
  • Treehouse: Ruby Basics
  • Treehouse: Ruby Operators and Control Structures 
  • Treehouse: Ruby Collections

This week I've worked at a slower pace than I would've liked. Only four days were spent coding, spending anywhere from 2-5hrs each day.

I think once I feel I have a good enough handle on Ruby, I'm going to try the One Month Rails course for $99.

I never thought I'd pay for material when free learning material is ubiquitous on the web. The appeal this course offers is that they'll provide a guided path teaching you only the essentials that you would need to prototype an idea.
This is for people who don't have the time to learn anything unnecessary and are more interested in starting their own projects than learning code for the sake of finding a job. 

Some things I've learned this Week

  • Stack Overflow is a tremendous resource for troubleshooting problems. If somebody hasn't already asked your question, you will easily get an answer in minutes.
  • Quora is an amazing resource for motivation and interesting insights from professionals. This probably is true for more than just learning to code. The community is awesome.

Some Interesting Links I found this Week
  • Build Products. A great, quick article by a woman who took 2 years off from work to teach herself to code. She has a lot of great insights- I'd say a must read for anyone teaching themselves to code, especially if you're out of college. 

A very promising endeavor, there's much to look forward to.

As always, stay tuned.

Friday, December 5, 2014

Working Towards Habits, Not Goals

Whenever you start a mission, it is a good idea to have some objectives that you'd like to accomplish. Setting goals provides you an endpoint, a place where you can say "I did it!" when you reach it. Goals make you more focused because whenever presented with something,  you can ask will this something help me achieve my goal? If the answer is no, then you can discard it.

But the issue with goals is that ambitious people tend to set them too high and are disappointed when they don't think they're making progress at a pace they'd like. Then, when you set multiple interval goals, you get a false sense of accomplishment when you reach them, which seduces you into relaxing, taking a breather.

That is why I am directing my attention to building habits. For the first month, until January 5th (when I go back to school), I want to be spending 14-20hrs a week programming. 

With any skill, there is a clear correlation between time spent practicing and skill. I have never heard a story of somebody who spent 5 or 10 years of their life programming and have yet to "get it". 

Coding is a knack where the only way you'll learn is by putting the time in and that's why my goal is to put in the time on a consistent basis.

[Hat Tip to Roshan Choxi for his insight]

Thursday, December 4, 2014

Day 1 for the Internet. Day 1 for Marko.

Jeff Bezos had famously said that this is Day 1 for the internet, referring to the fact that the internet is still in its infancy stage.

I'd like to say the same about my coding skills! Today, I say, is day 1 to code.

I, Marko Calvo-Cruz, am 19 years old and though it may or may not be too late to become a CS Major (if I wanted to), it is not too late to learn to program (if I want to, and I do). (But jokes aside it's really never too late- before starting this endeavor, I read stories of 30 year olds teaching themselves to program and finding jobs at Facebook and Google. All it takes is some motivation, K?)

With this blog, I want to document my progress starting as a blank sheet of paper waiting to be colored and doodled on by lecture courses, projects, and books.

The language I'll be starting with is Ruby. Which means the projects I'll be doing will be more web-development oriented rather than software engineering.

After reading a lot of Quora articles on how to get started with programming, I decided that to get my toes wet, I will start with TeamTreeHouse courses, specifically the first I'll be doing is the "Basics of Ruby" which will probably have finished by the time you read this.

I chose Teamtreehouse for its simplicity and because the courses they offer are extremely interactive, making it an active learning process rather than passive.

Also, they offer a 14 day free trial which is amazing- and student discounts thereafter.

The following posts I post on this site will be in a concise format without the fluff, stating my progress, observations I've had, and any other interesting remarks. I'll also share all of the resources I'm using here.

You can expect 1-2 updates per week.

That's all. I'm really looking forward to this.

OH, before I forget- here are some useful links to start off.

I found that Quora is a great resource for someone that wants to learn how to code, the community is vibrant and there's a 95% chance that somebody already asked whatever question you have and found an answer. I recommend checking it out.

Just a reminder that this is not my main blog, to go to my main blog, please visit this link.