NavBar

Thursday, December 31, 2015

2015: my year of coding in review.

Wow, what a year.  

I started over this year.  And... it's really, really hard to start over.  It's hard because it kinda means throwing away what you are comfortable with.  But that's exactly what I did at the beginning of this year.  I walked away from 7 years of working as a scientist in pharmaceuticals and hoped that somehow I would reboot myself as a web developer by the end of year.

Here's a big list of stuff I did this year:

  • I got a coding internship.
  • I commuted 3 hours every day on the train.
  • I read a lot of coding books.
  • I spent my weekends doing online courses on treehouse & codecademy.
  • I got a full-time coding job.
  • I read Sandi Metz's Practical Object-Oriented Design in Ruby twice.
  • I got some new titles: full-stack developer | Ruby on Rails dev | coder | web developer.
  • I coached at a RailsGirls weekend workshop.
  • I got a lot better at Ruby on Rails.
  • didn't learn as much Dutch as I hoped to. :-/
  • I went to Burning Man.
  • I bought a place in Amsterdam and got rid of that crappy long train commute.
  • I learned some jQuery, AngularJS, Polymer & ReactJS.
  • I hosted an all-day talk/workshop/training for RailsGirls_NL.  First time I've done anything like that before.  This was one of the highlights of my year.  I met cool people and got to talk about coding... total win/win situation for me.
  • I get to be creative in how I build stuff and solve problems.  I feel that my input, contributions, and ideas are valued.
  • I don't have anxiety attacks as often.
  • I enjoy going to work now.
  • I feel I am the most in control of my career that I've ever been.

This time last year, I really had no idea what the hell I was doing. I had just started following online Rails tutorials and built my first Rails app by following step-by-step instructions and not really knowing what exactly the code meant.  I read some blogs from people that I done this before me, and I was trying to kinda follow what they did.  But, I didn't know anyone that had taught themselves how to code while being in a foreign country.  I tried not to worry about that initially (there's always remote work, right?) and hoped for the best.

But, somehow, I'm ending my year as a gainfully employed developer in an amazing city with a great tech scene.  It wasn't magic, it wasn't talent, and it certainly wasn't easy... it took a ridiculous amount of work and frustration to get here.  And I absolutely believe that anyone else can do that exact same thing if they desire to.

Sunday, December 13, 2015

I hosted a RailsGirls meetup and give my first coding workshop!

So excited to write about this.  One year after building my first Rails app, I organized and presented my first coding workshop.  It's a pretty amazing thing to be able to do.

I have been kinda consumed lately with worrying and preparing for giving my first coding workshop.  I hosted ~18 coders at our local RailsGirls event for all day workshop.  I introduced the concepts of MVC and styling with CSS and the Bootstrap gem as we worked on adding functionality to a Tamagotchi - virtual pet app.  It was fun, but stressful for me.  And it was only stressful because I'm not used to being the center of attention or speaking for ~5 hours straight!

That's me! Presenting to ~18 bright (mainly women) coders.
Everyone was supportive of one another, and I really felt like we created a safe, friendly, open environment for learning about coding with Ruby on Rails.  I'm really proud of that.   I would love to do another workshop in a few months.  It's just kind of exhausting and intense to plan for 5 hours of coding content + activity.  I really had no idea how long my presentation would actually take or if folks would be bored out of their minds.

I was thinking it would be great to offer another, more low-key meetup option like a "Coffee & Code" type event where a small study group could get together for a couple hours and get help on working on their own projects or online tutorials/courses from a coach or 2.  It would take the pressure off of one person to present and host an all-day event.

Overall it was a great experience and empowering to be a room filled with bright women all interested and focused on coding!  I am, of course, thankful to work for a company that supports activities like this too!

Of course I have been neglecting blogging lately, but I have still been trying to learn new stuff- I've learned some more Angular & I've been playing around with Rails API with a Angular client-side app, but this experience really trumps anything else I've been doing otherwise!

Monday, October 5, 2015

My ~10 months of coding: an update.

Wow, I can't believe I haven't post for such a long time.  Sorry about that.  Even though I haven't been posting about my progress, I've still been busy coding, reading coding books, and even attended a small conference, and also took a few weeks off for a much needed vacation.

So, to recap, I've been learning to code for ~10 months and working professionally as a Ruby on Rails developer for ~5 months.  I feel I've learn a lot and progressed a great deal over the past months in my knowledge about Ruby and Rails.  I still get stuck on things, but not as often.  I can work through most things pretty independently.  Of course, I still like to talk through things with my colleagues because sometimes you find a better way to do things by just talking about it with another coder.  One thing I need to work on for the next few months is learning beyond Ruby by trying to do more JS and other languages.

I try to always be reading a coding book during my free and commuting time.  Most recently, I read Eloquent Ruby (a good review of basic Ruby concepts!).  I started reading Design Patterns in Ruby and, somehow, I'm not challenged with just reading one coding book :-P, so I am also concurrently re-reading Sandi Metz's Practical Object Oriented Design in Ruby (POODR) on my commute.

My mornings.  7:30 am.  On the train and reading POODR.


I read POODR about 3 months ago for the first time.  I really liked it and learned some stuff, but to be honest a lot of the concepts were hard for me to get a good solid grasp of.  I have only re-read the first couple of the chapters, but I can already tell a difference on how well I am getting the concepts.  It feels really good to be more comfortable and have a better understand of object-oriented design concepts this time around.  It means I'm still learning and progressing.

I took a few weeks off at the end of August to go back to the US to go to Burning Man.  It was my second burn and was simple amazing.  I was worried it wouldn't be as moving as my first time, but luckily it was even more amazing.   I met a bunch of cool people, had meaningful conversations with strangers, wore my amazing fiber optic dress, danced all night, and generally just had a blast.  No phone, no internet, lots of dust.... ;) it was a great recharge for my spirit.  Just like my first time, it helped me refocus and re-evaluate where I am, who I am, and where I wanna go right now in my life.  It also reminds me of what/who I appreciate in my life and what is really important to me.

Riding around in the desert by the light of my dress.
A few weeks ago, Google had the first ever Polymer Summit in Amsterdam.  Polymer is a google framework for creating web components.  It's a bit out of my comfort zone since it is more front-end oriented than backend, but I spent the day learning how to use polymer and how get the most benefits out of it and the tools it provides.  I'm super excited to use it.  I've already started on a pet project to remake my personal site out of polymer.

This weekend there is another conference I will be attending - the Google DevFest in Amsterdam.  It's more oriented to mobile dev, but there is a workshop on Angular 2 that I'm really looking forward to attending.

I'm also helping out with the RailsGirls meetups.  I will be hosting the December meetup in Amsterdam.  I'm still working out ideas for it and planning for that.

And if all that doesn't keep me busy enough, I'm super close to my moving date and officially will be a resident of Amsterdam in a couple weeks!  So excited for that.  I'll trade a 1.5+ hr train commute every morning and evening for a 20 min bike ride.  

Tuesday, June 30, 2015

Finished POODR!

I finally finished Sandi Metz's Practical Object Oriented Design in Ruby this morning!  w00t!  The second half of that book was pretty hard and above my head, but I powered through.

I felt it was a good experience for me to read POODR at my level (7 months of coding experience).  I got exposed to new concepts in basic OOD and just tried to let them 'wash over me' at this point even if I had poor grasp on what they really mean.  I'm not sure if it would have been productive to attempt this book earlier than I did.  I know I've gotten something out of it this first read, but can't wait for the next time I read it.  I'm going to go ahead and put on my calendar to re-read POODR again in 2-3 months.  It will be interesting to see how more I can understand or, at least, see what starts to sink in through re-reading it? :-)

I also listened to the second part of Sandi's interview on the CodeNewbies podcast.  The parts of her interview I really enjoyed was when she spoke of only comparing yourself to yourself (and no one else) when you are judging your progress and learning.   And that maybe we all should take a little breather from being so connected and online all the time...  I believe in that too.  It's one thing that I miss about living in the US and taking camping trips to very rural areas... where there is no way to access the internet because there's no service.  It forces you to take a brief sabbatical from not only the internet but also tv and media in general.  Frankly, I've been feeling a bit mentally overdrawn lately and can't wait to finally be on a vacation in a couple months.  Being completely cut off from the internet and media for a week is one of the main reasons that I'm really looking forward to my vacation.

I've also been tackling the RubyKoans tasks.  It's kinda addicting and most of the exercises can be completed pretty quickly.  There are 282 TDD oriented tasks to complete in the program.  In the past week, I've worked on/off during my commute and I've completed 216 out of the 282.  I think they are fun, but I also like testing, and I'm comfortable with it.

Since I've been doing the RubyKoans, I'm rocking a 24 day streak on GitHub!  I know that doesn't means anything to anyone else, but it means something to me.... I'm coding something I find meaningful, even if small, everyday.

Slowly getting through the Treehouse jQuery exercises.  I find it harder to get through the treehouse stuff since it is all video-based.  It's just not as convenient to do when I have time (that is mainly, on the train, during my commute), since I would have to remember to download the videos beforehand.  I just have to accept I will be going through their lessons at a slower rate.  I will keep working through the lessons when I have time.

Next up, I'm going to tackle learning SQL.  And for reading, I'm planning on starting Eloquent Ruby.  And hopefully finding some time on the weekends to collaborate on a Rails API / ReactJS app...

Saturday, June 13, 2015

June 13: Dabbling in Elixir, more jQuery, more Ruby.

I didn't do much coding outside of work during the week.  Work has been fine, I feel like I'm progressing at a good rate, but outside of work, it was a rough week, so I couldn't put in much effort to coding during my free time.

But, I did spend late night friday/early saturday morning working through a Elixir tutorial that I had been wanting to tackle for a few weeks.  I successful went through it pretty quickly and got a fairly simple CRUD quotes app working perfectly locally.  However, I spent more time than that trying to get the deployment to Heroku (not in the tutorial) to work and failed.

To make sure it wasn't me or a dev environment issue (didn't figure it was, since it was running perfectly locally, but did it for a sanity check...), I cloned another sample elixir app and quickly set it up and deployed it easily, so I think based on the heroku error logs that there's some maybe dependencies issue going on.  It's kinda weird working with such a new framework like Phoenix, where it is so new that you git clone the framework directly onto your machine to use it.  For this specific tutorial, I was git checking out a specific branch with an older version of the framework to use... and maybe in deployment that's getting jacked.  I think maybe this is where my issue lies, but I'm not sure.  I gave up on trying to fix this project's deployment, I'd rather spend time learning something else or doing my own independent project to practice that waste more time on this one.  I'm glad there was this tutorial to do, but I wish it would have spent a lot less time on making the CSS snazzy and instead go through the deployment process.  I'd like some reassurance that this app was successfully deployed with its specific config settings even if it visually looks ugly! :-/

Today, I also finished up another segment in the Treehouse jQuery course.  I'm 1/2 through that course.  It's hard jumping back into studying something like jQuery with several days of break in between.  Takes a while to get my head back in it.

I'm still slowing reading POODR, probably 3/4 through it.  It's getting more difficult to keep up at the end.  But, I'm just trying not to get hung up on every little thing that's over my head and power through for now, since I plan to re-read it again in a few months.

I constantly feel like I need to keep pushing to learn and try out other languages like JS or elixir and not be solely vested in Ruby, since who knows if/when Ruby on Rails is going fade into the background.  But after experimenting with Elixir, it's clear that I really do love coding in Ruby.  It's just such a readable and pretty language, I'm not sure how you couldn't like it.  I'm really glad that I started out my coding adventure with Ruby and Rails.  And I'm happy it's what I work with, at least for now.

Sunday, June 7, 2015

Progress Update: Learning jQuery, Studying OO Design...

I've been spending most of my commute time reading Sandi Metz's Practical Object-Oriented Design in Ruby.  I'm 2/3 of the way through it.  Some concepts are harder than others to understand, but I'm ok with that.  I'm sure I'll be re-reading this book again in 6 months.  I've been learning about agile dev, duck typing, inheritance, etc.  I really love how Sandi presents concepts.  I've also watched some of her podcast appearances (like on Talking Code) and her RailsConf 2015 talk ("Nothing is something") and can recommend them all.  She is inspiring to me...  She reminds me of my unofficial mentor at my last job/career... an incredibly intelligent female who I could only wish to be as smart as one day!

I'm slowly moving through the Treehouse JavaScript courses.  I finished up the JS fundamental courses and moved onto the jQuery course over the weekend.  I have been having a hard time finding the time to work on these courses during the work week.

Monday, May 25, 2015

6 months into programming.

I'm 6 months into the world of ruby and coding.  I'm still chugging along, trying to improve a little every single day.  I try to write some code everyday.  If I don't do that, I'm at least reading/studying something about coding.

This weekend, I picked up two more advanced Ruby books to read: Sandi Metz's Practical Object-Oriented Design in Ruby and Eloquent Ruby.  I'm really excited to read more in-depth about OOD now that I've been programming for 6 months... I think I'm ready to dive in deeper and that I'm at a point were I will be able to process the information better than a few months ago.  I've already started reading it...

Never a moment wasted....Reading about OOD on the train.

In general, I keep myself pretty busy.  Outside of work, I'm working through the JavaScript courses on Treehouse.  I started with the absolutely most basic ones, so it's a bit of repetition of things such as loops, arrays, etc, but the way I see it, practice is practice and solidly understanding these fundamental concepts is not harmful.  I'm still studying Dutch.  I finished up my Dutch course, and I'm continuing to practice on my commute using the Duolingo app. 

I've been tackling larger tasks at work, building bigger features rather than small modifications on existing features.  I'm getting more comfortable and knowledgeable on some different gems that are used frequently like Interactors and Serializers.  It sometimes feels like I'm a weird mix of knowledge.  Some things that are new, I find easy to tackle and can handle without much guidance, I just kinda know what to do and how to write the tests as I go to guide my coding.  And other tasks, I don't really know where to begin without a good bit of coaching.  My brain feels a bit jumbled and unsorted with all the new information I'm trying to add to it in a fairly short amount of time.  I like the mix of things I get to build, and I like that I split my days between 2 different projects.

Thursday, May 14, 2015

Learning Javascript....

The social networking of coding community is an amazing part of being a software dev.  I have really enjoyed connecting with new folks through emails and twitter.  It's funny that I've also gotten in touch with 2 former colleagues that have or are in the process of making the transition from scientists to software devs!  It's been great to share tips about learning resources and experiences so far.

Since I've very interested in learning JavaScript, jQuery, Angular, etc right now, one of those colleagues who has learned JS himself suggested I check out Treehouse for their JS resources.  So I did.  I have a couple months to check it out for free, so I started today on their Javascript Basics course.  I got 1/2 through the coursework today.  It's extremely basic stuff right now... beginning syntax, using the JS console in the browser, variables, etc.  They have a lot of resources from JS to jQuery to NodeJS to AngularJS, so I'm excited to check it out and see how their material progesses.  One thing that really bugs me with a lot of the online resources is that the coding takes place in their own browser based workspace environment rather than locally.  I do not like that.  I guess it is a ok way to learn the basics, but it bugs me to not have a record of my work and progress locally or on github.

I haven't studied too much Ruby/Rails outside of work this week.  I'm pretty immersed in it during the day since it's my full-time job, so it's nice to break that up with learning JS outside of work.  I have had some moments lately where things that previously did not make a lot of sense getting clearer in my mind and I feel good about it... I can see that I'm making progress.

Saturday, May 9, 2015

Slow going progress.

I'm slowly still working on Ruby/Rails mastery and trying to add some AngularJS and jQuery to that as well.  I've only been working on Ruby/Rails at my job during the week and trying to do some online coursework on AngularJS during the weekends.  My study pace has slowed down the past few weeks because I'm also making time for running and freeletics and trying to find a flat so we can finally move to Amsterdam permanently.

I've been super encouraged over the past few weeks by other aspiring devs out there in the world!  I've gotten messages and tweets from folks that are also working their butts off to become software developers.  It's very humbling to get messages from others that say I'm an inspiration and motivator for them on their own journeys.  I appreciate the fact that others are taking time to contact me, and I love the community of coders worldwide.

I'm glad to give inspiration or advice to others out there!  I love chatting with others in similar situations.  But, I feel it's necessary to clarify my current skills levels.  I'm very much a Junior Ruby developer.  I can figure some stuff out and generally understand tasks set before me, but struggle with how exactly to write code to build out some features.  I need guidance often from my boss, an expert Rails developer.  I hunt google & stackoverflow A LOT.  I know it sounds awesome that after studying & interning for the past 5 months that a got a job as a dev (which it is), but please realize that it wasn't some magical turning point in my coding abilities when I got a job or that I'm some coding rockstar.  I am not.  I struggle everyday, just on new things than the day before.  I am painfully aware of my inadequacies.   I've been working from home for the past 2 weeks with minimal support from senior devs and that has been a struggle...No one around to talk through things I don't really understand or get guidance on problems.  That's definitely added to my frustation with my jr skill level lately.  I sometimes wonder what the hell I'm doing, but I'm hopeful that in a few months, that my skills and confidence will grow a lot more.

I really like learning another new language (jQuery & AngularJS) so far.  It's challenging to think in a new language and learn its context.  I think it is helping me solidify RoR concepts as I push my brain to think in a different language.

Saturday, May 2, 2015

Week's Progress. Starting slowly on jQuery/JS...

Another week, more coding.  I completed Codecademy's jQuery course and started their AngularJS course this week.  When I first started coding, I spent a couple days playing around and learning a little jQuery.  It was very confusing and weird looking to me back then.  Now, it seems manageable to learn and understand (eventually).  It's also nice to look at something besides Ruby.  It makes me realize that I definitely can tell I've gotten more comfortable with code since I started out.

May 1 was my first day as a full-time employee and not an intern.  Didn't feel much different. :-)  I've been working at home for the past week.  I think it's just such a cool thing that I can do that.  I've never had a career where I can do that.  (...You can't exactly do that as an analytical chemist.)  I've been taking advantage of it, replacing my morning commute with a run a couple times this week.   Studying coding full-time for the past 6 months, I didn't feel like I had the time to exercise.  I had to make one or the other a priority and I choose coding.  But now, I feel I'm in a position that I can refocus and make some time for myself to stay healthy and in shape.  So, I am trying to get back into an exercise routine.

Sunday, April 26, 2015

I finally finished Hartl's Rails Tutorial.

Very excited about the progress I've made in the past week.  Tonight, I finally finished Hartl's Rails Tutorial... all 771 pages of it!  It took me 2 months to finish it.  I found the book really helpful to clarify and work through some basic rails concepts like sessions and params.  I found concepts I learned in it, I referred back to while tackling work tasks.  I'd definitely recommend it after you get some familiarity with RoR.  Next, I think I'm going to change it up and next tackle learning some JS, particularly AngularJS, in my personal time.  I also have a copy of Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages that I want to tackle reading as well.

Also this week, I setup a dev environment from scratch (for second time ever) on my work mac.   It was pretty painless compared to my first attempt on my own 5 months ago.  I needed some minor guidance, but I think I would do fine by myself when I do it again.  I setup my ruby version manager with rbenv instead of RVM.  It's what my colleagues use and you don't have to deal with creating/managing RVM gemsets, so I wanted to give it a try.

After using rbenv for the past week, I really liked it a lot better than RVM and wanted to change my own macbook over to it.  After reading some posts and talking to a colleague, I was worried though that even if I impoded RVM, it would still leave lingering files on my machine that would muck up a clean install of a new ruby manager... and my worst fear is that I wouldn't be able to fix it... so I originally decided that I would not change my setup.   But, I couldn't resist the challenge of trying to switch over to rbenv from RVM, and, of course, I attempted to do this late on Friday night. :-)  It all went well, though!  I just had to run '$ rvm implode', clean up my bash files of any reference to RVM, restart, update homebrew, then install rbenv and my ruby versions.  There were some minor little issues to resolve when I checked that my projects still ran normally locally, but I worked through everything and it's running fine!  I'm happy that I just did it despite my reservations.

I've been learning some more difficult concepts and working through understanding APIs, client/provider side authorization, OAuth2, OmniAuth and Doorkeeper.  I built my first gem and published it to RubyGems.  It's an OmniAuth strategy for one of the projects I work on that is a OAuth2 provider.  I got to figure out a lot of things while working on it- building a gem with bundler, publishing a gem, writing a gemspec, and building an example app in Sinatra within the gem.   It's cool to think of what I've built recently, when I just wrapped my head around APIs, clients, providers a week or so ago.

It's weird how things have changed for me over the past 6 months.  I worry I've become a bit 1-dimensional though.   I live/breath/think constantly about coding.  It's what I wanna talk about all the time and my main interest right now.  I'm excited about it and can't help myself.  I don't think much about my previous career or have a desire to go back to it.  I just want to keep getting better and faster at writing code.  I wonder if this is just a phase that every new coder goes through or if this is just how it is going to be from now on... :-)

Thursday, April 16, 2015

I made it! Job contract signed!

Very excited to announce... I signed a job contract!  I was able to go from a code nobody to signing a job contract for a full-on developer position in 5 months.  No $30,000 dev bootcamp necessary.  Just self-teaching with online tutorials and scoring a jr. dev internship.  Seriously, that's crazy, right?

As of May 1, my title will officially be Software Developer. :-)  I am staying on at the company where I am doing my jr. developer internship.

If I can make it, I don't see why anyone else out there can.  I started flirting with the idea of trying to become a web developer in November.  I started reading some blogs from others that found jobs as jr. devs after self-studying for 6-8 months and got motivated.

There were 2 big obstacles to getting a job I saw when I started out learning to code... 
  • Living in another country and not speaking much of the native language. (How am I supposed to find a job or internship then?)
  • No dev bootcamps nearby. (I almost considered doing an online bootcamp....)
I didn't let these worries deter me.  Here's my milestones on my journey to get a developer job:
  • On November 13, I successfully battled homebrew and xcode error messages and installed Ruby and Rails and a text editor.
  • On November 26, I created a github account.  I didn't really understand the git process at all.
  • On December 16, I finished my first Rails app - One Month Rails' Pinterest clone.  I kept working through every free online rails tutorial I could find online.  I started the precouse work for 2 different online bootcamps - Tea leaf & Firehose project.  I was considering doing one of those.  
  • On January 13,  I applied for a couple jr developer internships.  I almost didn't.  Some of them were posted in Dutch.  I didn't think I qualified after only doing some online tutorials for ruby and rails for the past month.  And, I definitely didn't think I was qualified when I don't speak Dutch well.  My husband convinced me to just apply and the worse they could say is 'No' or flat out ignore me.  So I did.  Caveat:   There were no positions in my current city.  So I applied in other cities within commuting distance.  I was willing to commute ~3 hrs roundtrip from Den Haag to Amsterdam every single day.  I still commute.  It's freakin' tough but I've gotten used to it.  If I get a decent seat on the train, I pull out the MacBook and work on code stuff for work or work on Hartl's RailsTutorial. 
  • On February 9, I started a jr. developer internship (lots of struggling with tasks at work and reading Hartl's Rails Tutorial during my personal time happening for the next few months).
  • On April 14, I signed a contract as a full-time software developer!
So that's 5 months from the time I installed Ruby and Rails to I signed my job contract!

I still have a lot to learn.  I am learning something new everyday.  Some days I feel like I'm drowning and some days I feel like a coding champion.  I truly enjoy coding.  I'm kinda shocked sometimes that I do as much as I do.  I think about coding and the coding community all the time.  I never felt that way in my previous career.

I am so excited for the future.  I can't wait to see where I'm at in 3-6 months from now.

Monday, April 6, 2015

Week 8 finished + holiday weekend!

I finished my 8th internship week!  Time is going by fast!

I worked on some new tests and features for the main app project.  I struggled with the proper setup of a cucumber (+capybara+poltergeist) test for 2 forms that are submitted using JS instead of ruby.  I figured out how to get the test to test the JS functionality and pass the individual tests, but then it was breaking a couple other tests in my full test suite.  I then adjusted my test env to run the database cleaner between each test and, voila, it was fixed!  I still am unclear how there the carryover of the @javascript notation for those scenarios were breaking the other tests, but this solution fixed it.

I am also getting more familiar with working on an api within an app.  I struggled a little bit this week with changing a feature on the api.  With everything I work on, it seems the list of stuff to learn gets longer and longer.  It's really amazing the possibilities of what you can build in Ruby on Rails.  I feel like I'm only just learning what is possible with Ruby on Rails and it's both overwhelming (most of the time) but, also, very exciting and motivates me to learn more (all of the time)!  :-)

I am still working through Hartl's Rails Tutorial.  I'm currently on Chapter 10.  I am going back and re-reading some sections from the past couple of chapters on creating user sessions and cookies.  I feel I didn't understand all of that discussion, so I'm trying to look back at some material before continuing on.  I bought the railscasts with the tutorial, so I'm taking the time to watch through those.  I hadn't been watching them, but after watching one on the signup procedure, I found it super useful to get Hartl's commentary as he worked through adding features.  I am going to work on watching more of the screencasts this week particularly the sections on user sessions and cookies.

Monday, March 30, 2015

Week 7 and RailsGirls Coaching!

I finished week 7 of my dev internship.  What a busy week... LOTS of coding, a little dutch practice and a RailsGirls event!

At my internship, I worked on some new features for one of the projects.  One of the main things I worked on last week was adding a form that was tied to other model inside the view of another.  I have had to do this once before and it was definitely tricky for me to wrap my head around how to do this.  In the beginner tutorials, it's easy... You never add a form for another model inside some other view, you put a form in the view of that model and use a simple form_for tag with your instance variable correctly defined and it's easy.  I figured out most of the solution on my own and was proud of that.  I found this blog post helpful in figuring it out and also helping me understand using form_for and form_tag better.

On Friday evening and all day Saturday, I coached at my first RailsGirls event in Utrecht.  I was definitely nervous about coaching since I feel like a huge beginner myself most of the time.  I was worried I would be useless to my students.  Luckily that was not the case.  Coaching helped me realize that I have learned a lot about coding and rails in a few short months.  I was able to help students get their dev environments setup on their machine... even a windows machine (eek!).

What I wasn't expecting was how emotional the event would be.  There was several other coaches that shared their stories of getting into coding, many taking their first steps at a RailsGirls workshop just like this one.  It was also humbling to hear the story of some of my students who are eager to learn coding so that they can change their careers and better their lives despite difficult situations.  It was pretty inspiring.  What caught me off-guard was hearing that I am an inspiration to them.  I guess I never thought of my journey as being able to inspire someone else or being that impressive.  I know since November I have studied and coded nearly every day.  And I struggle to improve my dutch language.  But I am very lucky to have a partner that supports me and allows me to take risks like changing my career.  I am impossibly hard on myself and think that I should know more than I do at this point in my learning.  I do recognize how hard I have worked and continue to work towards my goal of being a Rails developer and, even though, I work as a jr dev intern right now, I don't consider myself successful in my goal until I am a full-fledged developer with a real salary and leave interning behind.  Hopefully in a few weeks that will be the case.

Tuesday, March 24, 2015

Halfway through my jr dev internship.

I finished up my 6th week at my internship last week.   I'm halfway through my 3-month program.  For me, it was another busy week of working on different tasks for real project code.  I follow a similar formula for everything I build: think about what needs to be built, write a suitable feature test in Cucumber, go through each step in the feature by letting the test steps guide my coding.

I have started working through Hartl's Rails tutorial during my morning and evening train commutes (as long as I find a place to sit).  I felt that only working on it during the weekend was counter-productive since I spent a good bit of time trying to figure out what I was working on from the last time.  I was able to work through 3 chapters last week by simply doing it during my commute!  The book is great and is helping me go back over basics that I might not have fully understood when I started learning Rails.  Plus, reviewing these things while I am doing project work is really helping me think through concepts a lot better.

On Saturday, I finished the third and final week of the free online MOOC Dutch course from futurelearn & University of Groningen.  I really liked the course!  I think it was a good supplement to the in-person course I am taking.  I only wish this course had lasted longer than 3 weeks!

I went to a RailsGirls workshop on Sunday and learned about MeteorJS.  I built a simple to-do list app.  It's easy to follow and I recommend checking it out on their website.  I was super impressed with the ease to setup Meteor (1 command in terminal and it was ready to go.  No error messages - whew!)  It was also really cool how easy/quick it was to deploy it and even make the android APK for my deployed app.  Super easy.  Once I finish Hartl's Rails tutorial, I want to start learning JS and I might try building more in Meteor to get more comfortable with JS since I liked the framework.  I don't think Meteor is at the point that it is production ready since it is so new and they are still adding features.  But it is still really cool to try out

I am still taking an in-person dutch course 1x/week.  I have kinda put dutch on the back burner during the week, since I'm so focused on coding right now.  What I need most for my dutch to improve is to have a patient speaking partner.  I have asked a dutch friend to start meeting with me on the weekend to practice.  Hopefully I can make that a regular, weekly occurrence and get some noticeable improvement with my dutch.

Sunday, March 15, 2015

Week 5 of my internship: Update

Week 5 of my internship is done.  Working on Bitbucket on 2 different projects.  It's definitely a lot different to work on existing code and not writing a simple app from scratch like in the tutorials.  I have to spend time reading and figuring out what is going on in the code.  But I figure out things or I ask for help to figure them out.  One of the applications is in Dutch including the cucumber feature tests.   I think I'm doing ok with it.

This is pretty much sums up how I feel all the time and will for a long time:  "Programming is awesome if you like feeling dumb and then eventually feeling less dumb but then feeling dumb about something else pretty soon."  I hope I'm learning enough and learning it fast enough.

On Saturday morning, I worked through all of the second week's coursework of the online dutch MOOC course I'm taking through futurelearn and the university of groningen.   I didn't work on any code on Saturday.

On Sunday, I finished Chapter 5 of Hartl's Rails tutorial.  It's frustrating to only work on the tutorial during the weekend.  It's hard to pick it up after not touching it for a week and know where I was, where to go.  I need to try to maybe work a little during my train commute on it during the week.  I want to finish this book!  It was a goal of mine since I first started coding a couple months ago.

Here goes week 6....

Saturday, March 7, 2015

Progress Update.

Finished up my fourth week of my internship.  I was added to another project.  I was introduced to Trello and started getting project tasks assigned and even getting tasks finished and pull requests accepted.  I'm using bitbucket instead of github for project work.

Even though I'm working 36 hr/week during my junior dev internship, I am still studying rails on the weekends.  Today, I finished up Chapters 3 & 4 of Hartl's Rails tutorial (some static page creation and working with minitest for TDD).  I also finished up the first week of the online dutch MOOC course I'm taking through futurelearn.  Whew.  Busy week.


Wednesday, March 4, 2015

Week 4 Internship update

For the past week or so, I've been working on various tasks with real project code!

Building a mailer, updating a rake task, adding columns to various models, updating controller methods, updating gemfiles, etc.  And writing features and spec tests in Rspec and Cucumber.  I spend a lot of time thinking and reading about new things I'm encountering in real project code.  I've learned about (and helped implement) an hstore column in a model and get that hash properly outputted in JSON.  I've learned about interactors to keep controllers clean and uncluttered with methods.  I've gotten several merge/pull-requests under my belt.

I'm more excited about coding the more I learn.  I'm still learning Dutch every week at class, plus during my ~3 hr commute everyday, I've been studying Dutch vocabulary using Memrise.  It's really helping to grow my word bank.  I've also started a MOOC free dutch course being offered by the University of Groningen.  I've been studying Hartl's Rails tutorial during the weekends too.  I still want to complete that book.  My goal is to complete it in the next month.  Then, I plan on going back to seriously study Javascript & jQuery.  I think that would be a good knowledge base for me to tackle next.

Needless to say, I'm busy all the time and I don't have much free time during the week for much else besides work, commute, dog walks, eat, sleep, repeat.  I am trying to make time for yoga a few times during the week.  I miss not running or going to the gym in the evenings, but, frankly, I'm just too tired.  I'm hoping with daylight savings time and longer days, I'll make time for evening runs at least once or twice during the week.

Wednesday, February 25, 2015

Week 3 of internship...

I'm in the third week of my apprenticeship.  I'm getting used to the commute every day back and forth to Amsterdam.  It's getting better... I'm coming home with more energy.  In the morning, people are so stressed out.  I try to stay out of others way, I don't care about pushing through everyone to get some specific seat on the train/etc.  I try to stay calm, not sweat stuff, and I usually study dutch on my phone using the Memrise app.  In the 3 weeks I've been commuting, I've learned ~375 dutch words using the app.  It's a great way to work on learning vocabulary every day with minimal effort.

Mondays are still the worst since I have the dutch course in the evening, but I'm managing.  I've even had energy the last 2 evenings to get back into doing yoga when I get home!  Very happy about that.  With the daylight increasing incremently everyday, I'm hopeful I can start going out for evening jogs a couple times during the week once it stays light enough for me to feel comfortable doing so.

I've pretty much finished up the bloccit app in the bloc foundations course.  I've started getting my feet wet with real project work with some (very) small testing tasks to work on.  I even did my first pull request for a real project today.

Tuesday, February 17, 2015

Tuesday update

I'm in the second week of my internship.  I am following along the bloc.io coursework, on the first part of the program - foundations - where you do some ruby coursework, then dive into a tutorial (with varying levels of help given) to make a reddit clone with images, avatars, deep nesting, etc.  It's supposed to take 4 weeks to complete, but I'm already at lesson 41 of the 52 after 1.5 weeks.  The coursework is good, I'm hoping to finish it this week... so I'd finish the 4 week project in 1/2 the time.  I'm working 36 hrs a week + a 3 hr roundtrip commute each day.  If that daily commute itself doesn't show I'm committed, I'm not sure what will.

Tuesday, February 10, 2015

Tuesday Update

Started my internship on Monday!  I'm basically following the bloc.io program.  I started on the foundations unit of the bloc.io program and I'm going through each lesson and exercises.  I'm on exercise 18.  Right now going over Ruby concepts/OOP, then will move into Rails.  The lessons are going well since I've been studying these concepts on my own over the past couple months.  The commute to/from Amsterdam and Den Haag isn't the most fun, but I will manage.  We plan to move to A'dam this spring/summer, so I'm not too bothered about it right now, except that it is expensive!  Dogs are managing being alone all day for the past 2 days, so hopefully they will continue to do well with it.  Mondays are definitely going to be rough long days, since I have a Dutch course in the evening and I don't get home until after 10pm.

I've been working so hard lately on teaching myself to code and picking up a new language and frankly, it's the most exhausting period of my life right now.  I don't think I've studied as many hours as I do now even when I was in college or doing my Masters degree!  I'm focused and I'm willing to suffer through lack of sleep and such to get this new career and make our lives better for the both of us.  I'm so happy to have a husband who notices and appreciates.  He randomly sent me an awesome little pep talk today re: learning to program and learning Dutch:
I know you've done everything possible to get to where you are in Ruby and in Dutch in a really short timeframe.  And no matter what anyone else says, and no matter how anyone treats you, you can know that you are putting the effort in, and you've accomplished so much.  I'm more and more impressed every day.  Honestly, you've given me renewed drive to improve my development skills.
Now... time to study some Dutch, play with the dogs, and then SLEEP.

Sunday, February 8, 2015

Progress update

I started Hartl's Rails Tutorial.  I was originally just going to do the free online book, but saw a deal for the ebook, solution manual and all the screencasts for $49 so I got that.  I started it on Thursday.  I am on Chapter 2 working on the second app project in the book, a simple microblogging site.  Work on the book may slow down considerably as I found a full-time internship!

I accepted an internship position in Amsterdam for Ruby on Rails.  First 3 months are internship, then regular employee after that.    It's going to be an adjustment commuting to A'dam every day (1.5hr each way).  Hoping I can use the commute to study Dutch.  Mondays are going to be the roughest day since I have Dutch class at night.  Will be a long day for me and the dogs at home.  I'm most worried about the dogs adjusting again to me being away from home during the day for such a long time.  Hopefully they will adjust quickly and not bark during the day.

I'm excited for the future.


Wednesday, February 4, 2015

Wednesday.

I finished chapter 13 of the Beginning Ruby by Peter Cooper. It covers Rails, Sinatra, & Ramaze.  Book is really showing it's age when the Rails version is 2.2.  :(  At least in the example Rails app, it gave me the opportunity to figure and update the old rails way to the terminology of Rails 4.2.  The intro to Sinatra was a nice bonus though.

I am thinking of moving onto Hartl's Rails Tutorial.  I want to move back into Rails learning and I want to be working with a more up-to-date book/tutorial.  I've gotten further than I thought I ever would in the Beginning Ruby book... 13 chapters, over 400 pages of Ruby code learning.  The following couple chapters of the book are on GUI-Based Desktop Application Development, Sockets, Daemons, etc.   I got the basics that I wanted to learn and I want to keep studying those basics in different ways and through building more and more applications and doing coding challenges like codewars.

Of course, I'm keeping up with doing some codewars.com challenges every day.  I am also doing at least 1 dutch lesson everyday.  I need to also learn 5-10 dutch irregular verbs and their past tenses every day too.

How to start your day.

Codewars challenges!

Tuesday, February 3, 2015

Monday + Tuesday

Working through Beginning Ruby by Peter Cooper, just finished chapter 12 (page 345) and built a small bot app.  I like this book better than Learn Ruby the Hard Way.  They cover many of the same topics.  I've also been trying to do a couple of the ruby fundamentals coding katas at codewars every day.

I had another dutch language class on Monday night.  I am trying to study a little Dutch every day.  I need to work on pronunciation.  It's hard for me.  And it kinda sucks being in an expat class.  The instructor will quickly switch to english for explanations and they other 2 students seem to like to use English instead of focusing on trying to speak in Dutch.  I try dutch first to try to explain things in class even if I butcher it (pretty sure that 100% of the time it's spoken terribly).

Sunday, February 1, 2015

Weekend progress

Today I worked on a coderbyte challenge, only to then get frustrated when my correct solution would not work in the browser-based ruby environ because it's Ruby 1.8.7!  So I looked online for more coding 'kata' style challenge sites and found codewars.com.  I've done a couple of the easier, fundamental challenges there and like it so far.

Last night, I took a break from coding to go to Rotterdam to see the TR/ST concert.  Was a lot of fun at cool venue that even had Club Mate (unofficial drink of the Berlin startup scene?  I've missed drinking them since I've moved from Berlin to the Netherlands)!  Yumm!

I did some more learn ruby the hard way, through lesson 46 and I think I'm done...  I'm just not into the tutorial that much anymore.  Exercises aren't that interesting to me.  Moving onto other resources.

Saturday, January 31, 2015

Saturday

I jumped back into the Beginning Ruby book and did some reading and work.  I created my first gem... a ridiculous small gem with one method that finds all the vowels in a string and puts them into an array.

I found this site coderbyte where there are coding challenges to do using one of several languages.  I started going through the first "easy" exercises in Ruby.  You get points based on how fast you submit a working solution then you can compare to other users' answers.  It's neat to see other people's solutions and how varied they are from each other.  The easy exercises have been harder than I expected... I like the challenge though.  It forces me to go and look up things in Ruby's API or get further clarification on things with stackoverflow.

My spouse is looking to expand his code knowledge from .NET/C# and is looking into learning the MEAN stack, particularly AngularJS.  Pretty cool to be sitting around the house and he's watching tutorials on AngularJS while I'm doing coding challenges on my laptop. :)

Friday, January 30, 2015

Friday's progress.

I did some more exercises in Shaw's Learn Ruby the Hard Way.  I'm on exercise 44: Inheritance vs. Composition.  There was a link in there to read Ruby Style Guide, so I read it too.

I started the Ruby path on Codeschool since I won a 3 month free subscription to it.  I already had done the Try Ruby and Rails for Zombies 1 tutorials.  So, I started back with Rails for Zombies 2 tutorial and I got through segment 4 of 5.  Got a little difficult for me after the third segment.  Hard to go through the exercises when you are more or less watching a video showing some rails techniques, but not actually coding through the app yourself as I thought I would be.  Videos jump around a lot.  Not sure I'm a fan.  Disappointing because I did like Rails for Zombies 1.

Thursday, January 29, 2015

Free Codeschool!

Sweet!  I won 3 months of free access to Code School... so I'm going to try their Ruby track and do all the Ruby and Rails courses available.

Wednesday, January 28, 2015

More Progress, learning more OOP Ruby.

As I hit more advance topics in beginner ruby such as OOP, learning speed slows down drastically.  I have to slow down and absorb.  Did a little Learn Ruby the Hard Way, but kinda stalled, so switched over to reading Tealeaf Academy's Object Oriented Programming in Ruby online book.  I think these online books they have posted up for free use are good and concise little tutorials with good exercises at the end of each section. This helped me think through some concepts.  What might look like jumping around and taking a while to finish 1 book, is actually me going to other sources to figure things out, rather than keep going and not really understanding a concept.

Studied while listening to old indie music I haven't listened to in years: Of montreal, wolf parade, Tapes 'n tapes, sunset rubdown, karl blau...  It was awesome!

I am also trying to take time every day to work on my Dutch studies too.  I went to Dutch class on Monday and felt terrible because I hadn't really taken any time during the week to look over anything.  I am making it a point to go over vocab and do the online exercises every day.  It's the only way I can hope to train my ear and mouth to speak better dutch.  Class wasn't cheap, so I want to get the most out of each session.

Monday, January 26, 2015

Final pre-course work challenges finished! Foobar + temp conversion challenges.

As part of thefirehose project's pre-work course, there is a foobar challenge.  Although I know my solution needs refactoring, it's pretty cool to be able to get out a working solution for this in < 5 mins in Ruby.  I remember doing this challenge when I started coding two months ago and it took me hours and I had to *cheat* and look for hints online (I did it in jQuery instead of Ruby then).  Understanding the logic and for/while loops is so much better now!


The last challenge of the pre-course work was to make a temperature converter for C to F.  Easy.  Done in a couple minutes. The bonus 2nd part of this challenge was to allow user input (already did it for previous challenge) and make it convert both ways.  This was a little trickier because I needed to use regex to extract the integer and the unit for an input string like 32F or 101C.  But I did it.  Maybe not the prettiest solution, but it works!


So, I'm done with thefirehose project pre-course work now.  So I'm pretty much ready to go for either Tealeaf or thefirehose project bootcamps.

Monday's progress -updated my github pages site!

Worked the past few days on Learn Ruby the Hard Way.  Finished through exercise 31.

I mostly worked this weekend on a site to show my progress/portfolio in a better, concise way than just the blog.  I worked on my github pages site and built it into this over the weekend using HTML5, CSS3 and customized Bootstrap.


The part that took the most time was the design of the navigation at the top.  I first went with a navbar, but didn't like the look 100%.  So I switched over to the nav pills style and customized it.  So figuring out the design by building different things took the majority of my time.  I'm sure I'll keep nitpicking at it, but I like it for now.

Thursday, January 22, 2015

Thursday Progress

  • Started working on an awesome site for my web portfolio.  very simple so far but bootstrap'd.  It's up on github pages.  Will continue to work on it.  Feels like an accomplishment to easily do a task like this.  Woot!  Means I've learned stuff!


  • Worked through most of the Firehose Project pre-course work.  Still deciding about the online bootcamps!
  • Working through Learn Ruby the Hard Way (part of the firehose project pre-course work).  On lesson 14 or so.

Wednesday, January 21, 2015

Wednesday's Progress


  • Finished Tealeaf Prework Course!  Found the Ruby book and exercises useful.
  • Jumped back into Beginning Ruby book. Finished Chapter 8, Chapter 9 and started Chapter 10 (page 253).

Monday, January 19, 2015

Progress update.


  • Read as much as I could this weekend...   On the train, in bed, on the couch, at the cafe, where ever. I made it into Chapter 8 of Beginning Ruby (page 184).
  • Also working through Tealeaf Academy's precourse work (Ruby review, etc) when I get bored in the Beginning Ruby book.
  • Realizing I need to make a separate page to list all the tutorials and books I've complete and still have to check off to help me keep on task.  So many resources out there to get distracted by!
  • Unrelated: Slowly absorbing more dutch language.  Had my second class tonight.  Need to desperately practice pronunciation.
  • Still undecided on the online bootcamps - deciding on this is on the backburner until next week...  I like Tealeaf's lower price but dislike not having a mentor and the lack of connection I felt when I emailed them questions about the program and if they had any participants from the EU.  I love thefirehoseproject's mentorship opp and fast personal response to my email questions.

Friday, January 16, 2015

Friday's Progress

Finished CodeAcademy's Ruby Course!  Started up on Peter Cooper's Beginning Ruby book.  I am in Chapter 3, page 91.  I just finished a basic ruby program that inputs a txt file and does a bunch of analytics on it (counting characters, words, sentences, lines, etc).

Things are going well!  Pushing as hard as I can.  Github streak is starting up again :)

Thursday, January 15, 2015

Thursday progress.

75% through Codeacademy's Ruby course.  Hope to Will finish tomorrow.  Could have maybe finished today, but spent some time researching online bootcamps again.  Broke my 30 day github streak by switching gears to Codeacademy. Boo.

I like the codeacademy lessons, but I miss coding in my own terminal.  It's going good, I feel like I'm getting a lot out of it since I've been working on projects for the past month.  More of a review than a first look for me.

Wednesday, January 14, 2015

Wednesday's Progress

I'm taking a short break from working on Rails projects to go back to learn more Ruby.  As I am gaining a better understanding of the Rails framework, I need to go back and get really solid on Ruby.  I think I'll understand it better now since I've been building stuff with Rails.  I started reading Beginning Ruby by Peter Cooper (while I was getting my hair done).  I am also working through Codeacademy's Ruby course at home.  It's going good!  Definitely breezing through it so far, whew.  I'm glad to find that I've understood more Ruby than I thought.

I finished reading Practicing Rails by J. Weiss this morning.  I enjoyed it since the book is kind of like a pep talk to keep you going when you are starting out doing Rails and following tutorials...but its not worth it at its current price of 29$.  I think the price was too much for what the book offered.

I also downloaded Sublime Text 2.  I've been using Atom (free) since I started coding and originally setup my dev environment, but I want to try out what else is out there.  I customized the theme and font and some other options.  Looking forward to trying it out more.

I'm still debating the online bootcamps.  I emailed Tealeaf to see if they've had any success stories/students from the Netherlands and they didn't know of any.  That was kinda disappointing for me.  The core problem I have with the online bootcamps (besides the high cost) is getting the relevant mentorship that is going to help me get a job HERE.  I'm ambitious; I have no problem putting in the hard work and to get better at this stuff.  Yesterday, I stumbled upon a possible jr dev/internship position which I am extremely interested in, and I've applied for it... this would really be the ideal situation for me, but I will just have to wait and see.

Tuesday, January 13, 2015

Not coding related, but useful for my future in the Netherlands...

I started a dutch language course last night!  It's a course for expats, once a week 3hrs in class + 1hr outside class, for 20 weeks (~5months).  I'm excited.  I've been waiting for this course to begin for a few months now.

There are some really cheap, good state sponsored programs, but our visas prevent us from taking that one. The private languages schools are expensive.  But this course is still costly but cheaper than a private school.  Unfortunately, I guess they assume with highly skilled migrant visa that you'll be making really high salaries and can afford a private course (or you don't care about learning dutch and get by with English), but with only my husband working at the moment, that is not the case.

I should be up to a A2 level afterwards and then can continue to learn and prep for the Inburgerings exam - what we will eventually need to do for pursuing permanent residency in the Netherlands.  I want to get to at least a B2 level, although near fluency would be amazing.  Learning dutch should definitely help when I look for jobs here, at least I will be able to communicate somewhat.

Tuesday's update

Since last post, I wanted to build a Reddit style site.  I wanted to do it with minimal tutorial step-by-step guidance and no scaffolding magic.

I found a good resource here.  Not a bunch of code copying, I completed the bones of it and what I really found useful is the user story prompts.  I need to do that when I do my own project, keeps me from panicking :).  I even included additional changes to displaying the up/down votes and used bootstrap styling...  It includes pagination, bootstrap-sass gem, upvoting and downvoting using boolean (true/false logic) in which user has only 1 vote on a topic and can change between up/downvotes, authentication via Devise....

RedditClone Screenshot
I've been thinking a lot what my path I will continue on is going to be.  There's supposed to be a dev bootcamp in Amsterdam in March or April (maybe?).  I have no idea about the costs or if I will be invited as a participant.  That's at least 2-3 months away though.  There's a Railsgirl beginner workshop coming up at the beginning of February, I'd like to go to it, but I'm afraid I've advanced past its topics since I'm already set up a dev environment and building little beginner apps and deploying to Heroku and posting on github.

I've been thinking about signing up for an online bootcamp and I'm leaning towards Tealeaf Academy.  I've seen some blog posts online and also on reddit on folks who have succeeded with Tealeaf and gotten jobs afterwards.  The price is one of the lowest I've seen ($2500 total) and you pay in 3 different segments.  Estimated completion time for the program is 4 months.  Working on it full-time, I'd hope I could complete it in less though.  I'm definitely committed.  I've currently got a 29 day streak going on Github.  I'm working hard and struggling through some topics.

I think I'm going to look into the prep work for Tealeaf and work through it.  I think it's mostly a review, so I think I could go through it pretty quickly, then I can make a decision on the program.

Thursday, January 8, 2015

Week's progress

Continuing to toil away this week.   Lots of frustration and thoughts of "will i ever be successful at this???", but I continue to power on.


  1. Finished up Jumpstart Lab's Blogger tutorial on Tuesday
  2. I worked through Envy Lab's Rails for Zombies on Wednesday and Thursday
  3. I did the Railsbridge's Suggestotron tutorial WITHOUT the use of scaffolding.  In this tutorial, I build an app that you can add topics and then, upvote vote them and it displays the number of total votes.  I tried to hand write as much code as possible to help me work and get better with my stupid little errors I make in my ruby code.  I was pretty proud that I decided to do the tutorial with as little references to the tutorial as possible and I didn't use the automagical scaffolding generation.
  4. I even figured out some of the 'extra credit' topics, including adding downvoting ability to the app to go along with the upvoting.  And I sorted the topics descending by the # of votes for each topic.
Don't know what I will work on tomorrow.  Start Hartl's Rails tutorial??  I was thinking of doing the Rubyslist app again, but try to figure it out a lot on my own.  So many resources to choose from!  I've been thinking about app ideas too for the future. 

Monday, January 5, 2015

Monday's Progress.

Not much to update.  No break throughs.  Lots of frustrations.  I'm just working hard and studying everyday.  Riding the cycle of feeling accomplished to feeling like the dumbest person ever.

I've been going through Jumpstart Labs Blogger Tutorial.  Spend most of the day figuring out the section on tagging.... creating Tag and Taggable models and using the Taggable model to set the relationships between Articles and Tags.  Learning about foreign keys (think I got it), but got really really hung up today on this:

def tag_list=(tags_string)
tag_names = tags_string.split(",").collect{|s| s.strip.downcase}.uniq new_or_found_tags = tag_names.collect { |name| Tag.find_or_create_by(name: name) } self.tags = new_or_found_tagsend
particularly the first line of:
def tag_list=(tags_string)
This took me hours (HOURS!) this evening/night to figure out.... never seen def method equals something in my rails work before! And it took me hours to figure out this is a setter. I think I understand it now.... since tag_list is not defined in the Article model/table/schema as an attribute it can't save the tag_list when it tries to create the new Article object. we have to define it in a method in the Article model (what we are doing above) so our tag values we input in the form when we create a new article will be saved. Lots of googling and talking about it with my husband and re-reading this part of the tutorial over and over, and I finally got it. WHEW.





Thursday, January 1, 2015

Week's Updates....


Still working through Practicing Rails book...  I got side-tracked doing the basic Rubyonrails.org Getting Started Simple Blog tutorial.

I also found a Udemy course on creating a Craigslist clone using RoR that I blasted through and completed in 2 days, over NYE and New Year's day!  It didn't use any scaffolding and involved doing different things than I have in other tutorials - populating db using seeds.rb, geocode gem, creating a search function using JS, 4 models interacting with one another, etc.  It was a good tutorial and helped take some of the automagic mystery away from RoR.  I appreciated that it didn't rely on scaffolding to build out folders and files in the MVC, I feel like my understanding is getting better and better.  I think I'm going to be in good shape when I tackle Hartl's Rails tutorial soon.

My husband is going through One Month Rails before my subscription ends.  Adding RoR to his programming background is a good thing and will allow us to pair program and work on a project together.  I hope.  It's sometimes hard for me to expect him to want to learn/do more programming when he has been programming in another language/enviro all day, every day for work.