Old Guy New Trick

An old guys journey to learn how to code.

Enter the 4th Block

Author: John on May 11, 2014

Picking up from where I left off with my block experience (see previous post, Week 2 and a half at Bloc,) a lot of good things, and some bad things, have occurred.  I had finished, what was called at the time, the third block, which included lessons on RSpec, Testing Users and both creating and destroying using Ajax.

The end of Block Three took me a bit longer to complete compared to how I progressed through the first two blocks.  The material in the third block was new to me.  It was during the end of this block, and creeping into the beginning of block four that I began to have issues with my mentor.  In the first two blocks, since I didn't need much help, I didn't mind that our sessions tended to be brief.  Usually they ran up to 10 minutes.  But our sessions are booked for 30 minutes.

My mentor during this time had missed a some meetings and had asked me to reschedule a few times.  I'm flexible so I didn't see an issue.  But there was one time that I needed to reschedule and the mentor wouldn't work with me to make up the time.  Time much needed as I was having trouble with the project I had selected in Block Four - Saas Wiki Collaboration Tool.  I was getting very frustrated.

I reached out to student coordinator at Bloc, Karen, and discussed the issues I was having.  I explained that in the beggining I had gotten ahead, but now with all the problems I was encountering with this mentor, I was getting behind.  And I felt it very disrepectful that I was asked on several occasions to modify my schedule for him, but the one time I needed a re-schedule, he didn't care.

Karen helped me out and let me pick out a new mentor.  She said that they would add a week to my enrollment to help make up for some of the lost time.  (Think I need to check on that because it doesn't look like they added a week.)  The new mentor, Charlie, was a huge improvment.  Never did I feel like he was trying to get me off the phone.  In fact, on several calls we went over the scheduled 30 minutes.

While working with the new mentor, Charlie, has been a much better experience, I feel that there is something missing from the program.  Although it is said that students will do pair programming and testing, I don't find either to come near what I was expecting.  It may be that my expectations are set to high from what the folks at Bloc had planned to offer.  I can understand that they have a range of differently skilled students.  I don't think I'm far off in saying that most newbies to this program probably don't care as much about testing as I do.

I find this mediocre approach to testing to transcend into the help one would get in the Office Hours Chat room.  I'll provide a brief example.  I was stuck on how to write a test that would make sure that any user, other than a logged in user, would not be able to access the ability to upgrade a users account by direct url navigation.  When I posed my question the answer I got was that I should use Pundit's policies and don't display the upgrade button unless the user is logged in and allowed to upgrade.

I had explained that I had already written tests for that, and the code to make the tests green, but I wanted to ensure that a malicous user would not be able to access the url for an upgrade directly.  The short answer I got was "...well the users shouldn't do that."  Yeah, well credit card thieves should not steal peoples credit card info and identies either, but I'm sure the credit card companies do whatever they can to protect against those thieves.

I really don't think the program was meant to take testing as seriously as I am.  It seems the program gives one just enough to say, "... yeah I know how to test with RSpec."  Although I'm happy with my mentor Charlie, I felt a bit frustrated on our calls when trying to work through testing issues.  So frustrated in fact that I stopped testing the proper way and just worked on trying to complete the assignment.

Bloc changed the student dashboard and I got really worried.  I was reviewing where I was in the program and the dashboard was telling me that I was behind.  The dashboard lists 5 projects, including the one I was working on, Saas Wiki Collaboration.  The sixth project is for our capstone.  Seeing that I had only four weeks left, and still hadn't finished this Wiki project, I got a bit frazzled.  It is not like I haven't been putting in the time!

On my mentoring call with Charlie last Friday I asked what the deal was.  There was no way I could finish all those projects and have time for my capstone.  My previous mentor had said that I only needed to pick one if I wanted to spend more time on the capstone project.  Luckily, Charlie confirmed that the dashboard was a bit confusing.  Students have the option to do more than one project before their capstone, but it is not required.

That made me feel a bit better, but I still needed to wrap up this Wiki project.  The main reason I took this course was to work on my capstone and have help when/where I needed via the mentorship and Office Hours Chat room.  Please don't get me wrong, I have learned a lot via the program, but my main goal is to work on my personal project.

With some 'external' help, I was able to wrap up this Wiki project.  At least I believe it to be done according to the original requirements.  I even was able to get the Stripe intergration to work, with tests!  I'll have another blog post regarding the external help - stay tuned!

I have another mentoring call on Monday - 05/12/14.  We should be able to discuss my capstone project and get an idea of how to get started.  The nice thing about the Saas Wiki project is that there are a lot of components of that app which will apply to my capstone project.

Stay tuned for more information regarding my experience at [Bloc.io]  I will be publishing an overview of the program at the conclusion of enrollment.

Learn Something New Every Day

Last Edited by: John on December 30, 2015