ASWEC 2009 Wrapup
January 18, 2010
Earlier last year I attended the Australian Software Engineering Conference (ASWEC) on the Gold Coast. I recently had to dig up my notes when creating a summary of my year in Agile (2009), and, since the conference was before I started blogging in anger, I decided to post up my notes now.
My impressions of the conference was that whilst its theme was “Agile, the New Mainstream”, many of the core attendees (mainly from the academic and research environments) were relatively unaware of agile in practice. My core criticism was that unlike other conferences I have presented at, this conference requires the speakers to still pay to attend. Luckily my employer was a sponsor and negotiated a free pass, but for this reason I did not submit a proposal for the ASWEC 2010 conference that is being held in Auckland, New Zealand.
The following are my notes from the sessions that I attended.
Keynote: Specialization and Economies Of Scale
Mary Poppendieck delivered the day 1 keynote:
- deal with complexity? – divide and conquer – along what lines do we divide?
- “The Pin Factory” (Adam Smith, 1776) – divide by specialisation
- 1930, Ford – the ultimate pin factory – variety is the enemy – a car for every purpose
- cost of changeover – batch and queue – $ cost to change machines over, Little’s Law (queuing theory)
- cost of delay – cash flow, obsolecence
- cost of mistakes
- cost of motion
- cost complexity – scheduling, learning
- use a work cell instead of economies of scale – relied on cross functional team
- 1968, Edsker Dijkstra defined structured programming and proclaimed need to eliminate bugs to start with, the programming will be cheaper
- 1972, Harlan Mills defined top down programming – should not have difficulty at integration
- divide by hierarchy / organisation
- 1972, Dave Parnas defined criteria for decomposition – modular programming, easier to change
- 1974, Vint Cerf / Robert Kahn invented TCP/IP – each network stands alone, no information retained by routers, no global control, communications on best effort basis
- division by matching the domain
- Amazon – all about scale
- transitioned to services, each one
- owned by two pizza team – must be able to feed the team with two pizzas
- eliminated communication between teams, seven people cradle to grave, cross functional, stay a minimum of two years
- now sell as cloud computing
- like TCP/IP, don’t need to reach agreement – eventual compatibility, don’t worry about different databases, accept and deal with failure
- software structure meets organisation structure
- teams need independence to be creative
- Conway’s Law
- 1976, Barry Boehm – SDLC – specialisation (like Ford)
- IBM – convert 35,000 engineers world-wide to agile
- WebSphere – 10 month deadline, customer feedback every iteration, early access program, customer feedback on discussion forum – 50% of marketing information wrong so developers listened to customer – phenomenal sales day one of release, support calls down by an order of magnitude
- case study – do agile right and find defects the minute they happen
- xUnit testing – one of the best software engineering advances in the last decade
- batch and queue so ingrained, we fail to see queues of work that will take years to clear
- utilisation paradox – 100% utilisation of highway is a parking lot
- Empire State Building – September 1929 to May 1931 – on time and 18% under budget, demolition to finish – biggest issue was supply of materials, the only thing that was scheduled (Carol Willis, “Building The Empire State” builders notebook)
- 4 pacemakers to build the building
- schedule the constraint – use a pacemaker schedule for the constraint
Towards Specification Based Testing for Semantic Web Services
Gill Dobbie delivered this presentation:
- most people test against the web service specification – Coyote, WSDLTest
- need to test web service against user goals
- WSMO – Web Service Modelling Ontology
Intellectual Property In The Software Industry
I always enjoy presentations on the legal side of IT, and Alistair Smith delivered this informative presentation:
- 4,000 patents last year to IBM, USA has the most number of patents
- copyright protects the expression of an idea, not the idea itself
- patents protect products, methods or processes – jurisdictional (so need to apply multiple times)
- confidential know-how – not known to the public (eg. the recipe for Coca Cola)- work must be secret, can be leaked
- trademarks – distinguish goods / services of a trader, Coca Cola 80% is recognition of product – must be distinctive, reproducible, people trading for smells (tyres that smell like roses), can be renewed indefinitely
- strong protection – need range of IP types
- do an R&D review eg. Kambrook and power boards
- patent pending – filed but not yet granted
- open source and patents do not mix – but use other IP
- reward inventors
- formalise IP ownership – make explicit in employment contracts
- review existing IP – company that had patent for JPEG compression missed 10 years of royalties
- maintain records of R&D – evidence of inventorship, ownership and prove date of creation for copyright purposes – maintain previous versions of software in unchangeable form, keep notes in bound notebook, dated and signed
- search IP databases – look at what competitors are doing
- use trademarks that are registerable – not descriptive of product, should be distinctive
- don’t just rely on copyright – does not protect against independent creation
- don’t rely on confidentiality agreements alone – provides very little protection and hard to prove and hard to recover from
- don’t rely on open source software being unencumbered by patents eg. Microsoft has 200 Linux patents, IBM “bluewash” on its new takeovers and check code line by line (takes six months)
- no 10% rule on copying software – infringe is a substantial part – 2 JS/CSS files in a content management system
- don’t forget to mark products – impact on damages
Invited Presentation: Bringing Agile To Life At The Enterprise Level
Jeff Smith, the CIO of Suncorp, delivered this keynote presentation:
- feedback is essential
- Wikipedia – 6 employess, 200,000 hours of contribution from community
- Grateful Dead – high grossing band, found people like listening to music together, “collaboration”
- leaders need to encourage simplicity
- provide tools to enable collaboration
- leaders use passion not threats to get things done
- innovation / entrepreneurship is for everyone – need to channel the passion
- Pixar – core beliefs, simplicity, intellectual capability
- managers need to help teams get out of failure
- trusted environment – safe to tell the truth, create a learning environment
- creativity for everyone not just the artists, focus on people not the ideas
- disseminate the authority to the teams
- similarities between Pixar and agile
- get people interested in learning
- why? why now? why do it this way?
- we are good at reacting, not so good at responding, initiate change is hard
- generosity is hard – right for community before yourself
- managers have employees, leaders have followers
- culture top down, innovation bottom up
- fear of failure – actually fear of blame / feedback, very few people fired due to a failed project
- worse than “no” is a “not yet”
- can change behaviour but hard to change beliefs:
- don’t believe what you tell them
- don;t believe what you show them
- believe what friends tell them
- people always believe what they tell themselves
- recognise leadership is scarce – is uncomfortable
- few things happen by accident
- don’t settle, have faith in what we do
- inspire, connect, leverage…
Agile In Government: Successful On-Time Delivery of Software
Adrian Royce delivered this presentation (and the paper won the award for best industry paper):
- agile buzzword – everybody wants to be flexible
- chose Scrum – collaboration and for the whole team, encompasses agile principles
- backlog, only tasks of highest immediate business value were actioned
- pilot project successful (Housing)
- twelve successful projects delivered using Scrum (6 = pilot, 3 < pilot, 3 > pilot)
- largest Scrum project undertaken ($3 million, 4 months ahead of schedule)
- not everyone ready for Scrum, “just common sense”
- sense that agile projects increase risk
- agile = no documentation – government audits require documentation
- obstacle – organisation and culture
- benefits – hard to quantify, able to respond quickly
- increase in morale, productivity, adaptability and business engagement, low staff turnover
- Scrum Master is essential, focus on team, remove impediments, sprint zero is a necessity
- do not impose, keep productive teams together, human interaction over technology
- measure everything, focus on quality (client was not going to be the first to find a bug), leadership essential
Implementing an Enterprise System at Suncorp Using Agile Development
James Couzens delivered this presentation:
- what worked well – business engagement, wide stakeholder group
- not working well – coordination with integration team, managing backlog, overly focussed on showcase
- definition of done not appearance of done
- textbook agile does not scale without adjustments
- business need to be onboard
Keynote: Agile Thinking – From Concept to Reality
Graeme Wood, the founder of Wotif, delivered this keynote:
- started using agile without knowing they were using it
- design constrained by six UI screens and a rough database design
- chaos is fun, makes people think quickly
- market for hotel rooms not working efficiently (travel agents) – only 60% – 70% occupancy
- no business plan, no design, originally written by two people sitting side by side, allowed for quick change
- launched in 2000 with 60 hotels, slim margin
- no advertising budget, word of mouth, wined and dined journalists, wrote stories, etc
- simplistic UI – has hardly changed
- supplier can change cost hour by hour – not locked in
- fewest number of clicks, no login / registration
- keen not to have hospitality people – that was model we were trying to change
- small teams, 9-10 max – largest system made them focus on the architecture – if don’t have that becomes “wild west territory”
- flat organisational structure, keep small teams focussed on what they are there for
- business dragged back from solving all of the “distressed inventory” opportunities
- need to get agile thinking into the business planning area why don’t more IT people go towards management? – IT such a big part
- start your own conversation, send a demo to influence, start a future systems blog
- communication with potential business partners or customers
- social networking has opened up communication outside normal business
- all this fails, resign and start your own business
- majors came aboad reluctantly, no paid positions, alphabetical is star rating, started renaming properties and getting regraded – leveled the playing field
- suppliers to hospitality industry have been slow to change
- started with Visual Basic, now all open source
- Wotnews – public site plus corporate solution to look for customers, staff, etc… Initially around financial services, feeds from the ASX, verging on Media Monitors, greater depth than Google News, can get Wotnews to get competitors newsletters
- re-architected about two years in, cancelled big bag because it didn’t feel right,now doing incrementally
Static Bug Checking Tools and Why You Should Care
Nathan Keynes delivered this presentation:
- date back to Lint (1978)
- FindBugs
- most people just run once
- most bug checkers report false positives and false negatives
- commercial bug checkers expensive, comparisons not available and price on size of codebase
- upfront effort, legacy codebase may not be parseable
- Parfait for C++ / C – Sun for Solaris
- BegBunch – benchmarking bug checking tools – accuracy / performance
Simulating Software Evolution with Varying Numbers of Developers and Validation Using OSS
Steve Counsell delivered this presentation:
- hard to known optimum number of developers – Brook’s Law
- used software to simulate this
- empirical studies difficult – costly, OSS disparate, developers
- comprehension not so good, implementation very little variation
Project Management Stage
I was thrilled to be invited to chair the Project Management Stage on behalf of the Agile Academy, and introduce two awesome talks by Paul Bannerman (Risk Implications of Software Project Organization Structures) and Steve Jenkins (Failing at Iteration Management – Analyst Style)
Extreme Programming Stage
Myself and a number of my colleagues were together on this stage including:
Andy Marks presenting Faking Agility – A Coach’s Observations
Rebecca Hopkins presenting Infrastructure Projects Go Agile!
And myself and Paul King presenting Experiences from Agile Projects Great & Small
and the copy of our presentation:
Twitter Summary December 2009
January 18, 2010
A summary of my Twitter posts from December 2009:
2009-12-31 03:34:28
smithcdau: @paul_okeeffe Do Apple make a car? Or, is it a Tesla?
2009-12-31 02:19:03
smithcdau: @twasink Problem is Outlook is not a modern email client…
2009-12-31 02:16:36
smithcdau: @benarnott Good one, sounds exactly like something I suggested to someone this morning
Doesn’t work as well for paper though…
2009-12-31 08:46:35
smithcdau: @paul_okeeffe We have a dark blue one of those (well, a sedan, but close enough).
2009-12-31 07:11:54
smithcdau: @paul_okeeffe @leebutts So are you going to tell us what car you got, the suspense is killing me…
2009-12-30 22:55:53
smithcdau: Right, today is (work) inbox zero and paper pile zero time and run some backups so I am in clean shape for the new year! #yam
2009-12-29 00:18:36
smithcdau: I have just crossed to the dark side – my work iPhone just turned up
2009-12-29 21:54:07
smithcdau: Cutter’s 2010 predictions, many agile related: http://bit.ly/4N3re8. My predictions: kanban, agile failures, software craftsmanship #yam #in
2009-12-29 10:21:31
smithcdau: Interesting list… RT @glaforge: #groovy 4th in JavaWorld’s significant software development developments of 2009 http://bit.ly/66AgLY #yam
2009-12-29 06:34:01
smithcdau: @michaelneale +1 on that, but haven’t really found a decent alternative to be honest… Let me know what you do…
2009-12-29 04:58:22
smithcdau: Nice paraody “I’m on a Mac”! http://www.youtube.com/watch?v=T8FnACj25xM (via @michaelneale)
2009-12-28 03:30:18
smithcdau: @jimmcslim I also have an original gamertag: smithcdau
2009-12-28 02:09:27
smithcdau: Playing Forza Motorsport 3 on XBox Live – Cool! (but I really need more practice me thinks)
2009-12-28 10:37:55
smithcdau: Just back from seeing Sherlock Holmes at the cinema. Not a bad movie…
2009-12-26 10:47:18
smithcdau: Well spent all day trying to get my new XBox 360 to connect to the interweb through my firewall. Finally, success!
2009-12-24 02:11:35
smithcdau: @LaurenLee_ Dang,I need to hone my stalking skills more!! Happy festivus!
2009-12-24 02:07:05
smithcdau: @LaurenLee_ You must be on a 250, that’s how you know…
2009-12-23 22:58:13
smithcdau: RT @Steve_Hayes: Maybe those who think TDD is slower just have someone else cleaning up their bugs. (via @darrencauthon) #yam
2009-12-22 10:34:57
smithcdau: So “You Found Me” by The Fray was the most played song on Oz radio this year, all 922 hours of it! http://radionews.com.au/?p=2884
2009-12-21 20:46:35
smithcdau: RT @henrikkniberg: New free book “Kanban & Scrum, making the most of both” http://ow.ly/OgIU . Forewords by Poppendieck & Anderson. #yam
2009-12-20 00:10:50
smithcdau: @lisacrispin I you liked The Castle, I highly recommend The Dish. Made by the same people, story about Australia’s role in the moon landing.
2009-12-20 22:56:01
smithcdau: Proof that social media works, a Facebook campaign in the UK gave Rage Against The Machine the Xmas #1 this year http://trunc.it/45ift #yam
2009-12-20 22:43:18
smithcdau: The need for leadership in Scrum: http://www.netobjectives.com/blogs/need-leadership-in-scrum-updated (via @jambe) #yam
2009-12-19 12:43:51
smithcdau: Just watched American Gangster. Enjoyed it more than I thought. Frank Lucas is an example of a good leader, just in the wrong business…
2009-12-18 04:35:53
smithcdau: Just completed a one third review of Agile ALM…
2009-12-17 12:49:25
smithcdau: You know you’re in Melbourne when… you cross the street and and trip over a bunch of tram tracks…
2009-12-15 12:00:48
smithcdau: Second Taste of Agile training course delivered today, attended by mostly business oriented folk.
2009-12-11 09:38:06
smithcdau: Interesting agile app, not sure I would want to pass an iPhone around at standup though… http://agilely.pyxis-tech.com/ #yam
2009-12-11 00:58:08
smithcdau: Is the term Agile still useful? I especially value the community of thinking practitioners open to sharing ideas: http://trunc.it/3zfjz #yam
2009-12-10 03:00:10
smithcdau: @ssanj It’s OK to value documentation, if you are in the documentation business… #agile
2009-12-09 22:26:40
smithcdau: @clinton_roy Jira talk was a demo so no but check out Atlassian TV (http://trunc.it/3xxik) & particularly this video (http://trunc.it/3yklt)
2009-12-09 22:06:22
smithcdau: Video from #osdc of Agile Project Experiences talk I did with @paulk_asert is now online: http://trunc.it/3×2q7 (thanks Eban!) #yam #in
2009-12-09 21:12:02
smithcdau: RT @speedcafe New Australian Formula 1 TV deal will see world championship broadcast on ONE until the end of 2015 http://bit.ly/8xu0Lx
2009-12-09 21:06:23
smithcdau: Wow, training a class for a day was much harder than I thought, I was physically & mentally exhausted last night. It was fun though!
2009-12-09 21:04:33
smithcdau: Suncorp & Bendigo Bank to link ATM networks: http://trunc.it/3y4p5 #yam
2009-12-08 21:24:15
smithcdau: Looks like Progressive Insurance is starting to target the Australian motor insurance market. http://trunc.it/3viyl #yam
2009-12-08 21:13:29
smithcdau: The day has not started well, I just missed my bus so have to divert to a later bus / train / walk scenario instead.
2009-12-08 11:13:03
smithcdau: Couldn’t have said it better myself RT @Steve_Hayes: My response to “let’s drop quality so we can go faster” http://tinyurl.com/ykz6wf6 #yam
2009-12-08 11:08:45
smithcdau: Tomorrow I deliver my first ever training course – a 1 day Taste of Agile session – reviewing the slides now…
2009-12-07 22:20:37
smithcdau: RT @wakaleo: Dilbert on the art of estimating: http://tinyurl.com/ycubcgg #yam
2009-12-07 22:19:27
smithcdau: The Fun Theory: Changing behaviour by making it fun, like this piano staircase: http://www.thefuntheory.com/piano-staircase
2009-12-07 20:52:48
smithcdau: Drowning… in… email… Need to get back to Inbox Zero ASAP!!!
2009-12-06 09:00:42
smithcdau: is now departing Tullamarine on Virgin Blue for business. Powered by http://myskystatus.com/
2009-12-05 04:43:13
smithcdau: A busy week in the Sydney & Melbourne offices! To change pace, now I’m allocating book orders for Albury and reinstalling XP on old laptops
2009-12-01 14:31:43
smithcdau: Ughhh! Windows 7 just blue screened and I lost 20 minutes of Powerpoint…
2009-12-01 11:20:20
smithcdau: is now arriving at Tullamarine on Virgin Blue. https://myskystatus.com/map/view/DJ/874/10 Powered by Lufthansa – http://myskystatus.com/
2009-12-01 09:48:03
smithcdau: Departed Sydney, now in Melbourne, hacking away in the hotel room for a presentation I am giving first up tomorrow morning.
2009-12-01 09:00:29
smithcdau: is now departing Kingsford Smith on Virgin Blue for business. Powered by http://myskystatus.com/
Jira 4 Partner Hosted Seminar
December 30, 2009
In November, Steve Dalton and I hosted a partner seminar for the launch of Jira 4.0. Steve’s company Refactor is an Atlassian partner and I attended on behalf of the Agile Academy who sponsored the room at Brisbane Square. Atlassian provided a Jira t-shirt for all of the attendees.
Steve kicked off with an overview of Jira and a demo of the the new Open Social dashboard as well as the new JQL functionality.
I then gave a demo of Jira and GreenHopper 4.0, and its usage at Suncorp. Some of the topics I covered included:
- overview of other new Jira functionality, such as activity streams, the new menu system and the ability to create a new issue on the right hand side of the Find Issues screen
- GreenHopper is a plugin
- remember the difference between radiators and refridgerators when evaluating tools
- Suncorp chose Jira due to cost and already in use
- housekeeping – GreenHopper administration (global and local), custom fields (story points, epics), performance
- planning board – versions and components, new epic functionality, synchronisation, release, drag and drop functionality, statistics, print cards, user preferences and contexts, new card button, new wiki rendering
- task board – setup, workflows, new Kanban functionality, storypoints, double click cards, subtasks
- chart board / release board – reliance on statistics and GreenHopper functionality
- cross project burn down and the new agile gadget
There is no video of the event, although I feel the Jira 4 webinar covers much of the functionality we discussed quite nicely.
OSDC 2009: Data Migration In An Agile Open Source World
December 29, 2009
My presentation from the OSDC 2009 Conference in Brisbane called “Data Migration In An Agile Open Source World” is available on SlideShare.
OSDC 2009: Experiences From Agile Projects Great & Small
December 29, 2009
My presentation from the OSDC 2009 Conference in Brisbane that I presented with Paul King called “Experiences From Agile Projects Great & Small” is available on SlideShare.
Experiences From Agile Projects Great & Small
Twitter Summary November 2009
December 21, 2009
A summary of my Twitter posts from November 2009:
2009-11-30 12:07:59
smithcdau: @erik_petersen I am so lucky the Agile 2009 shirts were blue
Heading to Melbourne tomorrow, what colour should I wear there??
2009-11-30 11:05:34
smithcdau: Survived my first official day as an agile coach, followed by an awesome thai dinner with my team mates who are based in Sydney.
2009-11-29 23:30:30
smithcdau: is now arriving at Kingsford Smith on Virgin Blue. https://myskystatus.com/map/view/DJ/908/10 Powered by Lufthansa – http://myskystatus.com/
2009-11-29 21:00:34
smithcdau: is now departing Brisbane International on Virgin Blue for business. Powered by http://myskystatus.com/
2009-11-29 11:20:39
smithcdau: Back from an awesome Thanksgiving dinner – turkey, mash potato, pumpkin pie, apple pie… Now packing for trip to Sydney / Melbourne…
2009-11-27 02:14:13
smithcdau: Thanks
RT @ssanj: Excellent Agile presentation by @smithcdau and @paulk_asert @ #osdc d3. #yam
2009-11-27 11:14:19
smithcdau: It’s documented here! http://trunc.it/3lj6m RT @pasamio: ETL as “Slurp, gargle and spit” at #osdc #yam
2009-11-27 11:12:20
smithcdau: Thanks, appreciate that! RT @brucemorrison: Really interesting talk on agile data migration by @smithcdau at #osdc #yam
2009-11-27 05:56:55
smithcdau: My two talks done at #osdc (success == people showed up), now some lightning talks and a keynote from @piawaugh #yam
2009-11-26 04:27:33
smithcdau: Groovy Testing talk at #osdc with @paulk_asert done! Good feedback, interesting exercise of breaking down a 3hr talk to 30m, 20m prior! #yam
2009-11-26 01:26:43
smithcdau: Sitting in a talk about running open source web applications in Microsoft Windows Azure (feels wrong) #osdc #yam
2009-11-26 00:21:28
smithcdau: “Ruby has a testing to oblivion approach” – Harley Mackenzie at #osdc talking about how to get Rails accepted in industry #yam
2009-11-26 00:13:24
smithcdau: RT @refactor: New blog entry: Open Source Developers Conference – Day 1 http://refactor.com.au/node/34
2009-11-26 23:54:41
smithcdau: Listening to @dhanji’s #osdc keynote about Google Wave #yam
2009-11-26 22:46:53
smithcdau: RT @paulk_asert: At #osdc day 3. Giving talk “Experiences from Agile Projects Great & Small” with @smithcdau straight up after keynote #yam
2009-11-26 07:08:22
smithcdau: OSDC 2009 Day 2 Wrapup: http://cds43.wordpress.com/2009/11/26/osdc-2009-day-2-wrapup/ #osdc #yam
2009-11-25 23:51:50
smithcdau: “Java was designed for stupid people because it was deemed to hard to write code in C!” – Marty Pauley, Perl advocate #yam #osdc
2009-11-25 23:12:28
smithcdau: @paulk_asert Always forgets about me…
2009-11-25 14:09:08
smithcdau: OSDC 2009 Day 1 Wrapup: http://cds43.wordpress.com/2009/11/26/osdc-2009-day-1-wrapup/ #osdc #yam
2009-11-25 07:28:30
smithcdau: Found my solution to deploying Jira 4 in the enterprise! Crash IE6 with this! http://trunc.it/3jjeg (via @LaurenLee_ @mimobase)
2009-11-25 07:24:22
smithcdau: At the Groovy BOF at #osdc. Bob Brown demoing TwitterSphere & @paulk_asert answering the tough Groovy & Grails questions #yam
2009-11-25 07:11:28
smithcdau: @spidie is awesome and so is #groovy #osdc. Did that win me a book at the BOF???
2009-11-25 06:59:56
smithcdau: These #osdc lightning talks are 1 minutes of learning how to connect a laptop and 3 and a half minutes of rushed content… #yam
2009-11-25 06:07:49
smithcdau: Bring on the #osdc lightning talks – 5 minutes, go! #yam
2009-11-25 06:00:53
smithcdau: Helping the cause… RT @paulk_asert: Bob Brown has Twitterverse fired up beside me at #osdc – let’s see if it works
2009-11-25 05:47:57
smithcdau: Learnt about the state of PHP in 2009 and now @nr99 is teaching me to git it up at #osdc. Full house, good to see! #yam
2009-11-25 03:46:32
smithcdau: Stepping outside my sphere of knowlegde to learn about GSM and the open source oFono framework #osdc #yam
2009-11-25 02:32:41
smithcdau: You know you are not a Perl programmer when… you sit in a talk and dont get the jokes everyone else is laughing at #osdc #yam
2009-11-25 02:13:04
smithcdau: @spidie I want to know how to score a shirt
2009-11-25 01:55:35
smithcdau: @spidie In rooms 2 and 3 I cannot get Telstra 3G coverage at all… #osdc
2009-11-25 01:37:54
smithcdau: RT @aussiegeek: Django the framework for people who don’t like beards #osdc #yam
2009-11-25 01:15:58
smithcdau: Learning about Django at #osdc #yam
2009-11-25 00:02:55
smithcdau: Getting completely lost in the myriad of covered hallways at the Bardon Conference Centre #osdc #yam
2009-11-24 02:00:53
smithcdau: RT @agilebench: The #Agile 2010 Program will be organized around Technical Business & Leadership/Organization communities http://ow.ly/F2MW
2009-11-24 23:21:50
smithcdau: If Richard Stallman ever stays at your house, remember it is called “GNU Linux” #osdc #yam
2009-11-24 23:06:00
smithcdau: Sitting in the #osdc keynote, reviewing the programme & what streams I might attend #yam
2009-11-24 10:14:53
smithcdau: Still hacking away at my presentations for #osdc, still need to sync up talks with @paulk_asert as well…
2009-11-23 22:34:29
smithcdau: RT @teale: Teach a Boss to be Agile with a Social Contract -> http://is.gd/527UD #agile
2009-11-23 22:31:53
smithcdau: @ssanj See you there!
2009-11-23 20:47:50
smithcdau: Working on my “Agile Experiences from Projects Great & Small” presentation for #osdc #yam #in
2009-11-23 00:31:16
smithcdau: RT @GreenHopperTeam: GH4.2 introduces markers & shift-select (S, FF, GC only), revised 101 guide, bug fixes, more: http://bit.ly/7XjQ5I #yam
2009-11-22 11:41:56
smithcdau: Maintaining an agile task board in Google Wave: http://agilebooknote.blogspot.com/2009/11/taskboardy-available.html #yam
2009-11-22 09:55:13
smithcdau: Playing GTA Vice City Stories, 94.6% complete, finally finished Hyman Memorial O.D.T. & Crash! missions. Just the East Island to finish now.
2009-11-22 02:05:41
smithcdau: Working on my “Data Migration in an Agile Open Source World” presentation for #osdc next week #yam #in
2009-11-21 03:37:36
smithcdau: Go Marcos! RT @MarcosAmbrose: Marcos has qualified THIRD for the season ending Ford 400 in Homestead
2009-11-21 03:35:17
smithcdau: @spidie Yes, Logitech Presenter works with everything, I’ve been very happy with mine…
2009-11-21 03:33:36
smithcdau: Playing GTA Vice City Stories, 94.2% complete, just finished Haiti Hover Race & Rush! The Biplane mission is frustrating me though…
2009-11-20 14:34:07
smithcdau: RT @dwhelan: Great retrospective 2day just by having team write appreciations & read them out. Amazed at power of the simple thank you #yam
2009-11-20 13:07:41
smithcdau: Spent half the day and half the night trying to fix my work VPN access. Finally, success!
2009-11-19 09:00:34
smithcdau: Wow, my last blog post on Faciliting a Successful Developer Day had a bunch of hits & some nice comments
Kind of makes it all worthwhile
2009-11-19 08:53:37
smithcdau: “Virtualisation (VMWare / Microsoft) makes one server looks like lots, a grid (AppLogic) makes lots of servers look like one” #agileacademy
2009-11-19 08:35:05
smithcdau: Listning to Gavin Keeley talk about green, lean & agile at Agile Academy Meetup #agileacademy
2009-11-18 23:21:07
smithcdau: @benarnott @AgileAcademy Hashtag is #agileacademy
2009-11-18 12:20:06
smithcdau: Facilitating a successful developer day: http://cds43.wordpress.com/2009/11/18/facilitating-a-successful-developer-day/ #yam #in
2009-11-18 04:06:44
smithcdau: @jimmcslim Yeah but you actually get people to post up good/bad on a board (as opposed to the SM/IM just taking notes that usually happens)
2009-11-18 03:54:05
smithcdau: The future retrospective box explained (http://trunc.it/3g4ks) The daily retrospective idea is growing on me as well #yam
2009-11-17 23:28:35
smithcdau: RT @markhneedham: Agile/pervagile on slashdot – http://bit.ly/xvBVs #yam
2009-11-17 12:37:21
smithcdau: Version Control & Git (sharing slides @alephnullplex & I put together for an internal presentation a few weeks ago) http://trunc.it/3dtq0
2009-11-17 03:52:14
smithcdau: ROFL, this is awesome! Still laughing!!! RT @alisterscott: RT @ryancross best email thread EVA! – http://bit.ly/q6jgR
2009-11-17 03:46:50
smithcdau: Ditched kdesvn in favour of RapidSVN under Unbuntu as it is much easier to use (for those times you need a GUI for Subversion)
2009-11-16 04:59:12
smithcdau: Change your organisation, or change your organisation II – a story of scrumbuts… http://trunc.it/3cez7 #yam
2009-11-16 04:21:42
smithcdau: Change your organisation, or change your organisation – a story of QA frustration… http://trunc.it/3anel #yam
2009-11-16 04:14:11
smithcdau: My work laptop started making an odd ticking sound, kind of like the Energizer Bunny. My daily exercise of pulling the battery fixed it #yam
2009-11-16 23:32:15
smithcdau: Great visualisation of a two-tier kanban board http://blog.crisp.se/henrikkniberg/2009/11/16/1258359420000.html (via @erik_petersen) #yam
2009-11-16 22:23:24
smithcdau: @spidie Details please?
2009-11-16 21:34:18
smithcdau: Mercedes bucks the trend of other F1 manufacturers and takes over Brawn GP http://bit.ly/302pWo
2009-11-16 21:28:33
smithcdau: Good leaders are like good conductors: “… enabling others stories to be heard at the same time” Itay Talgam http://trunc.it/3dlhh #yam
2009-11-16 11:18:20
smithcdau: @erik_petersen You know Twitter has jumped the shark when you show up here! Welcome aboard!
2009-11-16 11:02:55
smithcdau: Good leaders and scrum masters care about their flock rather than their fleece http://trunc.it/3bfrf #yam
2009-11-16 06:39:54
smithcdau: Mucking around with Webalizer to view Jira usage statistics – pretty cool and relatively easy to get up and running
2009-11-16 06:34:37
smithcdau: RT @kcbworth: Fact of Life: After Monday and Tuesday even the calendar says W T F!!!!
2009-11-15 22:57:32
smithcdau: Trap for young players, setting AutoHide on your top panel in Ubuntu under VirtualBox should be avoided. Heres the fix http://trunc.it/3b876
2009-11-15 12:32:22
smithcdau: Windows 7 laptop up and running, still a few leftovers to install. Impressed by how fast the base Windows installs now. Much faster as well.
2009-11-15 04:55:10
smithcdau: OK, should I install Microsoft Security Essentials or stick with my tried and trusted Sophos under Windows 7?
2009-11-14 01:59:24
smithcdau: About to upgrade my Dell XPS M1530 from Windows Vista 32-bit Ultimate to Windows 7 64-bit Professional.
2009-11-14 01:42:47
smithcdau: @LaurenLee_ Happy belated birthday & enjoy 30 Rock (it’s on my get around to watching list)…
2009-11-13 03:34:11
smithcdau: RT @codinghorror “If you set your goals ridiculously high and fail, you look like a clown who can’t even set goals properly.” #yam
2009-11-12 02:45:09
smithcdau: Agile Suncorp tackles the legacy issues http://bit.ly/pcynM
2009-11-12 02:44:38
smithcdau: RT @mrees: The barrage of Google announcements continues with their new Go language http://golang.org/ & http://bit.ly/3lk2Wj via @dpn #yam
2009-11-12 22:26:07
smithcdau: “You have to change the way people see themselves before you can change their behaviour” – Bill Strickland (TED) http://trunc.it/3a7f0 #yam
2009-11-12 06:18:56
smithcdau: Using hash tags in Yammer to demonstrate social networking value (via @benarnott) http://trunc.it/38k7x
2009-11-12 05:56:13
smithcdau: RT @AndyPalmer TDD is like dbl entry bookkeeping. Green means books are balanced, red means one is unbalanced #yam
2009-11-12 05:31:02
smithcdau: Working instructions for getting a bridged network running on a Windows XP host (& Linux guest). Trick is the adapter! http://trunc.it/39ku9
2009-11-11 22:27:44
smithcdau: Telstra turns to former CIO for Agile insights: http://www.itwire.com/content/view/29224/53/
2009-11-10 23:17:59
smithcdau: Another warm day in Melbourne, at offices in St. Kilda for a webcast and a raft of meetings before flying home.
2009-11-09 23:23:21
smithcdau: Day 2 of developer day in Melbourne with PI Java teams. Some great collaboration & learnings coming out, I think it has been a success #yam
2009-11-09 23:21:06
smithcdau: Extremely hot in Melbourne again today (34C). Great dinner last night followed by a walk along South Bank and Federation Square.
2009-11-08 11:14:11
smithcdau: Great day at Philip Island for V8 Supercars, 34C & sunny. Paddock access and grid walk were simply awesome, drivers were super friendly!
2009-11-07 05:44:48
smithcdau: @paulk_asert With all your Mac posts, can we assume you have bought a Mac?
2009-11-07 05:43:30
smithcdau: @testobsessed Wouldn’t you still point them at the AAFTT newsgroup???
2009-11-06 07:29:22
smithcdau: At Brisbane Airport, waiting for flight to Melbourne for a couple of days with family & 3 days of work.
2009-11-05 06:30:25
smithcdau: Hmmm RT @JoanneSpain: communities grow if enough people care and die if they don’t. start small and inexpensive. don’t over complicate #yam
2009-11-04 05:00:04
smithcdau: Jira 4 presentation went well, close to a full house. Thanks to @spidie for co-presenting and @AgileAcademy for hosting the venue. #yam
2009-11-04 04:56:57
smithcdau: RT @spidie: Thanks to all the attended the Atlassian #jira 4 seminar today – and thanks to @smithcdau for doing the bulk of the presenting.
2009-11-04 00:23:30
smithcdau: @nickmuldoon Epics working now, thanks for your help this morning. Noticed you have updated the doco as well, impressive
2009-11-04 11:30:09
smithcdau: 10 temptations of an agile coach (wish I had attended this session at Agile 2009 now!) Good advice! http://trunc.it/32ezh #yam
2009-11-04 11:12:27
smithcdau: Toyota withdraw from Formula 1 (no real shock there), as well as Bridgestone http://bit.ly/34swzU
2009-11-03 23:52:51
smithcdau: @ssanj Meant Jira is much more customizable (which can be its downfall). YouTrack seems good as long as all you want to do is manage issues
2009-11-03 22:16:08
smithcdau: @ssanj I looked at it a couple of week ago. Really good if you are after something really light-weight. Wouldn’t compare it to Jira though.
2009-11-03 21:08:15
smithcdau: RT @spidie: There’s still a couple of spots left for the Jira4 seminar in Brisbane today http://j.mp/jira4 #yam
2009-11-03 11:48:40
smithcdau: My notes from Dave Thomas’ talk on Maximum Software Productivity – Breaking The Rules! from a couple of weeks ago: http://trunc.it/2zka4
2009-11-03 07:52:51
smithcdau: @ldaley There’s a bunch of Groovy tools listed here (http://trunc.it/2xsz9) but whether you would want to use them…?
2009-11-03 03:25:44
smithcdau: Now to cap off my day, whatever fiddling the help desk did to my work laptop the other day means it will not connect remotely.
2009-11-03 02:57:25
smithcdau: Spent all morning trying to get a tyre store in Brisbane to help me, the last guy just pulled the hex nut out with a bit of force, no damage
2009-11-02 11:51:47
smithcdau: Crud, just found a nasty big nail embedded into the rear tyre of my car…
2009-11-02 03:43:21
smithcdau: @nickmuldoon OK, I can’t figure out how to get epics working for the life of me, I must be missing a step, and have even RTFM!
2009-11-02 03:36:39
smithcdau: @alisterscott Us too (hence my “for some” addition). Actually will cost us double now.
2009-11-02 03:18:54
smithcdau: JIRA Improves and Costs Less (for some)… Interesting small article on the technology behind the scenes http://trunc.it/312o5
2009-11-02 00:30:08
smithcdau: @nickmuldoon You might want to to update this page for 4.1? http://trunc.it/31t4y
2009-11-02 00:27:13
smithcdau: @nickmuldoon I’ll read the manual now it is released on 4.1 features. Frustrations were with Jira rather than GH. I will definitely report!
2009-11-01 22:28:42
smithcdau: I’ve always wondered why more people don’t vote at shareholder meetings & with online voting it’s now easier & quicker http://trunc.it/310wz
2009-11-01 22:15:29
smithcdau: Tested this last week, looks good… RT @GreenHopperTeam: GreenHopper 4.1 is available, with cross-project burndown charts and epics…
2009-11-01 12:09:44
smithcdau: Playing GTA Vice City Stories, 93.3% complete, just finished Land, Sea & Air Ace & Phil’s Shooting Range (finally!)…
2009-11-01 07:31:11
smithcdau: Playing GTA Vice City Stories, 92.5% complete, just finished Beach Patrol & Harbor Hover Race. If I could just pass the shooting range…
2009-11-01 04:42:22
smithcdau: @jroyals Noooooooooooooooooo!!!!!!!!!
OSDC 2009 Day 3 Wrapup
December 21, 2009
Day 3 of the OSDC conference, I presented two sessions on Agile (with Paul King) and Data Migration, so preparations and organisation got in the way of attending and as many sessions as I would have liked. Here are my notes from the sessions I attended.
Keynote – Google Wave
Dhanji Prasanna presented the keynote, here are my notes from the session:
- answer to question “what would email look like if it was invented today?”
- not just about text, about structured content
- gadgets – state is stored in the wave (eg. using maps)
- can exchange waves across different wave servers using federation
- keep data you own on your own wave server, put you collaboration on the public wave server
- robot participants are first class participants
- spelling robot corrects spelling in context, and runs server side (Spelly), Linky does similar for links
- use open source tools like Guava libraries, Guice, WebDriver, GWT, OpenJDK
- all of Wave will be open sourced, including the client
- can play with the reference implementation right now
Experiences From Agile Projects Great & Small
The session I presented with Paul King had a good crowd in the main auditorium. The slides are available in a separate post.
“Change Bad!” – Change in Database Schemas and Source Code
Andy Todd delivered this session, here are my notes:
- “Data matures like wine, applications like fish”
- What changes – tables, views, stored procedures
- could put DDL in version control – not same as database object
- could put database independent model in version control – representation only
- database = DDL + data + implementation
- could store complete DDL for each scheme version – lots of work for DBA
- could store complete initial DDL & subsequent deltas
- could store complete DDL for every version and subsequent deltas
- don’t forget about reference data and schema (user) creation scripts and store in version control
- even if scripts are in version control, you should still have a backup
- secret to success is testing – should be like code and have unit tests and be automated
- hard to rollback
- every migration should maintain data integrity
- pioneering work by Scott Ambler – Database Refactoring
- high availability is a different kettle of fish – all of the above is invalid
- need to think about how you version control your database structures, different to how you manage source code
Data Migration In An Agile Open Source World
The session I presented had a decent crowd. The slides are available in a separate post.
Lightning Talks
Open Source Game in 5 Minutes
local::lib::environment
- working with multiple distinct libraries in Perl
- integrates with CPAN, etc…
- virtualenv in Python does the same type of thing
- cloning this for Perl, available on github
- no Perl implementation for ExtJS, so wrote Ext.Direct
- similar ports for a lot of different languages
OSIA (Open Source Industry Association)
- local industry association for open source
- $50 to join
- numbers used to give to government
- for geeks dealing with depression
Locknote – Open Source in Government
Pia Waugh delivered this keynote, my notes are as follows:
- Parliament House has 4,500 rooms (7,000 with bathrooms and kitchens!), about 8,000 people when parliament is sitting
- government is a very risk averse environment, a lot of fear
- Kung Fu Panda is a lot like parliament, not a lot of assistance from your colleagues
- dis-empowered community due to a lack of ICT skills
- Tech Support Cheat Sheet
- biggest digital divide is in accessibility and skills
- need to make ICT issues known to members of parliaments (facepalm)
- Government 2.0 taskforce – how to open up government
- data.australia.gov.au (also data.nsw.gov.au)
- Public Sphere
OSDC 2009 Day 2 Wrapup
November 26, 2009
Day 2 of the OSDC conference, one talk delivered today with Paul King on Using Groovy for Testing. The following are my notes from the sessions that I attended.
Keynote: Simplicity
Marty Pauley delivered the keynote, my notes are as follows:
- good code is easy to read, beautiful (aesthetically pleasing), useful
- evil code is difficult to read, ugly, but it is still useful (otherwise you would have no code!) because unfortunately it is still in use
- good code should be fast, concise, advanced, maintainable
- “Simplicity is the ultimate sophistication” – Leonardo Da Vinci
- comments are an indicator that you’re code is crap, documentation and comments are not the same (documentation is useful), ironic that some languages put documentation in comments (eg. JavaDoc)
- always out your scripts in a module, makes it easy to read (the comment was made in relation to Perl) and makes it easier to test (one script that calls one module, that can then call other modules)
- Google is good example of simple (as compared to Excite and Yahoo! at the time) – search engines started complicated and became simple
- Example of simple first is that Americans used the Space Pen in space (highly engineered pen that would work on all surfaces and work in space), but when they asked the Russians what they used, it was a pencil
- “Java was designed for stupid people! – was designed because it was deemed to hard to write code in C”
- look outside your current toolset, we all have problems in common
How to get Rails Web Applications Accepted in Industry
Harley Mackenzie presented this talk, my notes are as follows:
- why Ruby? – expressive language, object oriented as everything is an object in Ruby (lends itself to good, readable, maintainable code), dynamic allows to delviver scripts quickly and maintainable
- hard to find Ruby people? – many recruiters do not understand the roles they are recruiting for, Chuck Jones (of Warner Brothers cartoon fame) looked for artists knowing he could train them to animate, the same goes for quality developers
- open source – lower initial cost, source will never disappear as will always be around in some way, don’t emphasise the FREE but the FREEDOM, dynamic languages you always have the source (not compiled)
- efficient – productivity important to industry
- elegant – write easy, maintainable code
- reliable – “testing to oblivion approach”, everything has tests, commercial environments do not value testing, all say it is a good idea but will not pay for it
- expressive – easy to understand what the code is doing
- why is Rails not adopted? – management are risk averse (don’t want to go outside the Microsoft norm), corporate IT motivated by fear and uncertainity (like to do things the way they are always done), loss of control (don’t understand and don’t like when you know about things they don’t), outsourced IT providers (only in it to make a buck so resistance to change)
- solutions and adapt (know what you can change and what you can’t)
- demonstrate – give them a VM (“take the puppy home for the weekend), find the champion
- cloud solutions – if you can’t deal with anorganisation and their infrastructure, bypass it (use Amazon or similar)
- draw the line – sometimes you have to walk away than comprimise (figure out where the line is), usually can deal with server operating system, web server and database but not the language it can be written in
Open Source Web Apps in Azure
Jorke Odolphi delivered this session, my notes are as follows:
- software as a service (SaaS) – multi-tenant, pay as you go
- platform as a service (PaaS) – applicationn frameworks, languages
- infrastructure as a service (IaaS) – pay as you go, scale (like Amazon EC2, GoGrid)
- Windows Azure is an operating system in the cloud, where you run applications, designed to scale
- lots of servers sitting in shipping containers (2,000 servers per container, 7 hours to get up and running after delivered) with VM’s running Windows (called the Fabric)
- components – web role (front end facing, static content, ASP.NET 3.5, WCF, Fast CGI applications such as Perl, http(s) inbound), worker role (like a Windows service), storage (blobs, tables and queues)
- running PHP in Azure – Eclipse tooling available (WindowsAzure4E)
- MySQL in Azure – run as a worker role (configure ports and storage)
- Tomcat running in the Azzure Cloud (http://oss.cloudapp.net/)
- No environment yet in Australia, but Singapore coming soon, pricing
Desktop Applications for Web Developers
Ben Balbo presented this session, my notes are as follows:
- cloud issues – network outages, working offline, server outage, application failure affects everyone, access/ownership of data, dependence on third party to fix bugs
- Google Desktop Gadgets, Adobe Air, Windows 7 – just HTML, all the information stored in the gadget or via a web service
- Mozilla Raindrop – Mozilla’s reaction to Google Wave, pre-alpa, a local web service
- WordPress + Google Gears
- iPhone applications
- XUL – XML User Interface language from Mozilla, load any interface around Firefox (use Firefox as a framework)
Using Groovy for Testing
Presentation I gave with Paul King, and was an interesting experience on how to break down a 3 hour presentation to a 30 minute talk (whoch we started about 20 minutes prior to the talk commencing)!
Business, Law, Open Source
Brendan Scott presented this talk and these are my notes from the session:
- each decision you make limits your subsequent decisions
- Starting a business has effect on how easy it be to sell down the track (setting up within a corporate vehicle) – selling of shares make this easy as the legal person transfers. Most businesses are setup where the owner owns all the assets and personally signs up to all the contracts such as phones where their name is on the contract (makes it hard to transfer later on)
- stay away from partnership (and the use of the word partner)
- Pov Ray had pre-open source licencing, wanted to sue someone who was bundling it and selling it – needed copyright ownership to sue but had to go and find all of the contributors first
- code consents in case somebody takes code and uses it in breach – keep records of who, what, when
- IP Ownership – once you have transferred rights, it is very difficult to recover these rights, you need to get legal advice early
- dispute resolution – usually because people not speaking to each others, lawyer can help you identify issues, send the nasty letters, courts look favourably if you have tried to sort out the issue
- negotiations – lawyers familiar with the lines of argument
- legal arcana – knowing the legal secrets and finding holes in contracts, etc…
- copyright – owned by employee unless agreed otherwise
- don’t lie about your products and services (Part V 52 Trade Practices Act)
- Part V, Dvision 2 Trade Practices Act – don’t exclude warranties, limit recourse to repair or replace, it is illegal to exclude warranties
Lightning Talks
An extended session of lightning talks. here are the notes:
Make my PHP 66 Times Faster
- slow code read in a really big library everytime it is run
- idea is to make a socket call and run off the server, loading only once
Something About Cars
- entertaining comparison of programming languages to cars
The Coming Programming Language Crisis
- entertaining look at new programming langauges, recruiting for the Australian LOLCODE Developers network! (see http://lolcode.com/)
OSDC – Open Source Developers Club
- parent organisation for the conference
- like meetings (found about every third session, people attend a session that is not their usual language)
Hosting Web Sites In The Cloud
- created Grocery Choice, wanted something that had scale initially but assumed would not need it going forward
- Amazon EC2 – virtual machine farm, upload your VM to the cloud (takes about 3 hours)
- using commercial, licenced server so limited to CPU’s that coule be run
- can move your instance onto a larger virtual machine
- pay as you go, for what you use
Geography, Databases & Government
- geo2gov.com.au – JSON webservice built with Perl and PostGIS
- tells you where you fit in the census, details about where you are in relation to government
- good for party trips – who lives in the better part of town?, find out more about your street!
- can download the cencsus as a 850meg SQLLite database
Netrek
- Looking for volunteers on open source Star Trek game, http://www.netrek.org/
Phoebe’s Netbook
- Phoebe is 4, has an original eePC
- the distribution is very easy for children
- TuxPaint and other programs in Linux that are good for kids
- set of command line tools
- pscoast – will show a map, can then map cyclones as they move down the coast
Byte code optimisation using Promise
Open Source Licencing vs Microsoft
- starting a business with no money
- do something disruptive – is a potential client trying to solve a problem that your product addresses
- low-end disruption – easier way of doing something that already exists (eg. MySQL vs Oracle)
- new-market disruption
Handy Python Functions
- if building libraries, pleause use doc tags!
Katoomba
- open source SMS gateway
- written in Ruby
- will be released shortly
- written in Python using pygame
- open source, GPL
- team based, strategy game
Google Wave Bots
- Wikifiy
- Piratify
- Flippy
OSDC 2009 Day 1 Wrapup
November 26, 2009
OSDC 2009 Australia is being held in Brisbane this year at the Bardon Conference Centre, and I was lucky enough to get 3 speaking slots (2 shared with Paul King). Day 1 was full of interesting talks, my notes are summarised below.
Understanding Volunteers
Karen Pauley delivered the day one keynote. My notes as follows:
- recommended book by Charles Handy (Understanding Organizations)
- organisation for mutual support (eg. Tokyo Linux Users Group, Sydney Perl Mongers) – consist entirely of volunteers who have a shared interest, don’t like to be managed, but a group needs some management (it’s like herding cats), anybody can join
- organisation to provide a service (eg. The Perl Foundation) – requires structure to handle queries, cannot just join if you want you, expectations of communication and responsiveness and regular releases
- campaigning organisation (eg. Enlightened Perl Organisation) – camapigns aren’t managed they are led, usually fail when the organiser gets bored
- motivations – in open source we like to reinvent things
- fun should be self evident, we volunteer to enjoy ourselves
- lack of respect can stop the fun, need to treat each other well, need to apologize (and not follow it with a but…)
- anger – “I know you’re all volunteers but…”, feedback can offend volunteers, in many cases people don’t mean to offend, in some cultures you write directly, tone down the rage and pause before replying
- learnings – want a creative learning environment, learning and using something new is fun
- as per Maslow, one of our key needs is to belong
- belong with people who think the same way
- impressions – decide very quickly our perception of people (4 seconds) – in person we judge looks, on the internet we judge the way we type
- our first impression of people on the internet could be an email, IRC or a twitter – we make judgements of people based on 140 characters
- the online life is real, so be yourself
- everybody has a voice, make your communities fun
Joopal and Drumla: Not Your Usual Mashup
Sam Moffatt presented this brief talk about Joomla! integrated into Drupal (Drumla)
Introducing Django – Calling All Web Developers with Deadlines
Akash Mehta delivered this talk, my notes are as follows:
- Django is a web framework to build websites quickly
- used by a lot of newspaper / news / media sites (see DjangoSites.org for a full list)
- a Python framework – extremely powerful high level scripting language, do a lot with less code
- a python web application framework – excels at data driven web applications
- a python full-stack web application framework – if using Django you are using the full system, not portable, mature, been around 5+ years
- batteries included – functionality you need comes out of the box
- Django has good support for internationalisation
- DRY -> DRY (OAE) – Don’t Repeat Yourself (Or Anybody Else)
- views do not usually have URL’s mapped to them, custom URL mapping takes care of this
- not a serious business framework (see djangopony!)
- good documentation – starts with a comprehensive tutorial, documentation then splits into functioanlity / what you want to achieve, stored in Subversion, there is an online version of the book which is also published by APress and available on Safari
- automatic administration – not a scaffolding, end-to-end solution for managing production data, lots of useful widgets
- available applications – search (Haystack is the current favourite), blogs (plenty available on github), security and administration built-in
- views take advantage of decorators in python, such as @login_required
- templates – template inheritence and blocks
- URL config – no automatic mapping, create your own URL’s, can use regular expressions, usually mapped to views
Perl6 Now
Scott Penrose delivered this talk, my notes are as follows. Talk will be made available online.
- when is Perl 6 available – now, language specification
- looks like Perl
- biggest problem with Perl is when you have @array you need $array to access it
- More information at http://rosettacode.org/wiki/Category:Perl_6 and http://github.com/perl6/perl6-examples
- Pugs – not very active, but a good reference application, written in Haskell
- SMOP / Mildew – library parsers
- Sprixel / Elf – implementations
- Rakudo – run time engine, implementation of Perl 6 that runs on Parrot
- full version should be available next year
- performance – slower, Parrot keeps changing, performance increasing month on month
- CPAN – not currently available but coming
- 42 modules available now via github, mainly web and database
- IDE – Vim syntax highlighting and Padre
- debug – Larry Wall – “why do you need a debugger, just print line”, no interactive debugger yet
- fun langauage to write in – can write code shorter and faster, execute faster is coming
oFono – Open Source Telephony
Denis Kenzior delivered this talk on oFono, my notes are as follows:
- many devices and modems to talk to – all talk vendor specific protocols
- existing projects – FSO, only considering smartphones, assumed AT modems, API not well constructed, implemeted in Python and too slow, does not support multiple modems
- existing projects – Qtopia, end of life, did not support D-Bus
- learnt from these projects – GSM is hard, huge and boring, everything exposed in the API but very little used or available
- GSM is hard – massive amount of specifications (call handling (in, waiting, multi-party) sevices such as call waiting and number exposure, SMS), vendor specifics (enhanced SMS, smart messaging, WAP), storage (number, calls, SIM)
- GSM is really hard – backwards compatibility (most of the specification still around from 1G), every bit counts, bugs in all of the different vendor hardware that needs to be worked around
- oFono targets all devices, target all distributions, minimal dependencies, modular, UI easy to customise / replace
- don’t use SIM for contacts / SMS – limited to number of contacts / messages – simplified the design
- device detection – udev, modemconf
- plugins – read / write to SIM, send / process SMS, Call / SMS history, D-Bus interfaces such as carrier logos
- atom – implement specific functionality eg. dial, hangup, merge, switch, invokes operation on an atom driver
- currently supports – network registration, make and receive calls, SMS, cell broadcast, GPRS, all supplementary services
- handful of modems and devices supported
- Phonesim- simulates most AT modems, make / receive calls, SMS, MWI, cell broadcast, network registration, supplementary services – good for development simulation
- API – consistent, minimal, easy
- takes care of magic strings (MMI, those *xxx strings), read / write from SIM, service provider display (MVNO, files on the SIM)
- oFono plugins for BlueZ – hands free & audio management
- oFono plugins for ConnMan – 3G network management
- oFono currently has no CDMA support
- unique because can support mutiple devices at once
State of Play: PHP in 2009
Akash Mehta delivered this talk, my notes are as follows:
- 1995 – PHP/FI, 2000 – PHP 4.0 (very successful), 2006 – PHP 5.1.2 , 2009 – PHP 5.1.3 (developed and released at same time PHP 6 being discussed, so many features back ported)
- language extensions
- 450 user groups, 1200 members in San Francisco group!, 100 in Brisbane active
- Microsoft and Zend – awful on IIS, they are working on it apparently
- used in dynamic applications, social networks (Facebook), business applications (FLOW3)
- IDE’s – Eclipse – PDT, PHPEclipse, Zend, NetBeans PHP, JetBrains working on PHP editor (Web IDE)
- SVN still dominant, github growing in popularity following in the footsteps of Rails
- server – Apache losing ground, growing in popularity lighttpd and nginx
- phpDocumentor for automatic documentation
- Phing and Capistrano for build and deployment
- Project Zero is PHP on JVM
- Xdebug is popular for debugging, DBG is also reliable
- CakePHP – Rails for PHP, Mozilla Addons was the big thing but recently dropped for Django
- CodeIgniter – strong following, low barrier to entry
- Symfony – popular, strong following, high barrier to entry, hard to use with existing code
- Zend – full stack approach
Git Me Up
Nigel Rausch delivered this talk on Git, here are my notes:
- adopted quickly in Rails community
- distributed version control
- centralised – CVS, SVN
- distributed – Bazaar, Git, Mercurial
- Git created by Linus Torvalds, developed for Linux kernel patch control as replacement for BitKeeper (was one patch every 6 seconds, now 6 patches per second), so needed to be fast
- effcient in management of files – entire repository for Linux kernel is only 40% bigger than the kernel on its own
- commit locally to your machine – have full copy of all history – can commit at anytime, can always look back at history
- simple branching and easy merging
- support multiple remote servers
- SVN is simpler to use, single point of truth all the time, central control, until recently better tools
- git init – creates a hidden directory .git, which has config and history, use to start a repo
- git clone <repo> – clone an existing repo to start a new repo
- git add <file> – add to repo
- git commit -m “message” – commit to local repo
- git has about 150 commands, plus all their options
- git branch – master is there by default
- git checkout – checkout a branch
- git log – commit log history
- git merge <branch> – merge two branches and create a new commit
- git remote add origin <repo> – this happens automatically if you cloned
- git push origin master – origin is server we are pushing to (by default called origin), master is branch
- git pull origin master – fetch and merge from remote repository, pull is a fetch and merge, a fetch will just get and leave in a pseudo repo
- Mac installs with GitK which is ugly. GitX is a better bet, TortoiseGit for Windows
- git svn clone – will create a bi-directional git repo of your SVN repository, commit locally and push back to SVN, at a later poiint you can change your origin to a Git repo
- rebase, or work on a branch and merge to master locally so you don’t have all of the little commits
- initial high learning curve, supports commit often, gaining support, IDE support growing
- binary files saved and compressed in repo
Lightning Talks
A bunch of 5 minutes lightning talks, here are teh brief notes from the session:
- low level virtual machine
- risk based assembly language with annotations
- clang – convert C and C++ to LLVM
- adopted by Apple
- GUI programming in Python, wxPython is ugly, PyQt4 meh
- idea – with gui.x (where x is column, frame) – clean
- still things to do, code not yet released
Visualising Geo-Data
- government 2.0 taskforce
- big csv file about sighting of frogs in South Australia
- frogspotter – every dot, different species, different colours, then a cluster library
- the data aggregator – drill down on the data
- frog census
- currently Twitter with 650 lines of Python, wish to take on Facebook!
- current social networks have issues with privacy, incentives for hosts are wrong for users
- no business model, not hosted on server, runs over xmpp
- Linux Conf Australasia 2010, to held in Wellington
- linear programming project, sponsored by GNU (hosted project)
- applicable to lots of things – scheduling, rostering, optimising sports drafts
- CPLEX is commercial alternative
- MathProg is the language that comes with it, describes the program in a math like language
- active community
- bindings to scripting languages
- used for conference books and name tags
- pdf:toc to generate table of contents from every heading
- sponsor logos are image tags, use CSS zoom property
- div tag used for indenting
- margins in centremetres, told CSS book was A5
- absolute positioing (OK for print, not for web)
- scripts will be published
- similar to Latex, but simple and uses same HTML as web
iPhone Hacking
- to get SMS out – if not encrypted they are stored on your system by iTunes
- they are GUID.mddata files which you can access using a database client
- bambapilla – exports conversation to XML, formats nicely as XSL in browser
Hacking OSX apps with Python
- objective C is a lie, its just C
- when you don’t have the source but want to change a behaviour – swizzling
Patents Rock
- protects inventors and ideas, thoughts and ideas
- patent voliations – side to side swinging on a swing, licking a postage stamp, inducing cats with a laser light
- software opatents suck
- Haml – takes HTML and makes it simple and short – implementation for Ruby
- Sass – takes CSS and makes it simple
How I PWN
- Postgres Weekly News
- 5 w’s – who, what, why, when and how
- tools – Procmail, Mutt, Perl, Vim, Git, SVN, blogs, Twitter
Continuous Integration
November 18, 2009
Earlier in the year, I gave an internal videocast to my colleagues in IT on continuous integration. I finally got around to posting it online and the presentation is now available on Slideshare.










