Today was the fourth day of class. We talked about list slicing in the lecture in the morning. I still have a lot of questions about it, but they're still mostly answerable by playing around with toy scripts or even in the python interpreter. The exercise today was basically writing list functions from scratch using only slice operators. I find list slicing to be incredibly frustrating. I think part of it is that it's different than what I'm used to in Fortran and also that it's not something that i immediately caught on to. My partner and I never finished the exercise, but I will definitely be working on it tomorrow. Today was also picture day, which is never a good day for me. They mollified all of us by giving us Hackbright branded graph paper notepads. I guess it made it better. Or something.
In the afternoon, we talked about lists, iteration, and memory allocation. Apparently, if you don't pay attention to your variable assignment, you can have memory leaks by having things that are no longer connected to anything that is being kept track of in the code, but are connected to other unconnected areas in allocated memory. This makes python think that this shouldn't be cleaned up during garbage collection. This is not something I'm super concerned about right now, but it's another good thing to tuck in the back of my mind for when I'm working on my project and it runs crazy slow. I was totally having flashbacks to the pointers lectures in CSE 231, but I gritted my teeth and made sure I understood it this time around.
After classes, a subset of us headed to Eventbrite for the Girl Geek Dinner. It was pretty awesome. The food was great, there was a lot of alcohol (that I didn't touch because my tolerance is about nil at this point), and I actually tried to network a bit. Eventbrite seems like a great place to be and the company culture is awesome and caring of both their employees and customers and forward thinking. And they also hire Hackbright grads and they're looking for data scientists. I should probably start looking into data science Coursera programs right about now. We also got some fancy GGD swag, in the form of a really nice, sturdy tote bag, a pen, and a GGD branded moleskine. Two notebooks in one day? IS THIS REAL LIFE?
And I realize that this post is a bit thin and I have no pictures of code, but it's sort of late and I spent a lot of time playing around with chremacs and some horrible python-for-chromebooks to attempt to do the homework. I really just need to get my shit together and install Chrubuntu.
03 October 2014
Hackbright Day 4 and the Eventbrite Girl Geek Dinner
tags:
Hackbright
02 October 2014
Hackbright Day 3: Where I get distracted before talking about HB
| From What Should We Call Grad School |
Someone from UT posted that on facebook. I thought it was apt for how I'm feeling right now about Hackbright. I need to do the homework. I want to continue on in the exercises that we do in class to improve them and to play around with the extra stuff. I really should finish the pre-work. All of this in addition to the personal things that need to be taken care of, including but not limited to: finding a new place for three people to live by November 1, finding a school for when Ramona finally arrives,
figuring out how to safely install ChrUbuntu on my Chromebook, finding Colby a job. As much as grad school was terrible and stressful, it never felt like I was putting anything on the line. This entire move has been stressful and risky, but it's been exhilarating all the same.
Today was day three of Hackbright. I thought that I was going to be early, but when I sat down on the BART, I realized how crazy short my dress was so I stopped into Walgreens to buy a pair of tights. Unlike in Austin, some of the Walgreens out here are experiences in an of themselves. You might even call them a piazza. Totally reminded me of this scene from You've Got Mail:
ANYWAY. Back to Hackbright. We had lecture in the morning and we talked a bit about functions from the previous night's homework. My solution was different than what was discussed in class, but I think it still worked in the right way. We then went on to pair program. I think I was clearer in my descriptions of what I was doing while I was "driving" (aka typing), so that's good. I think I also need to just sit on my hands while I "navigate" (aka watching my partner type) because I'm like a 2.5 year old who can't sit still unless Dinosaur Train is on.
There were two exercises today and they involved functions and calls to functions. We essentially wrote a variation on a Polish Notation calculator. First: I love infix notation. Second: I now know how dictionaries (so basically the same thing as hashes in Perl and wow, I totally never understood them until now. Sorry, Chris!) work and how you can call a function from a dictionary entry.
My partner and I moved through the exercises fairly quickly, so we also did a "week one" project where we were given a set of files that had random names and we needed to create directories that were named a, b, ..., z and place the files in the directory that corresponded to their first letter. Partly because I miss doing terrible, wonderful things with the command line and partly because I just wanted to see how I would approach the problem on my own, I shell scripted the assignment first. We then used python to for reals solve it. I asked one of the instructors if this task was something that was supposed to happen in python in real world applications or if we could do something like this using shell scripting since it seems like that was more efficient. He indicated that it was fine either way. The one question I still have is how can you access a shell script that you wrote yourself from within a python script? I've tried system.call("/home/user/iheartawk.scr") to no avail.
And now I should probably go to bed or do the homework. The homework is actually to rewrite a code so that it's more understandable. At first I didn't understand why the code was hard to read, but then I realized that years of reading my advisor's decades old F77 code has made me actually pretty okay at reading other people's code. It's like I have a skill or something.
tags:
coding,
Hackbright
01 October 2014
Hackbright: Day 2. An exploration in my pair programming partner's patience.
We spent the morning talking about the blockly maze exercise we did yesterday, along with algorithms in general. It turns out that the "left hand rule" of maze solving basically says, if you can turn left, turn left, otherwise, if you can go forward, go forward, and worst case scenario, go right. This has a real-world application of being a way to find items in file systems that are structured like "trees". It makes me think I should mess around and try to write my own locate script to see if I can make it work.
After that, we paired off to today's exercise, in which we created a guessing game. Pair programming is something that I am very much not good at. I speak quickly, I get excited by ideas (and have the subsequent unintelligible verbal diarrhea), and I'm not used to thinking out loud in such a way that it is decipherable to anyone but myself. To anyone reading this with whom I have pair programmed or will pair program with in the future: my deepest and sincerest apologies.
The guessing game was pretty straightforward, where it was a game where the user guessed a random number between 1 and 100 and then would be told if their guess was right, too high or too low. Then, we added features to alert the user when their guess was out of range or if they entered a string. Determining whether or not the input was out of range was easy. Trying to figure out if it was actually a string was much more difficult.
We prompted the user for input using the command:
guess = raw_input("Guess a number between 1-100")Due to the way that python works, the raw_input function converts anything that is entered into a string, so if the user inputs a number, for instance, "67", we need to convert that number from a string to an integer. This is easy enough to do:
guess = int(guess)BUT, if the user entered something that wasn't a number, e.g., "poop", then doing guess = int(guess) is going to puke on you. The way that we solved for this was to write a function that compared the input to a string of all the arabic numerals to see if the input contained only numbers (and thus was able to successfully run guess = int(guess)). The function was actually pretty nifty:
Finally, we added the functionality to play another round and to also keep track of the high score. I want to play around with it a bit more to see if I can make it look better and perhaps function faster. And now I should probably go to sleep or pack since we're moving again during the day.
EDITED TO ADD:
I totally forgot that we talked about git. git is way better than cvs and apparently I was doing horrible, terrible, no good things in cvs before, so it's good that I'm now committed (HA, GIT it??????) to git. Tabula rasa, amirite? (I understand that that's not at all what is meant by that.)
tags:
coding,
Hackbright,
python
30 September 2014
San Francisco Eats
Having been in San Francisco for less than a week, I am clearly an expert in the food scene. We tried to cook at the place that we're staying, but it's hard because all of my cooking stuff is packed away in the car or in Michigan. We even decided to leave our spices in the car, so when I decided I was going to make tacos tonight, I realized that it wasn't going to happen. We've been eating out a bunch, probably more than we should, but here's a list of some of the places that we've eaten at that I've enjoyed.
We went to La Oaxaqueña in the Mission District tonight for dinner. Colby got a "spicy pork" taco (he's super awesome at details), I got a sundried tomato + goat cheese pupusa and we split a tlayuda. I had never heard of a tlayuda until we went there. It's essentially a Mexican pizza-like dish, with a crispy tortilla as a base, covered in refried beans, cheese, salsa, lettuce, and (in our case) chipotle chicken. Colby said that the taco was the best thing he's had since we've been to SF. The tlayuda was similarly delicious and I am completely angry that I didn't know those existed until now. We almost didn't go there because they sometimes cook with grasshoppers and I was terrified of cross contamination, but I'm glad that we went. Only later did we find out that it's a "hipster hotspot" and "super sketchy".
![]() |
| This also satisfied my avocado craving |
Truly Mediterranean is in the Mission District. It serves schwarma and falafel on lavash. Colby got the lamb and I got the chicken kabob and it was wonderful. While we were waiting, one of the cooks gave us a sample of falafel. Those were incredibly delicious and definitely worth a trip back.
![]() |
| This is the only picture I have of that |
![]() |
| Nothing look as delicious as blurry spinach, AMIRITE?! |
Sugar Cafe and Coffee Bar is in Union Square, right next to Hackbright. My hackathon team (I swear I'm going to post about it soon!) met there to discuss ideas. I had a super delicious latte and a tuna salad that was also very good (and super low carb, might I add). I am 90000% sure that I'll be making a return trip because I rely on coffee the way python uses white space. Or something.
![]() |
| latte + chromebook = instagram picture |
![]() |
| prettiest tuna salad ever |
29 September 2014
Hackbright Day 1
Today was the first day of Hackbright and like everyone else who is blogging their way though it, I felt the need to recap.
My first accomplishment of the day was making it to the office on time and without getting lost. GO ME!! We had breakfast provided, which was nice, and then settled in with a getting-to-know-you type of game, where I didn't really get to know anyone. I just know that most people either don't like Jason Mraz or are willing to admit their fondness for his music, but not too many people consider it their guilty pleasure. We then heard from some of the instructors about what the program was like, two alumni about their experiences, and then learned about pair programming via a skit and then a short talk.
3 Things I Didn't Know About Pair Programming:
Thing I Didn't Know About Pair Programming, But Largely Suspected:
It's okay, though. I have plenty of time to get better and I think that having other people who think differently than me is helpful. I hope. And I hope that I didn't make the first day useless for my pair programming partner.
We then went to lunch, came back for our first pair programming exercise in blockly, heard a lecture on the command line, and then had our second pair programming exercise, this time about the command line. This was a tutorial by Zed Shaw, as part of an appendix of Learn Python the Hard Way. This is the first time I had ever used "pushd" and "popd". Those are not useful commands. AT ALL. It's okay, though, because I asked one of the TAs about it and she also said that she's never used them.
My biggest complaint of the day is that they're not using emacs, but rather a text editor called sublime. In fact, emacs wasn't even installed on the computer in the lab. Maybe I'm just a crusty old astronomer (I did do extensive parts of my thesis using supermongo, after all), but gahh.
And now it's time to talk about impostor syndrome. My interview process was different than most of the other students. They kept telling everyone, "don't worry, we chose you because you're awesome and we know you", but I'm terrified that they don't actually know me and that my alternative path to Hackbright was based on networking and not actually because I'm going to do well. Everyone seems really motivated and capable and I'm back in my first year of grad school wondering how the hell I even got in. People talk about coursera classes they've taken and different things they've done and I've spent the past month procrastinating on finishing up the pre-work and moving across the country. Everyone said I needed a mental break after my thesis so I didn't implode, and they were totally, completely right. But I wonder if I took that break at the expense of being prepared. I guess we'll see.
Also, I participated in a Hackathon last weekend, but I think I'll wait to recap that for a later post.
My first accomplishment of the day was making it to the office on time and without getting lost. GO ME!! We had breakfast provided, which was nice, and then settled in with a getting-to-know-you type of game, where I didn't really get to know anyone. I just know that most people either don't like Jason Mraz or are willing to admit their fondness for his music, but not too many people consider it their guilty pleasure. We then heard from some of the instructors about what the program was like, two alumni about their experiences, and then learned about pair programming via a skit and then a short talk.
3 Things I Didn't Know About Pair Programming:
- You're supposed to switch after every 2-3 LINES of code, or at least every 5 minutes
- You're supposed to talk your way through it
- You're not supposed to just put one person at the keyboard with the other person "navigating"
Thing I Didn't Know About Pair Programming, But Largely Suspected:
- I'm not particularly good at it.
It's okay, though. I have plenty of time to get better and I think that having other people who think differently than me is helpful. I hope. And I hope that I didn't make the first day useless for my pair programming partner.
We then went to lunch, came back for our first pair programming exercise in blockly, heard a lecture on the command line, and then had our second pair programming exercise, this time about the command line. This was a tutorial by Zed Shaw, as part of an appendix of Learn Python the Hard Way. This is the first time I had ever used "pushd" and "popd". Those are not useful commands. AT ALL. It's okay, though, because I asked one of the TAs about it and she also said that she's never used them.
My biggest complaint of the day is that they're not using emacs, but rather a text editor called sublime. In fact, emacs wasn't even installed on the computer in the lab. Maybe I'm just a crusty old astronomer (I did do extensive parts of my thesis using supermongo, after all), but gahh.
And now it's time to talk about impostor syndrome. My interview process was different than most of the other students. They kept telling everyone, "don't worry, we chose you because you're awesome and we know you", but I'm terrified that they don't actually know me and that my alternative path to Hackbright was based on networking and not actually because I'm going to do well. Everyone seems really motivated and capable and I'm back in my first year of grad school wondering how the hell I even got in. People talk about coursera classes they've taken and different things they've done and I've spent the past month procrastinating on finishing up the pre-work and moving across the country. Everyone said I needed a mental break after my thesis so I didn't implode, and they were totally, completely right. But I wonder if I took that break at the expense of being prepared. I guess we'll see.
Also, I participated in a Hackathon last weekend, but I think I'll wait to recap that for a later post.
tags:
Hackbright,
impostor syndrome
25 September 2014
San Francisco Things: Clarion Alley
The first apartment that we're staying in backs up onto Clarion Alley in the Mission District. It's actually incredibly spacious for San Francisco standards, and I kind of wish we could stay here for the duration. Clarion Alley is known for the colorful murals that cover its buildings. The Clarion Alley Mural Project has been around for over 20 years and the murals are updated and changed frequently. We walked down the alley and took some pictures while we were out and about today.
The stairs in the second picture actually lead up to the apartment we're staying in right now. I guess it's the only apartment that's painted as part of the CAMP.


The stairs in the second picture actually lead up to the apartment we're staying in right now. I guess it's the only apartment that's painted as part of the CAMP.
| There were a lot of memorial works up. |
| Imma go out on a limb here and say that this artist is not a fan of gentrification. |
| That's actually on the sidewalk. On the other side of the alley there were giant piles of human shit. Lovely. |
| That might be my favorite one, it's incredibly intricate. |
| Another interesting piece |
And now I should probably finish up my pre-work since tonight and tomorrow are my last days where I can really do anything about it.
tags:
Hackbright,
San Francisco,
SF things
24 September 2014
San Francisco Day 1
A lot of the people who have done Hackbright have blogged about it. In fact, that's how I even heard about Hackbright to begin with. I toyed with the idea of starting a new blog, but this has been so long neglected that I'm sure that my readership is like... me and the 3 people who probably put this blog in a feed reader and forgot about it. So, hello again. When I have the opportunity and inclination, I'll post things about Hackbright and generally what's going on with us. I think it'll be nice to remember these days because it's going to be a unique and intense period of time.
We're currently in San Francisco proper now. We're staying in an apartment in the Mission and it's great. It's actually incredibly spacious and the airbnb host actually works for airbnb, so she had a ton of stuff out for us. It's been really great. In an effort to save money, we're trying to make most of our meals at the apartment. Our first meal was Tuscan tuna and bean salad, with a handful of arugula thrown in and green onion subbed for shallot and the herb. I think this is going to be our inaugural meal in every new place we stay.
Back to Hackbright news, I'm slogging my way through the rest of the pre-work. I'll have to switch my focus to the hardware hackathon that I'm participating in this weekend, but I still have two days to make it through the rest of the required modules and then try to fit in whatever else I can. I definitely thought I'd have a lot more time to work, but having time where I didn't work like crazy was probably a good thing for my mental health and ultimately my ability to succeed in the program.
We're currently in San Francisco proper now. We're staying in an apartment in the Mission and it's great. It's actually incredibly spacious and the airbnb host actually works for airbnb, so she had a ton of stuff out for us. It's been really great. In an effort to save money, we're trying to make most of our meals at the apartment. Our first meal was Tuscan tuna and bean salad, with a handful of arugula thrown in and green onion subbed for shallot and the herb. I think this is going to be our inaugural meal in every new place we stay.
Back to Hackbright news, I'm slogging my way through the rest of the pre-work. I'll have to switch my focus to the hardware hackathon that I'm participating in this weekend, but I still have two days to make it through the rest of the required modules and then try to fit in whatever else I can. I definitely thought I'd have a lot more time to work, but having time where I didn't work like crazy was probably a good thing for my mental health and ultimately my ability to succeed in the program.
tags:
Hackbright,
San Francisco
Subscribe to:
Posts (Atom)






