Planet Linux Australia

Syndicate content
Planet Linux Australia -
Updated: 42 min 26 sec ago

Chris Samuel: Let’s Encrypt – getting your own (free) SSL certificates

Wed, 2015-12-16 21:26

For those who’ve not been paying attention the Let’s Encrypt project entered public beta recently so that anyone could get their own SSL certificates. So I jumped right in with the simp_le client (as the standard client tries to configure Apache for you, and I didn’t want that as my config is pretty custom) and used this tutorial as inspiration.

My server is running Debian Squeeze LTS (for long painful reasons that I won’t go into here now) but the client installation was painless, I just patched out a warning about Python 2.6 no longer being supported in venv/lib/python2.6/site-packages/cryptography/

It worked well until I got rate limited for creating more than 10 certificates in a day (yeah, I host a number of domains).

Very happy with the outcome, A+ would buy again..

This item originally posted here:

Let’s Encrypt – getting your own (free) SSL certificates

Donna Benjamin: 2015 - Where did the year go?

Wed, 2015-12-16 11:27
Wednesday, December 16, 2015 - 10:34

I can't believe the year is nearly over. It's been a strange one for me. No key themes. Well, not that I can see yet. Maybe I need more time.

But I did a lot of travelling. A lot. More than usual.

Two trips to New Zealand, three to the US, One to Europe, and a few interstate hops too. And I've already got three overseas trips pencilled in for next year. It's not good for the planet, but it's always mind opening to be in a different place, outside my "normal" operating parameters. I'm particularly looking forward to going to DrupalCon Asia in Mumbai in February.

I spent a lot of time this year thinking about conflict resolution and codes of conduct. I'm still thinking. I'm now working through how we can improve the way we respond to incidents. How can we make it feel safer to report issues? We also need to respond with fairness and humanity, without being detectives, judge or jury.

I also started to think more critically about what it is I "do" and I really don't have a good answer for that. I'm going to need to get much better at that in 2016.

Business analyst? Scrum mistress? Web therapist? Event manager? Project facilitator? Cat herder? Theatre director? Executive director? Mediator? Site builder? Client Liaison? Community leader? Account manager? So many things. So much stuff.

In a small business like Creative Contingencies I do lots of things on a small scale. In a larger business I need to specialise. As a consultant, I just roll up my sleeves and do what needs doing, whatever that might be.

Best wishes for the festive season and the coming new year. May you also have pause to reflect, and refresh.

Gary Pendergast: Curing a Critical Security Bug

Tue, 2015-12-15 22:26

A WordCamp US this year, I spoke about the Trojan Emoji security bug, which we fixed in WordPress 4.1.2.

In particular, I went through how we came to wrap our head around the bug, and then write a solution that worked for every WordPress site.

Binh Nguyen: US Drone Warfare Program, Financial Trading Thoughts, and More

Sun, 2015-12-13 23:48
- a lot of people have probably been wondering about the so called 'drone wars'. I have too. Below are some debates, documentaries, and random thoughts regarding the US drone programs (from various biased as well as unbiased perspectives. The irony with certain things is that it may be difficult to find unbiased sources or else different perspectives no matter how balanced an opinion you want to

Clinton Roy: clintonroy

Sun, 2015-12-13 19:28

The YOW conference is very kind to local meetup organisers, I was lucky enough to be offered a ticket in return for introducing a couple of sessions.

Monday Keynote: Adrian Cockcroft

Complexity, understanding, composition and abstraction.

Past, Present and Future of Java: Georges Saab

Some of the new fp/multi core stuff slowly coming down the pipeline. I’ve always had high expectations for Java and the surrounding environment, but every time I’ve used it I’ve been very disappointed. There’s a lot to be said for backwards compatibility, but not at the cost of destroying all the good will your development community has. The changes portrayed in this talk are quite interesting.

Play in C#: Mads Torgersen

This was a highlight of the conference for me. The Roslyn project basically inverted the Microsoft compiler from a sink to a filter which lets it be hooked up directly to the IDE. The live example was adding a linter to the IDE to complain about blocks of code not in brace extensions, complete with one click fixup. It was all very impressive.

Writing a writer: Richard P. Gabriel

Generating poems that get judged to be written by humans, all in lisp of course.

Keynote: Don Reinertsen

This was a very interesting discussion on the natural reaction in an uncertain world: making systems robust. At the very best, the most robust system (robustest? :) will be able to handle the most chaotic world and bring system performance back to normal. This talk asks us to think about the notion of a system that can actually improve in a chaotic world. The theoretic model is based on the financial idea of increasing risk implying increasing returns.

The Future of Software Engineering: Glenn Vanderburg

This was a very interesting talk on the nature of engineering, and how software engineering fits into the discipline. A highlight.

The Miracle of Generators: Bodil Stokke

This was an FP talk, I’m not a fan of bait-and-switch talks.

Tuesday: NASA Keynote: Anita Sengupta and Kamal Oudrhiri

It’s interesting to be in a room full of engineers being exposed to different engineering requirements.

Agile is Dead: Dave Thomas

A great simplification of the underlying ideas of how to have agility.

Sometimes the Questions are Complicated, but the Answers are Simple: Indu Alagarsamy

A highlight of the conference overall, a talk about a healthy family culture butting up against backwards societal culture.

Keynote: Kathleen Fisher

Formal processes work, but we’re decades off being able to use them for day to day work.

Always Keep a Benchmark in your Back Pocket: Simon Garland

Some rules to keep in mind around designing  benchmark, plus the idea of always doing benchmarking as a way of defending development work to management keen on outsourcing.

Transcript: Jonathan Edwards

One of the talks I chaired.  A very interesting document and form based programming language for non-programmers to use, in the style of hypercard.

The Mother of all Programming Languages Demos: Sean McDirmid

One of the talks I chaired. More interesting ideas coming out of Microsoft. This was heavily based on physical interfaces, I struggled to think how it would apply to regular programming.










Filed under: Uncategorized

Colin Charles: MariaDB Server GA’s supported for 5 years

Sun, 2015-12-13 00:25

There was some discussion a while back to maybe make MariaDB Server follow the Ubuntu release model, i.e. having a Long Term Release (LTS) and then having a few regular fast releases with a shorter support cycle.

However its good to note that the decision now going forward is to support each and every GA release for a period of five (5) years. However, regular releases will only happen for the latest three (3) GA releases, so at this moment, you are getting updates for MariaDB Server 5.5/10.0/10.1.

Practically, we’ve not seen an update for 5.1/5.2/5.3 since 30 Jan 2013 at the time of this writing. And its clear MariaDB Server 5.5 will have an extended support policy, as it ships in Red Hat Enterprise Linux 7. 

At this time it’s worth noting that for MySQL 5.5, premier support ends December 2015, while there is extended support till December 2018.

Donna Benjamin: Beta out for Bootstrap 3 for Drupal 8

Sat, 2015-12-12 18:27
Saturday, December 12, 2015 - 18:18

Open Source Software. Gotta love it.

I was fooling around with the second alpha release of the Bootstrap theme for Drupal8. I hit a snag, made a wish (by posting an issue to and Lo! and Behold! Not long after the wish was granted and a Beta was released.

If you're one of those people who uses Drupal to publish stuff online, and just want to get something up quickly without using Drupal's default Bartik theme, then you might want to take a look at Bootstrap.

Yes, there's still some rough edges in there - but if you're willing to share your thoughts, and be constructive, you too might be able to help improve it faster!

Head to to check it out.

Or perhaps just fire up Bootstrap on

Simon Lyall: Studying for Driver license test with Anki

Fri, 2015-12-11 09:28

In 2014 I decided to do a bit or work to finally get my New Zealand driver license. The first step towards this was passing the theory test which is a 35 question test given on computer. You have to get at least 32 questions right to pass.

After spending a bit of time looking at the roadcode book I decided to go with just learning the questions. I did this by:

  1. Buying some of the official practice exams
  2. Grabbing other questions for unofficial sites
  3. Entering some other questions manually from the books

I took all these questions and created a Anki Deck. Anki is some spaced repetition software that I use to learn things. I tell it to ask me a few new questions every day, if I get them wrong it asks me again tomorrow, if I get them right it asks me again next week. Gradually as I learn something it asks me less often (see the more technical explanation here)

A typical question on an Anki deck looks like these screenshots:

The left on the left shows me being asked the question. Once I pick my answer I look at the actual answer (see rightmost screenshot)

If I get it wrong I get the card again in 10 minutes and depending on how easy I judged it if I got it right I’ll only see it again in months.

I ended up entering just on 400 questions and told Anki to give me 5 new cards every day plus whatever old ones I had to review. After a few months I had gone though all the questions and had a good feel for them. I also did some of the official practice exams.

Eventually in December 2014 I sat the exam and got 100 percent correct.

I’ll make my deck available at the link below. There are just over 400 cards in it, some with pictures. There are a few duplications but no errors as far as I am aware. They are current as of late 2014 (including the give-way rules change that year).

To use them you’ll need a copy of Anki and it is probably easiest to use the desktop edition to import the file and then use an Ankiweb account to Synchronize to a copy on your phone.

Download NZ Driver license Theory Anki Deck (2MB .apkg file)


Chris Smart: Building a Mini-ITX NAS? Don’t buy a Silverstone DS380 case.

Thu, 2015-12-10 12:29

Edit: I made some changes which have dropped the temps to around 40 degrees at idle (haven’t tested at load yet). The case has potential, but I still think it’s slightly too cramped and the airflow is not good enough.

Here’s what I changed:

  • Rearranged the drives to leave a gap between each one, which basically limits the unit to 4 drives instead of 8
  • Inverted the PSU as per suggestion from Dan, so that it helps to draw air through the case. The default for the PSU is to draw air from outside and bypass the case.
  • Plugged the rear and side fans directly into the PSU molex connector, rather than through mainboard and rear of hard drive chassis

So I’m building a NAS (running Fedora Server) and thought that the Silverstone DS380 case looked great. It has 8 hot-swappable SATA bays, claims decent cooling with filters, neat form factor.

It requires an SFX PSU, but there are some that have enough juice on the 12v rail (although avoid the SilverStone SX500-LG, it’s slightly too long) so that it’s not a major problem (although I would prefer standard ATX).

So I got one to run low-power i3, C226 chipset mainboard and five HGST 3TB NAS drives. Unfortunately the cooling through the drives is pretty much non-existent. The two fans on the side draw air in but blow onto the hotswap chassis and nothing really draws air through it.

As a result, many of the drives run around 65 degrees Celsius at idle (tested overnight) which is already outside of the drives’ recommended temperature range of 0-60 degrees.

I’ve replaced the case with my second choice Fractal Design NODE 304 and the drives at idle all sit at around 35 degrees.

It has two smaller fans at the front to bring air directly over the drives and a larger one at the rear, with a manual L/M/H speed controller for all three on the rear of the case. As a bonus, it uses a standard ATX power supply and has plenty of room for it.

The only downside I’ve found so far is the lack of hot-swap, but my NAS isn’t mission-critical so that’s not a deal breaker for me.

Your mileage might vary, but I won’t buy the DS380 for a NAS again, unless it’s going to run full of SSDs or something (or I heavily mod the case). It’s OK for a small machine though without a bunch of disks (shame!) and that’s what I’ve re-purposed it for now.


Jonathan Adamczewski: C++14 and volatile implicity

Tue, 2015-12-08 18:27

In the process of upgrading Visual Studio 2012 to Visual Studio 2015, I encountered some brand new link errors that looked something like this:

error LNK2001: unresolved external symbol "public: __cdecl FooData::FooData(struct FooData& const &)"

It’s not a new error in VS2015 — VS2012 can certainly produce it. I mean “new” in the sense that there were no problems linking this code when using the older compiler.

The struct in question looks vaguely like this:

struct FooData { int m_Bar; volatile int m_Baz; };

The problem is m_Baz. In C++14, the language was changed to say that structs are not trivially constructible if they have non-static volatile members. And that, I think, is why there’s no default copy constructor being generated. I can’t quote chapter and verse to back up that assertion, though.

[Update: Actually… maybe not? I’m beginning to wonder if VS2015 is doing the wrong thing here.]

But the fix is simple: add a copy constructor. And then, when the program fails to compile, declare a default constructor (because, of course, adding a copy constructor causes the implicit default constructor to be marked as deleted).

I found that developing an understanding of exactly what was happening and why to be the more difficult problem. Initially because the the compiler gave no indication that there was a problem at all, and willingly generated calls to a copy constructor that couldn’t possibly exist. Deeper than that, I’m still trying to piece together my own understanding of exactly why (and how) this change was made to the standard.

Francois Marier: Tweaking Cookies For Privacy in Firefox

Tue, 2015-12-08 09:46

Cookies are an important part of the Web since they are the primary mechanism that websites use to maintain user sessions. Unfortunately, they are also abused by surveillance marketing companies to follow you around the Web. Here are a few things you can do in Firefox to protect your privacy.

Cookie Expiry

Cookies are sent from the website to your browser via a Set-Cookie HTTP header on the response. It looks like this:

HTTP/1.1 200 OK Date: Mon, 07 Dec 2015 16:55:43 GMT Server: Apache Set-Cookie: SESSIONID=65576c6c64206e6f2c657920756f632061726b636465742065686320646f2165 Content-Length: 2036 Content-Type: text/html;charset=UTF-8

When your browser sees this, it saves that cookie for the given hostname and keeps it until you close the browser.

Should a site want to persist their cookie for longer, they can add an Expires attribute:

Set-Cookie: SESSIONID=65576c...; expires=Tue, 06-Dec-2016 22:38:26 GMT

in which case the browser will retain the cookie until the server-provided expiry date (which could be in a few years). Of course, that's if you don't instruct your browser to do things differently.

Controlling Cookie Expiry

In order to change your cookie settings, you must open the Firefox preferences, click on "Privacy" and then choose "Use custom settings for history" under the "History" heading.

There, you will have the ability to turn off cookies entirely (network.cookie.cookieBehavior = 2), which I don't recommend you do in your browser since you won't be able to login anywhere. On the other hand, turning off cookies is what I do (and recommend) in Thunderbird since I can't think of a legitimate reason for an email to leave a cookie in my mail client.

Another control you'll find there is "Keep until" which defaults to honoring the server-provided expiry ("they expire" aka network.cookie.lifetimePolicy = 0) or making them expire at the end of the browsing session ("I close Firefox" aka network.cookie.lifetimePolicy = 2).

A third option is available if you type about:config into your URL bar and looking for the network.cookie.lifetimePolicy preference. Setting this to 3 will honor the server-provided expiry up to a maximum lifetime of 90 days. You can also make that 90 days be anything you want by changing the network.cookie.lifetime.days preference.

Regardless of the settings you choose, you can always tell Firefox to clear cookies when you close it by selecting the "Clear history when Firefox closes" checkbox, clicking the "Settings" button and making sure that "Cookies" is selected (privacy.clearOnShutdown.cookies = true). This could be useful for example if you'd like to ensure that cookies never last longer than 5 days but are also cleared whenever you shut down Firefox.

Third-Party Cookies

So far, we've only looked at first-party cookies: the ones set by the website you visit and which are typically used to synchronize your login state with the server.

There is however another kind: third-party cookies. These ones are set by the third-party resources that a page loads. For example, if a page loads JavaScript from a third-party ad network, you can be pretty confident that they will set their own cookie in order to build a profile on you and serve you "better and more relevant ads".

Controlling Third-Party Cookies

If you'd like to opt out of these, you have a couple of options. The first one is to turn off third-party cookies entirely by going back into the Privacy preferences and selecting "Never" next to the "Accept third-party cookies" setting (network.cookie.cookieBehavior = 1). Unfortunately, turning off third-party cookies entirely tends to break a number of sites which rely on this functionality (for example as part of their for login process).

A more forgiving option is to accept third-party cookies only for sites which you have actually visited directly. For example, if you visit Facebook and login, you will get a cookie from them. Then when you visit other sites which include Facebook widgets they will not recognize you unless you allow cookies to be sent in a third-party context. To do that, choose the "From visited" option (network.cookie.cookieBehavior = 3). However, note that a few payment gateways are still relying on arbitrary third-party cookies and will break unless you keep the default (network.cookie.cookieBehavior = 0).

In addition to this setting, you can also choose to make all third-party cookies automatically expire when you close Firefox by setting the network.cookie.thirdparty.sessionOnly option to true in about:config.

Other Ways to Limit Third-Party Cookies

Another way to limit undesirable third-party cookies is to tell the browser to avoid connecting to trackers in the first place. This functionality is now built into Private Browsing mode and enabled by default. To enable it outside of Private Browsing too, simply go into about:config and set privacy.trackingprotection.enabled to true.

You could also install the EFF's Privacy Badger add-on which uses heuristics to detect and block trackers, unlike Firefox tracking protection which uses a blocklist of known trackers.

My Recommended Settings

On my work computer I currently use the following:

network.cookie.cookieBehavior = 0 network.cookie.lifetimePolicy = 3 network.cookie.lifetime.days = 5 network.cookie.thirdparty.sessionOnly = true privacy.trackingprotection.enabled = true

which allows me to stay logged into most sites for the whole week (no matter now often I restart Firefox Nightly) while limiting tracking and other undesirable cookies as much as possible.

Tim Serong: Pets vs. Cattle

Mon, 2015-12-07 21:29

I was at SUSECon 2015 in Amsterdam a few weeks ago, which, aside from being a great conference, was an opportunity to actually interact with my colleagues in person for a change. So I finally got to meet Adam Spiers after working-ish with-ish him for at least three-ish years (strictly speaking we’re on different-ish teams), and one of the first things he asked was for my take on the Pets vs. Cattle cloud computing metaphor, because in addition to knowing my way around high availability, distributed storage and cloud foo, my wife and I actually do farming which means I might be qualified to have an opinion on the matter.

The Pets vs. Cattle thing is about how you manage your systems (i.e. servers/VMs). The idea is that we give our pets individual names, lovingly hand raise and care for each one, and we take them to the vet when they get sick. Cattle on the other hand are numbered in some fashion, are treated as if they’re mostly identical, and if one gets sick you shoot it and get another (surely the beef and dairy industry wouldn’t function efficiently otherwise).

If you apply that philosophy to computer systems, a pet is a server (or VM instance) that was set up “just so”, and that you can maybe scale up, and redeploy with some difficulty elsewhere if disaster strikes. With the cattle approach you’d be looking at scaling out with multiple identical disposable instances that can be replaced or redeployed semi-instantaneously if the data centre suddenly catches fire.

In my opinion this is actually a good way of conceptualising how our systems are managed, and it provides a useful framework from which to think about scalability, resilience, disaster recovery, and risk management.

But it’s not how I treat my animals. So while I understand the metaphor and its utility, I actually don’t like it.

We don’t have a huge farm. Right now we have five pigs, six sheep, a handful of cockerels, about twenty adult hens and forty-odd young chicks. Over the last few years we’ve raised some hundreds of chickens, which have had varied fates. Many found new homes with other peoples’ flocks. Many were delicious (some are still in the freezer). Others became unplanned snacks for the local wedge-tailed eagle and grey goshawk populations. You might say our chickens come close to fitting the cattle part of the metaphor, but it’s more complicated than that.

When you raise chickens, occasionally you get one that’s just not going to make it. Sometimes it dies by itself in short order, before you really know there’s any trouble. Other times you know the chick is in a bad way and you have a choice of letting it sit around suffering until it dies, or offing it yourself. There’s not a lot you can do for an ill young bird other than providing warmth, food and water, and you can’t ever know if it’s going to get better. One chick I nursed for most of a day, only to have it lie down and die in my hand. Another chick, late out of the egg, smaller and less steady on its feet that the others was fine after some extra care. A third either hadn’t completely absorbed the yolk or otherwise had an odd deformity so was straight for the knife, the compost heap, and thence another turn of the wheel.

We treat our adult birds similarly – we keep a close eye on them, and if one might be getting crook we try to see what we can do to help. Sometimes that’s a night or two in a cage in the house, sometimes it’s a trip to the vet. An eagle tore an enormous gash across the back of one of our hens, but we paid to have her stitched up and she’s still with us. Another one was torn right down to and part way through the spine, and incredibly was still walking and clucking. I had to kill her though – we can’t fix an injury like that.

So like I said, it’s complicated. In situations where the metaphorical cattle farmer would always kill their animals, we sometimes kill them and sometimes nurse them back to health. The Pets vs. Cattle metaphor doesn’t work for me because I don’t treat my “cattle” the way the metaphor expects me to. My animals are actually my friends, but I still eat them. Incidentally, Adam expressed some concern about remaining my friend after I mentioned this to him.

The other problem with the Pets vs. Cattle metaphor is that it only works in cultures that treat cattle the way they’re generally expected to be treated in Western civilisation. Florian Haas recounted a tale of a hurried “cattle” substitution (pet dogs vs. stray dogs) during a cloud computing presentation in India, for example.

So what can we learn from the Pets vs. Cattle metaphor?

  1. It can be a useful framework for thinking about allocating computing resources.
  2. The metaphor might be irritating if you’re actually a farmer.
  3. The metaphor is probably outright offensive if you’re a Hindu.
  4. Metaphors often tell you more about the culture of the people who use them than they do about the topic at hand.
  5. The modern Western mass market beef and dairy industry doesn’t treat its cattle with appropriate respect.

Simon Lyall: Donations 2015

Mon, 2015-12-07 09:28

Up until a couple of years ago my main charity was a regular payment to Oxfam. However I cancel this after I decided I disliked their fund-raising methods and otherwise read they were probably not in the top few percent of charities. Since then I’ve been tending to do things all in one go.

I just finished doing this year’s so I thought I’d document it here. It does feel a little weird to post about it but I’ve seen others do it. The theory I guess is that you the reader might be convinced that giving to charity is a good thing and do likewise.

My main donation was to the the top four charities rated by GiveWell:

  • Against Malaria Foundation                   $US 150
  • Schistosomiasis Control Initiative         $US 150
  • Deworm the World Initiative                  $US 150
  • GiveDirectly                                                 $US 150

Next were a series of Open Source projects

  • Debian                                                              $US 50
  •                                              $US 30
  • LibreOffice                                                       $US 30
  • OpenBSD                                                          $US 30
  • Python                                                              $US 30
  • Gnome                                                              $US 30

Interestingly enough I hadn’t originally intended to donate to LibreOffice and but Debian handles donations via Software in the Public Interest and those two showed up on the same donation page.

and some others

I thought about a few others including The Internet Archive, Anki and Mozilla. Perhaps next year

Share News: OpenMaterials and EverywhereTech Founder Catarina Mota to headline 2016

Mon, 2015-12-07 07:28

Open hardware luminary, TED Fellow and future materials industry leader, Catarina Mota, will be one of four outstanding keynotes for in February 2016. Mota is co-founder of - a project dedicated to furthering exploration of ‘smart materials’ - conductive ink, electronics that run off energy generated by the human body and new generations of plastics that have memory. She recently founded Everywhere Tech - an organisation facilitating open source technology transfer to foster resilient communities around the world.

Her passion is to encourage the ‘maker’ in all of us - motivating a new generation’s interest in science, technology and collaboration. This passion extends to her current pursuits - doctoral academic research into the social impact of open and collaborative practices for the development of technologies.

"I'm very much looking forward to the wonderful LCA. Long before there was open source hardware/materials, there was open source software and Linux - I can't wait for the opportunity to learn from the community who paved the way for the rest of us."

Conference 2IC Kathy Reid was delighted to announce Ms Mota as Keynote Speaker.

“I first heard Catarina speak at LinuxCon Europe in Barcelona in 2012 and was simply awestruck. Her passion, her empathy, and sincere desire to make the world a better place through technology is so incredibly inspirational. Catarina’s work at the intersection of technology, collaboration and humanity is such a natural fit for 2016’s theme of ‘Life is better with Linux’. We’re honoured to be able to welcome her to Geelong in February.”

One of the most respected technical conferences in Australia, Linux Conference Australia ( will make Geelong home between 1st-5th February 2016. The conference is expected to attract over 500 national and international professional and hobbyist developers, technicians and innovative hardware specialists, and will feature nearly 100 Speakers and presentations over five days. Deakin University’s stunning Waterfront Campus will host the conference, leveraging state of the art networking and audio visual facilities.

The conference delivers Delegates a range of presentations and tutorials on topics such as open source hardware, open source operating systems and open source software, storage, containers and related issues such as patents, copyright and technical community development.

Linux is a computer operating system, in the same way that MacOS, Windows, Android and iOS are operating systems. It can be used on desktop computers, servers, and increasingly on mobile devices such as smartphones and tablets.

Linux embodies the ‘open source’ paradigm of software development, which holds that source code – the code that is used to give computers and mobile devices functionality – should be ‘open’. That is, the source code should be viewable, modifiable and shareable by the entire community. There are a number of benefits to the open source paradigm, including facilitating innovation, sharing and re-use. The ‘open’ paradigm is increasingly extending to other areas such as open government, open culture, open health and open education.

Potential Delegates and Speakers are encouraged to remain up to date with conference news through one of the following channels;

Website: Twitter: @linuxconfau, hashtag #lca2016 Facebook: Google+: Lanyrd: IRC: on Email: Announce mailing list:

We warmly encourage you to forward this announcement to technical communities you may be involved in.

Image credit: Oui Share via Flickr / CC BY-SA

Sridhar Dhanapalan: Twitter posts: 2015-11-30 to 2015-12-06

Mon, 2015-12-07 01:27

Colin Charles: Learnings from Swift becoming opensource

Mon, 2015-12-07 00:25

Swift is now opensource, and it’s interesting to see Craig Federighi talk about it. This is Apple doing right, considering FaceTime is long overdue to being an open standard. People are nitpicking on Apple’s Open Source tagline, but really, this is akin to nitpicking on Mark Zuckerberg donating 99% of his Facebook stock to his new limited liability corporation charity (key: don’t look a gift horse in the mouth).

Apple has chosen to put Swift on Github, and they’ve ensured that it wasn’t just an initial commit, but you’re seeing a lot of history. And it’s the right choice clearly, for engagement — 1,275 watching, 18,884 stars, 2,139 forks, 51 pull requests currently, but most interestingly a lot of accepted code. Even simple things along the lines of “fixing typos” (see commits, eg. d029f7e5ae84cf8f6c12907f9ed0ac0a694881aa, e8b06575d26a684f415af95143ec576a6aa5168d, etc.). 

Swift has open source documentation — like all good open source projects are supposed to have. They use Sphinx and its in the source tree. This is something I’d wish to see from MySQL (docs copyright Oracle, online, but you can take it offline too via PDF) or MariaDB (friendly licensed Knowledge Base), but so far only Percona Server has gotten this right.

What else did Swift do right? Focus on user contributions — the Contributing page is a breath of fresh air. And don’t forget the code of conduct for participating in the project.

But besides just the documentation and contribution pages, I learned something new from one commit in particular — the existence of nproc, part of coreutils. I immediately hopped onto IRC to chat with Nirbhay (our resident MariaDB Galera Cluster expert), because in scripts/, we do this via a get_proc() function. We should be focusing on modernising/standardising our codebase, shouldn’t we?

There is a lot we at MariaDB Corporation and the MariaDB Foundation can learn from Swift being opensource and how Apple deals with the community at large. Here’s hoping we get the best practices from it and implement it in due time.

Binh Nguyen: Some Counter-Terrorism, Defense Intelligence Thoughts, and More

Sun, 2015-12-06 01:28
- many people are often critical of choices that are often made in other countries. If you think carefully about it, massive loops have been being created. People wouldn't survive and hit certain points within the social hierarchy if they didn't possess certain characteritics and these characteristic are normally a factor of existing circustances. Think about Putin (or US or China for that

Michael Still: Skimpy

Fri, 2015-12-04 18:28

ISBN: 9780733634383


I've had a bit of a thing about biographies recently, having just read the very good The Crossroad by Mark Donaldson. This book is a very different story, but I think still quite interesting. Kellie was a country girl with no real plans and an impulse control problem. While the book follows her formative years as she parties across Australia in a generally northern direction, I think the underlying story about growing up and finding your way in the world is quite interesting.

Is this great literature while will enlighten the masses? Probably not. Was it a fun read on a flight and mostly about a teenager with no direction finding her place in the world? Yes.

Tags for this post: book kellie_arrowsmith biography australia

Related posts: The Crossroad; Don't Tell Mum I Work On The Rigs; In Sydney!; American visas for all!; In A Sunburned Country; Melbourne Comment Recommend a book

David Rowe: SM2000 Part 4 – Tx Amplifier Chain

Fri, 2015-12-04 16:30

This week I’ve been working on class A and class C amplifiers for the transmit side of the SM2000 design. Yesterday I worked up a gain budget that would take me from -20dBm at the output of the 1st mixer to +30dBm (1W) at the output of the PA. I need two 20dB (ish) driver stages and one 10dB (ish) PA, 50dB of gain in total.

The prototype amplifiers all had Z-match networks that matched to 50 ohm input and output. When combining the amplifiers I combined the Z match networks, removing the intermediate 50 ohm step. So we go from 2500 ohms at the output of the first stage to 10 ohms at the 2nd stage input. Then 250 ohms at the 2nd stage output to 10 ohms 3rd stage (PA) input.

I cranked the handle on the Z-match calculations and soldered the thing together:

In the photo you can see the extra large rectangular pads I used to give Q2 and Q3 some heatsinking. I measured and tweaked all the home made inductors using the spec-an method from the last blog post. I estimate they are within +/- 15% of the values on the schematic.

It worked first time but the overall gain was a bit low at 43dB. So I entered “experimental mode”, and started testing individual stages. To test stage 1 and stage 2 alone this meant changing the Zout network to match the 50 ohms of the spec-an.

Couple of changes:

  • The 1st stage gain was a bit low. I changed L1 from 24nH (the calculated value) to 57nH, this gave me +3dB. I don’t know why, and it’s annoying me! However I appreciate that at VHF the calculations can only get you to within 20%.
  • While testing stage 1 and 2 there was some instability, which went away when I rotated L2 45 degrees away from L3.
  • In my first pass I use a 18 ohm resistor to bias Q3 at 0V. However when I changed this to a RF choke the output power jumped up to 1W with -20dBm drive, and I can get 0.5W with -30dBm drive.
  • The power supply filtering (R7 and R8) causes about 1V of drop to the power supply of Q1 and Q2, which leads to a few dB loss of drive. This could be improved by recalculating the Q1 and Q2 bias points.

The BFQ19 is not meant for 1W so I only ran it for a few seconds there. I killed one when I raised Vcc to 14V, it’s rated at a Vce(max) of 15V and with Vcc=14V the collector would be seeing at least 2Vce = 28V. However it runs OK for a few minutes at 0.5W.

Next Steps

I figure this design has plenty of drive to deliver 1W with the right output transistor. Now I need to select and obtain a suitable transistor and test it. Think it will need to have a Vce(max) of 36V, 2W dissipation, and >10dB gain at 150MHz.

I need to integrate this PA with the PIN diode TR switch and come up with some switching earlier for the BPF output just after the mixer. The tx and rx chains share the 1st mixer (which is bi-directional) and BPF. So I need a way to switch between the input of this tx amplifier chain and the LNA output.

The PA has a 2nd harmonic just -38dB down so we’ll need a little more filtering, spurious 50dB down would be nice.

Michael Still: The Chronicles of Old Guy

Fri, 2015-12-04 07:28
I found this e-book on Amazon while randomly poking around and read it on a recent set of flights. It was of interest because if looked like another bolo tank book, of which I have read many over the years. That said, its not in strictly the same universe as the other bolo books, and seems more like unofficial fan fiction than something which maps into the universe seamlessly.

The book is competently written and readable. However, it regularly strays into what I would consider fantasy fiction (medieval warfare, vampires, battling Godzilla) in a way I found jarring and annoying. Overall I don't think I'll read the other books in this series.

Tags for this post: book timothy_j_gawne bolo combat ai

Related posts: Battlefields Beyond Tomorrow ; Mona Lisa Overdrive; East of the Sun, West of the Moon; Bolo Strike; Bolos 4: Last Stand; Their Finest Hour Comment Recommend a book