levlaz

Coursera Rails Week 1 Notes

2016-08-04 Tags: rails mooc

I wrote earlier about how I am taking a series on Rails Development with Coursera. Below are some of my notes from the course:

Installing Rails on OS X

I had RVM installed in the past, but my experience with CircleCI, conversations with eric, and the instructions in the course told me to use something else. So I blew away RVM and replaced it with rbenv. When it came time to install rails, I was getting an error around nokogiri which is strikingly similar to a lot of the issues that we see when updating OS X images. I am not 100% sure what the root cause of this error is, but the fix is to run the following command xcode-select --install this will magically fix everything and rails will install. Apparently this has something to do with when you install newer versions of Xcode, some underlying libraries become sad and running that command fixes it. Yay Apple.

Handy Bash Profile

During the installation videos the instructor shows how to work with bash profile. I stole a couple things from his profile that he did not cover that would have saved me hours over the course of my life so far.

  1. Make the prompt show less info My current bash prompt is super long because my laptop name is Levs-MacBook-Pro-2:, if you set the following variable it will just show you your username:

    # Change the way Prompt Shows Up
    export PS1="\n[\u \W]$ "
    
  2. Make aliases for ls and ls -al These aliases are super handy. The first one shows you which files are directories, symbolic links, or regular files in color. The second one allows you to list all the details about files by simply typing ll instead of ls -al'.

    # Aliases
    alias ls='ls -G'
    alias ll='ls -al'
    

These were some useful tidbits from a completely unrelated lesson.

Sublime Text Tips and Tricks

Like many MOOCs these days, this course recommends using Sublime Text. I don't disagree, its a great editor. I bought a license two years ago but have not used it in quite some time. I like it because its super lightweight, has a relatively small learning curve, and is fast. This is especially evident when working with large text files that would cause the latest stream of Electron based editors (like Atom, VS Code, Light Table) to beachball or crash. I decided to give it another shot and follow along in this course. I learned a couple of things I did not know.

  1. If you double click on a search result it will take you to the file, holy crap that would have saved me a ton of time in the past.
  2. Go to Anything with Command + P, I have heard about this but never used it. Wow. Just Wow.

I even picked up Mastering Sublime Text{.add-link} to learn about a lot of the features that I probably do not yet know about. Update: I wrote a blog post with my Notes on Mastering Sublime Text. Still a highly recommended book.

Git

This course had a great overview of Git including a nice historical overview and differences between git (Distributed System) and Centralized Systems like CVS and Subversion. This course also allowed me to discover that Pro Git is available for free as an ebook. This is an excellent resource and I am so grateful that Scott Chacon and Ben Straub released the eBook under a CC license.

GitHub

My mind has been blown. If you go to any GitHub repo and type in "T" it starts a fuzzy search of that repo. I have been using GitHub for three years and did not know about this feature. This just goes to show you, that even if you are an "expert" at something, it can be really valuable to step back into the shoes of a beginner. I did not expect to learn much from this first module, but I was sorely mistaken.