Sunday, December 25, 2016

New Year's Resolutions for 2017

Too early for this? Nah, I don't think so.
  1. Finally buy my Google Pixel phone, in the really really blue. I've been using Matt's cracked iPhone 5 for way too long. The Pokemon Go app on this phone can't even load anymore.
  2. Pre-Hackbright goals: 
    • Finish Learn Python the Hard Way
    • Redo Codecademy's Python track as it's been way too long since I revisited it
    • Redo Codecademy's Javascript track
    • Complete the "More Python" series in LPTHW when released
    • Learn basics of Git
      • Complete Codecademy's Git track
      • Git tutorial from the PyLadies Meetup
    • Complete Codecademy's Command Line track Accomplished 1.22.2017!
  3. Vacations to conquer
    • Austin food pilgrimage
  4. Get something nice for display/use at my parents' new apartment
  5. See these DJs:
    • Gryffin again
    • See Illenium  Crush 2017--thanks boyfriend!
    • See Elephante, hopefully for free as I've missed his 3 free shows in 2016 birthday present! thanks boyfriend!
  6. Finish all the scarves I've had yarn for for the past few years
  7. Skype my parents at least twice a month
  8. Try 10 new recipes (see what I've experimented with so far!)
    • 5 Min Scallion Fat Noodle: http://ladyandpups.com/2014/09/29/5-min-scallion-fat-noodle/
    • Wahlie Kitchen's Sweet & Sour Chicken: https://www.youtube.com/watch?v=WXBN4jFMqDk
    • Banana Pancakes
    • Creole Salmon
    • Roasted Cauliflower (served with hummus!)
    • Shanghai Cai Fan
  9. Learn how to open a bottle of wine with a bottle opener. I've been relying on friends who can do this in 10s too much - well that was easy thanks to the Boof.
  10. Run at least once per week
  11. Run a 5k
  12. Watch a live comedy show
  13. Attend a hackathon
  14. Get a new hairstyle/haircut
  15. Establish a skincare routine
  16. Get a job post-Hackbright in 2017!

Thursday, December 22, 2016

HACKBRIGHT BOUND - APRIL 2017!



Words cannot describe how ecstatic and in disbelief I am that I got into Hackbright, merely TWO days after submitting my virtual interview.

Funny thing is, they emailed me the night of Dec. 20th, but my phone had died while I was at a National Sangria Day event at Spark Social SF, celebrating the last night before my workplace closes for the holidays and reuniting with old friends...too busy to even think to check my email until the next morning. I could have been celebrating for one more thing, but I guess this was a sign that this news warrants a separate celebration on its own!

The next morning, in a slight hungover haze, I had to do a double take at my phone screen while on my NX commute to work to make sure I read the Hackbright admissions email correctly. I was speechless for a minute and could only cling to my boyfriend, managing to utter the words, "I...got...in!"

I was trying to hold back tears of joy and shriek in the least conspicuous way from 19th Ave all the way to Bush/Montgomery. Finally I had to resort to binkying (rabbit speak, see GIF below) embarrassingly all over the streets of FiDi after getting off the bus to fully be able to express how I felt.


I still cannot believe that I have finally come to this moment--a moment I've been waiting for since discovering Hackbright back in May 2015. By the time I start the fellowship, it will have been two years since this dream first took hold of me.

AHHHH!! Best holiday gift ever, ever, ever!

Monday, December 19, 2016

Here's to hoping for a Hackbright future

So I kind of suck at this consistent-blogging thing, but it's also interesting to see how much has changed since my last post. Since my last post, I've moved from Codecademy tracks onto Learn Python the Hard Way exercises, which have been really interesting because I'm not being "babied" by the all-in-one coding platform on Codecademy.

I've had to learn how to get really familiar with Terminal commands and using Atom. Being instructed type out and understand every single line of code as shown in the LPTHW exercises has also been strangely refreshing, albeit somewhat tedious at times.

Oh, and also, since my last post, I've finally managed to submit my application to Hackbright. I admittedly spent about five times the amount of time on the first part of the application (work history, my interest in Hackbright, and the expertise "essay") than on the coding challenge, which required some careful thought process but wasn't bad at all. It took me a few hours to complete the coding challenge. 

Two weeks after I submitted my application, I got invited to do a virtual interview through the Kira Talent platform. I was ecstatic but also nervous, because having done a ton of research on their interview process, I knew this was completely new and different. I completed the interview yesterday, but I hesitate to write more just yet before I hear anything...if at all.

Fingers crossed!

Friday, September 23, 2016

Finished PHP!

It's 4:38am and I'm extremely jetlagged, but feel so accomplished! Wanted to document this moment, although I'm a little disappointed to say that Codecademy recently changed the look of its dashboard from this:


to this:



and for some reason decided to delete my record of having completed their Javascript course, which was the first course I'd ever done on their platform. Oh well, I know in my mind, heart and on this screenshot that I did in fact complete that course, and that they will be deleting my record of completing the Python course as well in a few days due to edits being made to that course.

Even though I wanted to try Ruby before taking a deeper dive into any language, I think I might take a break from Codecademy for a bit. I'm going to focus on Learn Python the Hard Way next after I finish the intro command line and Git tutorials posted on the PyLadies Meetup event page. Here's to happy coding!

Sunday, August 21, 2016

My First Pair Up With Pair Up!

Hello friends, long time no see. Now, I know it's been almost three months since I last blogged, but I haven't completely fallen off the map, at least not with coding, and especially not with seeing the world. In fact, I can proudly say that I've actually been putting myself on the map, so to speak!

Since my last post I have:

  • Finally traveled to and explored Seattle
  • Finished the Codecademy Python course
  • Gotten myself a personal cheerleader, aka a supportive boyfriend who squashes any self doubt I have about becoming a software engineer/programmer
  • Traveled to New Orleans with some of my best friends
  • Traveled to Las Vegas for possibly my last music festival there, ever
  • Completed the Codecademy jQuery course
  • Attended [yet another] Hackbright Academy info session
and....drumroll please...........

Tried my hand at pair programming!

Yes, this daunting thing called pair programming, which I've been hearing so much about but have been too shy to try out. It's where you get paired with someone at (hopefully more or less) your skill level to work on a project, and at any give moment, only one of you is coding. Yes, the other person without physical control of the code is left with just two tools: their brain + their mouth. They talk their partner through the code, and through talking they learn.

And I can say that that is truly the best learning experience. Nothing teaches you more than your own teaching, especially when you can't be all, "Just let me do it, dammit!"

I signed up for my first Girl Develop It's "Pair Up" Meetup not knowing what to expect. There are 4 levels: 1) HTML/CSS; 2) Intro Javascript; 3) Working Javascript; 4) Advanced Javascript
I grouped myself into Level 1. This was the perfect way for me to get a nice hands-on refresher of HTML/CSS (especially CSS, lookin at you) without dragging some poor soul down with my ambiguous Javascript skill level.

The meetup was held at Dev Bootcamp, which was great to check out because I'm always curious to see the different setups and learn about the different programs of different bootcamps. What language they focus on, how long the bootcamp is, what their day to day programming life looks like, what post-grad life looks like, etc. It's great that they have a very set system in place since they've been around for so long, with added benefits such as mandatory yoga and counseling services, but 19 weeks (with 9 weeks of self studying before the 10 week in person session) didn't seem to be the best fit for me.

Anyway, to prep for this pair programming Meetup I did some self studying of the exercises for Level 1 a few days prior, and as it turned out it was a great decision because nothing feels better than coming prepared. When I got paired together with a nice girl named Rachel I was able to take the first turn at walking her through the first few exercises since I had already gone through them before. Talking her through the exercises proved to be initially challenging in the respect that I was trying really hard not to just take over the keyboard and start typing out the code, which would've been not cool at all.

However, once I started getting comfortable translating my thoughts into verbal instructions, I really began to understand why pair programming is so important in not only learning for one self but also in building a good relationship with whomever you're collaborating with. If I ever were to build a big project, I would need to learn how to

After working through quite a couple series of Level 1 exercises in 2 hours of pair programming , our Meetup came to an end. I thanked Rachel for being a great Pair Up partner and we parted ways, she to getting a new car and I to an art gallery. I left feeling more fulfilled on a Saturday noon than I had felt in a long time. If given the opportunity to pair program again I would not hesitate to be the first one to RSVP!

Monday, May 2, 2016

4th Annual Mini PyCon

One thing I love about attending these Python meetups and events is that they always give me a new perspective on something I don't normally have to think about on a daily basis. Today I attended the 4th Annual Mini PyCon hosted at Lyft HQ in the Mission (right behind Southern Pacific, who knew?), and to say that I thought I would be completely out of my element would be an understatement. I didn't think I would really be able to learn much given my extremely novice skill level at Python, but I was surprisingly able to absorb a good amount of knowledge at all the presentations I attended.

Granted, two of the three presentations I attended weren't focused on actual code (but nevertheless still very helpful, one about user research the other about design), but still. New knowledge and perspectives. So when I first got my food, me being my usual loner self in these meetups, decided to sit down at a table next to two nice ladies, and turns out one of them, Chloe Mawer, was one of the presenters! At first I thought her presentation title "Trainspotting, real-time detection of a train’s passing from video" was a metaphor for something really deep (which it could be, I wouldn't rule it out completely), but as it turns out it really was about train-spotting. As in, "Look, a train is passing by my window!" Her presentation was amazing, and given how she told me she had just finished her presentation mere hours ago, I was even more impressed.

The whole thing was so simple, yet revealing about the way computer scientists, or scientists in general maybe, have to think. You are presented with a problem/objective. It's easy to think it's easy to get a solution, until you start considering all the different parts to solve that problem/reach that objective. How do you tell a train is passing by your window? A normal person would just look out the window and be able to see one coming, but how do you tell a computer to look?

It's all about change; change in the environment before and after a train has entered the scene. Once you've found a way to detect a change, how do you know it's a train? You eliminate distractions. How do you know what direction it's going towards? You compare what would be telling of a left-moving train from a right-moving train.

Really, it's all about picking things apart and addressing them one by one to make them work together to do what you want. Eliminating the distractions, asking the right questions, and finding the solution to each component in the simplest way possible. This is something I need to continue working on. Sometimes I tend to over think things when I'm doing Python exercises, like adding in extra for loops and variables because I get scared my code would otherwise not work, and then later realizing that their existence was not necessary at all.

I was so glad that I attended this Mini PyCon. Eye-opening, and the perfect Motivational Monday reminder to keep going!


Wednesday, April 27, 2016

Codecademy vs. Google Python Class vs. How to Think Like a Scientist

Every day, like clockwork, I get emails from various free online course platforms to try out a new coding class. Like my CMB app, each email I receive is telling me that this course is the one. As with online dating, sometimes I wonder if the more options there are for these courses, the harder it is to gauge where I stand.

Don't get me wrong, having options is a good thing because it means I won't settle, and I like having tons of free resources at my disposal when it comes learning. However, it also means that every option is different--good and bad--in its own way, and it almost feels like I'm comparing apples to oranges.

When I first decided that I would delve deeper into the world of coding, I didn't know where I should pick up from where I left off a decade ago. Much of the code I knew, like my GeoCities page, had become obsolete (e.g., since when did <i> to Italicize words become <em> in HTML?). I had taken a course here and there on Coursera back in 2014, which to its credit has a great library of free classes from top notch universities, but an ambiguity in measuring a potential gap in knowledge when transitioning from one skill level to another. In other words, if you're taking Stanford's Intro to XX in one semester, how do you know you can pick up right where you leave off at Carnegie Mellon's Intermediate XX in the next?

After doing a quick Google search on free, self-paced online coding courses I stumbled across Codecademy, which was the perfect platform to segue into a variety languages without being confused by different built-in interpreters and such. There is simply one window where you write your code, one button to run your code, one to reset your code, and one window to display the output of your code.

After refreshing my rusty HTML & CSS skills in one Codecademy course and introducing myself to Javascript in another, I couldn't help but wonder--how does the pace and content of Codecademy stack up against other online courses? Was it simpler, more in depth, did it focus more on certain topics over others?

I went ahead and completed 60% of the Python course before I decided to explore what other introductory level Python courses were teaching, all the while reading How to Think Like a Computer Scientist on and off on my morning BART rides to work. I was at the point in the Codecademy course where they were giving me one exercise after another just for practice, so I figured I could always go back whenever I wanted to.

I've heard of the Google Python Class by Nick Parlante here and there and decided to give it a shot. It's definitely a breath of fresh air to put a face to an actual instructor, although I do have to admit that while Parlante's enthusiasm for the language and class is endearing, I would have been extremely lost if I didn't have prior exposure to the language before, . 

Everything is simplified in a way, and so are the exercises, but there are certain snippets of code and syntax rules that aren't explained very well, or simply glossed over. Much of the "standard" running code is already filled in the exercises, and all you need to do is input code where instructed. There is a lot of "there's xxx code here, but we'll get to this later", and "this" ends up never materializing in the course again, or so I'm guessing. So far I've made it through Day 1's lecture videos, and will be working through the reading material of dictionary before starting the exercises.

Perhaps this Google Python course was designed for people who have good experience with other languages and can easily translate that to Python without needing the know-how's and why's of all the code that ties a program together to make it work., nevertheless I'm determined to finish this course just to cross it off the list. If I really get stuck, I'll probably bring it up to one of the TAs at the PyLadies study groups.

Speaking of PyLadies, I just attended my first Meetup in this group last Monday. It was a Beginner's Workshop that focused on material and exercises from How to Think Like a Computer Scientist, which was great because after months of reading the book on my phone during my morning commute, I could finally see what these exercises were about. 

Like Codecademy, this book/course hybrid has its own built-in platform where you can input code and run it on the same window to see the output. The Turtles exercises reminded me a lot of Scratch, which I had to use back in UCSD for an Intro to Comp Sci class, dragging and dropping snippets of code to build out a program. It's a great way to visually map how a programmer should think about arranging their code, but not so much in giving you practice in hands-on writing code. Then again, I guess that is the point of the book, right? How to think like a computer scientist before your start writing like one.

Much of what I read during those two hours I already knew, but that's probably because I keep going back to the beginning by trying out different courses to see if the knowledge I'm being taught is even across the board. Makes me wonder, at what point do you progress from intro level to intermediate? Do programmers even define it this way? It's intimidating to think about joining study groups that are considered non-intro level because there's no way I can tell what level I am. For now I think it's fair enough to just say I'm intro level until I finish the Codecademy, Google, and How to Think Like a Scientist Python courses.

Anyway, at the end of the study group, I met three great Hackbright alumn ladies, who told me a bit about their experience at Hackbright and the admissions process. It was great talking to them because I'd attended a Hackbright Admissions info session a few months ago, but didn't get to really talk to the alums. Again with the theme of the night, they said their experience admissions really wasn't about how much they knew beforehand, but how they knew.

More on that in the coming blog posts. I have another PyLadies beginner's study group today. We'll see how that goes!

Thursday, April 14, 2016

Quarter Life Crisis, or Just the Road Not Taken?

The second Karen picks up a pen, she starts to draw. She draws through happy times, through sad times, through boredom.

At age 10, Karen is introduced to HTML in computer class.

Karen teaches herself how to build websites (on GeoCities, may you RIP) using HTML and CSS by age 11.

At age 12, Karen's artistic side kicks and she decides she wants prettier graphics for her website. She teaches herself Adobe Photoshop 6.0, and integrates her work into her website.

Karen gets her website hosted by a kind teenager who owns the domain digital-grl.net (now obsolete), and learns how to use FTP for the first time.

In middle school, Karen experiments more with graphic design and decides she wants to be a graphic designer.

In high school, all of Karen's friends decide they want to major in business for college. The FOMO side of Karen gets the better of her, and she decides to pursue marketing, somewhat of a cross between graphic design and business.

The idea of majoring in business doesn't excite Karen all that much. For her, it's always been about building something out of nothing. Amidst standardized tests, Karen finds solace in baking. She bakes cakes, cookies, and pies every week and brings them to school. She finds it wonderful to be able to throw together a few ingredients, heat the mixture up, and somehow create something that sustains life.

Karen attends UCSD for college. There is no business or marketing major, so she double majors in Economics & Communications, the closest compromise.

By junior year of college, Karen witnesses people enjoying their CS majors, and wonders if she should have taken the other path from the very beginning and chosen coding instead of graphic design. However, in her mind, she was 3/4 done with college and couldn't turn back.

At 22, Karen graduates UCSD and starts her career doing marketing in-house at a healthcare tech company. After half a year, she feels stagnant at her job. She was working in a slow environment, in a slow industry, in a slow city. She yearns for change and a faster paced life.

At 23, to stimulate her mind, Karen starts cooking a lot, and takes an introductory Javascript course on Lynda and a Java class at UCSD Extension. She wants to complete the three-part Java certification but gets sidetracked trying to find a job--any job--to get out of her safe but boring position at work. She decides to move to NYC to join her boyfriend.

Amidst interviewing for marketing jobs in NYC, Karen's now-ex breaks up with her. Confused and sad, Karen contacts her college roommate, a San Francisco native, and asks her what she should do.

"You've always wanted to live in San Francisco. Why don't you move here?"

Within 2 weeks, Karen finds a job at a marketing agency in San Francisco. She moves into a great apartment with her college roommate and old UCSD friends. She loves her friends, her apartment, her boss, her coworkers, and her job. She loves SF.

But what about coding? It's always been there, itching to push past all the things that came in between. What if she had continued coding? What if all the fortunate and unfortunate things that led up to Karen being in SF, the tech hub of the nation, was so she could finally, finally, stop wondering?

-----

Has this path been a long time coming or is it a quarter life crisis? Or possibly, both? This year, I've decided that I need to stop wondering "what if?" and find out. Hence, my journey to cooking up some code, and more, at age 25.