Setting up my local environment

I’m two weeks into a new position and i’ve set up my local environment: Two laughing Buddha statues sit under my 27 inch monitor whilst joyfully hoisting bowls over their heads. My chair is adjusted for a generous recline (slouching is good for you) and my desk situated mostly at a constant height ideal for typing.

I’ve located the coffee making materials and know where and when to be to ensure maximum caffeination in or immediately outside the office.

I’ve picked out a favorite coat hanger and have tried out and settled on the form of mild, but fleeting disappointment when it is taken in the mornings.

I’ve internalized, mostly, when its ok to blindly occupy a meeting room for tangential white-boarding or a bit of quiet seclusion.

I’ve decided which elevator is most auspicious of the six in the lobby and claim a small victory when I get to ride it.

I’ve gotten to know my coworkers warmly and quickly.

Oh, I also got production code to run locally on my work laptop, so that’s alright too.

 

The Trust Gap

I spent the last week in Iceland the same idea kept cropping up:

Businesses and by extension products don’t trust people enough

I think this is a byproduct of the idea that every business should be able to capture every customer, if only things are spelled out plainly and loudly enough.  By assuming that you can reach everyone you fail to target your natural customers and end up diluting the effectiveness of your brand.

Nowhere was this more apparent to me than on Laugavegur in Reykjavík, Iceland.

A hyper concentrated cluster of over-marketed retail ‘opportunity’.

A street that has been utterly culturally carpet bombed by crass, loud and lowest common denominator messaging to the point that walking down said street is reductive to the whole idea of being a tourist in another country.

None of the businesses up and down this street trusted their potential customers to discern the value of their products.  All was spelled out, in English, and illustrated in large print photos and diagrams.

Restaurants loudly proclaimed: Italian Restaurant! Authentic Italian Food! Pasta – Meatballs – Bread! in both English and Icelandic.

American_Bar_Iceland
Near the start of Laugavegur. Next door to this was an English Pub named… “English Pub”

In their effort to capture anyone who might want to visit an Italian restaurant, the ambiance one might want from an Italian dining experience is lessened.

A consequence of all the businesses on this street following the same methods means the draw of visiting Iceland’s main shopping street has evaporated outside of the simple gravitational pull of many businesses being in one central location.

Authenticity and trust have been exchanged for maximum value extraction.  But they’ve missed the forest for the trees and collectively lowered the value of the entire shopping district.

Building these same businesses: Bars, restaurants, tourist shops, with a sense of trust that visitors can gleam value for themselves would help raise the level of authenticity and sense of place of the street and in turn deliver real value to each business by customers that self select the experience they want.

I think this lesson applies more broadly everywhere, but the shock of seeing this in such a pronounced way in my once quaint home town forced me to put these thoughts to [digital] paper.

I trust you’ll gather my general intent.

Bullet Journaling – Going App Free to organize

I’ve tried a lot of different thought organizing tools over the past year. in order to get a better grasp on my time, projects, and recreation i’ve bounced from different idea to idea, but the Bullet Journal is by far the most effective method i’ve tried so far.

What is Bullet Journalling?

Its a journal system with rules for organizing three things: Tasks, Events, and Notes over time.

I haven’t spent enough time to wax poetic about all the nuances that make it better than every alternative out there, but I can safely say that there is a sense of accountability that follows with carrying around your organization bible.  Tasks are easy to reference and the at a glance summary of how I spent the previous month is incredibly satisfying.

As opposed to my google calendar, which is how i’ll need to allot my time based on my future obligations, these things aren’t necessarily more broadly important for me to remember, so referring back to it as a summary of how I spent my past month is relatively useless.  This is curated, and easily so because that cruft never gets introduced into the Journal in the first place.

This has not, and obviously cannot replace things like calendar events for work related items, but for less strictly time sensitive items and for personal, events, notes and goals its just the right amount of scaffolding to support it.

I’ve really enjoyed it.  Watch the video and if you decide to take the leap I recommend grabbing a grid ruled Moleskine notebook to get you up and running.

Code School – Postmortem – Part III

Picking up where the last post left off,  our second month introduced the group project work.  Rails and Ruby continued to be lectured on as well as general programming topics, but I think the important thing was that  the students self organized into groups after choosing from project proposals and began to work on delivering them in a short time.  This was exciting to  me because delivering functioning code that someone else asked for was the name of the game and learning to work within a group is a key skill for a developer.  You’ll rarely be a total “lone wolf” working as a professional on a dev team.

Gradual Release of Responsibility:

The idea of agile development came into play as self organized groups took focus away from a strict lesson plan and our first gradual release of responsibility took place.  Coming into the program as a non-advanced student I think at this point I would have preferred more guidance, but others also seemed to thrive when allowed to go their own way with their use of their 9-5 office time.  The key to staying focused was that a lot of the resources I was using already framed out a relatively straightforward learning plan that I could continue to execute, without them I think I might have flailed a lot more.

At a certain point however, what we wanted to focus on became more clear as what you tend to spend more time on you tend to get better at.  Subconscious specialization if you will.  The Development of Discuss-it was the breakthrough moment for me.  Walking through the project from wire frames, mock-ups, and white-boarding to a feature complete app that is working and hosted.  Built with a team and delivered on-time(ish).  It also focused me on Rails and Ruby in a way that theoretical study couldn’t have.  For a lot of the same benefits working through Hartl’s Rails Tutorial is fantastic and a great primer.

This is also where a lot of the value of the code school was for me: surrounding myself with enthusiastic people who I could collaborate with like this and who were at a similar skill level was absolutely crucial to building up my competency and giving me confidence and motivation to continue.

Company Tours:

The time continued to fly by and now we were starting to tour local development companies (and dev teams of non-development companies) through PCS.  This was another great aspect of the code school that I think was key to job hunting success later on down the road.  We toured a whole lot of very cool companies including: New Relic, Elemental Technologies, and Dark Horse Comics.  We were able to ask a lot of questions about the practical day to day aspects of development work and about what me might need to do to better prepare ourselves for a position at one of these cool local companies and build up contacts for future networking.  This part of the program was invaluable and led directly to my first official Developer job right after the program finished.

End Run:

In the last month we experienced another gradual release of responsibility that made essentially all of our class time our own apart from what we scheduled with our instructor, Chuck, ahead of time.  This was both my most and least productive period of learning.  I fell down several rabbit holes, set learning goals I didn’t accomplish, but also learned about tech I didn’t expect to (MongoDB, AngularJS).  I also began work on a group project that did not manage to get off the ground.  Components of it were sound and good work samples, but the project itself did not achieve its goals and that was on its own a very valuable lesson in project management.

The final release of responsibility was off course sending us off to apply to jobs, and our last week was almost exclusively focused on this.  I was surprised to find that there were at least 100 tech companies in Portland that could be a good fit for a Jr. Developer, but there were in fact that many in a list the students worked to compile and with a healthy amount of caffeine I began to carpet bomb them with applications.

I started receiving responses immediately and I literally haven’t stopped receiving them since… more than three months later.

Was it worth it?

I have finished a contract with a company I had at the top of my list to work for when graduating from PCS and have signed on for a QA Engineering position to start at the beginning of the New Year at a start-up that i’m very excited about.  You get back what you put in and I think I’ve gotten everything I wanted and most importantly built a model for my own personal learning plan for the future.  And for that my tenure at PCS was worth what I spent, the time I put in, and the job that I quit to get here.

The program at Portland Code School has now changed, new instructors and staff, new hours and I cannot say whether it still affords the opportunity I got, but I can vouch for the program I attended.

Read Part I Here

Read Part II Here

Code School – Postmortem – Part II

Continued from Part I

The weekend bootcamp came and went pretty quickly.  The basics of web development (AKA learning what happens when you click on a link in a browser besides “a page loads”) were covered, websites were launched and before you know it the weekend was over.  It was enough.

After marinating on the thought for a little while I decided it was time.  I loaded up the application page in my browser and… the application date had passed.

Damn.

On a whim I shot off an email checking to see if anyone had dropped out and if I still had a shot for the summer session.  As luck would have it, fortune favors the mildly inquisitive.  A few days later I had an interview and several days after that I had a curriculum: get comfortable with HTML and CSS because on day one you’ll be expected to work with it (the book we were assigned was by Jon Duckett and has the pleasure of being both informative and beautifully designed).  So far so good, though, as it turns out once you apply for a 9-5 programming bootcamp you have to actually quit your job.  In the interests of full disclosure I left a position in administrative assisting… somewhat non-ironically a field ripe for automation.

Two weeks went by quickly, but time slowed slightly for my non-deathbed conversion to OSX and then quickly sped up again.

Week One:

Day one is difficult to separate from all of week one without the aid of a spatula, but I vaguely remember introducing myself to a lot of unfamiliar faces who I count as friends today.  The subject was Ruby, Git, and environment setup for anyone who hadn’t quite acclimated to their knew development home on the command line (hint: me!).  The days were structured, lectures, assignments, readings and of course pairs for paired programming.  I don’t recall the first few days being mind blowing, but they were demanding.  A little later we found our Everest: Recursion. Most of us slammed our brains against the concept of implementing recursion and just before we grasped it we were moving on to the next thing.

I recall at the end of the week taking stock of myself.  I was exhausted.  10 hour days and all of them spent learning something new.  Everyday involved constructing context just to feel comfortable enough to crawl ahead another inch.  I’d been out of practice educating myself for some time now. I wasn’t sure I could do it.  Maybe I just wasn’t cut out for this.  I could quit the following week and only lose the deposit… I could probably get my job back.  I’d give it one more week.

Week Two:

More Ruby, the command line doesn’t feel alien, programs are starting to do what I want them to.  I think i’ll stick it out.  Finding out that I wasn’t the only one completely off balance was a great comfort and paired programming really helped drive home that I was among good people to learn with.

Week Three:

Javascript, the language of web ubiquity and semicolons, but mostly semicolons.  We started by way of jQuery. The pace had been set by now to the point that no one seemed particularly phased by the complete shift in programming language.  The ability to make things fly across the screen was a welcome change from ASCII graphics on the command line.  A good week for small constructive victories.

Week Four:

You can test Javascript? Weird.

Read the rest:

Read Part I Here

Part III:  Group Projects, Agile Development, and Employer tours.

Code School – Postmortem – Part I

Code school is long since over, at least in the context of the fast paced months since this all started in May.  I attended Portland Code School for the 2013 summer session which spanned June, July, and August.  12 weeks of intense study and collaboration guided by Chuck Vose, our instructor, and of course a great deal of self directed study too.

This was a personal gamble for me…  To say it was anything less would be playing down how this has affected my life.  When I discovered Portland Code School I was gainfully employed and had been for the better part of a year, but not in the place I wanted to be professionally and not facing the kind of opportunities I felt I could seize upon.  I’d been restless for a while, looking for opportunities that ‘clicked’ when I read them: teaching English outside the US, moving back to Iceland, starting my own business, pursuing voice acting (still thinking about that one…), going back to college.  Nothing felt immediately satisfying until I started reading about code schools.  I first had read about Dev Bootcamp last year and up to that point programming seemed like something I couldn’t begin to approach without a CS degree, but this seemed manageable.  An entry point.

I stowed that thought in my head and pushed on with work, a bootcamp didn’t seem like it was enough and programming was such a big field.  Could I afford the price tag? But, the articles kept coming and code schools kept popping up in my periphery during late night web surfing sessions.  Finally, I started to do more research in earnest.  First, I searched in San Francisco for more bootcamps and stories of their effectiveness, but San Francisco was far away and the bootcamps there were expensive.  Next, I searched closer to home and found Code Fellows in Seattle.  After much consideration I applied to Code Fellows, it offered the right combination of price, time invested, and sales pitch.  I did not make the final cut, however, but was encouraged to apply for the next session.

Enter Portland Code School.

I’d come across PCS in my searches before, but the website didn’t quite grab my attention and it slipped my mind rather quickly at first.  I was surfing reddit, the portland subreddit specifically, and saw a post about a weekend bootcamp at PCS (This one!).  I inquired and went ahead with scheduling a bootcamp, a much easier lower commitment way of checking these guys out.  By then the website had changed (and its changed again, go figure) and things were starting to look more appealing.

I began to research chuck, checked out the testimonials, researched some of the prior students.  So far, so good.

Read Part II here

Read Part III here

Sleep Hygiene

Or lack thereof…

We were assigned 10 hours of sleep before our first exam and that is the last time I managed more than 8 hours of sleep in this program.

I need a better nights rest for memory and retention, mood, and keeping my brain generally spongy, pliable and absorbent.  So far just going to bed at the right time has failed.

http://sleepyti.me/ is something i’ve been experimenting with along with general good sleep hygiene:

  • Don’t sleep in the same place you work
  • Get enough water during the day
  • Meditate before bed
  • Exercise everyday (okay, this one needs some work)
  • Less sugar and caffeine

I can’t seem to eliminate my computer time right before bed and when I do manage it my mind is filled with code (pseudo code really… if I dreamt in syntax I might be a bit better at it by now).

I almost forgot to close those parentheses just now.

Until then:  sudo sleep