This article shows how to split a polygon using one or more linestrings.
This article shows how to split a polygon using one or more linestrings.
I never thought I would have dedicated a blog post to a single bug, but here I am. It has been quite an effort fixing that for good, but we made it, and I wanted to share some considerations we made while doing this.
Before I begin, let me say that bug was an incredible example of constructive feedback by our awesome users: we got plenty of relevant information in a ridiculous amount of time, so I want to thank anyone who replied and/or reported, and if you, dear reader, have an outstanding issue in your KDE desktop – this is a good example of what it takes on your side to get it fixed as soon as possible
But let’s get to the point…
The issue
Since 4.8, as you probably already know if you follow my blog, inhibition in power management got a significant boost all over the place, but most of all started to work as it should. In addition, we enforced a policy which considered a lid close action to be implicit. We didn’t consider, though, that many application implemented inhibition before 4.8, even if in fact the whole routine was broken in a relevant number of cases. Turns out that some of them were actually doing this wrong.
In addition, we found a bug in our RandR code for detecting multiple displays connected, which triggered a persistent inhibition throughout the whole session since a second display was always detected.
So, what happened in the end? Lots of users weren’t able to suspend their laptop when closing the lid, maybe even you reader. But we tackled down every cause and fixed them.
Applications
Unfortunately, there is no way we can predict whether an application will do its job or not – we can just trust them to do it right. The good news is that our awesome users found the cause in two applications – KTorrent and Apper. While for KTorrent the inhibition feature is actually configurable, so it wasn’t really a bug but a new behavior discovered, for Apper the case was different – a bug in the inhibition routine went unnoticed, and we fixed that. I heard Daniel just released a new version which contains the fix – needless to say upgrading is highly recommended.
KRandR
I am a bit sad about this since this was meant to be one of our killer features. Although, we had to face a number of problems with drivers and such when detecting a second display, as already mentioned. We managed to get to a point where most of configurations will be actually supported, and fixed a number of corner cases where inhibition was not desirable. However, in the end we will probably make this feature configurable, as some users also told us that having suspension inhibited in a multi-head setup is not what they want.
Explicit vs. Implicit
And here’s to the very root of the problem. Our power management system is smart enough to distinguish whether an event has been explicitly requested by the user, such as a button press, or it was an implicit decision from the system, such as an idle timeout. The inhibition mechanism is designed not to inhibit any explicit action, just preventing the system from undertaking an action when the user is not taking part in the decision. The reason why we considered lid as an implicit event was probably wrong, after the feedback we got; but it was mainly to prevent the system from going down when something important (software update) was going on.
Most of our users showed us that the expectation of a lid close is definitely to carry on the configured action regardless of what’s happening in your system, which is indeed something sensible. At the same time, some people were happy with the new behavior and provided some good use cases to prove this (for example, using the new applet checkbox to prevent suspension when closing the lid). In the end, my take was to make this kind of behavior configurable – in 4.8.1, the advanced options will have a checkbox which is going to define whether a lid close is going to be considered explicit or not. And by default, it will be considered explicit like in previous versions.
Conclusion (or TL;DR)
I am happy to say this annoying bug should be completely fixed in 4.8.1, and at the same time we managed to leave our users with a choice to make their PC behave as they think it should. I really hope for 4.9 we’re going to deliver a rock-solid KRandR+Power Management implementation and we’ll try really hard for that, even because that would be a neat feature for Active.
So, if you were affected by this bug and do not care about anything besides your PC suspending when your lid closes – all of this will be just a bad memory after updating to 4.8.1 without the need for you to do anything apart from the upgrade itself. Otherwise, you can restore 4.8.0′s behavior by going in the advanced options. And, in any case, do not forget to update any application which was misbehaving.
The forestry conflict in the Huon Valley appears to be spilling over into unrelated businesses.
We awoke this morning to the unpleasant surprise that someone had stickered our goat's milk soap shop in Geeveston with "No Greens" stickers. Suddenly we've moved from having no involvement in the forest conflict to being labelled as the "enemy" by some poor, scared forestry worker.
I don't blame the individual for this misguided attempt to intimidate us but I instead look towards our representatives, Paul Harris and premier Lara Giddings, who have failed in their leadership roles to unite the community. With their partisan positions, they are driving a wedge through the community to create an "us vs them" mentality that ultimately harms the community but increases their chances of getting re-elected.
The fear of the Ta-Ann workers that they have no future outside forestry is directly the result of the failure of our elected representatives to provide education and employment opportunities for the Huon, not of someone who had the initiative to start dairy goat farming and a soap business.
I'm in the process of setting up my home office, and the computer I'm using is an old machine decommissioned from regular use. It's really noisy, so I'm on a mission to make it silent. The first step is replacing the power supply.
<iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/zuvPJvcersY" width="560"></iframe>
View or comment directly on YouTube: http://youtu.be/zuvPJvcersY
Had the great pleasure last night to meet about 20 other Freedom lovers at the first TasLUG (south) meeting in couple of years or so. There was plenty of enthusiasm, energy and spirit to give this group some momentum and a great community nucleus.
One dedicated, teary-eyed Freedom lover even made the pilgrimage from Launceston, such was his dedication to seeing TasLUG grow and thrive in the south.
There was no shortage of people willing to put their hand up for talks and some great ideas on community involvement and outreach. A fairly inspirational evening.
The next meeting is on 6PM Wednesday, March 21st at 57F Brisbane St, Hobart (map).
Looking forward to seeing you there :)
Last night I heard Vivek Kundra speak about innovation, technology and Gov 2.0 at a dinner hosted by AIIA and Salesforce. It was a fascinating talk in that it exceeded my expectations significantly.
I had reasonable expectations that his experience as CIO of the US Federal Government and his insights to the US open government agenda would be interesting, but he also talked about the “epic war between the status quo and progress”, the inertia in government, the major shift in power from gov to the people, how tech in enabling a new form of democracy, the need to hire great people (and get rid of those not on board) and how issues like SOPA demonstrate that the people can overturn traditional power broker agendas through grassroots efforts.
He also spoke about the need to reform gov IT procurement practices to demand good services from the sector, to put them on notice and to engage smaller innovative players in the market. It was fascinating to see someone who was so senior in government take that strong a stance, but it makes sense. Government is the number one purchaser of tech, so how it engages the market has a profound impact. And as a huge customer, government should be able to demand the best possible service. At the same time, without great people internally who are empowered and incentivised, it’s hard to drive progress.
When asked how to actually drive tech innovation in government, policy, procurement and workforce reforms were very important, but fundamentally workforce. Vivek said that there needs to be rigour in hiring practices, a culture of getting the best people into the public service, a culture that rejects blockers and gets rid of those who don’t get on board with progress.
Some comments from Vivek that I thought useful and thought provoking (as captured by live tweeting on #gov2au from the evening):
I have to say, it was very interesting and stimulating. It kicked off some great discussions in the group too.
I have seen a few people respond to the Vivek coverage quite negatively. There is, of course, a lot of hype and fluff out there around Gov 2.0 and “cloud”, but it doesn’t mean you don’t listen critically, research what people say and come to your own conclusions. I am constantly surprised by people who insist on loudly voicing blatant cynicism, pessimism and general negativity, seemingly oblivious to the fact that this establishes a narrative that undermines the (often) valid and good points they are trying to make, whilst making it harder for other people to get actually get things done.
I would like to put out there that the more leadership shown by everyone in the tech community, especially the Gov 2.0 community and the media, the better a chance we all have of achieving great things.
Be the change you want to see, and all that
I highly recommend people check out Vivek’s talk from the AIIA Summit on Cloud. It was a good example of thought leadership by a person who has actually got things done, a change agent who has made a difference. I’ve been told you should be able to watch it and all the summit talks online here tonight.
Thank you to Loretta form AIIA and Phil from Salesforce for agreeing to have Vivek speak to the Gov 2.0 community. A big thanks to Vivek too, it was great to meet you
People can follow Vivek on @vivekkundra on Twitter.
It is worth mentioning that neither the AIIA nor Salesforce asked for anything in return for doing a Gov 2.0 discussion with Vivek, Salesforce paid for the dinner after the talk, and in the interview below I spoke with Vivek off the cuff without any direction from AIIA or Salesforce.
Click here to view the embedded video.
TRANSCRIPT
Pia: So I’m here with Vivek Kundra, he’s here in Australia touring around and talking to a lot of people and I just thought I’d take the opportunity to ask him a couple of questions for the Gov 2.0 community peeps out there, around Australia.
So, hi, welcome to Australia.
Vivek: Thanks for chatting with me, I appreciate it.
Pia: Yeah, that’s cool. Can you just give us a bit of an overview about your ideas on driving tech innovation in government. What you see to be the core things you need to do?
Vivek: Well obviously it always starts with the people and one of the most important things that needs to happen in government, around the world, is they need to be able to hire the right kind of people to drive innovation and be change agents. You can’t legislate and you can’t essentially mandate innovation itself so it starts with that.
Secondly I think you need need bold leadership. If you look at what President Obama did, he made technology a central part of how his administration was going to achieve some of the policy objectives that he had set out.
And the third, you need to be able to distrupt the status quo by making sure that you have a culture that celebrates failure. That doesn’t actually go out there and punish those that are at the bleeding edge.
Pia: And, I mean, if you’ve got that leadership at the top level and you’ve got your, you’ll always have your enthusiastic geeks at the grassroots level, how do you drive that change in that rather large middle level?
Vivek: I should think it’s easier if you have a number of people on the front lines. The geeks kinda banding together trying to find a new way. But you’ve got to be able to make sure is that the middle management, unfortunately a lot of times you have people who are incentivised by the number of dollars that they manage and the number of years they’ve been in the job and that’s where from a political leadership perspective it’s very very important to make sure that you’re reaching out and embracing those that are on the front lines that understand the issues and understand the innovation that must be driven, and frankly reward those managers that are going to support, encourage and embrace that notion and that culture and those people.
At the same time the reality is, and we don’t talk about this often, we also have to be able to make the hard choices. If there are managers or people that are getting in the way, the Dr No’s, they are basically in deleriction of their duty. And what I mean by that is that’s not what the people of a country expect of their government. They’re basically putting their personal interests over the interests of the people.
Pia: OK, and finally ‘cos we don’t have a lot of time, what are your observations and thoughts about what is happening in Australia and some of the opportunities and challenges for Australia? Seeing you’re here and seeing what’s going on.
Vivek: Well I’m actually very excited. I think it’s amazing country with an entrepreneurial culture, to the number of meetings I’ve had and meeting people like you who are doing some amazing work in the public sector, whether it’s been public participation, fundamentally rethinking what a modern democracy looks like.
I’ve also seen some of the really really bold steps that are being taken to invest in strategic infrastructure. So the National Broadband Network is one example. You look at what’s happening as far as the government’s concerned. You’re seeing some of these technologies come into the goveernment.
But the fear I have is that you want to make sure you continue on that trajectory. It’s very easy for those people in the government who want to preserve the status quo to win out. And I think there is an epic battle going on between the past and the future. And it’s really really important that, from a policy perspective, that there are appropriate incentives for those who are architecting the future, to be the ones that are driving the country.
Pia: And do you think that epic battle presents a bit of a power shift from small groups of people to the broader community to engage…
Vivek: Well absolutely, it’s clear. We see it every day, whether it’s in Australia or anywhere else in the world. Therre is this shift in power from a few government officials behind closed doors to the masses, it’s real. And technologies that didn’t exist before exist today that have made this possible in terms of the very structures that are needed.
So the ability for anyone with a front row seat to their government with a mobile device. That’s amazing! We don’t think about it, we take it for granted, but now every citizen can be a co-creator. Every citizen can be a watchdog and hold their government accountable. Every citizen can actually go out there and be part of the digital public square and that is what I think is super exciting about the time we are living in.
Pia: Yep, sure. Well thank you very much.
Vivek: Thank you.
Pia: And I look forward to next time you come to Australia.
Yahoo! account holders are being witheld information that they signed up to receive. This is not the fault of the services they signed up with, but rather the arcane and obscure mechanisms by which Yahoo! supposedly identifies spam sources. If you are a Yahoo! account holder, and you suspect that you are not getting email you should, chances are you are correct. Notify Yahoo! that their mechanisms for problem resolution simply do not work and you are going to vote with your fingers and move to another email provider.
The detail behind this is that I have two virtual servers that are with a VPS provider, on two completely different subnets and from the time they were commissioned, no email has been accepted by Yahoo! for its account holders with an error message that appears to be for persistent spamming. This is clearly an error, one that I have tried for weeks now to resolve with Yahoo! without success. They will not admit that their detection of spamming cannot be for mail they have yet to receive, but instead most likely for a previous owner of the IP addresses in question. They will not provide any clear information even as to the reason that we are - in their quaint and completely incorrect terminology - "deprioritized".
I don't really want prioiritised mail services, any level of mail service would be fine with me, and I suspect with those users who in good faith have signed up with one of the services we host. "Deprioritized" suggests that there is a chance the mail will get through, just not in a timely fashion. What we have is in fact a complete embargo on mail from our servers.
It doesn't matter how you wrap it up or what policies you quote ad-infinitum, Yahoo! If your system starts blocking mail on the first attempt then there is something wrong with your system, not mine. If it is for prior usage of the IP address, then provide me with the methods of showing that the IP address changed hands so you can reset your system. Don't lie to me and tell me that it is temporary and will resolve itself once I get my systems in line with your policies. It is not temporary, it is a complete block. My systems are in line with your policies and have been for quite some time. You will not answer any of my questions with anything other than a pointer or extract from your policy documents - so I have no idea (and I suspect neither do you) of why I am listed at all, let alone how to resolve it.
So if you are a Yahoo! account holder, stop this nonsense by switching provider. I can't be the only service provider that is affected this way, so even if you are not on one of the services we host, I can assure you there is a good probability you are affected.
If you are Yahoo!, stop this nonsense by acknowledging your system is flawed and fixing it.
To: Julie Collins Julie.Collins.MP@aph.gov.au
Member for (the Australian Federal electorate of) Franklin
http://www.juliecollins.com/
Dear Ms Collins,
As my local Federal member, could you please inform me as a matter of urgency as to what assistance the Australian government is providing to my colleague, Austin Mackell, currently facing a court in Egypt after being charged on the weekend and allegedly about to be deported?
Further, I request a statement as to whether the Australian Government believes that Austin has received fair and reasonable legal defence, not limited to the question of whether less than two days is a fair and reasonable time to assemble a defence against the charges faced.
I also seek you to confirm or deny claims that the only Consular access Mr Mackell has received is a telephone call and whether this telephone call was secured against phone tapping procedures that are known to take place in Egypt under the current Supreme Council of the Armed Forces (of Egypt).
Regards,
Peter Lawler.
https://bleeter.wordpress.com/2012/02/13/open-letter-to-my-federal-mp-regarding-austin-g-mackell/
(edit: linkification)
UPDATE:
Your message To: Collins, Julie (MP) Subject: Open letter regarding Austin G Mackell Sent: Monday, 13 February 2012 10:17:36 AM (UTC+10:00) Hobart was read on Monday, 13 February 2012 11:42:49 AM (UTC+10:00) Hobart. Final-recipient: RFC822; Julie.Collins.MP@aph.gov.au Disposition: automatic-action/MDN-sent-automatically; displayed X-MSExch-Correlation-Key: nUANfoNLL0iAbRAP7/5VzA==
(edit: Added tags, Return Receipt)
Update Fri 24th Feb 2012:
Contacted Ms Collins’ office today. Conversation roughly went:
Me: Why haven’t you responded to my email yet?
Staffer: Maybe no one’s read it yet
Me: The Return Receipt came back to me on the day it was sent, which I understand was a public holiday for everyone in her office, indicating someone read it two weeks ago.
Staffer: Oh, well maybe it go read but not … Read. Let me check. Yes, someone’s picked it up.
Me: Is it too much to ask to be sent a formal receipt reply when someone picks up a constituent’s letter?
Staffer: I’ll find out what’s happening for you.
Me: (To self, ‘This is insane’) Okay then.
I’d like to emphasize this is not verbatim, but merely my recollection of the conversation immediately after hanging up.
I need a monitor stand for the triple-head computer in my new home workshop, so I had a go at making one out of bits of left-over timber.
<iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/iiOo8YOLAEk" width="560"></iframe>
View or comment directly on YouTube: http://youtu.be/iiOo8YOLAEk
Squid is one of the biggest and most used proxies on the interwebs. And generating reports from the access logs is already a done deal, there are many commercial and OSS apps that support the squid log format. But I found my self in a situation where I wanted stats but didn’t want to install a web server on my proxy or use syslog to push my logs to a centralised server which was running such software, and also wasn’t in a position to go buy one of those off the shelf amazing wiz bang Squid reporting and graphing tools.
As a Linux geek I surfed the web to see what others have done. I came across a list provided by the Squid website. Following a couple of links, I came across a awk script called ‘proxy_stats.gawk’ written by Richard Huveneers.
I downloaded it and tried it out… unfortunately it didn’t work, looking at the code.. which he nicely commented showed that he had it set up for access logs from version 1.* of squid. Now the squid access log format from squid 2.6+ hasn’t changed too much from version 1.1. all they have really done is add a “content type” entry at the end of each line.
So as a good Linux geek does, he upgrades the script, my changes include:
Now with the explanation out of the way, let me show you it!
For those who are new to awk, this is how I’ve been running it:
zcat <access log file> | awk -f proxy_stats.gawk > <report-filename>
NOTE: I’ve been using it for some historical analysis, so I’m running it on old rotated files, which are compressed thus the zcat.
You can pass more then one file at a time and it order doesn’t matter, as each line of an access log contains the date in epoch time:
zcat `find /var/log/squid/ -name "access.log*"` |awk -f proxy_stats.gawk
The script produces an ascii report (See end of blog entry for example), which could be generated and emailed via cron. If you want it to look nice in any email client using html the I suggest wrapping it in <pre> tags.:
<html>
<head><title>Report Title</title></head>
Report title<body>
<pre>
... Report goes here ...
</pre>
</body>
</html>
For those experienced Linux sys admins out there using cron + ‘find -mtime’ would be a very simple way of having an automated daily, weekly or even monthly report.
But like I said earlier I was working on historic data, hundreds of files in a single report, hundreds because for business reasons we have been rotating the squid logs every hour… so I did what I do best, write a quick bash script to find all the files I needed to cat into the report:
#!/bin/bash
ACCESS_LOG_DIR="/var/log/squid/access.log*"
MONTH="$1"
function getFirstLine() {
if [ -n "`echo $1 |grep "gz$"`" ]
then
zcat $1 |head -n 1
else
head -n 1 $1
fi
}
function getLastLine() {
if [ -n "`echo $1 |grep "gz$"`" ]
then
zcat $1 |tail -n 1
else
tail -n 1 $1
fi
}
for log in `ls $ACCESS_LOG_DIR`
do
firstLine="`getFirstLine $log`"
epochStr="`echo $firstLine |awk '{print $1}'`"
month=`date -d @$epochStr +%m`
if [ "$month" -eq "$MONTH" ]
then
echo $log
continue
fi
#Check the last line
lastLine="`getLastLine $log`"
epochStr="`echo $lastLine |awk '{print $1}'`"
month=`date -d @$epochStr +%m`
if [ "$month" -eq "$MONTH" ]
then
echo $log
fi
done
So there you go, thanks to the work of Richard Huveneers there is a script that I think generates a pretty good acsii report, which can be automated or integrated easily into any Linux/Unix work flow.
If you interested in getting hold of the most up to date version of the script you can get it from my sysadmin github repo here.
As promised earlier here is an example report:
Parsed lines : 32960 Bad lines : 0 First request : Mon 30 Jan 2012 12:06:43 EST Last request : Thu 09 Feb 2012 09:05:01 EST Number of days: 9.9 Top 10 sites by xfers reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- 213.174.155.216 20 0.1% 100.0% 0.0% 0.0 0.0% 0.0% 1.7 2.5 30.media.tumblr.com 1 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 48.3 77.4 28.media.tumblr.com 1 0.0% 100.0% 0.0% 0.1 0.0% 0.0% 87.1 1.4 26.media.tumblr.com 1 0.0% 0.0% - 0.0 0.0% - - - 25.media.tumblr.com 2 0.0% 100.0% 0.0% 0.1 0.0% 0.0% 49.2 47.0 24.media.tumblr.com 1 0.0% 100.0% 0.0% 0.1 0.0% 0.0% 106.4 181.0 10.1.10.217 198 0.6% 100.0% 0.0% 16.9 0.9% 0.0% 87.2 3332.8 3.s3.envato.com 11 0.0% 100.0% 0.0% 0.1 0.0% 0.0% 7.6 18.3 2.s3.envato.com 15 0.0% 100.0% 0.0% 0.1 0.0% 0.0% 7.5 27.1 2.media.dorkly.cvcdn.com 8 0.0% 100.0% 25.0% 3.2 0.2% 0.3% 414.1 120.5 Top 10 sites by MB reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- zulu.tweetmeme.com 2 0.0% 100.0% 100.0% 0.0 0.0% 100.0% 3.1 289.6 ubuntu.unix.com 8 0.0% 100.0% 100.0% 0.1 0.0% 100.0% 7.5 320.0 static02.linkedin.com 1 0.0% 100.0% 100.0% 0.0 0.0% 100.0% 36.0 901.0 solaris.unix.com 2 0.0% 100.0% 100.0% 0.0 0.0% 100.0% 3.8 223.6 platform.tumblr.com 2 0.0% 100.0% 100.0% 0.0 0.0% 100.0% 1.1 441.4 i.techrepublic.com.com 5 0.0% 60.0% 100.0% 0.0 0.0% 100.0% 6.8 2539.3 i4.zdnetstatic.com 2 0.0% 100.0% 100.0% 0.0 0.0% 100.0% 15.3 886.4 i4.spstatic.com 1 0.0% 100.0% 100.0% 0.0 0.0% 100.0% 4.7 520.2 i2.zdnetstatic.com 2 0.0% 100.0% 100.0% 0.0 0.0% 100.0% 7.8 2920.9 i2.trstatic.com 9 0.0% 100.0% 100.0% 0.0 0.0% 100.0% 1.5 794.5 Top 10 neighbor report reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- www.viddler.com 4 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 www.turktrust.com.tr 16 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 www.trendmicro.com 5 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 www.reddit.com 2 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 www.linkedin.com 2 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 www.google-analytics.com 2 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 www.facebook.com 2 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 www.dynamicdrive.com 1 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 www.benq.com.au 1 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 wd-edge.sharethis.com 1 0.0% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 Local code reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- TCP_CLIENT_REFRESH_MISS 2160 6.6% 100.0% 0.0% 7.2 0.4% 0.0% 3.4 12.9 TCP_HIT 256 0.8% 100.0% 83.2% 14.0 0.8% 100.0% 56.0 1289.3 TCP_IMS_HIT 467 1.4% 100.0% 100.0% 16.9 0.9% 100.0% 37.2 1747.4 TCP_MEM_HIT 426 1.3% 100.0% 100.0% 96.5 5.3% 100.0% 232.0 3680.9 TCP_MISS 27745 84.2% 97.4% 0.0% 1561.7 85.7% 0.3% 59.2 18.2 TCP_REFRESH_FAIL 16 0.0% 100.0% 0.0% 0.2 0.0% 0.0% 10.7 0.1 TCP_REFRESH_MODIFIED 477 1.4% 99.8% 0.0% 35.0 1.9% 0.0% 75.3 1399.4 TCP_REFRESH_UNMODIFIED 1413 4.3% 100.0% 0.0% 91.0 5.0% 0.0% 66.0 183.5 Status code reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- 000 620 1.9% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 200 29409 89.2% 100.0% 2.9% 1709.7 93.8% 7.7% 59.5 137.1 204 407 1.2% 100.0% 0.0% 0.2 0.0% 0.0% 0.4 1.4 206 489 1.5% 100.0% 0.0% 112.1 6.1% 0.0% 234.7 193.0 301 82 0.2% 100.0% 0.0% 0.1 0.0% 0.0% 0.7 1.5 302 356 1.1% 100.0% 0.0% 0.3 0.0% 0.0% 0.8 2.7 303 5 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 0.7 1.5 304 862 2.6% 100.0% 31.2% 0.4 0.0% 30.9% 0.4 34.2 400 1 0.0% 0.0% - 0.0 0.0% - - - 401 1 0.0% 0.0% - 0.0 0.0% - - - 403 47 0.1% 0.0% - 0.0 0.0% - - - 404 273 0.8% 0.0% - 0.0 0.0% - - - 500 2 0.0% 0.0% - 0.0 0.0% - - - 502 12 0.0% 0.0% - 0.0 0.0% - - - 503 50 0.2% 0.0% - 0.0 0.0% - - - 504 344 1.0% 0.0% - 0.0 0.0% - - - Hierarchie code reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- DIRECT 31843 96.6% 97.7% 0.0% 1691.0 92.8% 0.0% 55.7 44.3 NONE 1117 3.4% 100.0% 100.0% 131.6 7.2% 100.0% 120.7 2488.2 Method report reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- CONNECT 5485 16.6% 99.2% 0.0% 132.8 7.3% 0.0% 25.0 0.3 GET 23190 70.4% 97.7% 4.9% 1686.3 92.5% 7.8% 76.2 183.2 HEAD 2130 6.5% 93.7% 0.0% 0.7 0.0% 0.0% 0.3 1.1 POST 2155 6.5% 99.4% 0.0% 2.9 0.2% 0.0% 1.4 2.0 Object type report reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- */* 1 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 1.6 3.2 application/cache-digest 396 1.2% 100.0% 50.0% 33.7 1.8% 50.0% 87.1 3655.1 application/gzip 1 0.0% 100.0% 0.0% 0.1 0.0% 0.0% 61.0 30.8 application/javascript 227 0.7% 100.0% 12.3% 2.2 0.1% 7.7% 9.9 91.9 application/json 409 1.2% 100.0% 0.0% 1.6 0.1% 0.0% 4.1 6.0 application/ocsp-response 105 0.3% 100.0% 0.0% 0.2 0.0% 0.0% 1.9 2.0 application/octet-stream 353 1.1% 100.0% 6.8% 81.4 4.5% 9.3% 236.1 406.9 application/pdf 5 0.0% 100.0% 0.0% 13.5 0.7% 0.0% 2763.3 75.9 application/pkix-crl 96 0.3% 100.0% 13.5% 1.0 0.1% 1.7% 10.6 7.0 application/vnd.google.sa 1146 3.5% 100.0% 0.0% 1.3 0.1% 0.0% 1.1 2.4 application/vnd.google.sa 4733 14.4% 100.0% 0.0% 18.8 1.0% 0.0% 4.1 13.4 application/x-bzip2 19 0.1% 100.0% 0.0% 78.5 4.3% 0.0% 4232.9 225.5 application/x-gzip 316 1.0% 100.0% 59.8% 133.4 7.3% 59.3% 432.4 3398.1 application/x-javascript 1036 3.1% 100.0% 5.8% 9.8 0.5% 3.4% 9.7 52.1 application/xml 46 0.1% 100.0% 34.8% 0.2 0.0% 35.1% 3.5 219.7 application/x-msdos-progr 187 0.6% 100.0% 0.0% 24.4 1.3% 0.0% 133.7 149.6 application/x-pkcs7-crl 83 0.3% 100.0% 7.2% 1.6 0.1% 0.4% 19.8 10.8 application/x-redhat-pack 13 0.0% 100.0% 0.0% 57.6 3.2% 0.0% 4540.7 156.7 application/x-rpm 507 1.5% 100.0% 6.3% 545.7 29.9% 1.5% 1102.2 842.8 application/x-sdlc 1 0.0% 100.0% 0.0% 0.9 0.0% 0.0% 888.3 135.9 application/x-shockwave-f 109 0.3% 100.0% 11.9% 5.4 0.3% 44.5% 50.6 524.1 application/x-tar 9 0.0% 100.0% 0.0% 1.5 0.1% 0.0% 165.3 36.4 application/x-www-form-ur 11 0.0% 100.0% 0.0% 0.1 0.0% 0.0% 9.9 15.4 application/x-xpinstall 2 0.0% 100.0% 0.0% 2.5 0.1% 0.0% 1300.6 174.7 application/zip 1802 5.5% 100.0% 0.0% 104.0 5.7% 0.0% 59.1 2.5 Archive 89 0.3% 100.0% 0.0% 0.0 0.0% - 0.0 0.0 audio/mpeg 2 0.0% 100.0% 0.0% 5.8 0.3% 0.0% 2958.2 49.3 binary/octet-stream 2 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 5.5 14.7 font/ttf 2 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 15.5 12.5 font/woff 1 0.0% 100.0% 100.0% 0.0 0.0% 100.0% 42.5 3539.6 Graphics 126 0.4% 100.0% 0.0% 0.1 0.0% 0.0% 0.6 2.5 HTML 14 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 0.1 0.1 image/bmp 1 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 1.3 3.9 image/gif 5095 15.5% 100.0% 2.4% 35.9 2.0% 0.7% 7.2 9.5 image/jpeg 1984 6.0% 100.0% 4.3% 52.4 2.9% 0.6% 27.0 62.9 image/png 1684 5.1% 100.0% 10.3% 28.6 1.6% 1.9% 17.4 122.2 image/vnd.microsoft.icon 10 0.0% 100.0% 30.0% 0.0 0.0% 12.8% 1.0 3.3 image/x-icon 72 0.2% 100.0% 16.7% 0.2 0.0% 6.0% 3.2 15.0 multipart/bag 6 0.0% 100.0% 0.0% 0.1 0.0% 0.0% 25.2 32.9 multipart/byteranges 93 0.3% 100.0% 0.0% 16.5 0.9% 0.0% 182.0 178.4 text/cache-manifest 1 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 0.7 3.1 text/css 470 1.4% 100.0% 7.9% 3.4 0.2% 5.8% 7.4 59.7 text/html 2308 7.0% 70.7% 0.4% 9.6 0.5% 0.6% 6.0 14.7 text/javascript 1243 3.8% 100.0% 2.7% 11.1 0.6% 5.2% 9.1 43.3 text/json 1 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 0.5 0.7 text/plain 1445 4.4% 99.4% 1.5% 68.8 3.8% 5.5% 49.0 41.9 text/x-cross-domain-polic 24 0.1% 100.0% 0.0% 0.0 0.0% 0.0% 0.7 1.7 text/x-js 2 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 10.1 6.4 text/x-json 9 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 3.0 8.5 text/xml 309 0.9% 100.0% 12.9% 12.9 0.7% 87.5% 42.8 672.3 unknown/unknown 6230 18.9% 99.3% 0.0% 132.9 7.3% 0.0% 22.0 0.4 video/mp4 5 0.0% 100.0% 0.0% 3.2 0.2% 0.0% 660.8 62.7 video/x-flv 117 0.4% 100.0% 0.0% 321.6 17.6% 0.0% 2814.9 308.3 video/x-ms-asf 2 0.0% 100.0% 0.0% 0.0 0.0% 0.0% 1.1 4.7 Ident (User) Report reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- - 32960 100.0% 97.8% 3.5% 1822.6 100.0% 7.2% 57.9 129.0 Weekly report reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- 2012/01/26 14963 45.4% 97.6% 3.6% 959.8 52.7% 1.8% 67.3 104.5 2012/02/02 17997 54.6% 98.0% 3.4% 862.8 47.3% 13.2% 50.1 149.4 Total report reqs %all %xfers %hit MB %all %hit kB/xf kB/s ------------------------- ------------------------------- ------------------------ ------------------- All requests 32960 100.0% 97.8% 3.5% 1822.6 100.0% 7.2% 57.9 129.0 Produced by : Mollie's hacked access-flow 0.5 Running time: 2 seconds
Happy squid reporting!
In my day job at SkySQL I work with Drupal as our content management system. One thing we often need to do is provide a way for people to sign up for events and the like. One such event is the upcoming SkySQL and MariaDB: Solutions Day for the MySQL® Database and unlike other events we needed to take into account the dietary requirements of those wishing to attend.
For events registration we use the Signup module and use a theme template function to provide a set of standard fields. The code looks something like this:
function ourtheme_signup_user_form($node) {
$form = array();
// If this function is providing any extra fields at all, the following
// line is required for form form to work -- DO NOT EDIT OR REMOVE.
$form['signup_form_data']['#tree'] = TRUE;
$form['signup_form_data']['FirstName'] = array(
'#type' => 'textfield',
'#title' => t('First Name'),
'#size' => 40, '#maxlength' => 64,
'#required' => TRUE,
);
$form['signup_form_data']['LastName'] = array(
'#type' => 'textfield',
'#title' => t('Last Name'),
'#size' => 40, '#maxlength' => 64,
'#required' => TRUE,
);
And so on, building up the elements and then returning the form. This is great because it allows us to have a standard set of fields for all signup pages, making life a lot simpler when creating content that requires registration. But the Solutions Day event required an extra field. I could have done this a number of ways, including putting logic in the template file to check for that particular node and only display the field then, or perhaps some other hack specific to this node. I, however, don't like specifics and tend to look for a generic solution, as the exception invariably becomes the rule.
For this exercise I wanted to be able to have a way of specifying for a particular node any extra fields that are available for this form. So I now have in the template.php file the following code:
// If there is a special field required for this, check and display
if (!empty($node->field_signup_extra) && !empty($node->field_signup_extra[0]['value'])) {
$extras = explode("\n", $node->field_signup_extra[0]['value']);
foreach ($extras as $field_def) {
$field_def = trim($field_def);
if (empty($field_def)) {
continue;
}
$elems = explode('|', $field_def);
$field_name = array_unshift($elems);
$form['signup_form_data'][$field_name] = array();
foreach ($elems as $field_element) {
list($key, $val) = explode('=',$field_element);
if ($key == 'options') {
$val = explode(',', $val);
}
$form['signup_form_data'][$field_name]['#' . $key] = $val;
}
}
}
Now all I need to do is create a field that is non-displayable but contains information to build extra fields. For example the content that describes the Dietary Requirements field is:
dietary_requirements|title=Dietary Requirements|size=40|type=textfield
The production version does a little more analysis of the input to ensure there are no possible attack vectors, but I've left that out for clarity sake.
Now, if I have an event (or other content type) that needs extra signup fields, I ensure that the content type has the new Signup Extras field and fill it on the new content with a simple field definition that Signup can use.
After LCA [1] there was a discussion about possible locations for future conferences, most of the messages in the discussion were jokes or suggestions that don’t seriously apply to LCA. So I’ll add my suggestion for conferences other than LCA.
I’ve previously written generally about the issue of conferences at sea [2]. I don’t think that LCA would be suitable for running at sea because delegates have specific expectations for LCA which are quite different to what a cruise ship can offer, so I don’t think it makes sense to change LCA which is working well as it is. However there are lots of other possible computer conferences which could suite a cruise ship.
Price is a major factor in running a conference, so obviously getting a cheap cruise price is very important. Here is a link for Vacations To Go which shows cruises from the Australia/NZ region which are of at least 5 nights and cost no more than $800 [3]. The cheapest entry at this moment is $609 for 5 nights and the cheapest on a per-night basis is an 8 night cruise for $779. The cheapest cruise currently on offer which allows a conference similar to LCA is 7 nights for $699. The prices should be regarded as rough approximations as some cruises have some mandatory extra fees and the prices are quoted in US dollars and subject to currency fluctuations. Note that those prices are for dual-occupancy cabins, this can be a “double” or a “twin” configuration. Some cruise ships have cabins for 3 or 4 people that are cheaper, but if you have a cabin for a single person then the rate is almost the same as for having two people.
The price for LCA accommodation including breakfast was $78 per night for a single room or $92 for a double room. Then lunch cost a minimum of $10 and for dinner there was $80 for the penguin dinner and probably about $20 for dinner every other night. That gave an overall cost for a 6 night stay (which is probably the minimum for someone who lives further away than Melbourne) in Ballarat of 6*78+6*10+5*20+80==$708. For a double room that would be 6*92+6*10+5*20+2*80==$872.
Even if we don’t count the fact that the Australian dollar is worth more than the US dollar it is obvious that on the basis of accommodation and food two people sharing a twin cabin on a cruise ship could pay LESS than two people in single rooms at the Ballarat University dorms! Now sharing a cabin isn’t so great, but the upside is that cruise ships have excellent food and lots of other entertainment options. I previously reviewed the food on the Dawn Princess and determined that it’s better than the food I would expect to get if I spent the cost of the cruise on dinner at land based restaurants [4].
I have been led to believe that the use of ship conference facilities is typically free for any organisation that books a sufficient number of cabins. So there’s no reason why the conference admission fees should be any greater than for a land based conference.
A common problem with conferences is finding suitable dining options. Most people want to eat with other delegates but finding restaurants that have sufficient space and which are conveniently located is difficult at best and often impossible. On a cruise ship everything is within a short walk and the restaurants are big, usually be at least one restaurant will hold 500 people. The fact that you have to reserve times for the “Main Dining Room” makes it more difficult to miss one’s colleagues.
Everything on a cruise ship is luxurious.
There are lots of good locations for BoFs, pools, cafes, restaurants, and bars. Basically the ship is filled with comfortable places for groups of people to sit down.
A cruise ship typically has a main theater with more than 700 seats – more than large enough for most conferences I’ve attended. It’s common for the size of a conference to be limited to the size of the main theater that is used, for a cruise ship this will probably be less of a problem than for most other conference venues.
The first disadvantage of running a computer conference on a cruise ship is the almost total lack of net access. The costs for net access are more expensive than most delegates will pay. Probably many delegates would check their email but it wouldn’t be practical for people to download source code, browse Wikipedia, and use the Internet in other ways related to the conference. It would be practical to have mirrors of Wikipedia, the source of several distributions of Linux, and other big things of common interest.
Another possible problem is the fact that you need to book it well in advance to avoid the risk of selling out (there is no option to stay at a different hotel). An established conference with financial backing could just pay to reserve the cabins. But when starting a new conference this could be a problem.
Alcohol is rather expensive on cruise ships. But getting really drunk isn’t compatible with learning about computer science anyway.
Finally the requirement to have at least two people in a cabin for good rates is a serious issue. The upside of this is that people travelling with their SO would find that it works really well (regardless of whether the SO is a delegate or not). But anyone who’s not travelling with their SO and doesn’t want to share with a friend will have to either pay a lot more or skip the conference.
I think that there is a good potential for running a computer conference around the Australia/NZ region on a cruise ship. It won’t be overly expensive for delegates and the facilities that are provided are good. The trade-off for solitary travelers of having to share a cabin (or pay more) for getting much better food and leisure facilities will be appreciated by many people (and admittedly hated by some).
Some people won’t appreciate the option of swimming, but even if you consider the cruise ship to be just a floating collection of restaurants and cabins it’s still fairly luxurious and beats the heck out of most conferences I’ve attended.
If you are considering the possibility of running a conference then I think that a cruise ship should be considered. VacationsToGo.com is the best site I’ve found for cheap cruise prices, their large group department has experience handling groups of more than 500 people so I think that anyone who wants to run a new conference in/around Australia should give them a call.
Also cruise ships travel around the world, so the same thing can be done in other countries but at a different time of year. The economic factors will differ by country though. Cruise ships probably aren’t a cheap option for a conference in some other countries.
Related posts:
OLPC Australia had a strong presence at linux.conf.au 2012 in Ballarat, two weeks ago.
I gave a talk in the main keynote room about our educational programme, in which I explained our mission and how we intend to achieve it.
<iframe frameborder="0" height="315" src="http://www.youtube-nocookie.com/embed/mWji2O3p-9s" width="420"></iframe>
Even if you saw my talk at OSDC 2011, I recommend that you watch this one. It is much improved and contains new and updated material. The YouTube version is above, but a higher quality version is available for download from Linux Australia.
The references for this talk are on our development wiki.
Here’s a better version of the video I played near the beginning of my talk:
<iframe frameborder="0" height="315" src="http://www.youtube-nocookie.com/embed/cO-VNhgZLDw" width="560"></iframe>
I should start by pointing out out that OLPC is by no means a niche or minor project. XO laptops are in the hands of 8000 children in Australia, across 130 remote communities. Around the world, over 2.5 million children, across nearly 50 countries, have an XO.
The key point of my talk is that OLPC Australia have a comprehensive education programme that highly values teacher empowerment and community engagement.
The investment to provide a connected learning device to every one of the 300 000 children in remote Australia is less than 0.1% of the annual education and connectivity budgets.
For low socio-economic status schools, the cost is only $80 AUD per child. Sponsorships, primarily from corporates, allow us to subsidise most of the expense (you too can donate to make a difference). Also keep in mind that this is a total cost of ownership, covering the essentials like teacher training, support and spare parts, as well as the XO and charging rack.
While our principal focus is on remote, low socio-economic status schools, our programme is available to any school in Australia. Yes, that means schools in the cites as well. The investment for non-subsidised schools to join the same programme is only $380 AUD per child.
We have a responsibility to invest in our children’s education — it is not just another market. As a not-for-profit, we have the freedom and the desire to make this happen. We have no interest in vendor lock-in; building sustainability is an essential part of our mission. We have no incentive to build a dependency on us, and every incentive to ensure that schools and communities can help themselves and each other.
We only provide XOs to teachers who have been sufficiently enabled. Their training prepares them to constructively use XOs in their lessons, and is formally recognised as part of their professional development. Beyond the minimum 15-hour XO-certified course, a teacher may choose to undergo a further 5–10 hours to earn XO-expert status. This prepares them to be able to train other teachers, using OLPC Australia resources. Again, we are reducing dependency on us.
Training is conducted online, after the teacher signs up to our programme and they receive their XO. This scales well to let us effectively train many teachers spread across the country. Participants in our programme are encouraged to participate in our online community to share resources and assist one another.
We also want to recognise and encourage children who have shown enthusiasm and aptitude, with our XO-champion and XO-mechanic certifications. Not only does this promote sustainability in the school and give invaluable skills to the child, it reinforces our core principle of Child Ownership. Teacher aides, parents, elders and other non-teacher adults have the XO-basics (formerly known as XO-local) course designed for them. We want the child’s learning experience to extend to the home environment and beyond, and not be constrained by the walls of the classroom.
There’s a reason why I’m wearing a t-shirt that says “No, I won’t fix your computer.” We’re on a mission to develop a programme that is self-sustaining. We’ve set high goals for ourselves, and we are determined to meet them. We won’t get there overnight, but we’re well on our way. Sustainability is about respect. We are taking the time to show them the ropes, helping them to own it, and developing our technology to make it easy. We fundamentally disagree with the attitude that ordinary people are not capable enough to take control of their own futures. Vendor lock-in is completely contradictory to our mission. Our schools are not just consumers; they are producers too.
As explained by Jonathan Nalder (a highly recommended read!), there are two primary notions guiding our programme. The first is that the nominal $80 investment per child is just enough for a school to take the programme seriously and make them a stakeholder, greatly improving the chances for success. The second is that this is a schools-centric programme, driven from grassroots demand rather than being a regime imposed from above. Schools that participate genuinely want the programme to succeed.
Enabling this educational programme is the clever development and use of technology. That’s where I (as Engineering Manager at OLPC Australia) come in. For technology to be truly intrinsic to education, there must be no specialist expertise required. Teachers aren’t IT professionals, and nor should they be expected to be. In short, we are using computers to teach, not teaching computers.
The key principles of the Engineering Department are:
OLPC have done a marvellous job in their design of the XO laptop, giving us a fantastic platform to build upon. I think that our engineering projects in Australia have been quite innovative in helping to cover the ‘last mile’ to the school. One thing I’m especially proud of is our instance on openness. We turn traditional systems administration practice on its head to completely empower the end-user. Technology that is deployed in corporate or educational settings is typically locked down to make administration and support easier. This takes control completely away from the end-user. They are severely limited on what they can do, and if something doesn’t work as they expect then they are totally at the mercy of the admins to fix it.
In an educational setting this is disastrous — it severely limits what our children can learn. We learn most from our mistakes, so let’s provide an environment in which children are able to safely make mistakes and recover from them. The software is quite resistant to failure, both at the technical level (being based on Fedora Linux) and at the user interface level (Sugar). If all goes wrong, reinstalling the operating system and restoring a journal (Sugar user files) backup is a trivial endeavour. The XO hardware is also renowned for its ruggedness and repairability. Less well-known are the amazing diagnostics tools, providing quick and easy indication that a component should be repaired/replaced. We provide a completely unlocked environment, with full access to the root user and the firmware. Some may call that dangerous, but I call that empowerment. If a child starts hacking on an XO, we want to hire that kid
My talk features the case study of Doomadgee State School, in far-north Queensland. Doomadgee have very enthusiastically taken on board the OLPC Australia programme. Every one of the 350 children aged 4–14 have been issued with an XO, as part of a comprehensive professional development and support programme. Since commencing in late 2010, the percentage of Year 3 pupils at or above national minimum standards in numeracy has leapt from 31% in 2010 to 95% in 2011. Other scores have also increased. Think what you may about NAPLAN, but nevertheless that is a staggering improvement.
In federal parliament, Robert Oakeshott MP has been very supportive of our mission:
Most importantly of all, quite simply, One Laptop per Child Australia delivers results in learning from the 5,000 students already engaged, showing impressive improvements in closing the gap generally and lifting access and participation rates in particular.
We are also engaged in longitudinal research, working closely with respected researchers to have a comprehensive evaluation of our programme. We will release more information on this as the evaluation process matures.
Schools can register their interest in our programme on our Education site.
Our Prospectus provides a high-level overview.
For a detailed analysis, see our Policy Document.
If you would like to get involved in our technical development, visit our development site.
Many thanks to colleagues Rangan Srikhanta (CEO) and Tracy Richardson (Education Manager) for some of the information and graphics used in this article.
This article describes the exposure of the IsValid, IsSimple, Dimension and CoordDim Jts and Jaspa methods for use with Oracle Sdo_Geometry.
This article shows how to take a set of linestrings and merge them together into a topologically correct minimal set of linestrings.
ClearOS formally Clarkconnect based of Centos…
Start by enabling the Tim S repo
To install the repo first install the public key (yes all RPM’s will now be signed) ![]()
rpm --import ftp://timburgess.net/RPM-GPG-KEY-TimB.txt
Then install the release RPM (by default the ‘timb’ and ‘timb-testing’ repo’s will be disabled)
wget ftp://timburgess.net/repo/clearos/5.2/os/timb-release-1-0.noarch.rpm
rpm -Kv timb-release-1-0.noarch.rpm
rpm -Uvh timb-release-1-0.noarch.rpm
ref http://www.clearfoundation.com/docs/howtos/adding_tim_s_repo
yum --enablerepo=timb install kmod-atl1e
ref http://www.clearfoundation.com/component/option,com_kunena/Itemid,232/catid,28/func,view/id,24438/limit,10/limitstart,50/
last you need to edit the /etc/modprobe.conf
it need to contain an alias for every network card in my case I have a TP-link installed as well so
alias eth0 r8169
alias eth1 atl1e
if you fail to get this to work ifconfig -a will have a odd tmp interface.
![]() |
| @Pyconau |
![]() |
| Pycon Australia |
I’ve been having intermittent problems with sound not working. Usually restarting (ie, killing) PulseAudio has done the trick but today it was even worse; the sound hardware mysteriously vanished from the Sound Settings capplet. Bog knows what’s up with that, but buried in “Sound Troubleshooting” I found “Getting ALSA to work after suspend / hibernate” which contains this nugget:
The alsa “force-reload” command will kill all running programs using the sound driver so the driver itself is able to be restarted.
Huh. Didn’t know about that one. But seems reasonable, and sure enough,
$ /sbin/alsa force-reload
did the trick.
That wiki page goes on to detail adding a script to /etc/pm/sleep.d to carry this out after every resume. That seems excessive; I know that sometimes drivers don’t work or hardware doesn’t reset after the computer has been suspended or hibernated, but in my case the behaviour is only intermittent, and seems related to having docked (or not), having used an external USB headphone (or not), and having played something with Flash (which seems to circumvent PulseAudio. Bad). Anyway, one certainly doesn’t want to kill all one’s audio-using programs just because you suspended! But as a workaround for whatever it is that’s wrong today, nice.
AfC
A missing function from the Ogc/SqlMM Apis is a function that allows a user, via Sql, to modify a geometry by removing one or more points. Here is just such a function for Sdo_Geometry users.
If you're just getting into home automation and go searching for Open Source HA projects, you'll discover there aren't any obviously dominant players - more a mix of partly-developed personal projects that aren't very portable. Why is that?
<iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/Ywulcl_PCUM" width="420"></iframe>
View or comment directly on YouTube: www.youtube.com/watch?v=Ywulcl_PCUM
Links for this ep:
* Allison Randal: www.twitter.com/allisonrandal
* Desktop Home Hacks: www.youtube.com/watch?v=a8asl5SsGy4
* Mister House: misterhouse.sourceforge.net
* Open Remote: www.openremote.org
* SuperHouseTV: www.superhouse.tv
What a week it has been. Not only I’ve had a few days of vacations in beautiful Australia, but two major events happened.
You probably already know that, KDE SC 4.8 has been released. I might be biased, but trust me – this release is amazing. I am especially proud my work on power management got the first page this time – it’s really a killer feature, and I really hope it will become a keeper and another great reason for using KDE for most of you.
But it doesn’t end here: KDE Telepathy 0.3 has been released. Now, as much as this event might seem less interesting, it has a very special meaning to me. KDE Telepathy has been the proof of how a group of friends can get together and build something awesome, while having a lot of fun.
The project is now in a beta state, meaning we’re almost there, and you can start checking out what’s boiling without fearing your PC will blow up in a billion pieces. Of course, we are still not advertising this release to be fully stable, but we do accept bug reports at this stage, and believe the basic features are ready to be tested. So, no excuse: together with your new shiny KDE 4.8, try the future of Instant messaging on your favorite desktop environment!
Assuming you are a developer, are you interested in what these changes will bring to your world? Well, you’d better be excited. A video is worth a thousand words, they say – then why not checking out my talk at linux.conf.au about creating social apps with Telepathy and Qt? And if you are wondering – yes, the code for the example is actually available on KDE’s git on one of my scratch repos (link coming later, quickgit seems to be unreachable at the time I’m posting). See for yourself how easy it is to make your application rock even more!
But, the most amazing thing happened when David started the beer fundraiser, to get us wasted at FOSDEM. Well, the response has been flattering: up to now we have raised something along the lines of 230€, which is enough to kill a couple elephants considering where we’re going. So thank you! Given this thing has gotten quite far, we’re adding some more rules to our small game, and we’ll rollover funds to any other meetings if we pass out before spending all of this money (likely). Want to have a nice picture to show to your kids of a bunch of friendly hackers lying on the floor or having lots of fun without actually doing anything of the usual activities they are supposed to do? You still have time to donate.
(apparently wordpress.com doesn’t like paypal buttons – please refer to David’s blog post for donating)
Thanks again everyone for your support, and I hope our new software will rock your world.
Despite Australia's strong involvement in the early history of space exploration, we're now lagging way behind many far smaller nations in our commitment to the industry. At linux.conf.au 2009 in Hobart, Marco Ostini gathered together a group of like-minded people to create Lunar Numbat: a project to develop Open Source space technology as part of the White Label Space team competing for the Google Lunar X-Prize. At linux.conf.au 2012 in Ballarat I managed to pin him down long enough to film this interview.
<iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/6PQ6mIEmKfc" width="420"></iframe>
View or comment directly on YouTube: youtu.be/6PQ6mIEmKfc
Links for this ep:
* Marco Ostini: www.twitter.com/marcoostini
* Lunar Numbat: www.lunarnumbat.org
* White Label Space: www.whitelabelspace.com
* Google Lunar X-Prize: www.googlelunarxprize.com
Oracle’s Wkt functions are Ogc 1.1 compliant. They do not support 3D+ geometries. This article shows how my Jts package, based on the Java Topology Suite and Jaspa plug the gap in the existing Oracle technology.
At linux.conf.au 2012 I had the good fortune of meeting up with old friends and also making new ones, including the amazingly talented Matt Evans. Matt did a great talk called "Hack Everything: Re-Purposing Everyday Devices", so I caught up with him briefly afterwards to talk to him about it.
<iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/BIQl0u-YZ5s" width="420"></iframe>
View or comment directly on YouTube: www.youtube.com/watch?v=BIQl0u-YZ5s
In my private life I run a mail server, have done so for almost 20 years. Recently (as in the last 12 months) we moved to a VPS because I no longer had (or wanted) the infrastructure to run a server in-house. Since then I've been fighting a losing battle to get legitimate email to users on Yahoo particularly and some other ISPs. Why? Well Yahoo won't tell me. Apparently they don't really want to fix the SPAM issue, they just want me to go away. I have yet to get one piece of information that I could actually use to figure out why I'm being blocked. Yet the biggest spammers I see hitting my SPAM mailbox are from Yahoo. So while they don't mind their own users sending SPAM (and OK, some of it is just masquerading as coming from Yahoo, but still...) they will block legitimate mail to their users with apparently no real recourse apart from telling you to check everything you've already checked and fix the problems.
Here's a hint Yahoo. If you don't tell me what the problems are, I can't fix them. A basic tenet of support. If you keep me in the dark then I will have to start banning users with yahoo.com* addresses as it is just too hard to deal with you. I'll have to tell them all to get a real mail account, like Gmail, so they don't have to bitch about not getting important emails. Perhaps this is why you are losing users?
While I was researching the possible reasons for by blocking I found that there are some really dodgy practices going on out there. I checked my Reputation Score with a number of sources, and found that it was pretty good, except for one, Cisco's SenderBase. And I can't send email to them about the problem from the problematic domain. Mind you one had information on email that went back 4 years and showed no recent activity - and I didn't own that IP address 4 years ago. There is one, Barracuda, that suggests you sign up at EmailReg.org for $20 per year to bypass their reputation filter - um, that is uncomfortably close to blackmail for my liking. Then there is the abuse.net system. It appears that many reputation scores will reduce your reputation if you haven't taken the trouble to register a contact address for your domains at abuse.net. WTF? The internet standard is that there is always a postmaster@ address that must go to a real person. In recent times it has also become common practice to have an abuse@ address. Since when does it become mandatory to register this somewhere? How does that in any way contribute to the removal of SPAM?
Abuse.net also has some quirks. With the rise of SPAM many people who set up a new domain take the precaution of using a hidden registration option offered by many domain registrars, to avoid having your contact details harvestable by spammers. And guess what, you can't register these at abuse.net because they believe that you are likely to be a spammer if you want anonymity. Catch 22.
So the upshot appears to be don't send email - use a carrier pigeon instead.
... in which I log my astronomickal adventures around linux.conf.au in Ballaarat. Verily.
On monday evening I was invited to a property about an hour north of Ballarat to do some observing from a hill-top in an area without (much) light pollution. The evening was perfect and much was to be seen even without any optical augmentation. M45, the milky way, the coal sack & magellanic clouds were perfectly visible with the naked eye. Sadly the southern cross was pretty low on the horizon.
I'm happy to say the winning entry in the LCA photo competition was taken at this place :-)
Photo by David Basden, showing the milky way, coal sack and small magellanic cloud.
I took a series of photos of the Orion nebula, but haven't had the time to try some of the photo stacking apps with them yet.
Weather and drinkingsocial engagements didn't really allow for much in the way of observation until thursday night, when I dragged my scope out onto the cricket field on campus. It was pretty late, so we didn't managed to see Venus before it disappeared behind the treeline.
Conditions were less than ideal, with flood lights on the other end of the field messing with night vision and a cold southwestern blowing in cloud and causing dew. I got a cold. (Achievement unlocked!)
Photo by David Basden.
Still, Jupiter and the Orion nebula were blingy enough to be able to see through my scope and they duly impressed some of the gathered. One other person (self confessed noob, never used scope) brought a 6" motorised schmidt-cassegrain scope and we managed to successfully align it via Jupiter, Betelgeuse and Sirius then and found various things to look at through holes in the cloud cover.
We played a bit with the various eyepiece sizes when looking at Jupiter, but cloud made the image hazy-ish regardless. I am now in envy of a motorised scope :-) We also spotted about 5 sattelites zooming along, one of which passed directly in front of Jupiter and was observed through both scopes simultaneously, so I'll call that a confirmed sighting!
I became a lot more adept at aligning the scope and generally managed to get what it was I wanted to look at into view within a few minutes or so. Except the horse head nebula, that is. I could not for the life of me even find Alnitak that evening!
However, it turns out that with a Celestron 130 you can easily see Jupiter through a layer of cloud, though not in focus.
As we packed up and walked back, the cloud cover disappeared. (Achievement unlocked!)
On Friday, an LCA organiser kindly offered me a reserved spot on the Ballarat Observatory tour, which I of course accepted. There was come scattered cloud when we arrived, but the observatory volunteers managed to get everyone to catch a glimpse of Jupiter and its moons through the Oddie and Federation telescopes.
As cloud rolled in (Achievement unlocked!) we were ushered inside for a few 3D videos, which worked about half the time for me but made me squint quite badly. They were a bit daggy for the LCA geek audience, but considering the goal of the observatory and the intended audience I think they're alright.
Still, I didn't feel like squinting uncomfortably for an hour so I nicked off out the back and stood around outside for a little while, getting a short tour of the Jelbart telescope from one of the volunteers. As that concluded, I noticed the cloud cover had completely disappeared and everyone was still inside, watching the videos.
I snuck off to the Oddie telescope and had it to myself for a good 20 minutes. I now have giant 80" telescope envy as well :-) I did some eyeballing of Jupiter and the Orion nebula and found that my own telescope is really badly in need of collimation. The Oddie, on the other hand was wonderfully sharp, and the bands on Jupiter were lovely and well-defined.
The other finished their video at that point and discovered the sky was clear, so they came up and had a sticky-beak around the sky, before being ushered back on the bus and driven back to the campus. I drove myself up, so hung around the observatory for a little while afterward, deflecting attempts by the volunteers to have me provide free IT support for Windows XP (Achievement unlocked!)
We had a quick look at the Rosette nebula before packing up the Oddie and closing the roof. On the way out, a member of the observatory beckoned us to have a look through his telescope, in which the two main components of α-Crucis were separately visible. Lovely :-)
There are a few things I would like to do to make observing with my own telescope a more enjoyable experience.
If you're interested in amateur astronomy and don't want to go overboard on investing time and energy and obsessing over it, or use don't want to webforums to connect with others or use web forums at all, join the skyeballing mailing list.
In my LCA2012 schwag bag I got a LeoStick from Freetronics.
I’m hopelessly bad at electronics, but I managed to wire it up to a seven-segment LED display from an electronics kit I used to use as a kid.
Using just a few lines of C++ (or whatever the heck the language is that Arduino uses — I haven’t fully worked it out
) results in this video (and scroll down for the code):
<video controls="controls" poster="/wordpress/wp-content/uploads/2012/01/leostick_with_ssd.jpg" src="/wordpress/wp-content/uploads/2012/01/leostick_with_ssd.ogv">Watch video</video>
/* LED segment mappings Note that this is specific to the way I wired it This will be different for you! Top = 0x01 Top left = 0x02 Bottom left = 0x04 Bottom = 0x08 Top right = 0x10 Middle = 0x20 Bottom right = 0x40 Dot = 0x80 */ /* here we combine the above segments to produce a complete digit */ unsigned char digits[] = { 0x5F, /* zero */ 0x50, /* one */ 0x3D, /* two */ 0x79, /* three */ 0x72, /* four */ 0x6B, /* five */ 0x6F, /* six */ 0x51, /* seven */ 0x7F, /* eight */ 0x7B /* nine */ }; void display_digit(unsigned char d) { int i; /* examine each bit and determine if segment needs to be lit */ for (i=0; i<8; i++) { digitalWrite(i, (d >> i & 0x01 == 0x01) ? HIGH : LOW); } } void setup() { int i; /* set pins 0-7 to output */ for (i=0; i<8; i++) { pinMode(i, OUTPUT); } /* show all segments on bootup */ display_digit(0xFF); delay(1000); } void loop() { int i; /* display each digit one by one */ for (i=0; i<10; i++) { display_digit(digits[i]); delay(500); } }
Any tips on optimising the above code? Being fairly crap at C–like languages, and with no knowledge of the ATmega32U4 processor, I have no idea how efficient the bit shifting is (in the display_digit() function).
Today is a complicated day. I’m both sad and excited in equal measure about what this year may hold in store.
I’m sad because this is my last day working for Senator Kate Lundy as her IT Policy Advisor and inhouse geek. Kate headhunted me almost 3 years ago at BarCamp Canberra, though we had known each other for a few years beforehand from when she was the Shadow Minister for IT. I was quite wary of going to work in a political office, but my curiosity about how the machine works combined with a desire to help make good tech policy and an immense amount of respect for Kate brought me into one of the most interesting, fun and challenging jobs I’ve ever had.
I particularly wanted to better understand the legislative and executive arms of government. How ideas turn into policy and policy into implementation. As a result, along with doing my job I’ve spent time researching the history of democracy, of Australian politics, of the ideological and historical premise of all the major Australian parties and the interaction between party politics and democracy over the years. I’ve also spent time coming to understand some of the layout, responsibilities and challenges of a multi-tiered system of government.
I have learnt a great deal in this job about government, but also about human nature. Working in an electoral office gives one some insight to the difficulties faced by many, but also some insight to the challenge in maintaining a constructive and respectful dialogue. I think it is human nature to try to boil issues down to black and white. But we are essentially grey creatures with enormous complexity, and I think democracy is about finding ways to have a transparent, informed, respectful and constructive dialogue with all the people on complex policies and implementation, so governments can best implement the best policies for the communities they serve.
I have been lucky to work for a politician who is passionate and knowledgeable about technology and good policy. She has been a valuable teacher and mentor. I shall always be thankful for the wisdom, patience, compassion, critical thinking, strategy and policy development I have learnt in this role and from Kate. I’m sure these skills will continue to serve me well.
My work on Kate’s website, the Public Spheres, Open Government, assisting Kate in linking together different tech policies across a variety of portfolios are all things I am proud of. I also feel very lucky to have met and worked with such inspirational people from many different walks of life through this role and in Kate’s office.
Meanwhile, having developed some understanding of the legislative and executive arms of government, I realised that I wanted to have more experience in the administrative arm of government. I had done some tech work in a previous life within departments but always as the outsourced person. I knew I wanted to really get in and contribute to the public service, as well as learn more about the implementation of policy and the delivery of government services to citizens.
As such, I’m excited to say I am hopefully moving into a role in the APS in the coming weeks and I hope my efforts there will be broadly useful to others in the APS. I can’t say more at this stage as it is being finalised at the moment, but I’ll update this post in the weeks ahead with more information.
By working within the APS, I hope to get a better personal understanding of the specific challenges facing the APS with regards to technology, and hopefully assist in developing strategies to be a more agile, responsive and citizen-centric public service. I will also continue helping to move the Open Government agenda ahead both in my own time and, where appropriate, within my new role. My commitment to Open Government (and Gov 2.0) lies in my understanding that it provides a path to a public service and democracy that is most relevant to, engaged with, responsive to, representative of and accountable to its citizens.
I’ll finish by saying that after three years in her office, my respect for Kate has only grown. She is a person who has engaged fully in her role with integrity, responsibility, grace and a firm grip on her own principles. She is a politician that makes me believe politics isn’t just a dirty word and I wish we had more like her. Even in spite of the fact the last time I socialised with her, I ended up with a fractured scaphoid! I have learnt a keen respect for the torque of a 2 stroke, especially on a motocross track.
My shiny black carbon fibre cast. Shiny!
So, I’m diving into the deep end and I look forward to seeing how well I swim. Wish me luck
So… having secure SMS really isn’t hard. Onec upon a time you may have been forgiven to think that your SMS messages weren’t recorded forever by telecommunications companies or various government agencies, but those times have long passed. At the very least you should be concerned about somebody getting hold of your phone and going through all your SMSs (phones no longer just store 20 messages).
TextSecure (Free and Open Source Software up on github) does both local encryption (messages are encrypted on your phone) and over the wire encryption. That’s right kids – you can send encrypted text messages to each other.
It’s a drop-in replacement for the built in Android text messages application, so it all “just works”.
This is the app that Jacob Appelbaum mentioned in is Keynote at lca2012.
Paris Buttfield-Addison and I co-presented a talk at Linux.conf.au in Ballarat recently. The topic was on designing mobile apps that don’t suck on Android. The talk was pretty well received, the audience attentive and engaged (as evidenced by the fact that they heckled), and it was probably one of the better talks that Paris and I have co-presented.
The video of the talk is available as an ogv movie file, alternatively, the YouTube version is embedded below.
<iframe allowfullscreen="allowfullscreen" frameborder="0" height="315" src="https://www.youtube.com/embed/9zrZylL98k8?rel=0" width="420"></iframe>
All my linux.conf.au 2012 photos have been uploaded to Flickr, within a week of the conference. (that's gotta be a record! :-)
Although there’s lots of amazing presentations at linux.conf.au, it’s also the people and passion involved that makes it such an amazing event.
One of the great conversations I had at linux.conf.au 2012 was with Paul Fenwick, around human interactions. We all have different communication styles and preferences, and it was thought-provoking and mind-nourishing to chat with someone who was both familiar with the area, and who had novel ideas. Paul also introduced me to Anki, a free and open source flashcard tool designed to help you study things like characters, vocabulary, music and so on – basically any field of knowledge that requires commitment to memory. Even better, Anki has a number of pre-prepared decks available for download – including things like the NATO phonetic alphabet and SAT vocabulary tests.
I was also privileged to spend a small amount of time – much less than I would have liked to – with Jason White. Jason has recently completed a PhD thesis in philosophy, around semantic theory, and it was fascinating to hear the details of his thesis topic. Jason is also an accessibility advocate for WCAG, and his Lightning Talk highlighted the Gnome Accessibility project.
The Speakers’ Dinner was a particular highlight, and I was afforded the opportunity to meet Karen Sandler, Executive Director of the Gnome project and previous counsel at the Software Freedom Law Centre. Karen’s keynote at linux.conf.au – ‘Free software in my heart‘ – was a compelling and engaging story about the ubiquity of technology, and how important it is to have control of the software which (literally) supports our lives. Again, I regret not having more time available to listen more to Karen’s journey. An incredible, inspiring, down to earth and approachable lady.
It was also inspiring to meet the wonderful Selena Deckelmann, whose presentation on ‘Mistakes were made‘ was an eye-opener into change management and planning.
One of the highlights for me personally was also the amazing dress created by Jenna Downing – wonderful stuff!
Of course, the star of linux.conf.au are the presentations made by Speakers. Some of my favourites from these year were;
Of course, the event wouldn’t happen without some amazing folk volunteering their time and energy. Conference Director Josh Stewart had a relaxed leadership style, and helped keep our spirits up through what was a tiring, gruelling, exhausting, but ultimately incredibly rewarding week. Sae Ra Germaine is just amazing to work with. She’s an incredible people person, and looked after all our mental health, and helped smooth out the inevitable team conflicts. Cameron Tudball was super organised, a perfect choice for our Treasurer. Thorne Lawler was brilliant, and helped to train and co-ordinate our volunteer team and their tasks – a superhuman effort. Erin Hatherell served as our Team Doctor, keeping us all sane with her great humour, and flair for finding lovely gifts (the “I’m so offended” t-shirts were epic). Our AV setup was simply outstanding, with thanks to the efforts of Tristan McArdle, and the network was the hard work of LT and his offsider Steve “Evil” Walsh. Our sysadmin, Duncan McNeill, did a brilliant job of administering our troublesome conferencing system, ZooKeepr.
An amazing experience.
A lot of work was done in these past couple of cycles to get the en_AU locale into shape. We were hovering around ~43% translated (around 185,000 strings to go) at the natty Ubuntu Global Jam — http://loco.ubuntu.com/events/ubuntu-au/817/detail/
Since then, we’ve managed to translate the lot, only having to search through the new strings trickling in for the Precise cycle – averaging around a couple of hundred new strings per week.
Consider the below workflow, replacing STRING with the en_US string that you’re trying to find/fix, eg. color, cell phone, meter, dialog – etc (the comprehensive list – English Translation keywords):
mkdir ~/en_AU; cd ~/en_AU wget people.ubuntu.com/~jpickett/translations/en_AU-20120118.tar.gz tar xvf en_AU-20120118.tar.gz cd en_AU grep -i "STRING" ./* > ~/STRING grep -i "msgstr" ~/STRING > ~/result less ~/result ...
The output in ~/result will show all the strings that may need to be fixed. The simplest way to do this is to have a tab open for each batch of templates, ie:
https://translations.launchpad.net/ubuntu/precise/+lang/en_AU?batch=300
https://translations.launchpad.net/ubuntu/precise/+lang/en_AU/+index?batch=300&memo=300&start=300
https://translations.launchpad.net/ubuntu/precise/+lang/en_AU/+index?batch=300&memo=600&start=600
https://translations.launchpad.net/ubuntu/precise/+lang/en_AU/+index?batch=300&memo=900&start=900
https://translations.launchpad.net/ubuntu/precise/+lang/en_AU/+index?batch=300&memo=1200&start=1200
This makes it super easy to Ctrl-F through the lists and find the package that the typo/mistake resides. You’ll also want to periodically check for the new tarball to make sure you have up-to-date .po’s and that you aren’t rechecking files that you’ve already fixed
There’s probably a billion ways that this could be done easier/faster but for now, that’s the way it’s being fixed
Although translation into en_AU may not be the most important goal we have in the Ubuntu project, I firmly believe that it creates that *finishing gloss* that reflects what the Ubuntu en_AU translators have achieved.
Based on my experiences helping on the Software Freedom Day Melbourne team for several years, and the successful BarCampGeelong, I responded to linux.conf.au’s Call for Papers (CfP) with an outline of a talk around running outstanding events in the free and open source software community. The aim was to provide the skills, resources and techniques that budding organisers would require in order to manage a successful event. Fortunately, the CfP was accepted and as well as being part of the Core Team for linux.conf.au 2012, I had an extra action item – preparing an awesome presentation!
Instead of using Impress for slides, I wanted to find something a little different. At the August WordPress Melbourne meet up, Vernon Fowler used Prezi for his BuddyPress case study. Prezi, while producing impressive slide decks, is proprietary and closed. Something told me this would be unpopular with the linux.conf.au crowd. Having used Inkscape heavily, I was directed to Sozi, a free and open source software tool that creates SVG files and Javascript from Inkscape. This tool is amazing – as you’ll be able to see from the slide deck below. The only drawback I found was afterwards – when trying to upload the Sozi-created SVG file to MediaWiki, it’s detected as a potentially dangerous file because the SVG contains HTML.
After delivering the presentation (link to video below), I received lots of constructive feedback. In particular, Karen Sandler, one of our keynotes for linux.conf.au, let me know that she doesn’t use the camera on her smartphone – because it uses proprietary software. Of course, this meant that all the QR codes I’d included in the slides were effectively useless! So, the slide deck below has been updated with printed URLs.
One of the more positive pieces of feedback received was around the fact I produced and printed a transcript for the presentation so hearing impaired people at the presentation could have a more equivalent experience.
I’m way too exhausted to write a full debriefing of linux.conf.au 2012, but I would like to share a few random thoughts, sorted equally randomly:
This week I’m at linux.conf.au, the southern hemisphere’s premier open-source conference. This year it is being held in Ballarat, about an hour’s travel from Melbourne. I’ll be documenting the trip and conference as much as I can given the limits of my enthusiasm and awakeness.
Friday 20th January:
Friday is the last day of the conference, and everybody is starting to look tired; it’s a full-on week. But, before we all go home, there are just a few more excellent talks to attend. The first of these was Friday’s keynote, given by Jacob Appelbaum, and what an amazing keynote it was. Jacob talked about the state of surveillance states. He explained what they are doing to keep track of all of their citizens, and the special measures that have been put in place in the last few years (mostly since September 11) that significantly curtail our freedoms in the name of privacy and safety. A few choice quotes from the talk:
Free software is for freedom, open source is for business solutions.
Be the trouble you want to see in the world. [It's in my notes, but I'm pretty sure it was actually just written on his shirt]
90s Nihilism: I have nothing to hide.
The data kept about you in [server] logs around the world tells a story that is not necessarily true, but is made up of facts.
This talk flowed on nicely from Senator Ludlam’s talk at the Penguin dinner.
After morning tea, I watched the talk by Rusty Russell and Matt Evans about why UNIX has been getting bigger over time (in terms of binary bloat). It’s mostly due to new features, but also because of the infrastructure that modern systems have and the libraries that are statically linked in these days (glibc is basically just bloatware). Also in this session I attended the talk by Simon Horman on Open vSwitch. It’s really interesting content, but the presentation was a bit dry. It’s definitely something I want to check out when I get home though, as it could be quite useful for me when I have VMs set up in Linux. The support for VLANs makes it a much better choice than standard Linux network bridges.
During lunchtime there was a meeting between a group of Tasmanian delegates, and it was decided that the Hobart Linux User’s Group should be started up again. So if you’re reading this, like Linux and live in Hobart, get in touch!
After lunch was the best-of sessions. These were talks voted for by the delegates that they wanted to see again, or missed the first time around. I watched two fabulous talks. The first was on Codec2 (presented by David Rowe), an audio speech codec that uses 1400 bits/sec for transmission, which is a 500x improvement on raw 16bit 44.1kHz audio. Very impressive. The second was on the freedom box project (presented by Bdale Garbee, which is a platform for developing easy-to-use home servers oriented towards federated social networking services (such as Status.net or Diaspora). This followed on nicely from Appelbaum’s talk that morning, giving a solution to some of the problems that were outlined.
The final session of the conference was the lightning talks. The real highlight was watching Paul Fenwick jump up on stage between the lightning talks and try to give a several minute long presentation in thirty seconds. He failed, but it was funny to watch. After the lightning talks was the closing ceremony. The main reason for this is to hand out a few awards and thank some people, but also to find out where the next linux.conf.au is going to be held. Next year, it’s in Canberra!