Tag: hack-reactor

Hack Reactor: Day 4 – Time is Inconsequential

Last night, Kerry mentioned to me that I’m half way through my first week. I don’t think I even realized that! On one hand, the time has flown by. On the other, it’s all blurring together. Has it been 4 days already? A week? It feels like time has no meaning at this point. I get home late, talk to Kerry for 30 minutes or so, go to bed, wake up and do chores or get a quick run in and leave for class.

I am having fun and learning a lot, and I had a vague sense of how intense this would be, but oh man. This is really intense!

Anyway, Kerry left for Southern California for a few days and took Benson with her. I’m on my own! Sorry, cats! (Just kidding. I’ll take care of them.)

This morning we had a lecture on prototype chains which is picks up on the stuff we were learning last night. Afterward, my current coding partner, Erik, and I continued working on our data structure problems and were having some pretty good success!

Side note about Erik: When he first moved to San Francisco a few weeks ago, he was staying with a friend of his… who lives on the 18th floor of my old apartment building at the Carillon Tower. Crazy!

Around mid morning, we’re happily coding when an HIR came over to me to discuss my self-assessment results. Oh, shit!!! I just knew it was going to be about the recursive problem that I completely missed doing.

She wanted me to work through it and make sure I understood how things worked. It’s a pretty fair concern though, they probably want to make sure that I’m not trying to just coast my way through the program. That’s not good for anyone. So, we coded the problem from scratch. Man, it was rough but we ultimately got the correct result after about 30 minutes. I think I understand what was going on but I’ll need to spend some time studying and rewriting things.

Lunch was pretty uneventful. It was mostly used for Target errands and studying.

Anyway, the rest of the day was full of tons of lectures that left little time for coding. We ended the day with a “sprint reflection” which we’ll do roughly once a week. Basically, we give Hack Reactor feedback on what they could be doing better. It’s kind of an interesting way for them to iterate on student suggestions and make rapid improvements. Apparently, a number of previous cohorts have had suggestions that have resulted in some of the experiences we’re currently having.

After 8pm, the day was officially over, but I wanted to spend some extra time working on recursion problems. Boy, did I ever!

From 8pm to 9pm I took it upon myself to again rewrite the self assessment recursion problem to see if I could understand it. It would have been done in 30 minutes if not for some stupid bug (basically, I forgot to return a number. Duuuuuuuuuh.)

Once I finished, I stood up and high fived everyone around me. I was so ridiculously excited! Another student told me that this is basically like a drug – you go through these addictive highs and the crash, so you need to try to work on more problems. Hah.

Beth, the HIR (hacker in residence) who helped me earlier was sitting nearby and saw my excitement, so she asked if I wanted to work on another recursion problem. What the heck, let’s do it!

Go figure, that resulted in me staying until 10pm to work on it. Oh, man. I think I’m really starting to get it, but I just need more practice! I don’t want to shy away from these opportunities to learn and become better – this is what we’re paying for, right?

Anyway, this is the latest night by far: arrived at 8:30AM and left at 10:10PM. Damn. I’m going to regret this in the morning.

Hack Reactor: Day 3 – Damn Inheritance Patterns

I thought yesterday was a bit frustrating and hard. That was nothing compared to today. Today was excruciatingly difficult! The amazing thing is that it went from shaking my confidence to my core to leaving with a feeling of exhilaration and renewed sense of understanding.

We started off with our first self-assessment. These are basically timed tests that feature a handful of problems you need to solve (in this case, you’re basically writing some helper functions) and test yourself. Once you’re happy and confident in your results, you push it to Github and submit a pull request on the main Hack Reactor repo. A helpful robot runs your code against its own internal test suite and gives you some basic results.

I did bad. Like real bad. There were 35 possible points and I got 18. One of the reasons is that I just didn’t pay attention to how many problems there were. So, I mostly finished 4 of them, thought I had extra time and went back to clean them up.

When the warning bell sounded to let us know we needed to turn in our tests, I loaded up the Readme file and copied all the grading criteria for each problem (which we submit as a comment on our pull request). That’s when I noticed there were 5 problems.

Oh, shit.

I quickly added some “pseudo code”, basically a bunch of comments in the code about what I would do if I actually had time.

Fortunately, it sounds like a lot of others were in the same boat. Man, oh man. Welcome to Hack Reactor.

Our mid morning lecture consisted of coding best practices and then a very basic intro to data structures. We were turned loose to attempt some problems before lunch.

Telling people about food trucks has turned me into a popular guy! There were about 11 people waiting to leave with me at lunch. It was pretty fun and I got to know some of my fellow classmates a bit better.

Afterward, we had more lectures, this time that focused on debugging tools. We were them split into pairs based on our knowledge of 10 questions related to data structures (I only knew 2 of the 10 answers). So my partner and I were relatively new to this whole coding thing.

From the moment we dived in, it was a disaster. Not between us, though! We were just in over our heads trying to solve some of these new problems! We talked ourselves in circles and couldn’t get any of our tests to pass. We kind of just spun out wheels for an hour and a half.

We went to dinner and were just totally demoralized. He went somewhere to focus on some of the solo modules that were assigned to us, while I started looking up resources that could better explain some of the things I was having difficulty with. After an hour or so, I felt like I was understanding things better. It also helped that a Hacker in Residence sat down with me to explain things.

When my partner came back, he seemed refreshed and was ready to dive back into things with both of our newfound knowledge. Things just clicked and it’s like we really started to understand things. It was awesome!

We even took the time to go back and rewrite one of the solutions that was giving us so much trouble. It’s kind of crazy to think about how low we were feeling earlier in the day and how high we ended up.

Hack Reactor: Day 2

Today was a little more intense. We basically covered the rest of the pre-course review material. My coding partner, Daniel, and I were able to work through the rest of the problems but I felt like I struggled a bit. He exhibited a lot of patience and understanding while helping me to work through things.

Ultimately, we got through everything and I think I understood it! But it does shake the confidence ever so slightly. That said, we were able to quickly work through rewriting a number of functions that proved difficult during our pre-course. Stuff like _.memoize, .reject, .filter, .every and a few others.

The morning lectures were a town hall format where we asked questions based on certain topics we studied on our own. This featured things like scopes and closures. Overall, I think I am pretty comfortable with the concept though people were asking some crazy questions that made me wonder if I was missing anything. Basically, stuff like memory management and such.

Our instructor said that this was unnecessary complexity that we shouldn’t worry about right now, which is really reassuring. One of his awesome quotes was that pre-optimization is the enemy of progress. Really, we shouldn’t concern ourselves with that at all right now. Marcus said that we should optimize our web apps when there’s an actual problem that needs optimization. I’ll need to keep that in mind.

In the afternoon, we finished up rewriting our underbar functions and then had a lecture on how to succeed at Hack Reactor.

There was a lot of great stuff in the lecture that focused on the personality, technical backgrounds (and lack thereof) that go into the ideal HR student / graduate. Things like:

Fixed vs Growth Mindset

- Some think their value is based on some intrinsic quality. Others think is can change over time.
- Growth mindset: Experience joy at failing at a thing and treat it as a learning process.
- What kinds of people need a growth mindset? Effective learners and effective programmers.

Coding isn't fast
- This is why people deride the idea of improving VIM and emacs skills – so little keystrokes. You should be thinking about the program / problem, not the application you use.

How can I tell how I'm doing?
- Don't gauge yourself with regard to others! Only with the curriculum.

Fixed vs Growth Mindset

This lecture took about 1 and a half hours and ended at 8pm. Marcus (who is a co-founder of Hack Reactor and a CTO) dismissed the class but held an optional fireside chat that around a dozen of us took part it. It was kind of awesome to have this personal one on one time with him.

Everyone asked him tons of questions on best companies to work for, taking equity vs salary, interview questions, how to find out if the culture is right, etc. It was interesting but I was personally more interested in what he had to say about how we could succeed RIGHT NOW and in the next 12 weeks.

So, I asked him what those of us from less technical backgrounds could do to cope with or reduce “imposter syndrome,” that tinge of self doubt the seems to crop up every now and then. At this point about a quarter of the remaining students left. Sorry, dudes!

Anyway, he had some great answers in how we should trust Hack Reactor and trust our peers who are helping us and supporting us. He said that if it’s really an issue, we should ultimately talk to HR staff and make sure everything is staying on track. I kind of felt like some of the other students think that I’m considering quitting. No way! I just want to make sure I’m doing everything I can to be in the right place, mentally and emotionally.

Another student followed up a bit later with a question on how students with lesser tech background could avoid being bogged down in complexity and only focus on what we need to worry about. He brought up the point about students asking about memory management techniques and how that sort of thing is unnecessary, especially when we’re just trying to grasp the basics.

Anyway, that was it. Only 2 questions out of 2 dozen that wanted to know how we should deal with things going on now. Overall though, it was really awesome to have more personal communication with him and have him get to know me as well.

Like last night, we wrapped things up just after 9 PM. Another 13 hour day. Crazy! Tomorrow, we start learning new stuff for the first time! It’s all about data structures for the next 4 days.

First Day at Hack Reactor

What a day! I arrived at Hack Reactor at about 8:20AM to find the 7th floor landing overflowing with new students. There was a lot of excited chatting as we waited for the doors to open so we could take our class photos and get out information packets.

We had brief introductions as everyone went around and shared a fun fact about themselves. Then we dived right into it!

We had lectures that talked about life at Hack Reactor and what to expect over the next 13 weeks and it was full of a lot of stuff like how HR can benefit us over competing career acceleration programs.

They mentioned that some of the goals of Hack Reactor are:

Autonomy: Confidence that you can find a solution

“Some problems are going to suck and are broken on purpose. That’s good for you!”

Make us strong software engineers:
- CS (and software engineering) fundamentals
- Native to web
- JS expertise

How hard is this going to be?

They had a slide that said “Very, very hard.” Then another slide that said “Then think about how hard that is and keep going.” It’s a boot camp!

After the welcome lecture, we started to review the recursion exercise we worked on during our coursework as well as the underbar exercise.

Their strategy is to basically give you a small taste of a topic or idea and then throw you in the deep end of the pool. It’s crazy! This was a lot of folks first experience with pair programming. I feel pretty fortunate to have done this before (thanks to a one-day class at Hack Reactor back in March).

My partner and I clicked really well and we were able to quickly work through rewriting both the recursion and underbar exercises. We were even starting to tackle the extra credit. I’m not saying that to brag, it was just such a great feeling to suddenly understand something and work with someone else who bounced ideas back and forth.

I think that’s going to be one of the biggest things during the program. It’s going to make is more effective communicators and able to know how to solve technical problems. I’m really excited about it!

One thing I noticed is that time REALLY flies. We start working on an assignment, and before I know it, time is up. It’s kind of amazing. I think that’s going to be indicative of how the whole program is going to.

In the evening, we had a mixer with the senior class – these are the people who are starting the second half of the HR program (they are now in week 7). We played a bingo game where we had to match names up with some random and crazy facts that people had previously written about themselves. It was a great way to break the ice.

It seems like there’s a ton of ridiculously friendly, smart, enthusiastic, and positive people in my particular cohort (and enrolled in the program as a whole).

I wrapped up things at around 9:10PM and just hopped on BART to head home. That’s about 13 hours today. Wow. Oh wow!