Category: Uncategorized (page 1 of 1021)

Weekly Meetup Wrap – February 25, 2018

Does 2018 seem to be accelerating for anyone else? I went to FIVE tech events last week. 😲

The first one was GraphDB Sydney – a rare Monday meetup. After a long hiatus, the group reformed late last year and, though it’s still small, it seems to be well supported by Neo4j and Ansarada.

Josh Yu from Neo4j gave an excellent overview of APOC – which stands for “Awesome Procedures On Cypher.” Cypher is Neo4j’s graph query language, and APOC is a library of more than 300 custom procedures that add cool functionality. Josh ran through a live demo that used clustering to aid in financial fraud detection. I learned a heap from this talk – including that yes, the founder of Neo4j was a big fan of The Matrix. 🙂

On Tuesday evening I headed over to BlueChilli for the SheStarts Mentor Mixer. This is a program to support startups with women founders, and this is my second year as an advisor (along with some amazing peers). I met with two of the founders to hear about their projects and offer them advice. Interestingly, both women I spoke to asked me whether I thought they should do a coding course. (They were both non-coders.) My advice is that something basic like NodeGirls would be a good idea to give them confidence in working with developers – demystifying the black magic of coding, as it were – as well as empathy and understanding for the skills those folks will bring to the team. I also really enjoyed catching up with some of the alumni from the first SheStarts cohort, like Jessica Christiansen-Franks from Neighbourlytics.

Wednesday I headed over to Web Analytics Wednesday for what proved to be a very popular session!

A panel of four experts spoke about all things content engagement: Dominic Laforgia, Head of Data & Insights at Fairfax; Mackenzie Stratford, Digital Analyst and Product Manager at News Life Media; Leon Bombotas, Chief Data Officer & Founder of; and Nathan Scully, Senior Analytics Manager at Oneflare. Meetup organiser Simon Rumble from Snowflake Analytics fielded questions from the audience on whether dashboards are important, what metrics are useful for different types of businesses, all the different platforms publishers have to support, and how they plan to handle future technologies like “zero UI” interfaces. (Spoiler – nobody really has a plan for that last one.) Great discussion!

Thursday saw me heading to Melbourne for the first time this year. I love hearing what’s happening in the Victorian tech community! Thursday night I went along to the Melbourne Haskell Users Group to learn about “serverless Haskell” from Alexey Kotlyarov (speaker at Lambda Jam 2017!) and David Overton from Seek.

The project came out of a Seek Hackathon last year, and it involves wrapping your Haskell code in an executable with Node.js and deploying it to AWS Lambda. They’re already using it in production! Pull requests are welcome. 🙂

Not going to lie though… The best part of MHUG was going out to dinner with a dozen other folks afterwards for a Malaysian feast!

Friday night I had an unofficial DevRel meetup with some of the awesome folks in the Melbourne community. It was a floating bar, and there were a lot of beers, french fries, laughs, and late night burgers. (Have I mentioned lately how much I love my job?) ⛵🍻❤

Saturday was the main event of the week for me: MeasureCamp Melbourne! This “unconference” style event brought together lots of folks from the data engineering, analytics, product, and UX worlds for a full day of talks and discussions.

After the morning welcome and kickoff, attendees were invited to propose sessions and tack them up on a large schedule for the day. With 5 rooms and 8 slots, there was room for up to 40 different sessions! I decided on the spur of the moment to give a talk on giving “Better Tech Talks – How to do public speaking without sucking.” 🙂

For the first session, I went to see Scott Sunderland, founder of Tribalism, try to convince us that humans are better than computers. Scott argued that there are things humans are really good at – like filtering out unnecessary information, making intuitive leaps – that computers just can’t do. He also made the analysts in the room happy by predicting that their jobs are the least likely to be automated away in the near future!

The second talk I went to was from Val Lyashov at Envato talking about how they do analytics. I was impressed that Val presented with just a whiteboard – no slides! He gave a good overview of how they tie their various systems together and answered a lot of questions from the audience. (Oh, and they’re hiring!)

My last talk before lunch was my new friend Mike Robins from Snowflake Analytics. Mike was speaking about a very important topic: General Data Protection Regulation (GDPR). These regulations come into effect on May 25, 2018 for any online business that collects personal data on users in the European Union. It outlines some very specific things you need to do, and the worry is that very few Australian businesses are prepared for it! (My takeaway was: Damn, I’m really happy I’m not in charge of an online business anymore!)

I spent the first session after lunch frantically preparing for my own talk! Soon it was time to head to the room…

I essentially went through all the points from my recent LinkedIn article on public speaking. I ended up with about 20 attendees, and they seemed to really enjoy and get a lot out of it! Hopefully some of them will be inspired to volunteer to give talks at their local meetups and events in the future. 🙂

The session after mine was a tag team presentation from Priscilla Cheung and Moe Kiss from THE ICONIC. I loved this one! They talked about the importance of good UX when presenting your data, and they walked through 10 tips for making it look better.

I also loved when Moe got opinionated about pie charts. 😂

In the last block of sessions, I went to see Sarah Crooke from Data Runs Deep talk about how she uses R to combine data from web and mobile analytics. I’ve seen a few talks on R lately, but most of have been from super experienced data engineers. It was nice to see someone who’s learned it recently and who could give advice to those of us less experienced with the language!

The last talk I saw was actually a repeat for me – it was Johann de Boer  giving his talk on predictive targeted marketing using machine learning. I saw it at Web Analytics Wednesday back in January, but I felt honour bound to support someone from the Sydney community (especially since he’d caught the train to Melbourne the previous night!).

Many thanks and congratulations to the MeasureCamp organiser for putting on a fantastic event! 👏

Other Stuff

I’m heading off to Perth, Bangalore, and Singapore over the next two weeks, so my meetup adventures are going to be on hold for a bit!

  • It’s all happening at YOW! right now. We’ve got SEVEN upcoming YOW! Nights happening across Australia in the coming weeks. Hope to see you at one of them!
  • QUICK. There is a Humble Bundle of functional programming books, but it finishes up early Tuesday morning! I just bought it…
  • Don’t forget that we have two upcoming YOW! events in Sydney with open Calls for Presentations! YOW! Data will be held on May 14-15 and is looking for speakers on data-driven technologies and applications. YOW! Lambda Jam is coming up on May 21-23 and is all about functional programming. Special note: This year we’ve added on an extra day for LJ that will be a full-day workshop aimed at providing an “on-ramp” to FP. (If you can’t make it to Tony’s 3-day course, you should definitely sign up for the LJ one!)

Weekly Meetup Wrap – February 18, 2018

Another week with three more meetups! They’re all data-focused as I’m trying to get the word out about the YOW! Data Call for Presentations, which closes on March 18th.

The first was Sydney Cassandra Users, which had a special guest speaker all the way from the US – Rachel Pedreschi from GridGain!

Rachel gave us a thorough introduction to Apache Ignite – an open source caching layer that can sit on top of Cassandra. (She admitted that it’s also a database in its own right.) Not many of us were familiar with it, so it was great to get a tour from someone who knows it very well.

My second meetup of the week is one that I’ve been keen to check out from the first time I saw its inventive acronym: SURF (Sydney Users of R Forum). The speaker was Dr. Fabian Held from Sydney Uni speaking about using R for network analysis.

I found this fascinating. (You can read his whole talk here.) Dr. Held pointed out that research has shown your social network can influence your probability of being obese or having certain diseases. By mapping the relationships in the network, we can analyse it in some interesting ways. The tool used in the demos was tidygraph, an API for graph manipulation.

One of my favourite takeaways from the talk was of the existence of Zachary’s Karate Club. This was a real social club studied by researcher Wayne W. Zachary in the 70’s and the data set of relationships is available for for you play with. It’s a bit of a meme among scientists who study networks. How delightfully obscure!

My last meetup of the week was Sydney Machine Learning at the AWS offices in Sydney. I remember attending this one just after it started a year ago – it’s a huge group now!

The first speaker was Luke Metcalfe of Microburbs talking about what data science is, what makes a good data scientist, and how to hire and motivate good ones. I especially liked some of his advice for getting into data science: “Good data beats the best model.”

The second talk was Dr. Elaina Hyde, an astrophysicist and consultant at Servian. As a dyed-in-the-wool space geek, this was definitely my favourite talk of the week. Dr. Hyde talked about using data science techniques in her analysis of the Sagittarius Stream. It was fascinating!

Other Stuff

  • There was an interesting discussion on Twitter last week about engineers being “on call” for support. John Barton wrote a nice summary of the debate here as well as the approach he takes with his teams. (John gave a great talk about this at the YOW! CTO Summit in 2016.)
  • What’s your view on the AMP letter? For what it’s worth, I tend to agree with Tim Kadlec. I think giving some search engine juice to pages that are secure and load quickly is a good idea… but it needs to be based on a objective measure, not use of a single tool.
  • YOW!’s speaker development program for women in tech has launched for 2018! We have rebranded it as New Voices in Tech (as it’s not really about competition) and it’s open to all women in Australia. If you are selected, you’ll receive a full day of speaker training with Damian Conway (who is amazing). Well worth entering if you want to learn to be a better speaker!

Making Continuous Bias Tape and Piping

For my latest sewing project, I decided to try my hand at using some contrast piping along the waistband. I’ve only ever used piping once before, for the Comma Club Cushion I made for the Canva Hackathon a few years back. It wasn’t too hard though and I still had plenty of the cording left over.

To make piping, you need bias tape. I should probably explain what the heck that means. For those who don’t sew: imagine fabric being woven on a loom. You’re picturing it as a rectangle, right? Pretty much like a big bedsheet. And that’s correct! Woven fabric has threads at right angles to each other, and it’s usually pretty strong and non-stretchy if you pull on it lengthwise or widthwise (unless it has elastane or something like that in it). However, if you pull on a piece of fabric diagonally, you’ll probably find that it does have some stretch. We refer to the direction diagonal to the weave of the fabric as the “bias.”

If you’re cutting out pieces of fabric to make clothing, you normally want to keep the pieces oriented straight up and down to keep them from stretching out of shape. That’s why pattern pieces usually have lines on them so you can line that up with the straight edge of the fabric. Occasionally though – most often for certain dresses – you want a kind of flowiness that clings or skims over the body. In those cases, you cut the fabric on the diagonal. (You may have even heard the term “bias cut dress” or something like that.) Fabric cut on the bias is stretchy enough to move and flex around curves. That’s what we want for the piping, because it’s going to be applied around the curved waistband of my shorts.

You can, of course, purchase pre-made bias tape (also called bias binding). That’s what I did for the Cushion, and it worked fine. But it tends to just come in plain colours though, and I wanted to use a special fabric. That means I had to make my own! I highly recommend you try this sometime. It’s really satisfying, and it doesn’t take that long. It’s also a great way to use up scraps of fabric that aren’t big enough to use in other projects.

The method I use is based on this tutorial from Colette Patterns. I recommend you look at that one first, as it uses a small square of plain fabric and is thus slightly easier to see what’s happening. I started with a rectangular piece of my fabric that was 33 inches wide and 13 inches tall. (Actual size doesn’t matter as long as it’s cut “on the grain” – ie. straight.) And yes, I tend to use English measurements when sewing, just because my cutting mat uses them as well as most of my patterns. Feel free to convert to metric; it makes no difference to the end result.

Next, I cut off one corner at a 45 degree angle. I used the lines on my cutting mat for this with a long ruler and my rotary cutter, but you can also do it by drawing a line and then cutting along it with scissors.

Now you want to move that piece you cut off to the other end of the fabric to make a parallelogram. We could just cut off both opposite corners and throw them away, but that would be wasting fabric. By constructing a parallelogram first, you’re using every bit of it (which is nice, because this fabric is expensive!).

Now I need to sew those two straight edges together to join up our parallelogram into a single piece. Here I’ve pinned the triangle on top of the other pieces, right sides together.

Now to the sewing machine! I’m going to sew this seam with a normal straight stitch and a narrow 1/4″ seam allowance.

Once it’s sewn, it’s over to the ironing board. First I press the seam to “set” it. (I have no idea if this really makes a difference, but I read a suggestion to do it once so I do. 🤷‍♀️)

Then I place the fabric face down and use the iron to press the seam open and flat.

The end result looks like this on the back…

And now you can see our joined and finished parallelogram!

The next step is to mark the width of your bias strips. I wanted mine to be 1 1/2″. Since my fabric is so dark, I flipped it over  and used a washable fabric pen to draw the lines with a ruler. You can just see them in this photo below. (They’re light blue.) The lines go right over the seam we just sewed. Whatever width you’re using, you’ll probably have a little bit left over at the end of your parallelogram. That’s okay; you can just cut it off.

Now – we could just cut all these strips and then laboriously sew them all together. But where’s the fun in that? (Colette’s got a tutorial for it, but ain’t nobody got time for that.) It’s time for SEWING FUN WITH GEOMETRY. We are going to turn this flat piece of fabric into a tube with a continuous spiral of bias tape going around and around it. Get ready for your brain to turn inside out!

Basically, we’re going to line up the marks we just drew on the long sides of the parallelogram and then sew them together. However, if we just lined them up straight, when we cut them apart we’d get a series of circular rings of fabric. So instead we need to offset it by one so that the line goes around and around continuously. Again, I think the Colette tutorial does a good job of showing how this works. (It really is something you need to do yourself to really grok.)

Here I am pinning the tube seam with right sides together. I pin at every single line, placing my pin at a 1/4″ seam allowance and making sure it intersects the other line at exactly that point. You’ll find the fabric doesn’t easily want to offset like this, and to some extent you have to keep turning it and coaxing it as you go.

This is what the tube looks like all pinned up for sewing. It’s like a shirt sleeve, but twisted. You can see that the seam with the pins that we’re going to sew actually wraps around the tube.

Sewing it is awkward but doable. Just do a little bit at a time, and keep rotating the tube as needed as you go down. The key is to make sure you’re not inadvertently sewing over any other bits of it as you go. Just keep a nice narrow 1/4″ seam as we did before.

Once you’re finished, your completed spiral tube will look like this. You can clearly see the offset strip at each end as well as how the lines I drew continue around and around, over the seams.

The last step is the fun part – start at one end and just cut along your drawn line! You’ll go around and around the tube in a spiral, with a lovely pile of bias tape accumulating beside you. This piece of fabric turned into a bias strip 7 yards (6 meters) long! Here’s a time lapse video of me cutting mine.

And that’s it! I gave mine a final iron and pressed open any remaining seams. Now it was time to finally make the piping. I was going to use it around the top and bottom of my waistband, so I worked out roughly how much cord I’d need and cut off that much (plus a couple inches for safety). Then you just lay your cording down on in the middle of the wrong side of your lovely bias tape.

Then you fold it over to sandwich the cord and place pins along the length as close to the cord as you can.

The last step is to sew along the line of pins. You should use a zipper foot for this. This is a special sewing machine foot that only has one “prong” so you can get very close to a zipper (or your bit of cord, in this case).

And that’s it! With my custom piping all finished, I was ready to use it in my sewing project. Stay tuned for that one…

Weekly Meetup Wrap – February 11, 2018

My attempts to scale back my number of meetups and tech events in 2018 is not exactly going to plan. Six weeks in, I’ve been to 14 different events… which, if I extrapolate, puts me at 120 for the year again. Eeek. But yeah, another four this week!

The first was React Sydney, kicking off 2018 in the new event space at Domain. Organisers Jed and Jess have done a great job building this community over the years. A large crowd turned up to hear from four different speakers.

The first speaker was Alex Reardon from Atlassian showing off some of the performance enhancements that have been made to react-beautiful-dnd (a library for making beautiful, accessible drag-and-drop lists with React.js). With really big lists (like, say, 500 items), dragging felt sluggish and janky. Alex showed off a few advanced techniques he and his team used to get it feeling snappy and natural. At it’s core, Alex said, optimisation is “about not doing things you don’t need to do.” I especially liked the quote he ended his talk with:

The second talk was from Ajain Vivek from Yahoo7. (Note the cameo from the back of my head in the photo above!) Ajain’s fascinating talk was about rethinking how the state of your app stored in an object tree inside a single store can be transformed to memory model. He started off by talking about how human memory works, and how that could translate to a storage model for React. He finished with a demo that earned him applause from the audience.

The third talk was from Lucas Chen, visiting from Brisbane. Lucas walked us through what’s new in React 16 (aka React Fiber). In a nutshell, there’s been a full rewrite but the API remains the same. Ultimately that means not much has changed in terms of your code, but it got faster! He also gave advice on how you can prepare for future changes:

The final talk of the night was a last minute addition from another Atlassian speaker – Jamie Kyle. (Coincidentally, Jamie is responsible for at least part of my Twenty addiction because he kept tweeting photos at me of screenshots where he’d scored multiple 20’s. 😂)

Jamie demoed his new tool (“Because it’s a JavaScript library I had to buy a .io domain. That was a really good use of $65…”), a tool for sharing state between React components. Simple, short, and useful!

My second event for the week was the Sydney Data Science Breakfast meetup. The theme for this meetup was “AI will take our jobs and that’s ok,” and as you might expect it drew quite a crowd!

The main speaker was Tomer Garzberg of Gronade, reprising his TED talk from this past December. Tomer began by describing factories in China that are entirely dark with no aircon or running water, and where workers labour 24-7. The catch is that all of the workers are robots. This scenario is becoming more and more common, and soon even white collar jobs will begin to be automated away.

After his entertaining talk, Tomer joined three others for a panel discussion: Michael Allright from The Minerva Collective, Tim Garnsey from Verge Labs, and Peter Xing from KPMG. The audience peppered them with questions about the ethics of machine learning and AI, the economic impacts of replacing humans with robots, and how individuals and companies should cope with the coming disruption.

My third event for the week was a brand new meetup: Big Data: Engineers and Scientists. Preact Recruitment are hosting these events and they’ve definitely gotten them off to a good start. It’s always nice to attend a meetup in the beautiful event space at Campaign Monitor!

The first speaker was Simon Aubury from IAG talking about using Kafka to build streaming data pipelines. This was similar to the talk I heard Matt Howlett give a few weeks back, but Simon included lots of architecture examples that really helped everyone understand why Kafka is so useful. He also mentioned KSQL, which is still in developer preview but has a lot of folks very excited about its potential.

The second talk of the night was a counterpoint to the first. Raul Beristain from Vocus Communications spoke about SQL on Hadoop using Impala, and what are the pros and cons of this approach. Sometimes the data you’re saving isn’t going to be updated later – like support call logs – so you don’t need a system that supports those transactions.

The third and final talk was by Campaign Monitor’s own Binzi Cao. Binzo spoke at length about Spark SQL and using it to build a rules engine. He showed off some great examples where Spark SQL can make your life easier, like normalising timestamps from disparate data sources.

My final event of the week was a hands-on Scala workshop hosted by Women Who Code Sydney at Quantium. I figured after my three-day intensive Haskell workshop, I should keep up my functional programming studies, right? 😜

There were so many attendees we had to split over two different conference rooms! Marina was our facilitator and walked us through some exercises to build a CLI party planner application. Happily, I found that my experience in the Haskell workshop really helped conceptually with some of the things we did. Where I got hung up was on the particular Scala syntax, and my lack of knowledge around functions available in the core library. (That went for everyone, though.) I did manage to solve the last one entirely on my own, which resulted in a happy dance in my chair! 💃

Of course, it didn’t help that Quantium’s offices are amazing. They opened the blinds in the conference room during lunch, and WHOA. It’s a good thing I don’t work in this office. I’d stare at that view every day.

Other Stuff

I Rode a Share Bike So You Don’t Have To

I’ve done my fair share of griping about the stupid share bikes littered all over Sydney.

Yesterday though, I realised I had the perfect use case for one. The Snook’s office was having a party over at the Entertainment Quarter, and though it isn’t far from our house, it’s kind of a pain in the ass to get to on public transport. And sure, I could ride my own bike over there, but then I planned on having some beers and taking the bus back with the Snook which ruled that out. A one-way rental on a share bike seemed like the perfect solution!

First things first – which of the (many) options to choose from? I googled “Sydney share bike review” and found this article in The Australian which indicates that Mobike (the orange and silver one) and Ofo (the yellow one) were the best in terms of build quality. I quickly installed the Mobike app. Next I grabbed my own helmet – no head lice for me, thank you! Then I just needed to locate the nearest bike. OH RIGHT, THERE ARE LIKE EIGHT ON THE FOOTPATH ON MY STREET RIGHT NOW.

I used the app to unlock the nearest Mobike, which was painless and honestly kind of neat how it worked. Then I raised up the seat as high as it would go. Hm. First problem. This felt pretty low. (For the record, I’m 5’10” / 1.78m with longish legs. Tall, but not freakishly so.) I persevered though, and took a quick photo to send to the Snook (who was already at the party) to tell him to expect me in 25 minutes.


Then I headed off through Chippendale. About thirty seconds later, I went to change gears and discovered THIS BIKE HAS NO GEARS. The handlebar control that I thought was a gear shifter is just a bell. How can you offer bikes in Sydney without gears?? We’re not Santa Monica. We have HILLS. Oh, and did I mention this bike was HEAVY AS HELL? No way was I puffing through the back streets of Surry Hills on a too-small tank of a bike with no gears. I pulled over at the nearest pile of share bikes to chuck the Mobike and try another. I’d made it three blocks.

After locking that one up, I switched to an Ofo (the yellow one). The seat went a little higher on this one. Still not as high as I need, but better. Also – it has gears! I felt optimistic. I headed off through Redfern and Surry Hills.

Well. My 25 minute ride actually took me 35 minutes, and that’s not counting the couple of times I stopped for a drink of water. (It was a hot and sunny day.) Even with gears, that heavy-ass, still-too-tiny bike was murder on the hills. I even ended up walking it on a couple. I finally made it to the Entertainment Quarter though, parked, and staggered into the party – sweaty and dazed and in desperate need of a beer. On the upside, neither bike ride actually cost me anything as they’ve all got introductory specials on right now.

Results of experiment

Scenario: This was the most optimal use case I could think of for me to use a share bike – a short, one-way trip to a location inconvenient for public transport.

Good stuff: It was free. The apps were easy-to-use for unlocking the bikes. (I didn’t bother using them to find a bike since, as I previously mentioned, THEY’RE BLOODY EVERYWHERE.) I didn’t have to worry about getting my bike home or making sure somebody didn’t steal it.

Bad stuff: The bikes weigh a ton. They’re too small for people on the taller side of the bell curve. Some of them have no gears, and the ones that do don’t have very many, resulting in a painful, sweaty, very difficult ride. And then there’s the whole helmet situation (public lice helmet vs. no helmet at all), of which the only remedy is to bring your own (which you then have to carry around with you).

So yeah. That was my one experiment on a share bike. Now we can shoot them all into the sun. 🚲🚀☀

Weekly Meetup Wrap – February 4, 2018

Now that the holidays are over, it seems like most of the local meetups are getting back to a regular cadence. I made it to three very different events this week – SyPy, The Big Security Debate, and Global CFP Diversity Day!

Sydney Python (or SyPy for short) was held at Optiver Sydney, which is such a great venue. The first speaker was Dr. Paula Sanz-Leon from Sydney Uni talking about pyunicorn. Pyunicorn is a Python package for the advanced analysis and modeling of complex networks. Dr. Sanz-Leon explained that “Anticorrelation and positive correlation are easy to understand, but they aren’t useful to explain nonlinear (chaotic) interactions.” If you want to visualise something complex and chaotic like brainwaves, you need to use recurrence plots.

The next talk was extremely relevant to my interests. Sean Johnson walked us through his efforts to apply home automation to his air conditioner (“because I live in Blacktown, and it’s ridiculously hot when we get home”). This is something I’ve been planning to do myself! Sean used LIRC, a Raspberry Pi, and Apple’s HomeKit to glue it all together.

Sean also walked us through some of the general pitfalls of home automation, including the security risks.

The final talk was Optiver’s own Greg Saunders giving us a gentle introduction to asyncio, a Python module that provides the infrastructure you need for single-threaded asynchronous programming. I was delighted to discover that it’s all about coroutines! (I learned about those from Svetlana Isakova at a YOW! Night last year.)

On Wednesday night I headed to Surry Hills for The Big Security Debate. This special event was run by the Meetup Madness folks who run a number of cloud and devops meetups across Australia. Several hundred people got together to watch offensive and defensive teams go head-to-head in various scenarios devised by some diabolical moderators.

I won’t go through all my tweets – as there were many – but needless to say I had a great time. The hackers had a lot of crowd support through most of the scenarios, just because their devious ideas for hacking into systems were pretty entertaining. (They also did some great trash talking.) A lot of the attacks and countermeasures reminded me of a certain television show…

The red team (aka the hackers) ended up winning the debate and were awarded embroidered hats for their trouble. Hilariously, my tweets on the night were dubbed “the most awesome” and I also won a prize!

We have plenty of Google Homes. I gave this one to my nephew. 🙂

The last event of the week was Global CFP Diversity Day. This global community event was inspired by some workshops that ScotlandJS and ScotlandCSS ran in 2016 to increase the diversity of their speaker pool. I discovered the site last December and realised that no one had volunteered to run one in Sydney. So – what the heck! – I put my name down to organise. General Assembly Sydney offered to host and YOW! came onboard to sponsor snacks.

The Sydney and Melbourne events were the first of 60+ workshops to kick off around the world. Some cities were doing a full day covering the entire process from coming up with an idea through to delivering the talk, but I decided to keep the Sydney event focused on just ideation and abstract writing. I assembled a super team of mentors, several of whom put their hands up to facilitate different activities. It was a lot of fun!

I heard some amazing talk ideas, and I really hope the participants are inspired to submit them to conferences. We finished the day with a group photo and a promise to run a sequel event (covering writing and delivering the talk) if there’s interest.

A few of the attendees were kind enough to leave feedback. This was my favourite:

Incidentally, if you’re looking for CFPs to submit your talk ideas to, the Global Diversity CFP Day folks have created a public list curated by all the different event organisers. For Aussie events, this list from Readify is very handy. And of course it goes without saying that you should be submitting to YOW! Data and YOW! Lambda Jam, both of which have CFPs open right now! 🙂

Other Stuff

  • I really love this CodePen example of encoding raw text into an image using colour. I’ll have to use that to generate a design for a quilt someday…
  • I’ve seen my friend Charlie Gerard demonstrate some very cool “creative coding” projects over the years, many of which involve hardware. (Charlie spoke at the SydJS I curated a couple years back.) But this? This is AMAZING. Charlie is using her brain to control an image in a web browser via Javascript and a wearable EEG. 😲
  • Rebecca Waters from DDD Perth shared this lovely Medium compilation of reactions to last September’s conference.  It included a link to this blog post from Dash Digital which had a glowing review of my keynote.  ☺️

That’s all for this week!

Weekly Meetup Wrap – January 28, 2018

It was LCA week! Last year I attended my first LinuxConfAU in Hobart, but this year it happened to be in Sydney about 5 minutes from my house. In addition to catching as many sessions as I could and trying to get a normal amount of work done, I also had the honour of being a miniconf organiser. I also went to two different meetups! It made for a hectic week.

Monday morning began with the Open Hardware Miniconf. Last year I learned to solder, so this year I had another go with the LoliBot! It took me a few goes to get back into it, but luckily I had a great teacher in Leon Wright:

I didn’t quite get to finish my robot because I had to run off for the Art + Tech exhibition that I’d organised! Eight of the speakers got together over lunch to show off some of the projects they’d be talking about the next day. It was a small logistical challenge, but thankfully the Snook was a massive help. We didn’t quite get the huge crowds I’d hoped for, but that was mostly because the conference was spread out over multiple buildings. Everyone still seemed to enjoy themselves!

One of my favourite thing to do at conferences is find folks wearing YOW! t-shirts. 🙂

I caught a few sessions at the end of the Games and FOSS miniconf. One of my favourites was by Jon Manning, a game developer and frequent YOW! speaker from Hobart. Jon spoke about the game Night in the Woods and how the team open-sourced parts of the game during development.

The miniconf ended with lightning talks, so on a whim I put up my hand to talk about the Scratch game I made for the Harvard CS50 course. It went well! It’s the first 5 minutes of this video…

Tuesday was the big day – the Art + Tech miniconf! There were so many amazing tweets during the day; you should just check out the hashtag yourself. Every single speaker went above and beyond what I had even hoped for. I’d like to thank all of them, as well as the organisers who helped make it happen. You can watch almost all of the videos on YouTube here:

Wednesday was the start of the conference proper. The morning’s keynote was by Karen Sandler from Outreachy, who talked about the pacemaker and defibrillator she has inside her heart. When Karen discovered that she didn’t have access to the code that was literally inside her body, it was the inspiration for a lot of her work with Open Source. I was particularly struck by the bit where she talked about having to get a replacement and discovering to her horror that every model available had wireless connectivity. She had to explain to her doctor that, as a woman on the Internet with opinions, having her heart device connected to the Internet meant she would probably have to change her career. Luckily after much effort they were able to source a single model with the capability of turning this feature off. 😵

I also saw a very cool talk by Paul Schulz on a project he helped with in Adelaide to build an array of “cosmic ray” (muon) detectors for an art festival. He had one with him, and every time a muon struck it – inside the building! – it would flash and chime. I even got some video.

My friend Katie Bell also gave a fantastic talk about a fun data project she worked on…

The video is here, but spoiler: Yes. Yes, it is. 😂

Wednesday night I headed to Siteminder‘s office for the Sydney Technology Leaders meetup on “building your brand as a thought leader… or not!” The first speaker was Dave Bolton, head of engineering at WooliesX. Dave spoke about his history in technology, and some of the specific activities he recommends to build your profile within the community. The one about reviewing a professional book on Goodreads surprised me – I’ll have to try that out!

Next up was my friend and former Canva colleague Rose Powell. Rose gave us some great, practical advice on dealing with the media and how to craft an attention-grabbing conference talk or article title.

The third speaker was meant to be a public speaking coach, but unfortunately both of the ones we lined up got sick! So I had to step in, and I already told you about that

We finished the night with a panel, which was great as always. Special shout out to my friend Mick Pollard who basically functioned as a fifth panelist, giving some great advice from his experience running the Devops Sydney meetup group.

Thursday I made it back to LCA for a few more sessions, including one by the other Devops Sydney organiser, Lindsay Holmwood. Lindsay spoke about Conway’s Law about how it can be applied to open source communities. My favourite observation:

I also saw a really cool talk by Andy Botting and Glenn Guy on the work they’ve done to reverse engineer different Australian catch-up TV services to work on the open source Kodi media player. As someone who used to work on one of those services, this was fascinating to me! (The guys actually saw my tweets and came up to me the next day to ask me about it.)

Thursday night I skipped the Penguin Dinner at LCA and headed over to Google for the GDG Sydney meetup. It was a small but lively group, and the theme of the night was Open Source and Google. We heard a lot about the Summer of Code program as well as the Google Code-In, and many of the attendees were folks who had participated in the programs in one way or another. There were lots of lightning talks about the work they’d done, and it was really inspirational to see!

Friday was the last day of LCA, and frankly I was pretty much conferenced out. After a very entertaining and super informative keynote about containers from Jessie Frazelle, I headed over to see my friend Hannah Thompson talk about her project to recreate the Clueless app. You know, the one that Cher uses to pick out her clothes for the day! I loved every single aspect of this talk. Hannah did a fantastic job. So much Jane Austen, and computers, and clothes, and code, and fun. ❤️

I also really enjoyed Sam Thorogood‘s talk about the “death” of the Web, and how progressive web apps can be used to provide app-like functionality within your website. He even did a fun demo turning OFF wifi and showing how your site can still work off-line.

The last session of the day consisted of fourteen different lightning talks, and they were all pretty excellent. My favourites were from my friend Stephen Dalton of the Gold Coast TechSpace, Benno Rice and his Aristocrat-inspired take on Bitcoin, and Fraser Tweedale teaching me about Hackyll and giving me Haskell flashbacks.

Overall my second LCA was a great experience. The Snook came along with me to most sessions, and it was the first time we’d ever been to a tech conference together. Being able to duck home for lunch and to sleep in my own bed each night was amazing, and I’m definitely going to miss that the next time I travel to one! I also enjoyed hanging out with so many cool technical women, and the impromptu knitting circles that kept happening during tech talks. 🙂

Other Stuff

Getting Started with Public Speaking

I’m one of the organisers of the Sydney Technology Leaders group, and we held a meetup last night on building your personal brand. One of our planned panellists was a public speaking coach, but unfortunately illness caused them to drop out at the last minute. So with a few hours’ notice, I was drafted in as a replacement. (I’ve got a fair bit of experience, and my job with YOW! Conferences means I attend a lot of tech events.) I gave a short “everything I know about public speaking” lightning talk with no slides, and thankfully it went really well! A few attendees asked if I’d share my notes publicly, so I thought I’d post them on LinkedIn in case others find them useful. Just head over there to read!

Weekly Meetup Wrap – January 21, 2018

On paper it seems like this was a light week… but not really. Technically I only made it to one official meetup though – the Android Australia User Group – Sydney. It was a special one too, as it was Georgina’s final meetup as organiser (after 4.5 years!). Before the 😭, we had a couple talks, both of which built on topics I had learned about from YOW! speakers last year…

The first was by Quirijn Groot Bluemink from The Iconic. Quirijn’s talk was an introduction to Flutter, a new mobile app SDK to help developers and build mobile apps for both iOS and Android. Flutter uses Dart, a programming language that Google developed and uses to run some very large apps.

I learned about Flutter and Dart last December from Kasper Lund‘s talk at YOW! 2017. Basically it saves you from having to reimplement your app’s functionality for each platform – you can literally use the same code for both! I was amused that both Quirijn and Kasper mentioned the Hamilton app as one of the most well-known apps built with Flutter.

The second talk of the night was Mitch Tilbrook giving us a peek at Kotlin “backstage.” Kotlin is a programming language that runs on the JVM but can also be compiled to JavaScript source code. While it’s been around since 2011, it got a big push this year when Google announced first class support for Kotlin on Android at I/O.

I was lucky enough to see two talks on Kotlin last year by Svetlana Isakova, one of the core developers of Kotlin at JetBrains. She gave a keynote at YOW! Connected 2017 called “You Can Do Better With Kotlin” (video here) as well as as a YOW! Night that dived deeper into features like support for coroutines.

After the two talks, there was a special presentation of thank yous and flowers to Georgina for everything she’s done for the group. Well done, G!

I had hoped to attend DevOps Sydney on Thursday night, but unfortunately it was cancelled. Frankly I was relieved, as my brain was rapidly turning to mush as I battled through the three-day functional programming course put on by Data61 and the Queensland Functional Programming Lab. I expected it to be challenging… and yeah.

I’m not gonna lie – this was hard. The instructors were great and my fellow students were all friendly, but the reality is that this is literally a semester’s worth of university-level content covered in three 8-hour days. Not just that, but FP in general is quite a mind-flip from other programming paradigms. I found that I would hit a wall every couple of hours where things would suddenly stop making sense. That would trigger a stressful fight-or-flight response, and it was really hard to push through. (Massive thanks go to assistant instructor Dave and my friend Jed for helping me as best they could.)

The fact that I returned after that first day is solely down to the Snook persuading me that I could do it. (I really, really didn’t want to go back.) I survived though, and even if I didn’t understand everything, I have a much better grasp on the concepts that I did before I started. I learned a lot of vocabulary and demystified some of the more arcane bits of FP jargon. The next time I crack open my Haskell book, things will be easier.

Other Stuff

  • I’m going to India! I was honoured to be invited to speak at this year’s Agile India 2018 in Bangalore in March. I’ll be talking about Building Software That Lasts. If you’re in the area, you should definitely attend.
  • LinuxConfAU kicks off tomorrow! Tomorrow I’ll be hosting an art exhibition during the lunch break, and on Tuesday the 23rd I’ll be running the Art + Tech Miniconf. (There are a limited number of miniconf-only tickets available for purchase for Tuesday, so let me know ASAP if you want one.)
  • Tickets are still available for Sydney’s Global CFP Diversity Day event on February 3! If you’ve got a goal of speaking at a tech conference, you should come along to this workshop.
  • Curious about what Webpack actually does? I found this excellent Reddit comment that explains it in straightforward English. If you’ve ever wanted to know why we don’t just add <script> tags to a page anymore, read that.
  • The YOW! team often shares links to interesting stories in tech via our internal Slack. I especially liked this one from my boss Dave: Your Next T-Shirt Will Be Made by a Robot. I will be very curious to see if this company can pull it off. I’ve seen videos of robots trying to fold towels, and they are so flummoxed by soft fabrics that they have to move verrrrry sloooooooowly.
  • And one more reminder – we have two upcoming YOW! events in Sydney with open Calls for Presentations! YOW! Data will be held on May 14-15 and is looking for speakers on data-driven technologies and applications. YOW! Lambda Jam is coming up on May 21-23 and is all about functional programming.

I leave you with a final bit of wisdom from my FP course…

Weekly Meetup Wrap – January 14, 2018

Thank you Sharon Lu for the photograph!

A few months back, I was chatting to someone in the tech industry in Sydney who mentioned he missed the blog posts I used to write about attending meetups. “Really? I didn’t think anybody read them!” He said that as someone who couldn’t get to many events, he still liked reading about them. So I promised him that I’d give it another go.

So here we are in 2018, and the first groups are starting back up after the Christmas holiday. Strap in folks! (Did I mention I went to 124 meetups in the past year??)

My first meetup of 2018 was actually one I was speaking at! Tech Talks @ Pivotal Labs is a weekly group that hosts speakers from a range of fields: technology, product design, engineering and Lean startup methodologies. I’ve attended many times, but this past Tuesday was my first turn on the other side of the podium! (The lovely photo at the start of this post was from my friend Sharon Lu at the Tyro FinTechHub.)

I was reprising my talk from DDD Perth: “The Campsite Rule: Leaving the Tech Industry Better Than We Found It.” It’s about all the things in tech that can burn you out, and how mentoring is one way that you can make a difference and feel better about it. There were probably a hundred attendees, and they all seemed pretty engaged! There were even some nice comments on the Meetup page afterwards, including someone taking my suggestion to put their hand up as a mentor. 🙂

The funniest part was how I told everyone that CES was about to start so we’d soon be inundated with news stories about ridiculous tech gadgets. But even I never envisioned robot strippers… 🙄 🤖

Tuesday evening I headed over to ING’s offices to a brand new meetup: Tech Share Sydney. This group is organised by OCTO Australia, and they plan to have a different theme every month. This first one was all about data… which just so happens to be my major focus, as YOW! Data is coming up on May 14-15th! (We’re looking for speakers right now.)

The first speaker was Matt Howlett from Confluent giving us a tour of Apache Kafka. (Matt lives and works in Palo Alto but he’s an Aussie, so he was taking advantage of being home for the holidays to give a meetup talk!)

Matt said that a lot of folks think of Kafka as just a “pub/sub” message queue, but you can also think of it as “a commit log for your organisation.” Kafka’s advantages are all about scaleability and moving around massive amounts of data. You should use Kafka if you’ve got  lots of data or your organisation/architecture is very complex. I was impressed with some of the numbers Matt showed us…

We also got a sneak peek of KSQL, “an open source, Apache 2.0 licensed streaming SQL engine that enables stream processing against Apache Kafka.” Matt made it look super easy to join data together from multiple streams and write meaningful queries against it!

The second talk of the night was a tag team case study from Nicolas Guignard and Arthur Baudry from OCTO. They walked us through a project they’d worked on to build a sustainable enterprise-wide reporting system using Apache Spark and Amazon Web Services.

I was especially interested to learn about a tool they’d used that was new to me: FitNesse. It fostered collaboration by allowing the business analysts on the project to write requirements in a sort of wiki that then actually ran as acceptance tests. Pretty neat!

My third meetup for the week was another data-focused one: Web Analytics Wednesday. Unusually, this is a meetup that’s held in a pub! We were all squished in pretty tightly, but the drinks were free and everyone was super friendly. (I highly recommend the $10 burger special!)

The first speaker was Johann de Boer from Menulog giving a fascinating case study on a project he worked on for a previous employer that provided predictive segmentation of website visitors. Basically the end goal was to guess the goal of someone visiting the website based on their behaviour and then customise the experience towards that.

During the Q&A, I raised my hand to ask Johann about questioning users directly. That was something we did whenever anyone signed up to Canva, and was curious why they hadn’t done it on this project. We ended up having an interesting discussion about qualitative vs. quantitative data, and how you can use one to test assumptions against the other. I also chatted with Johann during the break about the minimum number of “pages” you need to track to make an accurate guess about what users are doing. It’s smaller than you think!

The second talk of the night was Jakub Otrzasek from Datalicious giving us a veteran’s view on what an analytics newbie needs to know. There’s massive demand for folks who know how to interpret all the web data that’s being generated, but not a lot of folks to fill the positions! I agree with Jakub – if you’re looking to hire an analyst, your best bet is actually to grow one from your existing team.

Other Stuff

That’s it for meetups. Here’s a few other things keeping me busy:

  • Congrats to my old colleagues at Canva on becoming Australia’s newest unicorn! I know what a big goal that was for the team, and I’m so proud to have contributed in a small way. 🦄
  • Next week I’ll be attending Data61’s 3-day Functional Programming Course taught by Tony Morris. I’m expecting to be challenged. (Eeep. Time to cram more Haskell.)
  • LinuxConfAU is coming in one more week! I’ll be attending again this year and I’m really looking forward to it. The first two days are dedicated to miniconfs. On Monday the 22nd I’ll be building a robot at the Open Hardware Miniconf, and on Tuesday the 23rd I’ll be running the Art + Tech Miniconf. (I’m super excited about Art + Tech. I managed to get pretty much my dream lineup of speakers!)
  • On Saturday, February 3rd I’ll be hosting the Sydney branch of Global CFP Diversity Day. This global series of workshops has a goal of encouraging newbie speakers from underrepresented groups to put together their first talk proposals. Special thanks to Sydney GA for hosting and to all the mentors who have volunteered to help!
  • Along with several of the Sydney Girl Geeks, I’m slowly working my way through HarvardX’s CS50: Computer Science course. For my first assignment, I had to build a game in Scratch. Naturally, I made one inspired by Roald Dahl! You can try it out here.
  • My friend Lucy Bain also has a renewed commitment to tech blogging for 2018. She’s already made two great posts this year: JS: ES6’s spread operator for objects and React JS: what is a PureComponent?. If you’re interested in programming, you should check them out.
  • And lastly – don’t forget that we have two upcoming YOW! events in Sydney with open Calls for Presentations! YOW! Data will be held on May 14-15 and is looking for speakers on data-driven technologies and applications. YOW! Lambda Jam is coming up on May 21-23 and is all about functional programming. Special note: This year we’ve added on an extra day for LJ that will be a full-day workshop aimed at providing an “on-ramp” to FP. (If you can’t make it to Tony’s 3-day course, you should definitely sign up for the LJ one!)

I leave you with a truly cool bit of music: Microsoft’s Spectre & Meltdown KB4056892 Patch converted into MIDI. These security bugs are an ongoing nightmare, but hey – at least we can dance to it! 💃