Belgium is pretty great

November 25, 2014

One of the reasons I was particularly looking forward to going to ArrrrCamp is that it's held in Belgium and I'd never been there before. I was able to squeeze in a bit of sightseeing and had a really fun time! I would definitely go back again some time.

The conference is held in Ghent. I flew in to Brussels and took the train up to Ghent, which was a ~50 minute ride. The trains run about twice an hour. There are ticket vending machines around, where the main screen interface is in English but then the instructions to the side where you swipe your credit card weren't, so I never managed to make them work for me. Not sure if my card was getting declined (I'd put a travel notice on my card beforehand, and it seemed to work everywhere else, even if it was a bit slow to get the approval sometimes) or it wanted some input from me that I didn't know to give. There are ticket windows with actual people, so I ended up getting my tickets from them. Pretty much everyone spoke fluent English and I never felt condescended to for only speaking English too, so that was really nice.

It would have been helpful to have some euros in cash on me, particularly coins. I purposely withdrew a bit more than I expected to need for this trip, so I'd have a few bills and coins for the next time I'm in the EU and be able to get by until I can find an ATM.

I basically followed the city's guide for if you have a half-day in Ghent. Ghent is really cool, it's got plenty of old structures (and art museums that I'd hit next time), but it's quite developed as a city and is obviously still a place where normal people live and work. I really liked that about it. I walked by a high school just was it was letting out and there were so many stylish students, from the Belgian equivalent of the punk/goth kids to the hipsters to girls wearing hijab.

Church with the panels: 4 euros, I got here just 20 minutes before closing, so wasn't able to listen to too much of the audio guide, but what I did hear seemed like an accessible and thorough explanation of the different panels. The church didn't look like much from the outside with a lot of restoration work going on, but it was worth it even just to walk inside and see the immensity of it, with the great height and the stained glass windows. There were signs saying not to take photos, so I refrained.

Belfry: 6 euros. This was fun. You get a laminated self-guided tour with your ticket, and there's a lift from the second floor up to the top level you can get to, so there's not too much of climbing narrow stairs. Great views of the whole city from the top level, where you can walk around outside a bit, though it's quite narrow and I'm glad there wasn't anyone else there since I went so close to closing time. Mostly fairly narrow openings to the outside, so it might be ok even if you have a fear of heights.

Each of the different floors had a bit of mini-exhibit. I accidentally timed it well to be at the top during the 5:30 bells, and could see the mechanism running that. There were also an exhibit of the retired versions of their famous dragon weathervane. That dragon is actually kind of adorable! What I might've enjoyed the most was this short documentary playing on a loop about how the bells are cast that had English subtitles. Lots of fun kids toys in their gift shop, like wooden swords, slingshots, and other dragon-themed items.

From there, I walked over to see the castle. My guidebook said there isn't much inside, and it had closed at 6, so I just walked around the outside. It's not too big but it's still just funny to me that there's this medieval castle in the middle of cars and tram lines. I found a nice view around the back that basically looks to me like the castle in Robin Hood.

Speaking of the cars and tram lines, you should be careful when walking around just because the sidewalks are pretty narrow and there isn't really the concept of a shoulder to the road as a buffer zone between pedestrians on the sidewalk and the cars/trams. Also, in some places, there seems to be a maroon-painted half of the sidewalk that's for cyclists, so stay out of that if you can.

There are some really beautiful views around the canals and bridges, at dusk and at night, so make sure to check those out.

I didn't go out for specific nice meals out while I was in Ghent, but had some very high quality pasta and great service at the bistro next to the venue. The waiter very patiently read and translated every single line of their menu for me, though I saw plenty of places with English menus outside too—probably more designed for tourists?

Oh the breakfast at the hotel deserves its own paragraph: this was maybe the best hotel breakfast buffet I've ever had, and I've traveled a fair amount. First, they had really good chocolate croissants, the sausage/scrambled eggs/bacon were quite decent, and the fruit juice machine included grapefruit juice. More importantly, though, they had a make-your-own-boiled egg machine!!!

Just a bowl of raw eggs and this machine of boiling water with little mesh holders for individual eggs, and a timer so you could have soft- or hard-boiled eggs. And, actually egg cups! I mangled it pretty badly the first time I made some soft-boiled eggs, but one of the days, I ran into some other people from the conference who kindly taught me how to successfully eat boiled eggs on an egg cup.

My last comment about Ghent is to be careful about which train you get on for trying to get back to the airport—I should've asked the ticket agent about this, but I just got on a train with another ArrrrCamp attendee that was also heading into Brussels. He wasn't going to the airport though, and I realized that the train I was on didn't actually go to the airport station, which is Brussel-Nationaal-Luchthaven. I had to take a 65 euro taxi to have a shot of getting there in time and then begged for leniency from the counter agent to let me check my bag with less than an hour to go before the flight.

I planned my trip so I basically had all day Saturday free. Because I was staying an extra night in the same hotel in Ghent, I decided not to spend the day in Brussels and instead took the 25 minute train ride up to Bruges. Yes, mostly because I'd seen the movie In Bruges years ago and wanted to be able to say I'd been in Bruges.

I was prepared for it to be pretty touristy, but really, it was tourists everywhere!! Really almost felt more like an amusement park of medieval architecture, with many many many large groups of people walking around together. Seems it's very popular with middle-aged and retired tourists, as well as British folks visiting for the weekend. Luckily, it still felt mostly peaceful while walking around, I just had to work quickly to try to get photos without enormous numbers of people in them. There is a reason tourists flock there—it really is very beautiful and well-preserved.

I got in around 10 and first went to buy a ticket to later take a tour at the brewery. Then I walked over to the Church of Our Lady to see the Michelangelo statue (2 euros). Unfortunately you can't get too close to it, but you can still make out the artistry. I also popped into the convent place.

The brewery tour was really fun. It was more different stories about the company's history than about the process of brewing beer, but our guide was quite funny and the view from the top was so good I decided I didn't need to rush to try to climb the belfry for the view from there. When they say that there are lot of really steep and narrow steps to climb as part of this tour though, they aren't kidding. The drink they give you at the end as part of your ticket was a legitimate amount, and even though I'm not particularly into beer, I really liked it.

I then did the walk in Rick Steves' book, but backwards, and met up with the bike tour I'd booked with Quasimundo for the afternoon. There were only four of us, and the guide ended up taking us out on his far route, which was 40km total. My butt was pretty sore at the end of it, the bike I got didn't fit me all that well, but they did have helmets available if you wanted one, despite all the Belgians I'd seen biking around with no helmets.

It was really refreshing to break away from the crowds and get into the countryside. We stopped just a few times for history talk + I snapped a few photos, so it was mostly chatting with the other tourists in the group and admiring the tree-lined canals and fields and sky. Also, cows. Some very healthy-looking cows out there. We did stop at a small pub and had another drink there.

When I got back, I rushed back to the brewery to pick up some souvenirs for my dad and father-in-law, and then to a chocolate shop to bring back for my co-workers, mom/sister, and myself of course. I stopped in Dumon, which was recommended in Rick Steves' book. Tiny shop really, and they told me they're just one of only 5 families left in Bruges making chocolate still. I would've liked to get some lace-themed souvenirs from one of the many other shops, but there was a sudden downpour and I didn't make it to any of them in time before they closed. I was told most of those are just made in China now anyway because handmade lace is incredibly expensive, but it still would've been nice to get a little lace Christmas ornament for my mother-in-law. Oh well, maybe next time.

The last thing I did in Bruges was get mussels, which came with fries and a trio of mayo dipping sauces. I would've liked to go to the green stands in Market Square, but I probably wouldn't make a special effort to get to Bruges again. It might be a fun short romantic weekend away, but my goal was say that I'd been IN BRUGES and I accomplished that.

I bought a used copy of an older version of Rick Steves' abridged book traveling to Brussels and Bruges. This was really nice, the book was nice and light while still being informative. I wish I'd looked more closely when I got the book from Powell's, I thought I was buying the more recent version of this some guidebook which includes Ghent. If you're doing a Brussels/Ghent/Bruges trip, that's the one I'd recommend.

I also checked out the Lonely Planet guide to Belgium from the library. This was useful since my other book didn't include Ghent, so I was able to use that to get around. It's a bit heavy to lug around though, when I didn't need all the rest of the content and didn't need information about hotels and such too. Might be more useful if you're planning a longer trip from scratch and are going to farther apart places.

Adapting a previously-given talk

November 18, 2014

After I gave my talk “How to Be a Better Junior Developer” at RailsConf and wasn't totally happy with how I delivered it, I was determined to get some more out of the hours upon hours I'd put into pulling that talk together. I took pretty much the same proposal that I'd written for that talk and submitted it a whole bunch of other CFPs.

It got rejected from most places—most conferences are smaller than RailsConf and having a talk so directed at junior developers might be too small a proportion of their audience, I think. I then added on to the talk proposal description that if that was a concern of the organizers, I'd gotten feedback even from senior developers* that they thought much of the content could be more widely applicable and I'd be happy to work on making the talk to be directed at a broader audience if they thought that would be more appealing to their particular attendees.

The talk actually got accepted as-is to PyCon Au, which I was really thrilled about! I studied abroad for a semester at the University of Melbourne and loved it there, but couldn't afford to travel much (in particular, it is a life goal of mine to see Uluru). Unfortunately the timing didn't work out, so maybe some other time.

Of the rejections I got, I was able to get extra feedback from eurucamp. They said they weren't able to really tell what was going to be in the talk, because I'd spent more time in the application talking more about how I could adapt it. I had included a link to my blog post and slides about the talk in its current form, so I'm not sure if they didn't visit that or thought it was insufficient, but I was more careful after that to make sure to still have a fully fleshed out talk proposal so conference organizers wouldn't have to leave the application to get all the info.

This “hey I can adapt the talk if you want” strategy then ended up working out with ArrrrCamp. The organizers actually wrote back to me something along the lines of, “it was between this talk and another one but we think this one works better, if you can adapt it."  I quickly wrote up a new title and abstract and then after buying the tickets for my flights, just set a reminder on my calendar to get back to the talk about 2 months before the actual conference. Which meant of course, I did most of the work the day before the conference.

But the reminder actually still worked, because in the time I had “adapt talk for ArrrrCamp” on my to-do list, I was at least doing some background processing in my brain for what changes I needed to make. I talked a New Relic intern** into helping me with a practice run-through, hoping that would motivate me to get the work done sooner, but that didn't quite work out with the other things I'd had going on that week. Still, going through the talk out loud with another person helped me get some notes on which sections should be cut, and I also asked her to give me feedback specifically on which sections she thought would resonate even with a wider audience.

I realized that I needed to re-work the structure a bit, but I still wanted some kind of overall organizing outline like I'd originally had with the two overall sections with 3 points each, since I thought that helped make the points easier for people to remember. It was too inefficient to try to change the slides first, so instead, I just pulled up a text file and thought through which of the main points I'd want to keep and how I might be able to group them together a little differently. Much less work to move around the different lines of the outline then.

I came up with two new broad themes, around building relationships and improving communication skills. Into each of these, I slotted the other sections I'd had before. I consolidated all the advice around mentoring and being mentored and put them into its own section. However, I ended up ripping out this section entirely because I figured my audience wouldn't necessarily all care about mentoring and the argument for how being a better mentor would help them was a bit more loose. If people did care, there are other talks out there entirely focused on mentoring they could turn to.

Instead, I replaced it with a slightly stripped down version of the “Ask vs. Guess Cultures” talk that I gave at the New Relic engineering offsite earlier this year. That talk had gotten a GREAT response, with lots of people telling me they'd never heard of that concept before but learning a lot from all the stories I told***. I figured that since I had material that'd been shown to be novel, funny, and apparently useful to a similar audience, that would be a good bet.

Once I'd gotten the slides moved around and the speaker notes edited and everything cleaned up with the new outline, I ran through it a few times just speaking out loud to myself in my hotel room. Ideally I would have liked to be able to practice out loud in front of other humans, but this was like 11:30pm the night before. Not great, but still early enough that I'd get a decent amount of sleep. At least most of the different components making up the talk had been given in front of people at some point.

And it all ended up working out really well! For future talks, I'm going to keep in mind Cate Huston's technique of a grid system for the different points in a talk so it's possible to see at a glance how you can adapt it for different lengths.

*ok fine, secretly I always thought that that was true, but 1, I'm particularly interested in helping other non-traditional background developers like me, and 2, it seemed kind of presumptuous to state something like that myself while I'm still a pretty junior developer.
**I had to find an intern because most people at New Relic had already listened to the talk at least once when I was practicing for RailsConf, lol.
***Particularly the stories involving my husband, which got really big laughs, even with a non-American audience. Apparently I'm pretty talented at telling funny stories involving my husband, which is something I'm keeping in mind for future talks, haha. As another ArrrrCamp attendee told me later, my husband might become my Gorbypuff (that's Aaron Patterson's cat that he talks about on Twitter and passes out stickers to make it easier to talk to people, lol).

Reflecting on my talk at ArrrrCamp

November 11, 2014

The talk I gave at ArrrrCamp was essentially my “How to be a Better Junior Developer” talk but adapted to be more generally about getting better at the non-technical aspects of working as a developer. I'll have a post up at some point about how I did that adaption, but first I went to reflect on how it went, which was…really well!!!

Here are some of the things that I think I had going for me or did well at:

Giving myself permission to be anti-social before the talk
I didn't exactly reread my own blog post about what I was going to do better next time after I gave that talk at RailsConf but the key thing I remembered was how terrible it was to not have gone to sleep the night before until 3am. I went out in the afternoon to do a bit of sightseeing and find the venue so I'd know how to get there from the hotel, and that was enough. There was an informal meetup of ArrrrCamp attendees at 8pm the night before the conference started, but I decided to skip it because I knew that if I went, I might tire my voice out again, and then be up ridiculously late doing another practice after getting back. Better to just work on it and go to bed after one out-loud run-through, then getting up early to have plenty of time for a quiet breakfast and another run-through.

Also, a really cool thing about ArrrrCamp is that the breaks between talks is scheduled to be a whole 30 minutes! I considered shutting myself into a quiet corner for these before my talk, especially the break immediately before. I did this at the engineering offsite, I went to the room where the luggage was being kept and just lay down listening to the sound of birds chirping outside for awhile, and that helped me feel a lot more refreshed and ready to tackle giving the talk. I didn't end up going that far for ArrrrCamp, but I did tell myself it was ok not to make much of an effort to introduce myself to new people, even though an overall goal I had for the conference was to have a lot of good conversations with new people. I did end up talking to a couple people, but it was just one-on-one and very manageable.

Where I was on the schedule
I had the PERFECT spot on the schedule, being the third speaker on the first of two days. I didn't have to go first, nor did I have to go second and worry about it all through the first speaker's talk. I also didn't have to go right before lunch was going to be served, but I got the talk over and done with and didn't have to worry about it for the rest of the conference and could pay better attention.

The venue
I was really happy with the flow of the talk, compared to when I delivered it at RailsConf. The venue for ArrrrCamp was essentially like a lecture hall theater, but the lighting was very friendly so that at least in the beginning, I was still able to see people's faces instead of looking out over a sea of darkness and shadow. I was even able to grab a photo of the audience from my perspective as a speaker.

The conference being single-track
Also, I think I liked giving a talk at a single track conference better. With a single track conference, the number of attendees pretty well closely matches with the capacity of the venue, so people were sitting a bit more packed in than the room I had at RailsConf. At a bigger track conference, it must be hard for the organizers to predict which talks will need more seats, and as Ben Orenstein mentioned in "How to Talk to Developers", you would always rather have a packed small room than a cavernous large room for your talk, even if the number of people is exactly the same.

I have a theory now that getting people to sit closer together in your audience helps them be more engaged in the talk, particularly if you have bits where you want people to laugh, since that's such a social thing. You don't see any standup comedy clubs where the audience members are really spread out and far from each other, right? Everyone was really packed in tightly at the engineering offsite where I originally gave the Ask vs. Guess cultures talk, and laughter would swell up around the whole room in like a big wave.

The other nice thing about the conference being single-track is that I didn't end up feeling competitive or anxious about people wanting to go to the other talks. People pretty much had to come to my talk, and if they stepped out, I could assume it was because they had some work they needed to do or something, not because I was boring them that badly.

Dealing with my nervousness
As before, I reminded myself that the feeling of wanting to puke right before I was supposed to start was totally normal and just a sign of overexcitement, not a sign that I was going to do horribly. This seemed to be a bit more effective, despite not having done a ton of practice talks of the new version of the talk. Maybe because I was more confident in the Ask vs. Guess Cultures segment I'd swapped in?

I also tweeted about that about-to-puke feeling because I've decided that's something I can do to help encourage other people. Showing vulnerability is good, I think, and I loved these statements from Aaron Patterson:
Aaron seems to be kind of known for regularly needing to get through his stage by telling jokes for awhile before he gets to the main content of his talk. I talked to another speaker who's a bit like that, Piotr, who said when he's giving talks, some times things just come out that the audience apparently finds really funny but he doesn't realize until later what the joke he was making was. Like being in a comedian fugue or something, haha.

I don't think I'm the type to just spout out good jokes while feeling nervous, but I think I can do well with funny stories if I've practiced them a bit and have figured out the right rhythms for where to put the beats. I did let off a bit of the nervous energy steam with a few random quips, like subbing an example of my introvertedness about how I was trying not to make eye contact with people at breakfast. I think that worked well enough.

I definitely still talked a bit too fast at the beginning. I kept reminding myself to slow down, for the usual reasons of coming across as more competent and confident, but also because that might help this audience understand it better, composed as it was of largely non-native English speakers*.

Lastly, for this talk, I also gave myself permission to just stay behind the podium and close to my notes, rather than pushing too far out of my comfort zone just yet. Michael Ries (who was also the first speaker!) did an amazing job of this, he was in front out from behind the podium the entire time on his talk and it was still extremely smooth. I'm not sure if I'm ready for that yet, but I talked to him a bit about his preparation strategy. Here's what he said:
  • this was only his second talk, but he'd started preparing it from the beginning with the goal of not needing to reference notes
  • he still wrote a script that he would read through and try to memorize
  • but then he practiced in front of people without that script, which helped him discover the places that needed work based on people's reactions and amend the script to discover the flow and beats to the stories
  • also helped him find the places where the storyline needed to be improved so that he himself could remember where it was going next, maybe add in another slide to help serve as a trigger for him, hopefully with still having mostly slides that are designed with the audience's needs in mind vs. his own

Getting feedback
One thing that occurred to me after my last talk is that receiving positive feedback can be an opportunity to do some market research, as it were. The positive compliments I've gotten usually are something like, “I really enjoyed your talk!” or “Great talk, nice job!” I try to be good about accepting compliments with at least a simple “Thanks!” as opposed to deflecting it or going into self-deprecation. In addition to that however, it's an interesting exercise to try to then ask, “Was there anything in particular that was new or interesting to you?” to see what particular sections might have resonated.

In practice, asking this could sometimes be a bit awkward, so I tried to soften it by saying something like, “you don't have to have an answer or anything, I've just been curious to see what might be good for me to focus on in particular for my future talks,” which helped a bit. One guy wasn't quite sure at first, but then actually came up to me the next day and told me he had a better answer now and gave me something more specific, which was really awesome.

In general, the responses I got were mostly on the Ask vs. Guess Cultures section, the section on remembering to express your appreciation to people who've helped you, and generally on the idea that communication can really help a team be more effective. Some people even said something like, “I can't wait for the video of this talk to be posted so I can make everyone on my team watch it,” which of course is immensely gratifying for me to hear.

So, goals for next time:
  • give a talk with code (I have one talk proposal about time zones written up that got rejected by RubyConf, but I'll submit it to other conferences that are more Rails-focused, and a couple other ideas I might write up proposals for)
  • feel freer to move from the podium—not sure if I'm ready to leave the podium behind entirely, but I can try to practice with that a bit more in mind. A compromise might be like how some speakers step to the back and side of the podium a bit, so that there's more movement, without getting that feeling like you're exposed in front of a large crowd that might eat you.
  • as part of that, remember to get set up with the clicker, I forgot this time around even though they had one
  • write up post-it notes to stick my laptop to remind myself to slow down. I always do this when I'm doing interviews over videoconference, so it might help when presenting too.
  • tell people at the end that I loooove for them to come up and introduce themselves, because I always feel awkward doing it myself
  • maybe tell people at the beginning that I should have time for Q&A at the end so they can write down questions that come up during the talk?

*It boggles my mind that people can learn additional languages late enough that they have an accent (so, not as children) but do well enough to actually work in that language. The idea of attending a conference that's entirely in Chinese makes me feel really tired…I should probably do that at some point if I can.

ArrrrCamp 2014

November 4, 2014

ArrrrCamp is an excellent conference. I was a little worried at first about traveling so far (4 hours PDX-ORD, 8 hours ORD-BRU) to a conference and that I would just be this random American in Belgium for the first time, but I really had a wonderful time. Thanks, Hannes and Joren.

I've decided that I really like the single-track small conference (~120 attendees?) and they did a lot of other things on top of that to try to facilitate people getting to know each other without going over the top. With single track, you're not worrying about whether you’re missing out on a better talk somewhere else. Also, the venue is such that there’s just the main lecture hall theater area, and then another lounge area that they set up with mostly just the tall cocktail tables, which I think helped encourage people to socialize rather than just be hacking away alone.

The 30 minute breaks between talks on the schedule meant it wasn't a big deal if someone ran over a bit, and it was long enough to be able to relax a bit and have good conversations with people. Just much easier to manage meeting new people overall.

Food for lunch was quite good, catered by the bistro next door. Good sandwiches with high quality ingredients, as well as soup.

The people there were very friendly and accommodating.

One of their traditions is a cocktail hour on the Friday afternoon but at that point, I knew if I had any alcohol, I was going to just fall asleep immediately. Someone suggested asking for non-alcoholic cocktails and they immediately mixed one up for me:

(Hannes even apologized for not having non-alcoholic drinks already available! Very sweet)

I’m pretty sure the ratio of female:male speakers was much higher than the ratio for attendees, heh. I did notice that the speakers were generally quite good about trying to be balanced in the examples they used (“Mallory the hacker,” “Alice vs. Bob” sample players in a game). There were several people affiliated with RailsGirls there, and there was a RailsGirls hackathon with dinner that had quite a few people attend. A lot of the women I talked were more junior like myself, but not all of them. Lena delivered a really well-done talk about diversity and inclusivity in the open source community.

Talk recommendations:
  • Piotr Szotkowski, "Weak References Strongly Held" for a hilarious tour through the Ruby standard library using cowsay
  • TJ Schuck, "80,000 Plaintext Passwords: An Open Source Love Story in Three Acts" with a clever use of a plaintext password list he had for a password conversion project
  • Michael Ries, "How I Accidentally Wrote the Best Code of my Career" for his presentation style
  • Aaron Patterson on improvements they've been making on reducing objects allocated in Rails, I actually understood most of this!!

Be a Better Developer (no code required)

November 2, 2014

This talk was presented in Ghent, Belgium at ArrrrCamp 2014 and is an adaption of my How to be a Better Junior Developer and Ask vs. Guess Cultures talks.

Most developers focus on increasing their technical knowledge. However, there are many aspects to working as a professional developer besides coding proficiency. If you have interests or experience in other fields, you can pull in even those non-technical skills (like building relationships, project management) and immediately increase your impact on a project or team. When you mentor someone, you can help them play to their strengths and ramp up more quickly as a result.

 Response to my talk, on Storify.