Sunday, December 9, 2012

AnDevCon IV

It's AnDevCon time again! My Android Custom Components talk was really popular at AnDevCon III, so I decided to give it again. On top of that, I had to a two-part session to discuss Android UI, both lecture and hands-on workshop.

Murphy's Law

I prepared my talks a few weeks ahead of time, so I was pretty chill about the conference. But as Murphy's Law dictates, anything that can go wrong will go wrong. On Monday of the conference week, my laptop died. My talks were on Wednesday and Thursday. Needlessly to say, I was completely thrown off course. I was so stressed that I had nightmares on Monday night.

Tuesday I took the laptop to the Apple Store, and they had to ship it out for the repairs. My slides were all online, but I still needed a machine to project them. Fortunately I found a friend who lent me a laptop, and I installed Photoshop trial for the demo in my session.

Since I didn't want to install too many new programs on my friend's computer, I took a break from programming on Tuesday night. Instead, I baked cookies to bring to the conference.

Same as AnDevCon III, I gave away bugdroid-shaped cookies to encourage participation, and people loved it.

Beautiful Android on a Shoestring

My first session was Beautiful Android on a Shoestring. I shared my experience in creating beautiful Android apps without knowing how to draw, introducing concepts like xml drawable, text shadow, shaders, custom fonts etc. I am especially proud of using icon fonts for scalable icons, a concept I borrowed from the web.

After showing the Android techniques, I switched gears and showcased my favorite website to get color schemes, fonts, icons etc:

I recorded the talk with my phone:

Unfortunately the video did not capture the slides. But fear not, I used Popcorn.js to embed the video to the slide deck. Play the embedded video on the top right corner, and the slides will advance automatically to match. Check it out: http://bit.ly/BeautifulAndroid

Hands-on Icon Creation

I led a hands-on Photoshop workshop right after Beautiful Android on a Shoestring. I know very little about Photoshop, but I felt that what I learnt from the Graphic Design for Engineers workshop was super useful, and I want to share that with other developers. I had a relatively small class, which was great because I could check and make sure everyone was following along.

Android Custom Components

The next day I gave my Android Custom Components talk. This is my fourth time giving this talk, so I was very comfortable with the material. Still, every talk is a live performance, and the audience is always different. I really enjoyed the interaction.

Since I already recorded the talk at AnDevCon III, I did not set up my video taping this time. Here is the recording from May:

Attending sessions

My three talks were clashing with a lot of the other sessions I wanted to attend, and I was a bit disappointed about it. Fortunately I managed to catch the Android concurrency talk, which was jam packed with information. I was live tweeting since it is too good to keep to myself! Here are a few of the tweets:

Great conference

Once again I had a great time at AnDevCon. It's really cool to hang out with so many Android developers. Definitely check it out if you work with Android!

Monday, December 3, 2012

Why Do I Speak At Conferences?

I have been asked by many people why I speak at conferences. I know I enjoy it tremendously, but it took me a while to pinpoint why. Here are my top three reasons.

Share Knowledge

First and foremost, I want to share what I know. As a developer I face new challenges every day, often scouring the internet for hours to figure out how to implement a new feature or get rid of that mysterious bug. I don't want my effects to go wasted. I keep a blog to share my findings, but sometimes I feel like I am talking to the void.

At a conference I have a live audience. I get instant feedback, perhaps a puzzled look that nudges me to explain in a different way, or a knowing smile that tells me I struck a chord. It is truly rewarding to see that sparkle of understanding, to know that you have made a difference.

Network effortlessly

After you give a talk, people come to you during lunch and coffee breaks. They heard you speak, thank you for the great talk, and want to discuss more. These conversations are way more interesting than your typical small talk, and I have met many wonderful people this way. As a speaker, networking becomes effortless because people come to me, and focused too, because they come to me knowing my interests. No more wandering aimlessly, shaking hands and collecting business cards without knowing why.

Be visible

As much as you would like to believe in a meritocratic society, unseen achievements are, by definition, not recognized. By stepping on stage and sharing your knowledge, you are seen as an expert. I know this at the back of my head, but I am still amazed by the wonderful opportunities that presented themselves to me since I started speaking.

One thing I did not expect about my visibility was that it was not just about me. I did not set out to defy the coder stereotype, but the truth is, I am not white, and I am not male. Every time I step on stage, I assert my identity as a software engineer, as a woman, as a speaker with a Cantonese-British-American accent, as someone who laughs at the smallest little thing, as myself. By being visible, I make it a bit easier for the next person who is working against the subconscious assumptions of what it means to be a software engineer, I push the envelope a little bit forward, towards a more diverse workforce in our industry.

Wanna speak?

I cannot believe that I only started speaking this year. And I cannot figure out why I never thought of doing it before. Perhaps you would like to give it a shot as well? Who knows, you may love it as much as I do.

There are many resources out there, We Are All Awesome and speakup.io being two. I have given a talk on how to come up with talk topics, and also written a blog post on how to be a confident speaker. I'd love to share more, so let me know if there is something specific you want to hear about!