Planet Linux Australia
- How to get the most out of 2015 http://t.co/BPSi6NEyfg 11:20:03, 2014-12-30
- RT @neiltyson: On this day long ago, a child was born who, by age 30, would transform the world. Happy Birthday Isaac Newton b. Dec 25, 1642 08:43:13, 2014-12-30
- My phone was stolen a few weeks ago in Vietnam. Enjoying the silence until I return to work and get a new one. E-mail if you need me. 10:51:05, 2014-12-29
New years day!
Spent the afternoon at The Edge working on the torso, the heart is taking a lot longer than I thought it would. I’ve basically finished the complicated part of the top with all the in and out hoses, I think the bottom half will go much faster.
Filed under: diary
Picked up some cheap storage stuff at Mitre Ten in the morning, still have to buy some lumber to attach it to, will probably order in one or two more units as well. It’s a wall mounted metal cleat system for storage trays.
The Edge is still on it’s 5pm holidays closing hours :(
Worked on the pychecker code.
Filed under: diary
Spent the morning and early afternoon at Toowong library, which is a bit different for me.
Finished working on the pychecker assert code.
Afternoon was at Humbug, Marco gave a preview of his linux.conf.au talk. We gave him as much feedback as possible I think.
(We thought) our usual curry place was shut for the holidays, so we went to Sichaen Bang Bang at Kenmore, which was good for a change. The food was good and the Chinese whisky was amazing.
Poked a few people about pycon things, I’d like to get the spreadsheet up and working for this year ASAP.
Filed under: diary
Spent the afternoon at The Edge working on my paper torso, got the heart finished so that’s three organs done.
Starting to think about linux.conf.au packing, tonight is the final opportunity to do some washing before I fly out on Friday.
The rest of the workmates will be back at work tomorrow.
I was hoping to start the Learning to Learn course today, will have to do that tomorrow night.
Filed under: diary
Interactive map for this route.
Tags for this post: blog pictures 20150104-wanniassa_trig photo canberra tuggeranong bushwalk trig_point
Related posts: A walk around Mount Stranger; Taylor Trig; Urambi Trig; Walk up Tuggeranong Hill; A quick walk to Tuggeranong Trig; Another lunch time walk
Some of the software that I use:
- reFX Nexus and associated libraries
- Rob Papen's Synthesisers
- Native Instruments Komplete 8
- Akai MPC Studio and associated libraries
- Native Instruments Maschine
- U-He's Synthesisers
- Cakewalk's Rapture
- Best Service Engine2 and associated libraries
- Spectrasonics Omnisphere, Trilogy, Trillian
- Vir2 VI.One
- Native Instruments Maschine
- Korg Triton Taktile 25
- Novation XioSynth25
- Roland A-49
- Audio Technica ATH-M50x
- Korg MicroKorg, Triton Range
- Novation's XioSynth, MiniNova, UltraNova Range
What people are actually buying out there. http://www.ariacharts.com.au/chart/
http://www.billboard.com/chartshttp://www.vmusic.com.au/charts/http://www.ariacharts.com.au/about/chart-storesHow to build something simple has been bugging me for a while now.
http://createdigitalmusic.com/2006/09/learning-reaktor-online-tutorials-samples-discussion/ How to build something simple has been bugging me for a while now.http://www.sylenthtutorials.com/
Fitness tests for entrace to the ADF. Interesting for those of you out there.http://www.defencejobs.gov.au/fitness/techniques/http://www.defencejobs.gov.au/recruitmentCentre/howToJoin/fitnessTest/
If you've ever used sampling software such as Akai MPC and like the functionality, simplicity of a single click to create a note inside the piano roll there's also the 'Ctl+B' shortcut inside of Ableton.
Been re-thinking my strategy of selling MIDI clips and so on. Basically, I've been thinking of creating a library of small clips in Ableton and then using this as the basis for personal music and/or reselling this on to others. An example of this is using the 'Vinyl Scratches' VST plugin to learn how to create a group of unique clips for later reuse.
Have been involved (or have been researching) various forms of online money making in recent times (options for those tired of the standard office work work). These are some of them.
Thinking more about musical bridges in music. Think of note progression, more short notes into passage and slow out (particularly into 'breakdowns') , using effects as a means to keep things blended in.
Interesting for those 'vocalists' out there (it's a vocal sampler CD. A lot of websites also provide a lot of free or paid vocal samples on-line as well) http://www.cdsheetmusic.com/demo_order.php
If you are a vocalist, watch out for over eating. It can have some strange impacts on your body and voice.
A long time ago at University, I was playing around with automated deployment of software (reasonably sophisticated. Think about Windows automated deployment and so forth) and so on. Now there are many options out there including many distrobutions which are designed with customisation included. http://sourceforge.net/projects/manjaro-awesome-respin/
Some interesting electronic artists.http://www.discogs.com/artist/19116-Kaskade
I recently gave a speech about “collaborative innovation” in the public service, and I thought I’d post it here for those interested
The short version was that governments everywhere, or more specifically, public services everywhere are unlikely to get more money to do the same work, and are struggling to deliver and to transform how they do things under the pressure of rapidly changing citizen expectations. The speech used Game of Thrones as a bit of a metaphor for the public service, and basically challenged public servants (the audience), whatever their level, to take personal responsibility for change, to innovate (in the true sense of the word), to collaborate, to lead, to put the citizen first and to engage beyond the confines of their desk, business unit, department or jurisdiction to co-develop develop better ways of doing things. It basically said that the public service needs to better work across the silos.
The long version is below, on YouTube or you can check out the full transcript:
The first thing I guess I wanted to talk about was pressure number one on government. I’m still new to government. I’ve been working in I guess the public service, be it federal or state, only for a couple of years. Prior to that I was an adviser in a politician’s office, but don’t hold that against me, I’m strictly apolitical. Prior to that I was in the industry for 10 years and I’ve been involved in non-profits, I’ve been involved in communities, I’ve been involved in online communities for 15 years. I sort of got a bit of an idea what’s going on when it comes to online communities and online engagement. It’s interesting for me to see a lot of these things done they’ve become very popular and very interesting.
My background is systems administration, which a lot of people would think is very boring, but it’s been a very useful skill for me because in everything I’ve done, I’ve tried to figure out what all the moving parts are, what the inputs are, where the configurations files are; how to tweak those configurations to get the better outputs. The entire thing has been building up my knowledge of the whole system, how the societal-wide system, if you like, operates.
One of the main of pressures I’ve noticed on government of course is around resources. Everyone has less to do more. In some cases, some of those pressures are around fatigued systems that haven’t had investment for 20 years. Fatigued people who have been trying to do more with less for many years. Some of that is around assumptions. There’s a lot of assumptions about what it takes to innovate. I’ve had people say, “Oh yeah, we can totally do an online survey that’ll cost you $4 million.” “Oh my, really? Okay. I’m going to just use Survey Monkey, that’s cool.” There are a lot of perceptions that I would suggest a little out of date.
It was a very opportunistic and a very wonderful thing that I worked in the ACT Government prior to coming into the federal government. A lot of people in the federal government look down on working in other jurisdictions, but it was very useful because when you see what some of the state territory and local governments do with the tiny fraction of the funding that the federal government has, it’s really quite humbling to start to say, “Well why do we have these assumptions that a project is going to cost a billion dollars?”
I think our perceptions about what’s possible today is a little bit out of whack. Some of those resources problems are also limitations for the self-imposed, our assumptions, our expectations and such. So first major pressure that we’re dealing with is around resources, both the real issue and I would argue a slight issue of perception. This is the only gory one (slide), so turn away from it if you like, I should have said that before sorry.
The second pressure is around changing expectations. Citizens now, because of the Internet, are more powerful than ever before. This is a real challenge for entities such as government or a large traditional power brokers shall we say. Having citizens that can solve their own problems, they can make their own applications that can pull data from wherever we like, that can screen scrape what we put online, is a very different situation to whether it be the Game of Thrones land or Medieval times, even up to even only 100 years ago; the role of a citizen was more about being a subject and they were basically subject to whatever you wanted. A citizen today is able to engage and if you’re not responsive to them, if government don’t be agile and actually fill up a role then that void gets picked up by other people, so the internet society is a major pressure of the changing expectations of the public that we serve is a major pressure. When fundamentally, government can’t in a lot of cases innovate quickly enough, particularly in isolation, to solve the new challenges of today and to adapt and grab on to the new opportunities of today.
We (public servants) need to collaborate. We need to collaborate across government. We need to collaborate across jurisdictions and we need to collaborate across society and I would argue the world. These are things that are very, very foreign concepts to a lot of people in the public service. One of the reasons I chose this topic today was because when I undertook to kick off Data.gov.au again, which is just about to hit its first anniversary and I recommend that you come along on the 17th of July, but when I kicked that off, the first thing I did was say, “Well who else is doing stuff? What are they doing? How’s that working? What’s the best practice?” When I chatted to other jurisdictions in Australia, when I chatted to other countries, I sat down and grilled for a couple of hours the Data.gov.uk guys to find out exactly how they do it, how it’s resourced, what their model was. It was fabulous because it really helped us create a strategy which has really worked and it’s continuing to work in Australia.
A lot of these problems and pressures are relatively new, we can’t use old methods to solve these problems. So to quote another Game of Thrones-ism, if we look back, we are lost.
The third pressure and it’s not too gory, this one. The third pressure is upper management. They don’t always get what we’re trying to do. Let’s be honest, right? I’m very lucky I work for a very innovative, collaborative person who delegates responsibilities down … Audience Member: And still has his head. Pia Waugh: … and still has his head. Well actually it’s the other way around. Upper management is Joffrey Baratheon; but I guess you could say it that way, too. In engaging with upper management, a lot of the time and this has been touched on by several speakers earlier today, a lot of the time they have risks. To manage they have to maintain reputation and when you say we can’t do it that way, if you can’t give a solution that will solve the problem, then what do you expect to happen? We need to engage with upper management to understand what their concerns are, what their risks are and help mitigate those risks. If we can’t do that then it is in a lot of cases to our detriment that our projects are not going to be able to get up.
We need to figure out what the agendas are, we need to be able to align what we’re trying to do effectively and we need to be able to help provide those solutions and engage more constructively, I would suggest, with upper management.
Okay, but the biggest issue, the biggest issue I believe is around what I call systemic silos. So this is how people see government, it’s remote, it’s very hard to get to; it’s one entity. It’s a bit crumbling, a bit off in the realm, it’s out of touch with people, it’s off in the clouds and it’s untouchable. It’s very hard to get to, there’s winding dangerous road you might fall off. Most importantly, it’s one entity. When people have a good or bad experience with your department, they just see that as government. We are all exactly judged by the best and the worst examples of all of these and yet we’re all motivated to work independently of each other in order to meet fairly arbitrary, goals in some cases. In terms of how government sees people, they’re these trouble-making people that climbing up to try and destroy us. They’re a threat, they’re outsiders, they don’t get it. If only we could teach them how government works and then this will all be okay.
Well, it’s not their job; I mean half of the people in government don’t know how government works. By the time you take MOG changes into account, by the time you take changes of functions, changes of management, changes of different approaches, different cultures throughout the public service, the amount of time someone has said to me, “The public service can’t innovate.” I’m like, “Well, the public service is myriad organisations with myriad cultures.” It’s not one entity and yet people see us as one entity. It’s not I think the job of the citizen to understand the complexities of government, but rather the job of the government to abstract the complexities of government to get a better engagement and service for citizens. That’s our job, which means if you’re not collaborating and looking across government, then you’re not actually doing your job, in my opinion. But again, I’m still possibly seen as one of these troublemakers, that’s okay.
This is how government sees government (map of the Realm), a whole map of fiefdoms, of castles to defend, of armies that are beating at your door, people trying to take your food and this is just one department. We don’t have this concept of that flag has these skills that we could use. These people are doing this project; here’s this fantastic thing happening over there that we could chat to. We’re not doing that enough across departments, across jurisdictions, let alone internationally and there’s some fantastic opportunities to actually tap into some of those skills. The solution in my opinion, this massive barrier to doing the work of the public service better is systemic silos. So what’s the solution?
The solution is we need to share. We’re all taught as children to share the cookie and yet as we get into primary school and high school we’re told to hide our cookie. Keep it away. Oh you don’t want to share the cookie because there’s only one cookie and if you gave any of it away you don’t have any cookie left. Well, there’s only so many potatoes in this metaphor and if we don’t share those potatoes then someone’s going to starve and probably the person who’s going to starve is actually right now delivering a service that if they’re not there to deliver, we’re going to have to figure out how to deliver for the one potato that we have. So I’m feeling we have to collaborate and to share those resources is I think a very important step forward.
Innovative collaboration. Innovative collaboration is a totally made up term as are a lot of things are I guess. It’s the concept of actually forging strategic partnerships. I’ve actually had a number of projects now. I didn’t have a lot of funding for Data.gov.au. I don’t need a lot of funding for Data.gov.au because fundamentally, a lot of agencies want to publish data because they see it now to be in their best interest. It helps them improve their policy outcomes, helps them improve their services, helps them improve efficiency in their organisations. Now that we’ve sort of hit that tipping point of agencies wanting to do this stuff increasingly so, it’s not completely proliferated yet, but I’m working on it; now that we sort of hit that tipping point, I’ve got a number of agencies that say, “Well, we’d love to open data but we just need a data model registry.” “Oh, cool. Do you have one?” “Yes, we do but we don’t have anywhere to host it.” “Okay, how about I host it for you. You develop it and I’ll host it. Rock!” I’ve got five of those projects happening right now where I’ve aligned the motivation and the goals of what we’re doing with the motivation and goals of five other departments and we have actually have some fantastic outcomes coming out that meet all the needs of all the players involved, plus create a whole of government improved service.
I think this idea of having a shared load, pooling our resources, pooling our skills, getting a better outcome for everyone is a very important way of thinking. It gives you better improved outcomes in terms of dealing again with upper management. If you start from a premise that most people do, well we’ve only got this number of people and this amount of money and therefore, we’re only going to be able to get this outcome. In a year’s time you’ll be told, “That’s fine, just still do it 20% less.” If you say our engagement with this agency is going to help us get more resilience in a project and more expertise on a project and by the way, upper management, it means we’re splitting the cost with someone else, that starts to help the conversation. You can start to leverage resources across multiple departments, across society and across the world.
Here’s a little how-to, just a couple of ideas, I’m going to go into this into a little bit more detail. In the first case research, so I’m a child of the internet, I’m a little bit unique for my age bracket and that my mom was a geek, so I have been using computers since I was four, 30 years ago. A lot of people my age got their first taste of computing and the internet when they got to university or at best maybe high school whereas I was playing with computers very young. In fact, there’s a wonderful photo if you want to check it out, of my mom and I sitting and looking at the computer very black and white and there’s this beautiful photo of this mother with a tiny child at the computer. What I tell people is that it’s a cute photo but actually my mom had spent three days programming that system and when her back was turned, just five minutes, I completely broke it. The picture is actually of her fixing my first breaking of a system. I guess I could have had a career in testing but anyway I got in big trouble.
One of the things about being a child of the internet or someone, who’s really adopted the internet into the way that I think, is that my work space is not limited to the desk area that I have. I don’t start with a project and sort of go, okay, what’s on my computer, who’s in my immediate team, who’s in my area, my business area. I start with what’s happening in the world. The idea of research is not just to say what’s happening elsewhere so that we can integrate into what we are going to do, but to start to see the whole world as your work space or as your playground or as your sandpit, whichever metaphor you prefer. In this way, you can start to automatically as opposed to by force, start to get into a collaborative mindset.
Research is very important. You need to establish something. You need to actually do something. This is an important one that’s why I’ve got it in bold. You need to demonstrate that success and you need to wrap up. I think a lot of times people get very caught up with establishing a community and then maintaining that community for the sake of maintaining the community. What are the outcomes? You need to identify fairly quickly, is this going to have an outcome or is this sort of a community, an ongoing community which is not necessarily outcome driven? Part of this is around, again, understanding how the system works and how you can actually work in the system. Some of that research is about understanding projects and skills. I’ll jump into a little bit. So what already exists? If I had a mammoth (slide), I’d totally do cool stuff. What exists out there? What are the people and skills that are out there? What are the motivations that exist in those people that are already out there? How can I align with those? What are the projects that are already doing cool stuff? What are the agendas and priorities and I guess systemic motivations that are out there? What tech exists?
And this is why I always contend and I always slip into a talk somewhere, so I’ll slip it in here, you need to have a geek involved somewhere. How many people here would consider yourselves geeks? Not many. You need to have people that have technical literacy in order to make sure that your great idea, your shiny vision; your shiny policy can actually be implemented. If you don’t have a techie person, then you don’t have the person who has a very, very good skill at identifying opportunities and risks. You can say, “Well we’ll just go to our IT department and they’ll give us quote of how much it does to do a survey.” Well in that case, okay, not necessarily our case, it was $4 million. So you need to have techie people who will help you keep your finger on the pulse of what’s possible, what’s probable and how it’s going to possibly work. I highly recommend, you don’t need to be that person but you need to have the different skills in the room.
This is where and I said this on Twitter, I do actually recommend Malcolm Gladwell’s ‘The Tipping Point’, not because he’s the most brilliant author in the world, but because he has a concept in there that’s very important. Maybe I’ll save you reading it now, but of having three skills – connectedness, so the connector; the maven, your researcher sort of person; and your sales person. Those three skills, one person might have all or none of those skills, but a project needs to have all of those skills represented in some format for the project to go from nothing to being successful or massively distributed. It’s a very interesting concept. It’s been very beneficial to a lot of projects I’ve been involved in. I’ve run a lot of volunteer projects. The biggest of which is happening this weekend, which is GovHack. Having 1,300 participants in an 11-city event only with volunteer organisers is a fairly big deal and part of the reason we can do that is because we align natural motivation with the common vision and we get geeks involved obviously.
What already exists? Identifying the opportunities, identifying what’s out there, treating the world like a basket of goodies that you can draw from. Secondly, you want to form an A team. Communities are great and communities are important. Communities establish a ongoing presence from which you can engage in, draw from, get support and all those kinds of things. This kind of community is very, very important, but innovative collaboration is about building a team to do something, a project team. You want to have your A-list. You want to have a wide variety of skills. You want to have doers. You want to establish the common and different needs of the individuals involved and they might be across departments or across governments or from society. Establishing what is common of the people involved that you want to get out of it and establishing then what’s different is important to making sure that when you go to announce this, that everyone’s needs is taken care of or that it doesn’t put someone off side or whatever. You need to understand the dynamics of your group very, very well and you need to have the right people in the room. You want to plan realistic outcomes and milestones. These need to be tangible.
This is where I get just super pragmatic and I apologise, but if you’re building a team to build the project report to build the team, maybe you’ve lost your way just slightly. If the return on investment or the business case that you’re writing takes 10 times the amount of time to do the project, itself, maybe you could do a little optimisation. So just sort of sitting back and saying what is the scale of what we’re trying to do. What are the tangible outcomes and what is actually necessary for this? This comes back to the concept of again, managing and mapping risk to projects. If the risk is very, very, very low, then maybe the amount of time and effort that goes into building the enormous structure of governance around it, can be somewhat minimised. This is taking a engaged proactive approach with the risk I think is very important in this kind of thing and making sure that the outcomes are actually achievable and tangible. This is also important because if you have tangible outcomes then you can demonstrate tangible outcomes. You need to also avoid scope creep.
I had a project recently that didn’t end up happening. It was a very interesting lesson to me though where something simple was asked and I came out with a way to do it in four weeks. Brilliant! Then the scope started to creep significantly and then it became this and this and then this and then we want to have an elephant with bells on it. Well, you can have the elephants with bells if you do this in this way in six months. So how about you have that as a second project? Anyway, so basically try to hold your ground. Often enough when people ask for something, they don’t know what they’re asking for. We need to be the people that are on the front line saying, “What you want to achieve fundamentally, you’re not going to achieve the way that you’re trying to achieve it. So how about we think about what the actual end goal that we all want is and how to achieve that? And by the way, I’m the technical expert and you should believe me and if you don’t, ask another technical expert but for God’s sake, don’t leave it to someone who doesn’t know how to implement this, please.”
You want to plan your goals. You want to ensure and this another important bit that there is actually someone responsible for each bit, otherwise, your planning committee will get together in another four weeks or eight weeks and will say, “So, how is action A going? Oh nothing’s happened. Okay, how’s action B going?” You need to actually make sure that this nominated responsibilities and they again should align to those individuals’ natural motivations and systemic motivations.
My next bit, don’t reinvent the wheel. I find a lot of projects where someone has gone on and completely recreated something. The amount of time when someone said, “Well that’s a really good piece of software but let’s rewrite it in another language.” In technical land, this is very common, but I see it happen in a process perspective, I see it happen in a policy perspective. Again, going back to see what’s available is very important, but I’ll just throw in another thing here, the idea of taking responsibility is a very scary thing, apparently, in the public service. Let’s go back to the wheel. If your wheel is perfect, you’ve developed it, you’ve designed it, you’ve spent six years getting it to this point and it’s shiny and it’s beautiful and it works, but it’s not connected to a car, what’s the point, seriously?
You want to make sure that what you’re doing needs to actually contribute to something bigger, needs to actually be part of the engine, because if your wheel or if your cog is perfectly defined but the engine as a whole doesn’t work, then there’s a problem there and sometimes that’s out of your control. Quite often what’s missing is someone actually looking end to end and saying, “Well, the reason there’s a problem is because there’s actually a spanner, just here.” If we remove that spanner and I know it’s not my job to remove that spanner, but if someone removed that spanner the whole thing would work. Sometimes it’s very scary for some people to do and I understand that, but you need to understand what you’re doing and how it fits into the bigger picture and how the bigger picture is or isn’t working, I would suggest.
Monitoring. Obviously, measuring and monitoring success in Game of Thrones was a lot more messy than it is for us. They had to deal with birds, they had to feed them, they had to deal with what they fed them. To measure and monitor your project is a lot easier in a lot of cases. There’s a lot of ways to automate it. There’s a lot of ways to come up with it at the beginning. How do we define success, if you don’t define it then you don’t know if you’ve got there. These things are all kind of obvious, but I remember having a real epiphany moment when a very senior person from another department actually, I was talking to him about the challenge that I’m having with a project and I said, “Well if you’re doing this great thing, then why aren’t you shouting it from the rooftop. This is wonderful. It’s very innovative, it’s very clever. You’ve solved a really great problem.” Then he looked at me and said, “Well Pia, you know success is just as bad as failure, don’t you?” It really struck me and then I realised I guess any sort of success or failure is seen as attention and the moment someone puts attention then it’s not very scary. I put to you that having success, having defensible projects, having evidence that actually underpins why, what you’re doing is important, is probably one of the most important things that you can do today to make sure that you continue getting funding, resources and all these kinds of things. Measuring, monitoring, reporting is more important now than ever and luckily and coincidentally, it’s easier now than ever. There’s a lot of ways that we can automate this stuff. There’s a lot of ways that we can put in place these mechanisms from the start of a project. There’s a lot of ways we can use technology to help. We need to define success, we need to defend and promote the outcomes of those projects.
Share the glory. If it’s you sitting on the throne then everyone starts to get a little antsy. I like to say that shared glory is the key to a sustainable success. I’ve had a number of projects and I don’t think I’ve told John this, but I’ve had a couple of things where I’ve collaborated with someone and then I’ve let them announce their part of it first, because that’s a good way to get great relationship. It doesn’t really matter to me if I announce it now or in a week’s time. It helps share the success, it helps share the glory. It means everyone is a little bit more on site and it builds trust. The point that was made earlier today about trust is a very important one and the way that you build trust is by having integrity, following through on what you’re doing and to share the glory a little. Sharing the glory is a very important part because if everyone feels like they’re getting out of the collaboration what they need to justify their work, to justify to their bosses, to justify their investment of time, then that’s a very good thing for everyone.
Everything great starts small. This goes to the point of doing pilots, doing demos. How many of you have heard the term release early, release often? Not many. It’s a technology sector idea, but the idea is rather than taking, in big terms, rather than taking four years to scope something out and then get $100 million and then implement it, yeah I know, right? You actually start to do smaller modular projects and if it fails straight away, then at least you haven’t spent four years and $100 million failing. The other part of release early, release often is fail early, fail often, which sounds very scary in the public sector but it’s a very important thing because from failure and from early releases, you get lessons. You can iteratively improve projects or policies or outcomes that you’re doing if you continually getting out there and actually testing with people and demoing and doing pilots. It’s a very, very useful thing to realise that sometimes even the tiniest baby step is still a step and for yourselves as individuals, we don’t always get the big success that we hope and so you need to make sure that you have a continuous success loop in your own environment and for yourself to make sure that you maintain your own sense of moving forward, I guess, so even small steps are very important steps. Audience Member: Fail early, fail often to succeed sooner. Pia Waugh: That’s probably a better sentence.
There’s a lot of lessons that we can learn from other sector and from other industries, from both the corporate and community sectors, that don’t always necessarily translate in the first instance; but they’re tried and true in those sectors. Understanding why they work and why they do or in some cases don’t map to our sector, I think is very important.
Finally, this is the last thing I want to leave you with. The amount of times that I hear someone say, “Oh, we can’t possibly do that. We need to have good leadership. Leadership is what will take us over the line.” We are the leaders of this sector. We are the future of the public service and so there’s a question about you need to start acting it as well, not you, all of us. You lead through doing. You establish change through being the change you want to see, to quote another great guy. When you actually realising that a large proportion of the SES are actually retiring in the next five to ten years, and realising that we are all the future of the public service means that we can be those leaders. Now if you go to your boss and say, “I want to do this great, cool thing and it’s going to be great and I’m going to go and work with all these other people. I’m going to spend lots of your money.” Yeah, they’re going to probably get a little nervous. If you say to them “here’s why this is going to be good for you, I want to make you look good, I want to achieve something great that’s going to help our work, it’s going to help our area, it’s going to help our department, it’s going to help our Minister, it aligns with all of these things” you’re going to have a better chance of getting it through. There’s a lot of ways that you can demonstrate leadership just at our level, just by working to people directly.
So I spoke before about how the first thing I did was go and research what everyone else was doing, I followed that up by establishing an informal forum. A series of informal get togethers. One of those informal get togethers is across jurisdictional meeting with open data people from other jurisdictions. What that means is every two months I meet with the people who are in charge of the open data policies and practice from most of the states and territories, from a bunch of local governments, from a few other departments at the federal level, just to talk about what we’re all doing; made very clear from the start, this is not formal, this is not mandatory, it’s not top down, it’s not the feds trying to tell you what to do, which is an unfortunate although often accurate picture that the other jurisdictions have of us, which is unfortunate because there’s so much we can learn from them. By just setting that up and getting the tone of that right, everyone is sharing policy, sharing outcomes, sharing projects, starting to share a code, starting to share functionality and we’ve got to a point only I guess eight months into the establishment of that group, where we really started to get some great benefits for everyone and it’s bringing everyone’s base line up.
There’s a lot of leadership to be had at every level and identifying what you can do in your job today is very important rather than waiting for the permission. I remember and I’m going to say a little story that I hope John doesn’t mind, I remember when I started in my job and I got a week into the job and I said to John, “So, I’ve been here a week, I really don’t know if this is what you wanted from me. Are you happy with how I’m going?” He said, “Well Pia, don’t change what you’re doing, but I just want to give you a bit of feedback. I’ve never been in a meeting before with outsiders, with vendors or whatever and had an EL speak before.” I said, “Oh, what’s wrong with your department? What’s wrong with ELs?” Because certainly by a particular level you have expertise, you have knowledge, you have something to contribute, so why wouldn’t you be encouraging people of all levels but certainly of senior levels to be actually speaking and engaging in the meetings. It was a really interesting thought experiment and discussion to be had about the culture.
The amount of people that have said to me, just quietly, “Hey, we’d love to do that but we don’t want to get any criticism.” Well, criticism comes in two forms. It’s either constructive or unconstructive. Now it can be given negatively, it can be given positively, it can be given in a little bottle in the sea, but it only comes in those two forms. If it’s constructive, even if yelled at you online, if it’s something to learn from, take that, roll with it. If it’s unconstructive, you can ignore it safely. It’s about having self knowledge, an understanding of a certain amount of clarity and comfort with the idea that you can improve, that sometimes other people will be the mechanism for you to improve, in a lot of cases it will be other people will be the mechanism for you to improve. Conflict is not a bad thing. Conflict is actually a very healthy thing in a lot of ways, if you engage with it. It’s really up to us about how we engage with conflict or with criticism.
This is again where I’m going to be a slight outsider, but it’s very, very hard, not that I’ve seen this directly, but everything I hear is that it’s very, very hard to get rid of someone in the public service. I put to you, why would you not be brave? Seriously. You can’t have it both ways. You can’t say, “Oh, I’m so scared about criticism. I’m so scared blah, blah, blah,” and at the same time it be difficult to be fired, why not be brave? We can do great things and it’s up to us as individuals to not wait for that permission to do great things. We can all do great things at lots and lots of different levels. Yes, there will be bad bosses and yes, there will be good bosses, but if you continually pin your ability to shine on those external factors and wait, then you’ll be waiting a long time. Anyway, it’s just my opinion.
So be the leader, be the leader that you want to see. That’s I guess what I wanted to talk about with collaborative innovation.
Korora 21 beta images are now available! Please leave a comment or ping me on social media with any issues or ideas so we can make it better.
CppCon 2014 talk by Chandler Carruth:
“Efficiency with Algorithms, Performance with Data Structure”
It starts slow, but there’s plenty of good things in this one:
- Don’t use linked lists 
- std::map is terrible
- Computers are made of memory hierarchies 
- [If you’re going to use it, ] know how the standard library works 
- std::unordered_map has a ridiculously long name and it isn’t a good hash map
 The thing about linked lists is that they’re at their worst when there is no spatial locality between the elements. Because of the way that std::list allocates elements, this will almost always be the case.
Linked lists can be useful for gathering data, but they’re expensive to traverse and modify. If you need to traverse the list more than once, consider using the first traversal to repack the list into a vector.
 The presentation does give some insight into the relative cost of cached memory accesses, and it would be remiss of me to not link to Tony Albrecht’s interactive cache performance visualizer. And std::vector is recommended over std::list for the spatial benefits (elements known to be near other elements, which is good). But the value of ordered accesses was overlooked in the presentation.
Put your data in a vector and process it in order from one end to the other. Any decent CPU will detect the ordered access and prefetch the data into the cache for you, and less time will be spent waiting for that data. It’s like magic.
 The presentation included two very specific examples regarding the inner workings of the standard library, one for std::vector, and one for std::unordered_list. It is right and good that you understand the workings of any library that you are using, but there were more general principles that were imho overlooked:
- For std::vector and std::list (and not exclusive to them): JIT memory allocation is terrible — use what you know about the problem to minimize and manage memory allocations. To quote from Andreas Fredrikssons’ fine rant (which you should read):
Never make memory management decisions at the lowest level of a system.
- Always explicitly keep a copy of intermediate results that are used more than once. Don’t trust the compiler to optimize for you — more to the point, understand why compilers legitimately can’t optimize away your lazy copypasta. (Mike Acton’s CppCon keynote has some material that covers this)
reason=”verification failed; insecure key”
I’ve recently noticed OpenDKIM on systems I run giving the above message when trying to verify a DKIM message from my own domain. According to Google searches this is due to DNSSEC not being enabled. I’m not certain that I really need DNSSEC for this reason (I can probably make DKIM work without it), but the lack of it does decrease the utility of DKIM and DNSSEC is generally a good thing to have.Client (Recursive) Configuration
The Debian Wiki page about DNSSEC is really good for setting up recursive resolvers . Basically if you install the bind9 package on Debian/Wheezy (current stable) it will work by default. If you have upgraded from an older release then it might not work (IE if you modified the BIND configuration and didn’t allow the upgrade to overwrite your changes). The Debian Wiki page is also quite useful if you aren’t using Debian, most of it is more Linux specific than Debian specific.
dig +short test.dnssec-or-not.net TXT | tail -1
After you have enabled DNSSEC on a recursive resolver the above command should return “Yes, you are using DNSSEC“.
dig +noall +comments dnssec-failed.org
The above command queries a zone that’s deliberately misconfigured, it will fail if DNSSEC is working correctly.Signing a Zone
dnssec-keygen -a NSEC3RSASHA1 -b 2048 -n ZONE example.com
The above command creates a Zone Signing Key.
dnssec-keygen -f KSK -a NSEC3RSASHA1 -b 4096 -n ZONE example.com
The above command creates a Key Signing Key. This will take a very long time if you don’t have a good entropy source, on my systems it took a couple of days. Run this from screen or tmux.
When you have created the ZSK and KSK you need to add something like the above to your zone file to include the DNSKEY records.
dnssec-signzone -A -3 $(shell head -c 100 /dev/random | sha1sum | cut -b 1-16) -k $(shell echo ksk/K$<*.key) -N INCREMENT -o $< -t $< $(shell echo zsk/K$<*.key)
Every time you change your signed zone you need to create a new signed zone file. Above is the Makefile I’m currently using to generate the signed file. This relies on storing the KSK files in a directory named ksk/ and the ZSK files in a directory named zsk/. Then BIND needs to be configured to use example.com.signed instead of example.com.The Registrar
Every time you sign the zone a file with a name like dsset-example.com. will be created, it will have the same contents every time which are the DS entries you send to the registrar to have your zone publicly known as being signed.
Many registrars don’t support DNSSEC, if you use such a registrar (as I do) then you need to transfer your zone before you can productively use DNSSEC. Without the DS entries being signed by a registrar and included in the TLD no-one will recognise your signatures on zone data.
ICANN has a list of registrars that support DNSSEC . My next task is to move some of my domains to such registrars, unfortunately they cost more so I probably won’t transfer all my zones. Some of my zones don’t do anything that’s important enough to need DNSSEC.
-  https://wiki.debian.org/DNSSEC
-  https://www.digitalocean.com/community/tutorials/how-to-setup-dnssec-on-an-authoritative-bind-dns-server–2
-  https://www.icann.org/resources/pages/deployment-2012-02-25-en
The long awaiting Penguins of Madagascar had come out, and I'd made plans with Kim for us to see it with her family.
After breakfast, we biked down to Bulimba and watched the movie together. It was really well done. I'd go so far as to say it was a great adult comedy that also happened to appeal to kids, but that could just be me. I've always enjoyed the penguin characters in the other Madagascar movies.
After the movie, we biked back home and had some lunch.
After lunch, we went out and did the grocery shopping. Woolworths was a ghost town, which made the shopping nice and easy.
After that, Zoe watched a bit of TV while we started on dinner.
Jonathan Adamczewski: The benefits of not lingering in eddies, and of learning from your own mistakes
I recently watched the CppCon 2014 talk by John “JT” Thomas:
“Embarcadero Case Study: Bringing CLANG/LLVM to Windows”
The presentation brought a few things to mind about which I have opinions :)Don’t let upstream get away from you
If you’re going to build upon a codebase that you don’t own, a codebase that others are adding enhancements to, where those enhancements are visible to your customers and are available to your competitors — why would you do anything but keep as close as possible to that upstream development?
“JT” argues in favor of following upstream more closely than they did. I’ve read [it seems like] many articles that insist that the only sane way to do Linux kernel driver development is the same — at least if you ever want your changes to be merged, or you want them to be maintainable into the future.
Playing catch-up is hard work, not made easier when upstream is highly active (as is the case for LLVM/clang or the Linux kernel). Investing developer time into regularly integrating changes from upstream is far more palatable than the epic upheaval that comes from chasing major releases.
It seems like regularly integrating has some tangible benefits:
You get the new features as soon as possible. (Also, you get the new bugs. This is software development.)
More manageable schedules. Regular integration will be far more predictable in terms of the time it takes to adapt your branch. There is a limit to how much change can happen upstream at one time. Smaller, regular changes are more predictable, and less likely to cause huge timesinks for programmers i.e. it’s better from a project management perspective.
Reveal conflicts closer their source — it’s better to fix code recently written than having to rewrite it months later.
And, if you’re doing it from the outset, it means the team can become comfortable with that workflow, and develop the skills and judgement to maintain it. Trying to learn those skills after working in a stable branch/dreamworld is only going to increase the friction when the change takes place.Consider the full cost of contractors
Don’t pay someone outside of your team to develop intimate knowledge about your systems — you’ll need to pay for it again when members of the team have to learn how to maintain and extend those systems at some point in the future.
This is partial text from a slide at around 50:50 in the presentation:
Initial contract work led to slow integration
- Core compiler team took time out to integrate and get up to speed
- This type of initial work would have been best done in house or with much closer interaction
Using contractors to add features to your software comes at a cost to the team: no one on the team will know what the contractor learned while completing the task — not the way that the contractor does. No one will have full insight into why decisions were made the way that they were. If you want your team to be able to support the code after the contractor is finished, you’ll need to set aside more time to develop familiarity.
In many cases, it’s better to kill two birds with one stone: let someone familiar with your codebase do the work of learning about the new area. You’ll keep the expert knowledge on the team, and any newly written code will have a better chance of fitting in with existing standards and practices of the codebase.
If it’s something that you expect to be using and maintaining into the future, keep it in-house. Or expect to keep paying the contractor, and plan for the cost of poorly integrated code.
It was a hot day, so I figured getting out of the heat and seeing a movie would be a good idea, so after Sarah dropped Zoe off, we didn't spend too much time at home before walking down the road to the cinema to watch Big Hero 6.
Zoe had already seen it with Sarah, but I was pretty keen to see it anyway, and Zoe didn't seem to mind seeing it a second time. She gave me a bit of a running commentary throughout.
After the movie, we dropped into Ooniverse for lunch. I learned that Nicky Noo is pulling up stumps next week, and moving to Western Australia to manage a bar in the mines. She said it's time for Nicky Noo to take a bit of a break. Ooniverse was nothing fancy, but it was a nice thing to have within easy walking distance of home, and Nicky always remembered us whenever we dropped in. I'm glad we got the opportunity to say goodbye.
After lunch, we went home, and Anshu came over. We went and picked up her new bike from the bike shop, and went for a little test ride at home. Zoe's been asking for her training wheels back on her bike for a while, so I finally caved in and put them back on, and she did a lot of pedaling.
After that, we got some pizza for dinner, and settled back to wait for the 8:30pm fireworks. Zoe and I watched them from the balcony, but Zoe didn't seem that into them, and went to bed after they finished.
I was nodding off on the couch watching a movie, so we went to bed before midnight ourselves, so much for seeing in the New Year.
Happy New Year to everyone with best wishes from Sydney!
Here is the culmination of Sydney New Year’s Eve fireworks:
Tags for this post: blog pictures 20141231-urambi_trig photo canberra tuggeranong bushwalk trig_point
Related posts: A walk around Mount Stranger; Taylor Trig; Walk up Tuggeranong Hill; A quick walk to Tuggeranong Trig; Wanniassa Trig; Another lunch time walk
(Tickets for LCA 2015 are still available - we can't wait to see you!)
I bought this book because of a review I saw online recently, and I have to say I loved it. Its interesting, humorous, and a generally fun read with a story line that I haven't seen before. Its refreshing to encounter a new author who has some genuinely new ideas to explore. I highly recommend this book.
Tags for this post: book andy_weir mars colonization exploration space_travel space_station
Related posts: Marsbound; Starbound; Red Mars; Mars: A Survival Guide; Earthbound; The Moon Is A Harsh Mistress Comment Recommend a book
linux.conf.au News: Speaker Feature: Timothy Terriberry, Tomas Miljenovic, Alexey Kardashevskiy, Vik Olliver
2:15pm Wednesday 14th January 2015
Dr. Timothy B. Terriberry has volunteered for the Xiph.Org Foundationa nonprofit organization that develops free, open multimedia protocols and softwaresince 2002, and has worked for the Mozilla Corporation in various capacities since 2008. In addition to running the Daala project, he was the lead developer of the Theora video codec, one of the developers of the Opus audio codec, and has helped maintain most of Xiph's other codecs. Timothy received dual B.S. and M.S. degrees from Virginia Tech in 1999 and 2001, respectively, in both Mathematics and Computer Science, and a Ph.D. in Computer Science from the University of North Carlina at Chapel Hill in 2006.
For more information on Timothy and his presentation, see here.
Tomas Miljenovic Crossplatform development in QML
10:40am Friday 16th January 2015
Tomas is a freelance scientific programmer and mobile application developer with a keen interest in open and portable scientific software. With the rise of functional and declarative programming in both the scientific and embedded space, he has worked to transition groups to easyentry yet fullfeatured open platforms for their frontend, data manipulation and visualisation needs.
For more information on Tomas and his/her presentation, see here.
Alexey Kardashevskiy VIFOVirtual fabric IO a.k.a. PCI passthrough.
10:40am Thursday 15th January 2015
Alexey Kardashevskiy, linux kernel engineer in IBM Australia/Ozlabs team since 08/2010. Area of focus PowerKVM, QEMU on POWERPC, VFIO on POWER. IBM Australia, LTC, Ozlabs team since 2010 on KVMonPOWER, specifically on QEMU (sPAPR machine support) and VFIO (adapt originally developed for x86 driver to work on POWER7/8); 20072010 IBM Russia, STG, developed SAS/Ethernet drivers for CellBE blade system firmware (known as SLOF); 20052007 Emcraft systems, reference design for microcontrollerbased IPMI firmware; before 2005 Windows (win api, network, GUI, OLE2, DirectShow).
Application development (win32, linux, c++, java), firmware development (linuxppc64/ mips/arm, atmega, h8), networks (from ethernet to http), multimedia, linux kernel, powerpc, ppc64, qemu, kvm.
For more information on Alexey and his presentation, see here.
You can follow him as @kardashevskiy and don’t forget to mention #lca2015.
Vik Olliver Hacking 3D printers
2:15pm Friday 16th January 2015
Vik Olliver is a longhair Open enthusiast who does actually make a living out of Open hardware. He is best know for his work in the RepRap 3D printer core team but enjoys diddling with all manner of Open projects, from Alcohol to Zeroemission transport.
He spends a lot of his time expounding the virtues of Open to the world, and encouraging local groups to collaborate in an ethical manner. He has a Green philosophy but eats meat and doesn't do any of the airyfairy crystal wavey stuff.
With his wife Suz, daughter Tamara, and a few lesser mortals he runs a factory and open workshop in Henderson. This notionally produces Open 3D printers and printer filament, but in practice gets used as a brewery, metal foundry, CNC emporium, hydroponic garden and zombie apocalypse refuge. LCA delegates are welcome to drop by.
He also raises a pride of arrogant cats.
For more information on Vik and his presentation, see here.
You can follow him as @VikOlliver and don’t forget to mention #lca2015.
Tags for this post: blog pictures 20141230-tuggeranong_trig photo canberra tuggeranong bushwalk trig_point
Related posts: A walk around Mount Stranger; Taylor Trig; Urambi Trig; Walk up Tuggeranong Hill; Wanniassa Trig; Lunchtime geocaching