Planet Linux Australia

Syndicate content
Planet Linux Australia -
Updated: 14 min 41 sec ago

Steven Hanley: [mtb/events] Six Foot Track Marathon 2014

Sun, 2015-11-08 12:25

At the start line (fullsize)

I lined up for my first run at the Six Foot track Marathon in 2014. Many ACTRun friends have been doing it for years, this year I managed to get in and was lining up with them and other friends new to the race to have a run along the track to Jenolan Caves.

Jane and I had spent a weekend in the Blue Mountains ini the lead up to the race to get an idea about the run down to Coxs river and also for me to scope out the finishing stairs in the new TNF100 course. It was useful to scope out the first 15km of Six Foot, however come race day things were different (a lot more runners out for one).

As is so often the case I went out too fast and paid the price on the climb from the river and along the range. However it was still a great day out and I will be back for more (I did it in 2015, knocking half an hour off my time and plan to line up again in 2016). My gallery and a few words from the day are here in my Six Foot Track Marathon 2014 gallery.

Steven Hanley: [mtb] Mt Yarahapinni Run - Solo November 2014

Sun, 2015-11-08 00:25

Massive tree remains from logging operations (fullsize)

I was up near Macksville for a family trip and had some time spare one morning. I decided it would be good to head out for a run in the Yarriabini national park area. In 2006 Geoquest we had done a hike a bike up the side of Mt Yarahapinni and then a ride and split rogaine through the park. I wanted to head in and check out some of the region again.

The most obvious run to do was an out and back along Way Way Creek to the summit and back. With more time it would be fun to explore more. However it was a nice morning out and as I mention would be a pretty awesome half marathon course if it could be organised. Photos from my Mt Yarahapinni Run are online here.

Chris Smart: Flashing developer image on Nexus 6P (and maybe 5X)

Fri, 2015-11-06 22:29

Normally I just download the developer image tarball, verify the checksum and extract it, boot my phone to the bootloader (volume down and power buttons), install android-tools on Fedora and run “fastboot oem unlock“, then run the “” script from the image tarball, followed by “fastboot oem lock” once I get back to the bootloader.

With a Nexus 6P this has changed a little. First, the command is now fastboot flashing unlock so you need the latest version of fastboot utility (which Fedora does not have). I did this by downloading the basic Android SDK tools only (android-sdk_r24.4.1-linux.tgz), extracting it and running the SDK Manager (./tools/android binary), and installing latest SDK Platform Tools.

Then I could run fastboot to put boot it to bootloader:

sudo ./platform-tools/fastboot reboot bootloader

I also needed to use the new fastboot to flash the default, and the script from the developer image uses fastboot from the user’s PATH.

In Fedora fastboot is installed to /usr/bin/fastboot but also /bin/fastboot – a user gets the former, root gets the latter, so I moved both of these out of the way and copied in the fastboot binary from

sudo mv /bin/fastboot{,-fedora}

sudo mv /usr/bin/fastboot{,-fedora}

sudo cp ./platform-tools/fastboot /bin/

sudo cp ./platform-tools/fastboot /usr/bin/

Secondly, once you have that the script still fails with a cryptic message about being unable to remotely unlock.

You need to also boot the phone to Android, activate developer settings (by browsing to Settings -> About Phone and tapping on build 7 times) and then under Settings -> Developer options turn on the option to allow OEM unlocking.

Now I was finally able to flash the phone.

sudo ./

Boot back to bootloader and re-lock.

sudo adb reboot bootloader

sudo fastboot flashing lock

Hope this helps someone else out there!

Steven Hanley: [mtb/events] Kepler Challenge 2014 - Running in Fiordland NZ

Fri, 2015-11-06 22:25

A ridgeline during the race, amazing views (fullsize)

As I mention in the write up a few friends and I had decided to head to Kepler Challenge in 2014. Marty heading back to defend his title, David, Julie, Bec and I heading over for our first attempts, Chris rocking up for the Luxmore Grunt.

Fiordland is an amazing part of New Zealand, this in a country chock full of amazing outdoor places really was something special. I understand why this event is so popular also why the walk itself it so popular. We all had a great time there and though the trip was short it is definitely one to go back for some time.

Of course I had my camera with me and took photos so have some words with them in my 2014 Kepler Challenge write up. Thanks to Dave, Julie, Marty, Bec, Pete and Chris for the company. I hope to head back and do it faster in the future, fun indeed.

Lev Lafayette: Reviving a 'stuck' Google Nexus 7 (2012) from Lollipop Issues

Fri, 2015-11-06 16:29

There has been a lot of social media and even mainstream media attention to the various problems people are encountering with the Nexus 7 (2012. 2013) tablets especially after upgrading to "lolipop" (5.1).

read more

Lev Lafayette: Parallel Programming Presentation to Linux Users of Victoria

Fri, 2015-11-06 15:29

Parallel programming is the implementation of simultaneous computation typically applied through either tasks or data. In this introduction the need, core concepts, potential problems, and implementations will be described and illustrated with multiple examples in R, Python, C, and Fortran.

Presentation to Linux Users of Victoria, November 2015

Lev Lafayette: Open Source Vocational Engineering with High Performance Computing

Fri, 2015-11-06 15:29

High performance computing is a necessity for scientific research and increasingly so; however initial steps are also being made in vocational engineering at RMIT. Applying the andragogical principles in the education sector with free and open source content encourages educational connectivism which improves learning and relevance.

Presentation to the Open Source Developers Conference, Hobart, October 2015

sthbrx - a POWER technical blog: Evolving into a systems programmer

Fri, 2015-11-06 11:42

In a previous life I tutored first year computing. The university I attended had a policy of using C to introduce first years to programming. One of the most rewarding aspects of teaching is opening doors of possibility to people by sharing my knowledge.

Over the years I had a mixture of computer science or computer engineering students as well as other disciplines of engineering who were required to learn the basics (notably electrical and mechanical). Each class was different and the initial knowledge always varied greatly. The beauty of teaching C meant that there was never someone who truly knew it all, heck, I didn’t and still don’t. The other advantage of teaching C is that I could very quickly spot the hackers, the shy person at the back of the room who’s eyes light up when you know you’ve correctly explained pointers (to them anyway) or when asked “What happens if you use a negative index into an array” and the smile they would make upon hearing “What do you think happens”.

Right there I would see the makings of a hacker, and this post is dedicated to you or to anyone who wants to be a hacker. I’ve been asked “What did you do to get where you are?”, “How do I get into Linux?” (vague much) at careers fairs. I never quite know what to say, here goes a braindump.

Start with the basics, one of the easiest way we tested the first years was to tell them they can’t use parts of libc. That was a great exam, taking aside those who didn’t read the question and used strlen() when they were explicitly told they couldn’t #include <string.h> a true hacker doesn’t need libc, understand it won’t always be there. I thought of this example because only two weeks ago I was writing code in an environment where I didn’t have libc. Ok sure, if you’ve got it, use it, just don’t crumble when you don’t. Oh how I wish I could have told those students who argued that it was a pointless question that they were objectively wrong.

Be a fan of assembly, don’t be afraid of it, it doesn’t bite and it can be a lot of fun. I wouldn’t encourage you to dive right into the PowerISA, it’s intense but perhaps understand the beauty of GCC, know what it’s doing for you. There is a variety of little 8 bit processors you can play with these days.

At all levels of my teaching I saw almost everyone get something which ‘worked’, and that’s fine, it probably does but I’m here to tell you that it doesn’t work until you know why it works. I’m all for the ‘try it and see’ approach but once you’ve tried it you have to explain why the behaviour changed otherwise you didn’t fix it. As an extension to that, know how your tools work, I don’t think anyone would expect you to be able to write tools to the level of complexity of GCC or GDB or Valgrind but have a rough idea as to how they achieve their goals.

A hacker is paranoid, yes, malloc() fails. Linux might just decide now isn’t a good time for you to open() and your fopen() calling function had better be cool with that. A hacker also doesn’t rely on the kindness of the operating system theres an munmap() for a reason. Nor should you even completely trust it, what are you leaving around in memory?

Above all do a it for the fun of it, so many of my students asked how I knew everything I knew (I was only a year ahead of them in my first year of teaching) and put simply, write code on a Saturday night.

None of these things do or don’t make you a hacker, being a hacker is a frame of mind and a way of thinking but all of the above helps.

Unfortunately there isn’t a single path, I might even say it is a path that chooses you. Odds are you’re here because you approached me at some point and asked me one of those questions I never quite know how to answer. Perhaps this is the path, at the very least you’re asking questions and approaching people. I’m hope I did on the day, but once again, all the very best with your endeavours into the future

Paul Wayper: Open Source Developers Conference 2015

Fri, 2015-11-06 06:25
In the last week of October I attended the Open Source Developer's Conference in lovely Hobart. It was about 90 people this year - for some reason people don't come to it if they have to travel a bit further. It's their loss - this year was excellent.

We started with Dr Maia Sauren's keynote on all the many many ways that government departments and not-for-profit organisations are working to open up our access to transparent democracy. I've never seen a talk given by going through browser tabs before but it was a good indication of just how much work is going on in this field. Then we had Ben Dechrai demonstrating how easy it is to install malware on systems running PHP, Julien Goodwin talking about the mistakes people make when securing data (like thinking NATting is the answer), and Katie McLaughlin with a good round-up of why Javascript is actually a good language (and why the "WAT" talks are amusing but irrelevant to the discussion).

Tuesday afternoon was GIS afternoon. Patrick Sunter gave a really amazing talk about urban planning, demonstrating mapping transit time across a city like Melbourne interactively - drop a pin on the map and in three seconds or so the new isocron map would be generated. This allowed them to model the effects of proposed public transport changes - like a train line along the Eastern Freeway (get this done already!) - very quickly. Then Blair Wyatt demonstrated SubPos, a system of providing location data via WiFi SSID beacons - doesn't work on Apple phones though because Apple are into control. Matthew Cengia gave a comprehensive introduction into OpenStreetMap, then afternoon tea. I skipped the lightning talks since I normally find those a bit scattered - any talk where you spend more time hassling over how much time you have remaining and whether or not your technology is working is a talk wasted in my opinion. I needed a rest, though, since I was struggling with a nose and throat infection.

Then we headed off to dinner at the Apple Shed in the picturesque Huon Valley. Local ciders, local produce, good food, good company, good conversation. All the boxes satisfyingly checked :-). I bought a bottle of the Apple Schnapps to sample later.

Wednesday morning's keynote was by Mark Elwell and showed his experience as an educator looking at Second Life and OpenSim. This was a different take on openness - demonstrating how our desire to create and share is stronger than our greed. The things that SL and OpenSim have done to lock up 'intellectual property' and monetise people's interactions have generally hindered their success, and people still put hundreds or thousands of hours into modelling things just for the satisfaction of seeing it in a virtual world. It was a good reflection on one of the many reasons we create free open source software.

Casey West, Thor's younger brother, gave an excellent review of the 'time estimation' methods we've traditionally used in software engineering - the waterfall model, agile development, and scrum - and why they all usually end up with us lying making up how much time things take. One thing he said which struck home to me was "your company invests in you" - it was the answer to the problem of support (and security) being seen as a cost rather than a benefit. Kathy Reid gave an excellent talk about how to guide your career with some excellent speaking tips thrown in (an acknowledgement of country and assistance for hearing impaired people, amongst others). I skipped Paul Fenwick's CKAN talk as I wanted to prepare my lightning talk for later (hypocritical? Yes, I suppose so :-) ).

In the afternoon Chris Neugebauer gave a good demonstration on why HTTP/2 is going to rock, Scott Bragg talked about one of the more esoteric uses of BitCoin block chains, and Arjen Lentz showed the benefits (and absence of fail) in teaching primary school children to make their own robots (including soldering). Michael Cordover gave a highly anticipated talk on his progress trying to get the Australian Electoral Commission to reveal the source code for its "EasyCount" software that's used (amongst other things) to count Federal Senate elections. It's disappointing that the closed mindset exists so strongly in some areas of government - the reasons and the delays and the obstructions were more than just simple accident.

We then had a set of "Other Skills" lightning talks - people talking about other things they do outside of programming things. Unfortunately I can't remember many of these because I was preparing for mine, which was on constructing my electric motorbike. This was well received - quite a few people came up to me afterward to talk about motorbikes, and the practicalities of building an electric one. It's always satisfying to talk with people that don't need the basics (like "can't you put wind generators on it to generate power as you move?") explained.

The Thursday morning keynote was by Richard Tubb, talking about how we can create opportunities and use the situations we find ourselves in to open up and improve our lives, and showed some of the things achieved in the GovHack Tasmania he ran. Sven Dowideit, the author of Boot2docker, gave a good demonstration of the things you can do with containers - particularly good for build systems as they can be stripped down to avoid unexpected dependencies. Then I gave my talk on my experiences with logs and how we can improve the logs our programs generate; the feedback I got was good, but I'd like to add more examples and an actual library or two to implement the principles I talk about. Then John Dalton gave a talk about how to use ssh's tunnel flags; it was a good overview of how the various options work.

I don't remember what I was doing after lunch but I don't remember the first talk - I think I was resting again. I did see Jacinta Richardson's talk on RPerl, which is basically a library that compiles your Perl code into C++. It's useful for computationally intensive things but the author of RPerl seems to have bizarre notions of how to interact with a community - like refusing to look at Github issues and requesting they be put on his Facebook page instead. We had a couple of 'thunder' talks - the main one I can remember was Morgan's talk on her PhD on Second Life and OpenSim (her mentor was Mark Elwell), which touched on the same points of social and open interaction.

After afternoon tea we had Pia Waugh speaking via Hangout from her home in Canberra - she wasn't able to attend in person because of imminent child process creation (!). She talked about GovHack, leading some of the projects to open up government processes and her work in dealing with the closed mindset of some people in government departments. Pia is always so positive and engaged, and her energy and enthusiasm is a great inspiration to a lot of people who struggle with similar interactions with less-than-cooperative bureaucrats. Sadly though, it was another demonstration of how we really need a high speed broadband network - the video stalled occasionally and Pia's voice was garbled at some times because of bandwidth problems.

We had another set of lightning talks which I stayed around for - and good thing too, because Fraser Tweedale demonstrated an amazing new system called Deo. It's essentially "encryption keys as a network service": a client can store a key in a network server and then request it later automatically. The two situations Fraser demonstrated for this were unlocking your Apache SSL certificate when Apache starts up (using a pass phrase helper) and unlocking LUKS disk encryption automatically when a machine boots (using a helper in LUKS). Since I'd recently had a customer ask for this very thing - machines with encrypted disks for data security outside the corporate network but that boot without user intervention when in the presence of the key server - this was hugely useful. I'm watching the Deo project eagerly, and have changed my attitude to lightning talks. If only more of them could be like this!

As is common with open source events, OSDC 2015 was collecting money for charity - in this case, the Tasmanian Refugee Defence Fund. After Lev Lafayette donated $1000 to the cause, I decided to match it. The few glimpses we get into the abysmal conditions in our costly, closed offshore detention camps are harrowing - yet we don't see (many) people in them saying "you know, take me back to Syria, I'll take my chances there". We're only hurting the poorest of the poor and the most desperate of the desperate, and only because of the xenophobia created by the Coalition and the conservative media. We're damaging people for life, and burdening our own society in coping with the problems we've created. In my opinion we're going to find out in the upcoming decades just how bad that problem really is. Anything we can do to alleviate it now is a good thing.

Overall, OSDC 2015 was a great learning experience. The "hallway track" was just as beneficial as the talks, the food was good, the venue was good, and I was glad I came.

Craige McWhirter: The Dream of the 90's UI is Alive at Mozilla

Thu, 2015-11-05 19:45

This could alternatively be titled "WTF Firefox?" or "I Fought Mozilla and We All Lost" but I just couldn't do that to The Clash.

I occasionally work with an entity that requires what they call "Digital Badges" but everyone else calls personal SSL certificates. These are PKCS 12 files that have gone through a signing process, which you then import into your browser of choice. In my case, this is Firefox.

I was using some previous version of Firefox (who tracks these things when there's no problems?) and the PKCS 12 certificates were imported without any dramas. Everything worked As Expected(TM) and everything was fine.

Fast forward a mere month and after a spasm of executive resume building, new certificates were required.

In the same mere month, Debian had upgraded to Firefox 38.4.0. The main difference I can see in the application was the moving of "Preferences" from a pop-up dialogue to an in-browser interface.

Now when you hit up about:preferences - Advanced - Certificates - View Certificates - Your Certificates, you will find that after pressing Import and selecting the new certificates that it quietly fails to import them.

Absolutely zero feedback. No amount of restart, clearing cache etc will make them appear. They are not imported. You can repeat this process as much as you like, they still won't be imported.

I suspect that the certificates having pass phrases may be the root cause (quietly failing to bring up an authentication dialogue) but that's just a rough guess.

The only way that I was able to import these certificates into Firefox was via the pk12util from libnss3-tools.

$ pk12util -d ~/.mozilla/firefox/fduesnd3.default/ -i ~/some/path/old.p12 Enter password for PKCS12 file: pk12util: PKCS12 IMPORT SUCCESSFUL $ pk12util -d ~/.mozilla/firefox/fduesnd3.default/ -i ~/some/path/new.p12 Enter password for PKCS12 file: pk12util: PKCS12 IMPORT SUCCESSFUL

After restarting Firefox, the certificates were now listed in "Your Certificates".

Hopefully that saves you the few hours it cost me :-)

Steven Hanley: [mtb] Around the K 2014 - Another long ride in the NSW Alpine Region

Thu, 2015-11-05 12:25

Brooke and Cam at the Scammels lookout (fullsize)

This has become an annual ride to get out on. With two options, the full loop which is 320km including 6500 metres of climbing or some variation we sort out so people can do a shorter ride and be part of the day out. (This year was 180 km either Cabramurra to Jindabyne or Jindabyne to Cabramurra)

We had a pretty solid group doing the whole loop Jindabyne to Jindabyne anti clockwise. The others we split into two groups of around 6 or so each and managed a car swap as we crossed paths (at lunch at Khancoban).

Due to doing too much running and not enough cycling, and my trip to NZ for Kepler the previous week, I decided to do the shorter ride this year. Photos and words from Around the K 2014 are online. Fun was had, now it is just over a month until the 2015 one so I need to get on my bike and get ready for it.

Binh Nguyen: Some Geo-Politics, Apple Install Media, R, Ableton Push 2, and More

Wed, 2015-11-04 22:19
- when you look at the world from different perspectives it can seem as though a very different world exists out there at times. Things just sound crazy...

Yuri Bezmenov: Psychological Warfare Subversion & Control of Western Society (Complete)

KGB defector Yuri Bezmenov's warning to America

- the worse part of this is that since certain behaviour can sometimes only be defeated by equally abhorent behaviour it's a race down to the bottom. If you want to understand how these people think, don't think like a normal person. Think like the most crazed, power hungry person in the world and perhaps you'll understand how far people have to go behind the scenes

- recently, I thought it would be somewhat interesting to look at things in so called 'evil states' (Russia, China, Iran, etc...) and wanted to compare how they stacked up against so called 'good states' (US, UK, Australia, etc...). In quite a few areas things are actually quite competitive

- similar unemployment rates. Better in China and Russia than in the West

- prior to sanctions extremely strong growth in Russia and we know that growth in recent history in China has been extremely strong when compared to the West

- taxation as percentage of GDP lower but that is likely lower level of socialised services such as healthcare, welfare, etc...

- usual suspects are up there but the West is generally well up there (particularly those countries that are having economic difficulties in the Eurozone) as well. Results can vary drastically but I'm guessing that's because different people are using different measures for what amounts to crime and corruption. Asian countries generaly doing well. One thing I've found is that in general if life is too difficult for the populace in general people will evade resort to crime, loan sharks, etc... without it they can't survive. The irony is that the rest of society has to pay by paying higher taxes leading to very odd national GDP figures. For instance, I remember it once being said that the South of Italy was essentially a different state that was based on crime and corruption. Fix it and Italy's GDP rockets upwards. There is so much terrorist/criminal money in the US that if you were to remove it all the economy would collapse. The reason why sanctioned countries like Iran and North Korea are able to continue to survive is also for this particular reason...

- a lot of countries having a difficult time getting the best out of their people. Western countries generally middling to upper end of things... Russia and China doing okay but probably down the rankings due to their lopsided economies (which they are still trying to fix)

- this was one of the surprising things for me. There are heaps of alternative media choices in Russia, China, etc.. and the West but it's likely that they may be 'consolidated' into centralised points of power and distribution (for any number of reasons whether for financial or reasons of social control, etc...). Leeway in freedom of speech can vary drastically though and there is actually some attempt to control things (mildly) in the West. There are generally crackdowns in China and Russia against those that may cause 'social unrest'. One thing I've found funny though is that there are a lot of people who are generally seeking alternative news channels now,47573.html

- this is one are where you will definitely find some surprises. Western countries are generally middling. Some very odd ones up there though in terms of hours worked per week and GDP per unit hour (this comes back to the value versus price problem that I've looked at from time to time on this blog). Who would have thought that Mexicans, Chileans, Russians, and Greeks were so hard working (missing data here)? Western countries generally middling... I think the main reason why the West has managed to steal such a massive leap is that they've managed to harness the low costs of the other countries and have made use of the disparity between 'perceieved value' versus 'actual value' (what's the difference between some low end and other high end electronics. Often very little but the price differential is huge)

- social stability enabled/achieved via more subtle measures in the West when compared to the China/Russia. Certain things often control behaviour

and wealth distribution (conciously or not). For instance, people don't die at work (they die of over-eating of cheap fast food, smoking addictive cigarettes, etc...), population growth is controlled via culture (the West is highly individualistic which means that people care more about themselves then having the chance of having a family), monopolies and wealth distribution is controlled more subtly (in China/Russia things are controlled largely by the state but in the West most of the time the only way things can be controlled is via legislation), entertainment culture helps to control wage costs (if everyone worked hard where would the wage differential be to exploit to create outsized profits?), etc...

- as discussed previously wealth distribution is fairly similar (if not better) in China/Russia as opposed to the US and GDP is solid...

- at the end of the day I think things wouldn't be much different for the 'average joe' in China/Russia versus the West. If you stick out a bit you're in a lot of trouble though...

- the US business philosophy of 'going big or going home' makes much more sense to me now. It's critical for them to have external mechanisms to control costs to create prosperity. Ideally, these costs are external to their country (currency fluctuations, low wages, illegal immigration, trade agreements, etc...) That way, they can keep people happy within their own country. If not, the disparities in their system grows wider and you end up with unequal wealth distribution. With them you can keep people internally happy but but not as much for those external (look at working conditions in countries where outsourcing is done. Almost slave like at times...)

- the US also controls certain monopolistic areas. For instace, defense (look at the JSF project where most Allied countries only have that single option). That means they're not subject to 'free market' conditions and don't necessarily have to compete on price/profit margin

- at the end of the day many social systems (democracies, socialists, communists, etc...) suffer from the issue of 'hierarchy'. Have someone foolish at the top and you're in a lot of trouble.

- the flaw with most social systems out there is that it makes the assumption that a central 'ruler' knows best. The irony is that it may be the case that only those who understand the current circumstances knows the best possible course of action, the best possible means of assuring that they can be happy

- the greatest difficulty of the current US administration is that it feels as though they don't know how to deal with China and Russia. The irony is that I'd be in the same place in dealing with the current US adminstration as well. The problem is that you don't know how far you can push without behind pushed back. Moreover, the response comes back is too weak or can be used as anti-West propaganda. Under the current administration people have admitted that they have attempted to go after 'easy wins' while neglecting or only half-heartedly dealing with the bigger issues that face them. They need to re-think the way they deal with things and re-mold the approach so that it is both effective as well as targeted. They're just setting things up for another new type of 'Cold War' or else a very clumsy minor conflict (not necessarily military)

- need to be smarter than this. Don't make it a game of religion. If you make it about religion they can turn around and spout things about 'propaganda'. Need to start the process of friendship as early as possible to reduce the chances of 'converting someone' more difficult. They need to look at radicalisation, terrorism, crime as simply a strange way of life. If sometime tries to turn them they will be more resistent. As for the rest, find the most efficient, least complex way out. Deal with the issue but don't make it easier to turn others against you

- the beauty of nature versus human financial abstraction is that everyone/thing has a value. Everything has a place within the ecosystem. Human abstractions such as 'pricing' actually make certain things that are impossible in nature possible. For instance, 'hoarding'. An animal can only grow to a certain size generally. With these limits it ensures that everyone has to continue to play their part with the overall ecosystem

- interesting way of measuring productivity is watching what the most efficient world (or country) in their industry and what other similar, groups do (normalised after removing question of currency and other localised variables, trade tarrifs, taxes, etc...). I wonder how much the average disparity really is?

- install media has to be purchased from the App Store now. Easier just to download and stick it on a USB flash drive

- have been looking for some documentation on R which is 'readable' (read like a book as opposed to a reference title). Turns out the included documentation (in the installed documentation) may be best

- doesn't look like too much of a change between Push 1 and Push 2 to be honest. I think the main difference is in the software

- sometimes you just want the desktop version on your phone/tablet as you may be missing some functionality

Some interesting quotes from world media of late:

- As President Rousseff contemplates her next move, she might do well to remember the words of U.S. President Ulysses S. Grant: “When wars do come, they fall upon the many, the producing class, who are the sufferers.” The Brazilian President is in a fight for her political survival, but that struggle may leave the country dangerously adrift, with the real pain being felt by the Brazilian people. The country needs stronger and more transparent institutions and good people to lead them. Painful though it may be, Brazil is cleaning house. Dealing with the short-term pain, however, is not easy and Rousseff’s presidency – what is left of it – will be volatile both in the political and economic sense. Seat belts are not optional.

- All pudgy dictator Kim Jong-un needs to do is play hard to get, routinely denounce America, and presto — he’s assured of victory. In exchange for vague promises, which nobody expects him to keep, he’ll get to keep his nukes and free American food to feed his starving country.

The Iran and Cuba surrenders also point to another likely outcome. Both reportedly now have military advisers and fighters in Syria, joining with Russia to defeat our allies among the Syrian rebels.

The Obama appeasement disaster would be complete if North Korean troops join the Russian axis. And why wouldn’t they? Vladimir Putin is a better friend and worse enemy.

- Washington is already at war with ISIL—not only as a matter of formal policy but also in the ongoing bombing campaign underway in Iraq and Syria today. ISIL has already demonstrated its lack of restraint in its dealings with the United States in the 2014 beheadings of American hostages within its reach. Its social-media outlets are already trying to encourage lone-wolf attacks against the United States and its civilian population today. ISIL is currently encouraged by a sense of sanctuary and a sense of military momentum. Making Western attacks against ISIL more effective seems just as likely to put the group on the defensive as to occasion new attacks. In acting more aggressively to stabilize Syria and defeat ISIL, the Obama administration would not be plunging America into a new conflict. Instead, it would be recognizing that it is already engaged in one.

- KARL MARX once described a situation where the weapon of criticism gives way to criticism by weapon. It’s a remark that captures the latest round of tensions between the West and Russia quite well. Are we witnessing a collision between two different systems of values—or one between two different interpretations of a common system of values?

- Minerals are the Taliban's second-biggest income source after narcotics, a United Nations Security Council committee wrote in a February report. The funds have helped sustain the Taliban as it battles for control of the government. In the past month, the group briefly captured the northern city of Kunduz, the first time it's taken a provincial capital since the US invasion in 2001. - There’s data which showcases France’s “rogue” status. In the last five years, France has consistently lost more than 100 days of work a year through strikes for every 1,000 employees. For Germany, it is a fraction of that, at just under four days for 1,000 workers. While in the UK, 19 days lost for 1,000 workers in 2009 – comes above Germany but still nowhere near France. There are few people feeling confident about France’s economic future. Compounded by their 35-hour working week, France’s left-wing policy is coming through great security as their economy continues to unperformed.

- How can hungry men care about whether a rhino or an elephant is killed? You are talking about somebody who has no job, who sleeps on an empty stomach. Do you really think he has time to think about what is happening in the jungle? Prince Harry has everything. Most people here don't.

A man who has no shelter, no food, his focus is only on what he can get to eat.

- Confucianism based government is self checking.

Power checking is more or less a Western problem because its history of theocracy. The Chinese people know that the government is responsible for the well being of the governments thousands of years ago.

In contrast, bad government in the West was, for a long time, seen as God's response to the people's iniquity. Bad governments were sent by God to punish the people.

- In 2011, after the Arab Spring revolutions, China sent emissaries to northern Africa to learn from the mistakes the region’s dictators had made. Apparently the emissaries came back relieved, convinced that China would never be vulnerable to such upheavals because, unlike the Arab dictators, its presidents are replaced every 10 years or so.

This is not to say China’s power structure is never inept or over-assertive. It certainly can miscalculate. Relations with the US follow an irregular pattern, depending on circumstances. China at one point began speaking less aggressively over its territorial claims in the South China Sea because it saw this was driving neighbouring countries closer to the US, not further away.

The key point is that Europeans must think more strategically in their dealings with China. For all the talk about “win-win” situations, when separate national agreements are made with the Asian Infrastructure Investment Bank (AIIB) or on nuclear power stations, European states’ disorderly moves hand China easy opportunities to play divide and rul

- A decade ago, the focus of the Valdai Discussion Club, in the post-9/11 honeymoon that characterized U.S.-Russia relations, was to improve the quality of dialogue between Washington and Moscow. As relations between the two countries have soured, the Valdai group has widened its target audience, increasingly bringing not only more Europeans but civil society representatives of the rising powers of the south and east, especially from China, India and Brazil. So too has the audience shifted for the remarks delivered to the forum by senior Russian officials—including Vladimir Putin.

Indeed, this year’s Valdai offers a prime example of the change in tone. No longer is the emphasis on deepening and solidifying a U.S.-Russia partnership and overcoming remaining Cold War-era hangups that precluded a closer relationship. Now, the Kremlin wants to make its case to the larger world why resisting American dominance of the international system is justified. No longer is Russia seeking to win over American hearts and minds; it is a more global audience that Moscow is trying to reach and convince that Washington under the Obama administration—and most likely under any conceivable successor president—is unreliable and untrustworthy. (A related message is that Washington is also unsuccessful in its efforts; Putin’s chief of staff Sergei Ivanov, in related remarks, declared that U.S. efforts to isolate Russia have been a failure.)

- "Vice President Joe Biden said in an interview that Russia's economy is "withering," and suggested the trend will force the country to make accommodations to the West on a wide range of national-security issues, including loosening its grip on former Soviet republics and shrinking its vast nuclear arsenal."

- I studied aeronautical maintenance. Any person with basic grasp of aerodynamics would know that given that since F-22s air intakes aren't of variable design (where there is a body in front of the intake like a cone or a wedge or blade) which creates a mach shockwave when planes goes supersonic. And the faster supersonic the more pointy the mach cone is. And when supersonic and/or turbulent air enters the intake it can and does lead to compressor stall. Thus although F-22s airframe may survive Mach-2.5 for short duration, its limited to speed below Mach-2.1. Just like F-16. Want to see what high-speed aircrafts engine intakes look like? Check out SR-71 and MiG-25/31. The angle at which the intake is "cut" is sharp on MiGs while SR-71s have a big cone that is far ahead of intake itself for the very reason I described. F-22 couldn't be that sharp or have round intakes with a cone for stealths sake so as to not increase the amount of directions in which impinging radar waves bounce to.Z

Top Secret information? LOOOL!!! Good luck classifying the laws of physics, aerodynamics and mathematics. As far as the fact that its classified by Pentagon goes - I couldn't care less. I don't live in USA and actually want F-22 to have same thing happen to it as to F-117 over Serbia, including pilot surviving to tell the tale. NSA agents aren't concerned about being caught. That's partly because they work for such a powerful agency, but also because they don't leave behind any evidence that would hold up in court. And if there is no evidence of wrongdoing, there can be no legal penalty, no parliamentary control of intelligence agencies and no international agreement. Thus far, very little is known about the risks and side-effects inherent in these new D weapons and there is almost no government regulation.

Edward Snowden has revealed how intelligence agencies around the world, led by the NSA, are doing their best to ensure a legal vacuum in the Internet. In a recent interview with the US public broadcaster PBS, the whistleblower voiced his concerns that "defense is becoming less of a priority than offense."

Snowden finds that concerning. "What we need to do," he said, "is we need to create new international standards of behavior."

- “We—the U.S. [Department of Defense]—haven’t been pursuing appropriate methods to counter EA [electronic attack] for years,” a senior Air Force official with extensive experience on the F-22 told The Daily Beast. “So, while we are stealthy, we will have a hard time working our way through the EA to target [an enemy aircraft such as a Russian-built Sukhoi] Su-35s and our missiles will have a hard time killing them.”

Sam Watkins: sswam

Wed, 2015-11-04 17:30

I started writing a set of error handler macros for C, based on “Zed’s Awesome Debug Macros”

The implementation is quite ugly, and depends on a couple of GNU extensions.  This is not ideal, and I would like to improve it if possible.

The idea is to call functions via “wrapper macros”, which take care of checking for errors.  Here’s an example:

#include <stdlib.h> #include <stdio.h> #include <errno.h> #include <string.h> #include "kiss.h" int main(void) { char *space = NULL; FILE *fp = NULL; INFO("Hello"); space = MALLOC(1000); space = REALLOC(space, 10000); fp = FOPEN("asdfasdf", "r"); FCLOSE(fp); FREE(space); INFO("Bye"); exit(0); error: exit(1); }

Output when I run it:

[INFO] test1.c:11 main: Hello [ERROR] test1.c:14 main: fopen failed: asdfasdf: No such file or directory

Output when I build it with -DNDEBUG and run it:

Hello fopen failed: asdfasdf: No such file or directory

In most cases, I can add a wrapper macro with one short line of code:

#define MALLOC(...) CHK(malloc, __VA_ARGS__) #define REALLOC(...) CHK(realloc, __VA_ARGS__) #define FREE(ptr) (free(ptr), ptr = NULL) #define FOPEN(path, mode) ({ char *p = path; FILE *rv = fopen(p, mode); CHECK(rv, "fopen failed: %s", p); rv; }) #define FCLOSE(fp) (ZERO(fclose, fp), fp = NULL)

The FOPEN macro is longer. I added the file name to the error message.

FREE is not checking for errors. It sets the pointer to NULL after the free. FCLOSE checks for errors and sets the FILE * to NULL.

I also wrote wrappers for some SDL and SDL_image functions, just a few so far.

Here is a short SDL example using the macros:

and the equivalent code without the macros, which is much longer:

I’m in two minds about this. On the one hand, I think these wrappers can make C code shorter, safer, more readable, and more maintainable. On the other hand, it might be best to avoid macros, the implementation is ugly, and it uses two GNU extensions: ##__VA_ARGS__, and ({ statement expressions }).

Please let me know what you think. (Without being too scathing, please… I respond better to kindness!)

Craig Sanders: Part-time sysadmin work in Melbourne?

Wed, 2015-11-04 17:26

I’m looking for a part-time Systems Administration role in Melbourne, either in a senior capacity or happy to assist an existing sysadmin or development team.

I’m mostly recovered from a long illness and want to get back to work, on a part-time basis (up to 3 days per week). Preferably in the City or Inner North near public transport. I can commute further if there is scope for telecommuting once I know your systems and people, and trust has been established.

If you have a suitable position available or know of someone who does, please contact me by email.

Why hire me?


  • I have over 20 years experience working with linux and unix
  • Over 30 years in IT, tech support, sysadmin type roles
  • I have excellent problem-solving skills
  • I have excellent English language communication skills
  • I can only work part time so you get a senior sysadmin at a discount part-time price, and I’m able to get things done both quickly and correctly.
  • My programming strengths are in systems administration and automation.
  • I’m a real-life cyborg (at least part-time, on dialysis)


  • My programming weaknesses are in applications development.
  • I can’t travel at all. I have to dialyse every 2nd night.
  • I can’t work late (except via telecommute)
  • I can’t drink alcohol, not even beer.
  • I am on the transplant waiting list. At some time in the next few years I might get a phone call from the hospital and have to drop everything with 1 or 2 hours notice and be out of action for a few weeks.

Full CV available on request.

I’m in the top few percent on ServerFault and Unix & Linux StackExchange sites – if you want to get a preview of my problem-solving and technical communication skills, see my profile at:

CV Summary:

Systems Administrator and Programmer with extensive exposure to a wide variety of hardware and software systems. Excellent fault-diagnosis, problem-solving and system design skills. Strong technical/user support background. Ability to communicate technical concepts clearly to non-IT people. Significant IT Management and supervisory experience.

Particular Skills

  • Unix, Linux
  • Internet-based Services and Security
  • Systems & Network Administration
  • Virtualisation – Openstack, Libvirt, KVM, Xen, Vmware
  • HPC Cluster – slurm, Torque, OpenMPI, pdsh
  • Perl, Python, shell, awk, sed, etc scripting for systems automation
  • Data extraction/conversion, processing, and reporting. (incl. CSV, XML, many others)
  • Web server administation, incl. Apache.
  • Web development HTML, CSS, Javascript, perl, PHP, CGI scripting etc.
  • Postgresql, Mysql, Microsoft SQL Server, and Oracle
  • DNS – bind8/bind9, nlnet’s nsd & unbound
  • SMTP – postfix, sendmail, exim, qmail.
  • High Level Technical Support
  • Database design & development
  • Mentoring and training of colleagues

Part-time sysadmin work in Melbourne? is a post from: Errata

Steven Hanley: [mtb/events] Buffalo Stampede 2015 - 78km in the Victorian Alpine region

Wed, 2015-11-04 10:25

Julie running back toward me at the top of Buffalo (fullsize)

This event was not in my original plan for 2015, though nursing a bit of a problem with my right aductor and glute I was feeling alright after six foot to do some big stuff. This turned out to be a tough day out, the incredible steep gradients on the first two climbs (and also on the way back the last two climbs and thus the descents on the other side) were something to behold.

That we did over 1000m of climbing in the first 10km of running, including 4km of flat at the start and a descent to the bottom of a 500m valley in the middle says something. This event lived up to the SkyRace tag really well. Also the victorian alpine region is amazingly pretty and Bright is a great town to hang around in.

Photos and a few words from my day out are here on my Buffalo Stampede 2015 page. Thanks to Paul for his entry and to Dave, Julie and Alex for the company. It was fun to catch up with Hanny and Graham down there too.

sthbrx - a POWER technical blog: What the HILE is this?

Tue, 2015-11-03 15:44

One of the cool features of POWER8 processors is the ability to run in either big- or little-endian mode. Several distros are already available in little-endian, but up until recently Petitboot has remained big-endian. While it has no effect on the OS, building Petitboot little-endian has its advantages, such as making support for vendor tools easier. So it should just be a matter of compiling Petitboot LE right? Well…

Switching Endianess

Endianess, and several other things besides, are controlled by the Machine State Register (MSR). Each processor in a machine has an MSR, and each bit of the MSR controls some aspect of the processor such as 64-bit mode or enabling interrupts. To switch endianess we set the LE bit (63) to 1.

When a processor first starts up it defaults to big-endian (bit 63 = 0). However the processor doesn’t actually know the endianess of the kernel code it is about to execute - either it is big-endian and everything is fine, or it isn’t and the processor will very quickly try to execute an illegal instruction.

The solution to this is an amazing little snippet of code in arch/powerpc/boot/ppc_asm.h (follow the link to see some helpful commenting):

1 2 3 4 5 6 7 8 9 10 11 #define FIXUP_ENDIAN tdi 0, 0, 0x48; b $+36; .long 0x05009f42; .long 0xa602487d; .long 0x1c004a39; .long 0xa600607d; .long 0x01006b69; .long 0xa6035a7d; .long 0xa6037b7d; .long 0x2400004c

By some amazing coincidence if you take the opcode for tdi 0, 0, 0x48 and flip the order of the bytes it forms the opcode for b . + 8. So if the kernel is big-endian, the processor will jump to the next instruction after this snippet. However if the kernel is little-endian we execute the next 8 instructions. These are written in reverse so that if the processor isn’t in the right endian it interprets them backwards, executing the instructions shown in the linked comments above, resulting in MSRLE being set to 1.

When booting a little-endian kernel all of the above works fine - but there is a problem for Petitboot that will become apparent a little further down…

Petitboot’s Secret Sauce

The main feature of Petitboot is that it is a full (but small!) Linux kernel and userspace which scans all available devices and presents possible boot options. To boot an available operating system Petitboot needs to start executing the OS’s kernel, which it accomplishes via kexec. Simply speaking kexec loads the target kernel into memory, shuts the current system down most of the way, and at the last moment sets the instruction pointer to the start of the target kernel. From there it’s like booting any other kernel, including the FIXUP_ENDIAN section above.

We’ve Booted! Wait…

So our LE Petitboot kernel boots fine thanks to FIXUP_ENDIAN, we kexec into some other kernel.. and everything falls to pieces.

The problem is we’ve unwittingly changed one of the assumptions of booting a kernel; namely that MSRLE defaults to zero. When kexec-ing from an LE kernel we start executing the next kernel in LE mode. This itself is ok, the FIXUP_ENDIAN macro will handle the switch if needed. The problem is that the FIXUP_ENDIAN macro is relatively recent, first entering the kernel in early 2014. So if we’re booting, say, an old Fedora 19 install with a v3.9 kernel - things go very bad, very quickly.

Fix #1

The solution seems pretty straightforward: find where we jump into the next kernel, and just before that make sure we reset the LE bit in the MSR. That’s exactly what this patch to kexec-lite does.

That worked up until I tested on a machine with more than one CPU. Remembering that the MSR is processor-specific, we also have to reset the endianess of each secondary CPU

Now things are looking good! All the CPUs are reset to big-endian, the target kernel boots fine, and then… ‘recursive interrupts?!’


Skipping the debugging process that led to this (hint: mambo is actually a pretty cool tool), these were the sequence of steps leading up to the problem:

  • Little-endian Petitboot kexecs into a big-endian kernel
  • All CPUs are reset to big-endian
  • The big-endian kernel begins to boot successfully
  • Somewhere in the device-tree parsing code we take an exception
  • Execution jumps to the exception handler at 0x300
  • I notice that MSRLE is set to 1
  • We fail to read the first instruction at 0x300 because it’s written in big-endian, so we jump to the exception handler at 0x300… oh no.

And then we very busily execute nothing until the machine is killed. I spend some time staring incredulously at my screen, then appeal to a higher authority who replies with “What is the HILE set to?”

..the WHAT?

Cracking open the PowerISA reveals this tidbit:

The Hypervisor Interrupt Little-Endian (HILE) bit is a bit in an implementation-dependent register or similar mechanism. The contents of the HILE bit are copied into MSRLE by interrupts that set MSRHV to 1 (see Section 6.5), to establish the Endian mode for the interrupt handler. The HILE bit is set, by an implementation-dependent method, during system initialization, and cannot be modified after system initialization.

To be fair, there are use cases for taking exceptions in a different endianess. The problem is that while HILE gets switched on when setting MSRLE to 1, it doesn’t get turned off when MSRLE is set to zero. In particular the line “…cannot be modified after system initialization.” led to a fair amount of hand wringing from myself and whoever would listen; if we can’t reset the HILE bit, we simply can’t use little-endian kernels for Petitboot.

Luckily while on some other systems the machinations of the firmware might be a complete black box, Petitboot runs on OPAL systems - which means the firmware source is right here. In particular we can see here the OPAL call to opal_reinit_cpus which among other things resets the HILE bit.

This is actually what turns on the HILE bit in the first place, and is meant to be called early on in boot since it also clobbers a large amount of state. Luckily for us we don’t need to hold onto any state since we’re about to jump into a new kernel. We just need to choose an appropriate place where we can be sure we won’t take an exception before we get into the next kernel: thus the final patch to support PowerNV machines.

Steven Hanley: [mtb/events] Geoquest 2015 - Thats Cray

Tue, 2015-11-03 15:25

Dane crossing a log in the dark for fun (fullsize)

I had a break from doing Geo for 2 years, I guess I got a bit hooked on running and was not keen to try to get a team happening for the event. It almost happened again, however some of the team members in Thats Cray were injured so Cam and I both got an invite to join in the fun.

Geo s always a good event and this year I really enjoyed just joining in for the fun and letting the others worry about Nav and a bunch of other stuff. I have to admit the lack of paddling in the last 2 years made that bit hard, however the event was a lot of fun as always and surprisingly felt pretty good all the way through. Maybe my running fitness helped me get through comfortably.

Photos and some words from the race are online on my Geoquest 2015 album. Thanks to Dane, Lee and Cam for the company, thanks to the awesome support crew and it was good to be back.

Steven Hanley: [mtb/events] The Sri Chinmoy Canberra Ultra 2015 - 102 KM with Wild Bill Bo Jangles and Crew

Tue, 2015-11-03 10:25

The Wild Bill crew at the finish, KV, Gangles and Bender (fullsize)

I really enjoy Sri Chinmoy events, their attitude and encouragement for people to be healthy and active to have a better life and world through peace and those goals. Given a choice I try to do most of the long or multi sport Sri Chinmoy events. I had run in this event in pairs with Alex in the first year, alternating legs that year.

As I was planning to do another 100 not long after I was not overly keen on a solo entry, however at Gangles's birthday KV and I managed to convince him to compete in the event with us in a team of 3. This would be his first long run (over 20 km, doing the last leg) and KV was stepping up for the first leg (I had the middle two to get done). I got some celebratory t-shirts made up as Gangles' (Adam) middle name is William KV and I decided to call the team Wild Bill Bo Jangles and crew. (I promise it made sense to us)

So we got to join in the fun and run with many of our friends and other people on the day. I took some photos and they are online in my Sri Chinmoy Trail Ultra 2015 album.

Michael Still: Halo: The Fall of Reach

Mon, 2015-11-02 22:28

ISBN: 0765367297


As someone who doesn't play computer games and has never played a Halo game, I find myself in the strange position of having read a Halo book. This book is the first in the chronological lineage, and explains the history of the Spartan program which produced the Master Chief. I decided to read this after accidentally watching a Halo mini-movie on Netflix with a sick baby, and deciding it wasn't totally terrible.

The book is actually ok to my surprise. Its competently written, and on par with much of the other combat fiction I've read. It certainly doesn't feel like its a tie in to a game. I would have liked this book to cover more of the moral issues around the back story to the Spartan program, but those were only briefly considered. Then again, I like a good shoot 'em up as much as the next guy and perhaps that would have been too boring. Overall I enjoyed it and think I might have to read more in this universe.

Tags for this post: book eric_nylund combat halo engineered_human cranial_computer personal_ai aliens

Related posts: The Last Colony ; The End of All Things; The Human Division; Old Man's War ; The Ghost Brigades ; Old Man's War (2) Comment Recommend a book

OpenSTEM: OpenSTEM robots visit Hobart primary school

Mon, 2015-11-02 14:29

On our last day in Tasmania (after the OSDC conference, about which I’ll do other posts shortly), Claire and I visited the wonderful Lauderdale Primary School in Hobart, where I did a version of our free Robotics Incursion with two year 5/6 classes, having a chat about robots, robotics, and more – and having our autonomous caterpillar and hexapod robots stroll around the sports hall….

The students were really engaged, they had thoughtful questions and great ideas – and the feedback from the kids as well as the teachers was that the session was fun as well as educational. Good!

We often do this incursion as a neat way for schools, teachers and students to get to know us before undertaking a bigger program such as the Robotics & Programming one. But, when we’re travelling somewhere with the robots anyway, it’s great to visit a local school. All our facilitators hold a current “working with children” card, so getting something like this organised is really quite straightforward.