Several of my friends in the tech scene in Melbourne had been very positive about previous iterations of DDD Melbourne – a not-for-profit, grassroots-organised developer conference, that always sold out – so was curious to check it out and was grateful when my friend Cameron arranged tix.
My first impressions were positive – volunteers were very visible in pink capes, the code of conduct was front and centre, the name tag was DIY / free text and lanyards were colour coded for photographic consent. The schedule was voted on by delegates, meaning that the sessions most desired were scheduled in bigger rooms, which worked really well, and the schedule was also printed on the back of the lanyard – this was super helpful. Rooms were colour-coded and easy to find with big signage. The venue unfortunately was really too small for the number of delegates – the official tally was just over 600, and trying to fit this many people into the Town Hall, especially for lunch and morning tea, made it a little crowded.
The content itself was also much better than I expected at a grassroots event, however I did observe that at least three of the presentations I went to were by professional developer advocates – people who are employed by tech companies to professionally present about the company’s platform or product, and the content was very Microsoft-heavy – given they were a key sponsor I didn’t know if they automatically got speaking slots as part of their sponsorship or not – this wasn’t made clear at all. The language coverage itself was also very Microsoft heavy – lots of C#, Visual Studio, Azure – and very little Python or other open source languages like PHP.
NOTE: I currently contract in a similar role at Mycroft.AI
I did find it a little odd that the event was Microsoft-sponsored, but there wasn’t any GitHub presence at all. Interesting, there wasn’t any presence from GCP or AWS – likely because of the Microsoft sponsorship and their competing Azure product.
Overall, I found it a bit too pitched at the junior-dev end of the spectrum, and too Microsoft-heavy for my tastes – but a well run, safe event that has matured beyond its grassroots beginnings.
Keynote: A Day in the Life of a CEO – Dayle Stevens, CIO, AGL Energy
Dayle provided a real-life insight into the daily routine of a CIO – highlight how important it is to keep up to date with mission critical information, and the constant tension between a heavily filled operational schedule of back to back meetings, and the need to be focused strategically and on longer time horizons – against a backdrop of constant context-switching. Her experiences were authentic and realistic – and highlighted that in large organisations that the operating rhythm is set via the content of conversations –
“it’s all about talking with people”.
She is inspired by the ability to drive the direction of the company – and underscored that these days, every company is underpinned by technology, so having a technology role within a company allows you to have a stronger involvement in the overall organisational strategy. Dayle went on to explain that a key challenge for companies today is the complexity of technology – many companies are old – and some still have technology from 50 years ago – so CIOs are not just dealing with “two-speed” IT – they’re working on “three-speed” IT;
- dealing with legacy technology
- dealing with the digital transformation of today
- and needing to embrace the emerging technology of tomorrow
The role of the CIO as a cross-organisational role, that touches every line of business and every function, and is integral to process improvement, was underscored using a business model canvas, covering;
- Strategy
- Structure
- Systems
- Style
- Staff
- Skills
all combined under the umbrella of shared values – and Dayle noted that her job wasn’t just to interface with senior leadership, but to “empower everyone in the organisation”.
In her advice for engaging with CIOs, she referred to DISC personality profiling, noting that most CIOs fall into the ‘Dominant’ quadrant – people who are action oriented and outcomes-driven, and so in dealing with CIOs you need to quickly get to the point. She did however make the comment that she feels other personality types – more analytical types – are less represented at the CIO level, and that this is itself a diversity issue.
Rian Finnegan – A Practical Introduction to Quantum Computing
This was the standout presentation of the day, and a huge credit to Rian’s presentation ability, and skill in being able co clearly communicate complex concepts.
Rian provided a primer on Quantum Computing – starting with explaining how quantum computing simulates the the the quantum world – the world of molecules – and can be used to help solve wicked problems such as climate change and food production. Personally, quantum computing was always something that was firmly in the theoretical “maybe one day far off into the future” space – and to have such an accessible and easy to follow primer was wonderful.
Rian started with the classic Schrödinger’s cat example, highlighting how observing a system in quantum computing alters the quantum state, then provided an overview of complex numbers, Bra-Ket notation and moved on to quantum states, and then an overview of Bloch spheres, qubits, quantum gates, quantum entanglement and ended with a discussion on how to provide quantum supremacy – that is, how do we mathematically prove that quantum computers are superior to classic computers?
I cannot do Rian’s presentation justice in a summary – you really do need to see this talk, or get this talk to your own conference.
Ben Cull – Startup Life Lessons
Ben was the most engaging presenter of the day, and his delivery style was warm, humorous and entertaining.
He told the story of this journey founding several startups, and the lessons he’s learned from each of them, condensed around a sort of maturity model;
- Minimum Viable Product
- Market fit
- Growth
- Performance
- Exit
He highlighted the need to focus on your own personal brand, and to have a clear understanding of what will drive you – particularly as founding a startup requires a lot of resilience.
“What is going to drive you at your lowest point?”
One aspect he advocated was that as a startup founder, you have to push yourself to be social – you have to have large networks – “go to the pub, you will get a job” – opportunities come through social engagement. I’m not sure if I agree with this – firstly because it plays into the “bro culture” of hiring people like you – or who drink in the same pub as you – or who drink – an activity that you have in common – and because I think it’s the easy way out. Hiring the person you met in the pub at a meetup just screams due diligence.
One key takeaway from Ben’s presentation was ensuring that you are continually talking with your customers, and using their feedback to iterate on your product – it’s never a case of “build it and they will come” – because they won’t. Marketing and selling, getting product traction are incredibly important for a startup, and it can be helpful to find a partner or ambassador to help you with this – a recurring theme from startup advisors – you need the right mix of co-founders for a successful product.
Damien Brady – An Introduction to Machine Learning
This was a great, accessible introduction to machine learning concepts
Damien is a Developer Advocate at Microsoft, and started by putting Machine Learning into context with artificial intelligence and deep learning, and underscored the need to start the machine intelligence life-cycle with a “sharp question” – a question that machine learning approaches can answer. He highlighted that one of the hardest parts of a machine learning development lifecycle is going to be getting your data in the right format – it’s often unstructured, inconsistent and requires a lot of cleaning.
He went on to provide an overview of how machine learning models work, and explained the concept of ‘overfit‘. He explained model functions, and how the decision boundary – what “is” and “isn’t” – is explained by a mathematical function. Here we got into some matrix-based calculus as he went on to explain the concept of a cluster function, an error function, and how we want to minimise this – using calculus minimisation techniques, such as gradient descent.
He went on to explain how model functions which are linear have specific limitations because they are linear – they are two-dimensional, but many applications of machine learning are multidimensional. To make the model non-linear, an activation function – such as a sigmoid function – is applied.
The key takeaway here was that if you have a generalised typed of machine learning scenario you don’t need to start from scratch because there are several machine learning models and model training tools available in tools like TensorFlow.