Episode 146: Agile, Architecture and Technology with Rebecca Parsons

The Agile Revolution Podcast

Tony and Craig are at YOW! Conference in Brisbane and catch up with Rebecca Parsons, the Chief Technology Officer at ThoughtWorks and the co-author of “Building Evolutionary Architectures: Support Constant Change” and chat about the following:

  • Rebecca’s keynote talk at YOW! “The Past and Future of Evolutionary Architecture
  • Evolutionary Architecture is the next stage on applying Agile practices to software development at the systems level and be able to respond to changes in the environment that affect the architecture
  • Need to determine for your system what constitutes good, fitness functions are the documentation and tests to ensure your system meets those characteristics
  • Need to move the needle on architecture, need to develop tools and techniques to decompose the role
  • Agile Alliance is looking at what it means to truly be an international organisation (there are now affiliates in Brazil and New Zealand), expanding conferences from…

View original post 192 more words

YOW! Hong Kong / Singapore 2017 – Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay

My presentation from YOW! Hong Kong 2017 and YOW! Singapore 2017 called “Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay” is available on Slideshare.

When you look for inspiration in the Agile Coaching community, the name Gordon Ramsay is probably not the first name to come to mind. He has been known to be belligerent, condescending and downright rude, but underneath this brute facade is a treasure trove of skills and talents that influence change.

In this presentation we will draw insights from his ‘Kitchen Nightmare’ escapades and draw parallels with how much his work aligns with that of an Agile Coach and the goal to successfully drive change and introduce a number of models and techniques that are indispensable in the coaching toolkit.

Here are some tweets and feedback from the talk:

Google Cloud Data Pipeline Patterns

At the recent YOW! Night in Brisbane (as well and Sydney and Melbourne), Lynn Langit, and independent software consultant and cloud expert presented “Google Cloud Data Pipeline Patterns”.  It was great to meet her, here are my notes from the event:

Lynn Langit

  • Storage is so simple you don’t need to think about it – data lake architecture
  • Simply select how much memory and how many cores and it computes the cost
  • Google is quick because they are laying their own fibre and using their own infrastructure – less than a minute to spin up a VM, with no local data centre
  • Chrome has a RDP client – who knew
  • Google philosophy is you shouldn’t have to hire someone to manage the pricing
  • Bioinformatics is new to the cloud and they are in great need of engineers, Google is having a stab at a genomics API
  • BigQuery is NoOps, has been evolved to be a data warehouse, with no servers,
  • Big Relational if you just want SQL, Amazon Aurora is the fastest growing cloud database, Google has released Cloud Spanner, first database to truly meet CAP theory
  • BigQuery is column store, Cloud Spanner is OLTP
  • MQTT seems to be coming the defacto standard for IoT
  • IoT uses BigTable first and BigQuery second in Google reference architectures, because it is cheaper
  • Python is the emerging ML language for some reason
  • Teaching Kids Programming

Breaking the Cylinders of Excellence (in the Australian Government)

YOW-Nights_Logo_stackedAt the recent YOW! Night in Brisbane (as well and Sydney and Melbourne), Lindsay Holmwood (the Head of Technology at the DTA) presented “Breaking the Cylinders of Excellence”. It was a rare experience to hear the story of how the DTA is using cutting edge development practices to help the government catch up with, and even exceed, the public sector. 

 

  • DTA – aid transformation in government, small agency
  • Delivery hubs in Sydney and Canberra – help identify and plug capability gaps in teams
  • Prototype of how government services could work  gov.au/alpha
  • Digital Service Standard – 13 characteristics on what good looks like in government, useful in organisations as well
  • Cloud.gov.au  – government cloud service, usage growing, continuous delivery pipeline (which is a major change for government who are used to 2 changes per year)
  • The unit of delivery is the team – not about individuals, but the team – borrowed from GDS
  • Government is slow, but government is designed to be stable, they cannot fail, they have characteristics that are resistant to change
  • Myth that organisations must choose between speed and reliability, high performing organisations deploy more frequently, have shorter lead times, fewer failures and recover faster, but they also have a greater profit
  • Want to deliver like a startup but be stable like a government
  • Not a lot of cross pollination between departments currently
  • Read the policy! – quite often the process is not mandated
  • Document what works and doesn’t so it becomes a repeatable pattern – ie. running a meetup inhouse, don’t tell me I can’t do it, tell me how I can run it without being thrown in jail!
  • Stick with technologies the government is comfortable with if you are changing the delivery engine
  • Security matters – prevention is a battle you will always lose, detection is your best defence – aggregate and log in one place, identify threat signatures, etc
  • Embed security people on big services so it is part of the architecture
  • Proactive testing between different governments around the world on similar platforms
  • Simplest security breaches make the most mess – infected excel macros, leaving free USB keys in the foyer that are malware infected
  • Need to put user needs first – alpha mockup using tools like Jeckyll, then beta then live
  • Lots of people strictly interpret the design and delivery guides – they are guides not rules!
  • Create a longer runway by pulling tech forward – turn down the volume of design, turn up the volume of tech
  • If it hurts, do it more often!
  • Fixed cost delivery with agile is a thing, agile is a way to de-risk in the government
  • Don’t put manual testing on the critical deployment path – have special skills on hand for accessibility, performance and security

Social Good and Flying Robots

YOW-Nights_Logo_stackedAt the recent YOW! Night in Melbourne (as well and Sydney and Brisbane), Daryl Wilding-McBride (the CTO of DiUS) presented “What I Learned while Teaching Kids at Flying Robot School”. It was an interesting story on the importance of social good for those of us in the technical space.

  • Waking hours capacity – families, hobbies, paid work, unpaid work
  • Not all work has equal social impact – pays the bills > interesting > impactful > worthwhile
  • Worthwhile work creates a legacy and passes the BBQ test (something you are proud to convey and recognised as value by the other person)
  • 80000hours.org – the average hours you have from university to retirement, help you decide how to spend that time and be effective
  • William MacAskill “Doing Good Better” – how do you know your social impact is not being wasted – doing good, lean
  • Dimensions for measuring social impact – scale, neglectedness, tractability, personal fit
  • A lot of untapped potential in rural areas
  • Interest in science and maths drops considerably between year 6 and year 9
  • Number of girls continuing with maths after year 10 – 21% drop out, and for boys and girls the percentage has tripled over the last 10 years
  • Flying Robot School – started 2014, overcome barriers for rural schools, free program to lower barrier of entry, blend of technologists and teachers
  • Drones are not only fun but are a self contained package that cuts across science, maths and technology
  • Had lofty goals on topics to teach, but had to prioritise to mix theory and practice
  • Other social outlets – Random Hacks of Kindness (RHoK), Code Club, FIRST Robotics, NodeBots, Robogals
  • We have an obligation as technologists to make things better

Martin Fowler on Microservices, Event Sourcing and Infrastructure as Code

YOW-Nights_Logo_stackedIt was great to have Martin Fowler back in Australia and host him in conjunction with ThoughtWorks for a YOW! Night in Sydney (he was also in Melbourne but I was unfortunately not able to attend).

Martin followed his usual approach of breaking his talk into three mini talks on Microservices, Event Sourcing and Infrastructure as Code. Here are the videos I shot from the session for YOW!

YOW! 2015 – 40 Agile Methods in 40 Minutes

YOW_2015_Conference_-stacked-PNGMy presentation from YOW! 2015 called “40 Agile Methods in 40 Minutes” is available on Slideshare. The video is also available on YouTube.

With 73% of the world using Scrum as their predominant Agile method, this session will open up your eyes to the many other Agile and edgy Agile methods and movements in the world today For many, Agile is a toolbox of potential methods, practices and techniques, and like any good toolbox it is often more about using the right tool for the problem that will result in meaningful results.Take a rapid journey into the world of methods like Mikado, Nonban, Vanguard and movements like Holocracy,Drive and Stoos where we will uncover 40 methods and movements in 40 minutes to help strengthen your toolbox.

WHO SHOULD ATTEND

Software developers, Agile coaches / Scrum Masters, technical leaders, business analysts, testers and anyone with an interest in the variety of approaches available to Agile teams and organisations.

It was a privilege to be invited to speak at YOW! 2015 which is considered to be the leading software development in Australasia. The talk was delivered in 3 cities: Melbourne, Sydney and Brisbane. It was also an honour to have some of the most influentional people in the Agile community attending including Dave Thomas, Dan North and Don Reinertsen.

Here are some of the live tweets from each of the 3 conference talks:

An Introduction to Clojure

ClojureI had the pleasure this week to sit in on a 2 day Introduction to Clojure workshop being run by one of Clojure’s core developers, Stuart Sierra. YOW! and Relevance, Inc. are running these workshops on the east coast of Australia throughout May 2013 and for someone still very new to functional concepts it was a great introduction to functional programming as well as the Clojure language itself.

The key to a workshop like this is the slides with the code examples and the labs to practice the learnings, Nonetheless, here are my notes from the course on some of the concepts that I picked up.

Introduction to Clojure

  • designed to fix shared state concurrency, designed to run on the host platform
  • ClojureScript designed to target devices that cannot run a full JVM like mobile platforms, browsers, etc..
  • most of this course is applicable to ClojureScript, just the interrops to the host environment are different
  • BigInt (trailing N), BigDecimal (trailing M)
  • Strings in double quotes, characters in “”, reg ex are started with a #
  • literal true and false, nil is the same as Java null
  • symbols are words in your program you want to reference from somewhere else, always resolve to something else
  • keywords are a special type of symbol, start with a colon :, fixed labels that have no meaning, used for names of fields often, close to enum in Java
  • REPL – read, eval, print, loop – from LISP, all the steps are separate which is different to interactive terminal
  • every expression starts with an expression, everything returns an expression which is why you get nil when doing a println
  • REPL *1 will get you most recently used expression
  • print and println will give you human readable, prn and pr will give you the machine readable output
  • list are written in parens, usually represent function calls
  • vectors usually reflect collections, in []
  • maps are key value collections, in {}
  • set starts with a hash and curly brackets
  • commas are whitespace in Clojure
  • first is the function position, usually starts wuth a function or an expression that returns a function
  • quote (‘) is syntactic sugar for quote, prevents evaluation, common issue when starting Clojure when dealing with lists
  • doc – built in documentation
  • Leiningen – built on Maven, hides complexity but gives you its goodness
  • project.clj – dependency file

Functions

  • functions are first class and values, most of the core code are pure functions (no side effects)
  • defn defines a named function (defn greet [name] <body>) is a definition called greet, passes a name and runs some functions, then call as (greet )
  • can have multiple aritys, [] is no arguments, others are the named arguments, useful way to provide defaults
  • & in argument vector says next arguments gets all the remaining arguments in a list (0 or more)
  • fn is anonymous function with no name (fn [parms] body), to call it you can stick it at the head of a list, use this if you need to do something one time
  • shorter synatx is #(), and use % sign for the arguments, syntactic convenience
  • usually invoke a function by putting it at the head of the list
  • apply takes a function and list or collection or arguments, same as invoking a function on those arguments
  • let used for local variables, uilt into the compiler, takes a pair set of bindings (symbol and an evaluated expression) and then a body of any number of expressions
  • fn creates a closure, locals are stored and kept with the function
  • invoking Java – instantiation (Class. argument)
  • read Clojure inside out, read the inner most function and then read out

Expressions and Loops

  • in Clojure everything is an expression, always return a value even if that is nil, multiple expressions always return the last value
  • flow controls always return a value as well
  • logical false is false or nil, everything else is true, similar to the semantics in Ruby and Python
  • when is a macro – check and do a buch of things if evaluates true
  • cond – tree of if then else without lots of nesting, test – expression pair, stops when it hits the first true test, can end with an :else default by convention only
  • case – occasionally useful, like switch in Java, takes constants and returns value, if you don’t define a default you get an error, odd number of expressions, the last one is the default
  • dotimes – basic loop (dotimes [i 3]), only useful for side effects as it never returns a value
  • doseq – iterates over a collection, like for-each
  • for – not for looping, generates data, returns a sequence
  • recur – for recursion, rarely used, loop defines bindings which you recur
  • exceptions – don’t use them much in Clojure, no checked exceptions, try-catch-finally as per Java, throw to throw an exception
  • ex-info and ex-data that allows you to pass back a map
  • with-open – convenience wrapper, works with any method that needs to be closed

Namespaces

  • Clojure runtime is a singleton within the JVM
  • namespaces allow you thave the same name mean different things in different places
  • ns – use macro at the top of the source file to create a namespace, :require keyword to load the dependent libraries
  • implicit mapping between namespaces and files, dots into slashes and hypens into underscores
  • ns :use : only is deprecated form of :require from 1.4 up
  • ns :import for importing Java classes, every namespace imports java.lang
  • in-ns to change namespaces
  • equivalent macros for when using the REPL instead of a file
  • a bunch of functions for returning namespace information, but would rarely use these
  • private vars are just a metdata symbol, use ^:private, not truly private or hidden

Collections

  • a class or a struct becomes a map in Clojure
  • clojure.set – mathematical set operations
  • vectors are functions, can call using the indices
  • mostly use vectors, lists are useful when you want to work at the head of the list as it is more efficient, like simulating a stack
  • seq – returns a sequential view of something, like an iterator but it is not an iterator, can get first or rest
  • range – infinite lazy sequence of integers
  • into – puts a sequence into a collection
  • take / drop – take the first n in the sequence, drop the first n in the sequence, also filter and remove
  • map – the essence of functional programming – calls a function on a sequence and returns a sequence, the functional equivalent of for/each
  • reduce – powerful, uses first element if not initiated
  • some – to return the first logical true in the sequence

Concurrency

  • concurrency – multiple things happening concurrently that are sharing the same state
  • deref – returns current state, shortcut is @<ref>
  • atom – basic container with mutable state, changes are atomic, synchronous
  • ref – coordinate and share identities, synchronous, must be iolated in a transaction, uses locking under the hood
  • ensure – ensure the state is the same when the transaction is completed
  • alter – change the value of a reference in a transaction, if another transaction tries to change it gets aborted
  • commute – same behaviour as alter but allows concurent updates in a transaction, use for counters, adding elements to a map, if you are not sure use alter
  • agent – asynchronous communication, atomic updates, ensure only one thing done at a time, every agent has its own queue
  • send – send an action (function) to an agent, execute in the order that you send them, can’t guarantee that other threads are not sending action, fixed size thread pool
  • send-off – variable size thread pool
  • vars – thread safe, global identity, alter-var-root to modify global state created by a def, by convention dynamic var is surrounded by * (called earmuffs)
  • swap! and reset!, convention to put a bang at the end of functions that have side effects or shouldn’t be put inside a transation
  • watches – experimental, takes 4 arguments – key, reference, old state and new state, you can then add-watch
  • future – background process, if you de-reference the future it will block (@<ref>)
  • promise – like a future but no running process, like a container, can wait for it to deliver that promise to another thread, can only be delivered once
  • realized? – to ask if a promise has been delivered

Polymorphism

  • polymorphism – two types protocols and multi-methods
  • type – what is the type of class using class or type
  • maps do not have a notion of type, record allow you to give a type to a map, defrecord creates a record, by convention the name has a capital, records are maps so we can call all the map functions
  • record automatically creates the constructor function called -><function>, map-><function> takes a map
  •  when you create a record you are generating a Java class, useful when creating a lot of maps with the same structure or to implement protocols
  • protocol – like a Java interface, group of functions that do not provide an implementation, called based on the first argument, defprotocol to create the functions
  • convention _ is an argument I don’t care about
  • reify – creates anonymous types
  • extend-type and extend-protocol – allows you to create new interfaces to existing types, solves the monkey patching issue
  • multimethods – generic methods, much more flexible than protocols, uses defmulti and defmethod, an extensible switch

Macros

  • macro – pure functions – defmacro – code is input and output, define the symbols to reflect the code that we want, macroexpand-1 is used for testing and debugging to see what that macro does
  • syntax quote `
  • unquote ~ and unquote splicing ~@
  • most of the core language where not functions are macros, write macros for syntactic convenience

Clojure and the JVM

  • Clojure is tightly integrated to the JVM, is unlikely to be the bottleneck performance wise
  • arrays can use aset and aget to access, use Clojure Collections but maybe needed for interoperability, can use to-array and into-array
  • types and collections are all mapped over to Clojure
  • built in benchmarking in Clojure using time function, time a loop to get a better indication rather than just time on its own
  • by default everything is boxed in Clojure, but Clojure has limited support for long and double primitives
  • compile – pass your namespace, will give you ahead of time compile which gives a modest (30% – 40%) speed increase amongst other benefits, usually will us leinengen or another tool (lein compile)

ClojureScript

  • ClojureScript is designed to deliver optimised JavaScript
  • two pieces – ClojureScrpt compiler written in Clojure on the JVM, compiles Clojure to JavaScript, then the Google Closure compiler optimises for space for performance
  • lein-cljsbuild makes ClojureScript tolerable
  • ClojureScript One but is superceded by Pedestal now
  • testing frameworks – Clojure.test, Midje testing framework written by Brian Marick and Simulant

Tech Connect 2013 Brisbane Review

Tech Connect 2013With thanks to my very good friends at SlatteryIT, I headed off to Tech Connect 2013 in Brisbane this week to network with the Brisbane startup community.

Brisbane Lord Mayor Graham Quirk kicked off the day by reaffirming the Digital Brisbane strategy which already has seen the appointment of a Chief Digital Officer, a visiting entrepreneurs program and a strategy to attract more startups in Brisbane. He was keen to see more success stories in Brisbane, following on from start ups like Halfbrick, the inventors of Fruit Ninja.

Here are my notes from the sessions.

Enabling Entrepreneurship

Tyler Crowley is the first speaker to be brought to Brisbane as part of the visiting entrepreneurs program. Tyler is a well known and respected entrepreneur, best known to me as the co-host of the This Week in Startups podcast. I am not sure if there was meant to be any direction to this session, but it turned out to be a rambling question and answer session.

  • bring awareness to the community by getting people to tweet for being at an event – you will be surprised how quickly the city will get recognised
  • startups tend to congregate in the same area – in San Francisco it is around the Twitter office, in Palo Alto it is around University Avenue and in Los Angeles it is around Santa Monica, places that have startup centres benefit due to the cluster effect, cities like Stockholm are suffering because of a lack of this
  • River City Labs is probably currently the nexus of the community in Brisbane
  • the crowd funding model is still on the horizon and should be awesome for startups outside Silicon Valley, AngelList just got approval to have a crowd funding model from the SEC in the last week
  • another company getting acquired in the next 6 months will really put Brisbane on the map
  • attracting VCs – LA does content very well, San Francisco does social networking very well, so attract the kind of startups to the industry that you do well and get that message out
  • Brisbane has incubators like River City Labs (private) and ilab (government / university)
  • documentarians are important – TechZulu in LA and Scobleizer in San Francisco – provides a window to everyone outside, TechZulu is a great model, it took two years as a labour of love until it became profitable, the mainstream media follows when it becomes popular and it will explode
  • Brisbane is in the frustration phase of funding and media coverage – they will take notice when they become embarrassed by the success of startups and documentarians – currently at the tipping point, it is inevitable!
  • if your city had a blank canvas – getting a nest is important, support the documentarian, support angel events, support local meetups and events!, hold regular monthly events, calendars and job boards, strategy to attract outsiders to get the “Apple Store effect”
  • This Week in Startups – is the global meeting place to inspire people
  • build a startup map of Brisbane, one exists of Australia, maintain a database like CrunchBase
  • it is time for the banks to wake up and support startups like Silicon Valley Bank who are now spreading as the major banks are asleep at the wheel, there are opportunities for supporting industries to step up

Think Big!

Matt Barrie is the creator of Freelancer, which is the worlds largest outsourcing marketplace. I was really looking forward to seeing this talk and it did not disappoint! His presentation is also available online.

  • software is eating the world – the biggest bookstore in the world is digital (Amazon), Scrapbooking (Pinterest), Evernote, maps, music, yellow pages, fashion, money, real estate, jobs, etc, etc, etc…
  • 66% of the worlds population are yet to join the Internet
  • demographics are changing and aging – lots of opportunities in this space as well
  • lots of online learning opportunities – you can design logos easily via Envato, Stanford University had 170,000 online students enrolled in an Artificial Intleligence course that normally attracted 250 people and the highest achievers were outside Harvard, there are also options like Coursera and Khan Academy amongst others
  • created Freelancer.com – we are now a service economy, the world is becoming very globalised, crowd sourcing (outsourcing has now turned to crowd sourcing eg. logo design)
  • Exposé the Freelancer.com logo! – crazy pushing the boundaries of crowd sourcing, also Kickstarter and the Pebble Watch – wanted $100,000 to build, raised $10 million!
  • Kickstarter funds more projects in arts than the US government, the next big thing is musc
  • The World is Flat
  • parabolic growth comes from distribution firehoses eg CityVille growth in Facebook, Viddy for reading news in Facebook, Google, Reddit
  • you need to strike early, before the idea gets crowded eg. games in the AppStore like Angry Birds who owned the market early
  • the new metric is growth – referrals are extremely important – see Startup Metrics for Pirates
  • all the software you need is free or cheap
  • Reddit.com ha a sub-site for everything
  • sites like RetailMeNot started with $30, Digg started with $60
  • the first dotcom bust was due to bad business models and a strong reliance on advertising, but in reality we are still in the original boom
  • Zynga – 96% of users don’t buy anything, the 4% that bought a cow to impress thir friends raised them $1.2 billion
  • many companies are not ready for growth, a mess internally and financially
  • there is lots of potential to replace people with algorithms and insights
  • in Australia we need to find a way to build technical businesses in the financial sector, like we do for mining
  • enrolments in engineering is down 60% in the middle of a technology boom, we need to start seeding interest back at school level
  • any job that can be described by an algorithm can be turned into software
  • Australia is a good place to base a startup, easier to hire people and start a network, but our exchange rate is crippling and if it rises it could become a major problem
  • you can build a big business targeted at the local market (eg Realestate.com.au), but always think global
  • Mary Meeker presentations should be used more in presentations

Money To Grow

This panel included John Hummelstad (Ephox and Concept Safety Systems), Sean Teahan (Nimble) and Doron Ben-Meir (Commercialisation Australia).

  • options include borrowing from friends, earning a buck first and investing your own money, earning from the bank (usually $2 million and up), funding by credit card, selling something, grants and R&D concessions, pay in 60 / collect in 30 days, angel network, information memorandum by getting close to OEM’s particularly those who you might potentially sell to, Venture Capital but this is decling, crowdsourcing
  • fund like minded companies to work closely with you
  • relationships at a strategic level are hard, but can bring rewards in the long term
  • CFIMITYM – “cash flow is more important than your mother”, business owners are awake at 2am worrying about cash
  • lean startups work very well for technology types of businesses, cash hungrier models need to exist because we still need to build products like iPads
  • figure out who in the supply chain cares about your type of business – they are good areas to look for investors
  • the large amount of successful businesses do not have venture capital funding – should only consider this if it brings value
  • essential that you break every rule in private funding that you can’t break in the public market
  • Australian Government has uncapped 45c / dollar R&D tax incentives (quarterly in arrears), then you move to incentives from Commercialisation Australia
  • Enterprise Connect is great way to take your business through the washing machine – your business needs to be able to stand up to audit
  • getting a commercialisation grant – it is your onus to prove that your invention works, once that is proved the commercialisation then needs to be tested
  • make sure when meeting potential funders that you can answer how you are going to solve their problem, also make sure you know all about them, use tools like LinkedIn and be educated, it is just courtesy
  • important to have front foot sales to fuel the fire but most importantly to get validation from the customer base, it also builds credibility by reinvesting your profits, biggest issue with technical companies in Australia is there an aversion to being a saleman, it is all about selling and if you are not prepared to do this then don’t start!, you are selling yourself not the product
  • selling is learning – you need to learn what your customer wants and your value proposition

Accelerating Growth

This panel included Natasha Rawlings (StreetHawk), Ric Richardson (inventor of software activation amongst many other thing) and Steve  Baxter (River City Labs). Ric mentioned that he gets lots of attention from his appearances on Australian Story (The Big Deal and A Done Deal).

  • your first role is not to be the CEO but the Chairman of the Board (looks at the business to ensure they have the ideal CEO and are delivering to plan)
  • find the right people and partner with people who have done his before and hold them to their agreements
  • the right investors can bring you the introductions to partners, even if they decide not to invest in you
  • always deliver a good product and don’t piss the customer off – service is still important
  • raising equity starts with a plan – do this only when you need the funds, it should be the last resort, ensure you have a capitalisation (cap) table so you can understand what will happen to your equity – start with 30% for founders, 30% for management and 30% for investors
  • always start a business by looking at what it will look like when it is finished
  • Stanford University has a useful entrepreneurial course, be disciplined when following the Lean Startup model and have a plan
  • build a better prototype and often it will sell itself, other people will tell you quickly what it is worth
  • network deeply, meet people twice, ask questions even the ridiculous ones
  • investors are there to support and provide leadership, when you start pulling out agreements you know things are going wrong, like to know that they have listened

Setting Up for Global Success

This panel included Brendan O’Kane (OtherLevels), Jeremy Colless (Artesian Venture Partners, which was spun out of ANZ) and David Israel (UniQuest)

  •  base yourself close to your prospects
  • important to think global from day one, particularly in the technical field, be worlds best rather than Australia’s best
  • take advantage of the Australian talent spread across the world, utilise international students particularly those from north of Australia

Building Value

This final panel included Anne-Marie Birkill (OneVentures), Bob Waldie (Opengear) and Steve Baxter.

  •  people are cheap – premium prices do not work, people care about price
  • service is key – give good service
  • businesses are not charities, lifestyle is not a sustainable currency, you need to make money
  • ideas are not traction – get off your arse and learn what you don’t know
  • when looking for value, you are looking to triple an investment
  • success is building a valuable, non-charitable business, a second round of investment is not success
  • don’t think you can take a great technology idea to a crappy service industry eg taxis – they are not interested
  • make sure you formalise arrangements, in case things go bad, write down the exit conditions and make sure you are aligned

Overall a great day of presentations, panels and meeting new and interesting people in Brisbane technical and startup community.

Scrum Australia 2013: Scrum Masters: The Full-Time Role Conundrum

Scrum Australia 2013My presentation from Scrum Australia 2013 called “Scrum Masters: The Full Time Role Conundrum” is available on Slideshare.

The Scrum Guide defines the Scrum Team as being made up of three primary roles: Product Owner, Development Team and Scrum Master. The role of the Scrum Master is often misunderstood, particularly by management, so often questions start to get asked such as “can I share the Scrum Master across teams”, “can the Scrum Master do Project Management” and “can the role be rotated”?

In this talk we will take a look at some of the misconceptions around the Scrum Master role, discuss how it fits into the organisational structure and tackle the age-old question of whether the Scrum Master is a full time role. We will also look at an improvement plan template to help Scrum Masters improve in their role.

Some of the comments from Twitter included: