After Lighthouse Labs…

I survived to tell the tale!

In my last post, there were two weeks left to go in the bootcamp. The final two weeks were super jam packed. In week 7 we had the employer speed dating event, where interested employers came by and talked to each student for 7 minutes.I went for a few interviews in the week following employer speed dating and accepted an offer in week 8 of Lighthouse. Unbelievable!

My advice to Lighthouse students would be to think about what can make you stand out from other students, whether it’s using previous work experience in a related field, or building a small portfolio of work. The simple pages I built before Lighthouse really helped show my passion for programming and ability to learn on my own.

So what am I doing now?

I’ve been working at Edvisor.io for 2 months now as a Junior Backend Developer. I work with node.js, loopback, and mysql. It has been fantastic! Working in backend feels a bit like solving math problems all day. (Which I like!) My team is super awesome and the past two months have really flown by.

The first day of work was pretty nerve-wrecking. I think I spent all day just trying to set up my machine! The first two weeks I remember going from error to error, then going home and trying to solve the problem. The next morning, I would say something along the lines of “I fixed THAT problem, but now I have a new one.” I think week 3 was when I started feeling more comfortable and productive.

Now I feel much more confident tackling new tasks in a sprint and feel like I am contributing to the team. There’s still so much to learn but I’m so grateful to everyone at Lighthouse Labs and Edvisor for believing in me and giving me this opportunity.

So glad that after contemplating Lighthouse Labs for more than half a year, I finally went for it!

Lighthouse Labs – Final 2 weeks!

I can’t believe tomorrow will be Week 7. Only two more weeks until I am done. It’s a cliche, but time really just flies here. We wrapped up Week 6 with JavaScript and jQuery. I built a card betting game with jQuery and CSS animations.
Screen Shot 2015-12-06 at 11.12.46 PM
It was fun using CSS transform to fan out the cards and animate them to move upon hover and click. The answer card flips to reveal the answer once you place your bet.

We also had our last assessment on Friday, which covered CSS animations, JavaScript and jQuery. We started building RESTful apis and used ajax to request data. When I was working purely on front end, I would see the request urls for forms, but never really understood what was happening. The backend guys would set up the forms, and I would style the forms. It’s great to start to understand both sides and know how server requests are used to retrieve data, and how to use JavaScript to take that data and show it on the page.

Tomorrow we start working with node.js!

Lighthouse W3D3 – #42

Today I learned about some of ActiveRecord’s FinderMethods. I was playing around with my database finding student records. I used first, then tried second, and third… they all worked! I was curious so I tried more, unfortunately there’s no sixth method to find the sixth record. It’s important to note that first does not mean find the record with id of “1”, it just means the first record in the database.

Student.first is the same as SELECT * FROM students ORDER BY students.id LIMIT 1.

If you look at the documentation, you’ll see that there’s a forty_two method, to retrieve the forty second record in the database. Yes, it’s a reference to the Hitchhiker’s Guide to the Galaxy!!! 42, or  “The Answer to the Ultimate Question of Life, the Universe, and Everything”.

And carry a towel.
And carry a towel.

If you want to read the commits and drama:

Part 1: Where DHH adds helper methods from second to tenth. (Check out the comments below!)

Part 2: Where DHH responds to the comments by removing the methods sixth to tenth, and adding forty_two.

Niceeee.

Learn SQL the Hard Way – Exercise 3

For Exercise 3 Inserting Data, we insert data into the tables we created in the previous exercise.

Inserting 3 rows of data
Inserting 3 rows of data

We insert a row of data into two of the tables. First, we insert Zed Shaw into the person table. He has an id of 0, first_name of Zed, last_name of Shaw, and age of 37. We then insert a Unicorn named Fluffy into the pet table. The boolean value of false is put as 0 for whether Fluffy is dead. Finally, we insert a Robot named Gigantor into the pet table. Poor Gigantor is dead as indicated by the 1 for the “dead” column.
The third data insert does not specify the columns and relies on the implicit order of the columns for inserting the data. This is dangerous, and should be avoided. Why? Because you don’t know which column your statement is accessing, and some databases have unreliable ordering for the columns.
We use sqlite3 and shell redirection “sqlite3 ex3.db < ex2.sql” to create a new database ex3.db. Sqlite 3 is started with a new or existing database, in this case a new one, which gets SQL statements from ex2.sql and is modified accordingly.
Then we, use ex3.sql to insert data into the ex3.db we just created. We use the command -echo so sqlite3 prints out what it is doing.
Extra Credit

  • Insert yourself and your pets (or imaginary pets like I have).
    I added myself a pet dragon!
  • If you changed the database in the last exercise to not have the person_pet table then make a new database with that schema, and insert the same information into it.
    I did not remove the person_pet table.
  • Go back to the list of data types and take notes on what format you need for the different types. For example, how many ways can you write TEXT data.
    The list of datatypes are here. There are 8 typenames that would result in a TEXT affinity!