Planet Linux Australia
Celebrating Australians & Kiwis in the Linux and Free/Open-Source community...

December 21, 2014

Speaker Feature: Aimee Maree Forsstrom, Martin Kealey, Matthew Garrett

Aimee Maree Forsstrom

Aimee Maree Forsstrom

FireFoxOS and the Linux Kernel

1:20pm Thursday 15th January 2015

Aimee has been working in IT since 2000, and has a focus on mobile and web technologies. She has contributed and worked on the OLPC project, Meego, FireFoxOS and on the webside of things Drupal, Joomla, PHPBB, WordPress. Recently she has started playing with Yocto and rolling your own embedded Linux Distros. Her work in Open Source mobile devices saw her join the FireFoxOS Mobile Support team in Mozilla Portland office to assist with reporting technologies.

A world wide public speaker having presented in England, Scotland and Australia this year she added America onto her list with LinuxCon America in Chicago. She regularly helps mentor kids in programming in Australia, England and recently at OSCON in Portland training kids in Python.

An all over uber geek with a deep love of Open Source technologies and how companies and individuals can benefit from not reinventing the wheel.

Loves having long deep discussions about anything Linux and the history of Open Source and how it will eventually save us from the old paradigms of legacy code and forced silos... Will speak 733t for beers...

For more information on Aimee Maree and her presentation, see here.

You can follow her as @aimee_maree and don’t forget to mention #lca2015.



Martin Kealey

Martin Kealey

Bashing the shell: Advanced Scripting

10:40am Wednesday 14th January 2015

Martin Kealey has been hacking Unixlike systems since the mid 80's, and by now has forgotten how many programming languages he's forgotten. A program is never finished, but it can be elegant, it ought to be useful, and it must be bulletproof.

For more information on Martin and his presentation, see here.



Matthew Garrett

Matthew Garrett

IPMI because ACPI and UEFI weren't terrifying enough

4:35pm Thursday 15th January 2015

Matthew Garrett is a security developer at Nebula and an expert in the field of fourletter specifications (including ACPI, UEFI and IPMI) and the field of four letter words (the use of which would likely be a violation of the LCA code of conduct). These facts are probably not unrelated.

For more information on Matthew and his presentation, see here.

You can follow him as @mjg59 and don’t forget to mention #lca2015.

Twitter posts: 2014-12-15 to 2014-12-21

  • I never thought I’d be feeling safer here in Cambodia than back home in Sydney :( 21:10:44, 2014-12-15

Mercurial and Bitbucket workflow for Gecko development

While it sounds like I should really switch to a bookmark-based Mercurial workflow for my Gecko development, I figured that before I do that, I should document how I currently use patch queues and Bitbucket.

Starting work on a new bug

After creating a new bug in Bugzilla, I do the following:

  1. Create a new mozilla-central-mq-BUGNUMBER repo on Bitbucket using the web interface and use https://bugzilla.mozilla.org/show_bug.cgi?id=BUGNUMBER as the description.
  2. Create a new patch queue: hg qqueue -c BUGNUMBER
  3. Initialize the patch queue: hg init --mq
  4. Make some changes.
  5. Create a new patch: hg qnew -Ue bugBUGNUMBER.patch
  6. Commit the patch to the mq repo: hg commit --mq -m "Initial version"
  7. Push the mq repo to Bitbucket: hg push ssh://hg@bitbucket.org/fmarier/mozilla-central-mq-BUGNUMBER
  8. Make the above URL the default for pull/push by putting this in .hg/patches-BUGNUMBER/.hg/hgrc:

    [paths]
    default = https://bitbucket.org/fmarier/mozilla-central-mq-BUGNUMBER
    default-push = ssh://hg@bitbucket.org/fmarier/mozilla-central-mq-BUGNUMBER
    

Working on a bug

I like to preserve the history of the work I did on a patch. So once I've got some meaningful changes to commit to my patch queue repo, I do the following:

  1. Add the changes to the current patch: hg qref
  2. Check that everything looks fine: hg diff --mq
  3. Commit the changes to the mq repo: hg commit --mq
  4. Push the changes to Bitbucket: hg push --mq

Switching between bugs

Since I have one patch queue per bug, I can easily work on more than one bug at a time without having to clone the repository again and work from a different directory.

Here's how I switch between patch queues:

  1. Unapply the current queue's patches: hg qpop -a
  2. Switch to the new queue: hg qqueue BUGNUMBER
  3. Apply all of the new queue's patches: hg qpush -a

Rebasing a patch queue

To rebase my patch onto the latest mozilla-central tip, I do the following:

  1. Unapply patches using hg qpop -a
  2. Update the branch: hg pull -u
  3. Reapply the first patch: hg qpush and resolve any conflicts
  4. Update the patch file in the queue: hg qref
  5. Repeat steps 3 and 4 for each patch.
  6. Commit the changes: hg commit --mq -m "Rebase patch"

Credits

Thanks to Thinker Lee for telling me about qqueue and Chris Pearce for explaining to me how he uses mq repos on Bitbucket.

Of course, feel free to leave a comment if I missed anything useful or if there's a easier way to do any of the above.

Schedule for the lca2015 OpenStack miniconf

I am pleased to announce the linux.conf.au 2015 OpenStack miniconf programme. This will appear on the main conference schedule as well, but I am posting it here so I can provide the talk abstracts as well.

09:00 – 10:00 Main conference keynote by Eben Moglen
10:00 – 10:40 …morning tea…
10:40 – 11:00 Welcome by Michael Still



Welcome to the OpenStack miniconf. This talk will outline the plan for the day, and then briefly introduce the various components of OpenStack to be covered for those who haven’t seen them before.
11:00 – 11:30 TBA
11:30 – 11:35 …five minute break…
11:35 – 12:00 Introducing OpenStack Swift by John Dickinson



Swift is the OpenStack object storage system. It’s perfect for unstructured data like backups, server images, documents, and media. Swift is built for scale (including global deployments!) and handles all the placement, durability, and failure conditions so applications don’t have to worry about it. This talk will introduce Swift, as well as covering all the things the Swift PTL wished people knew before they deploy Swift for the first time.
12:00 – 12:20 Juju Deployments at Canonical by Brad Marshall



This talk with cover a brief history of Openstack deployments at Canonical and show how it has changed over time. It will focus on our current deployment methodology using Juju and MaaS, and the HA features we are taking advantage of.
12:20 – 13:20 …lunch…
13:20 – 13:45 Deploying Nova by Michael Still



Nova is one of the most commonly deployed components of OpenStack, as most installs want to provide access to compute resources. This talk by the Nova PTL will cover the various hypervisor options, what instance storage backend might meet your needs, and all those other decisions you need to work through when deploying nova.
13:45 – 14:10 Introducing OpenStack Neutron by Mark McClain



Neutron is the OpenStack networking component. It is responsible for creating tenant networks that separate traffic between tenants, as well as advanced features like load balancing and VPN as a service. Neutron is incredibly flexible, which comes at the cost of some complexity. Join Mark the former Neutron PTL as he walks through the

deployment options available to OpenStack users.
14:10 – 14:15 …five minute break…
14:15 – 14:40 Extending Horizon to work in your Deployment by David Lyle



Horizon out of the box doesn’t fully meet the needs of a running cloud and looks rather generic. Product managers complain that Horizon’s base theme does not meet corporate guidelines and administrators complain that they need more tools to manage the cloud. How does Horizon help solve this?

One of the main tenants of the Horizon program is extensibility. There are several established ways to get custom content into Horizon depending on your goals. External extensions, template customization and custom stylesheets can meet most customization needs.

The talk will present these methods for adding custom content and updating the style, point out the potential pitfalls, and share knowledge as a Horizon developer and a Horizon deployer.

14:40 – 15:00 Handling RabbitMQ Failures Gracefully with HAProxy : Sachi King



Almost all communication between services in OpenStack transverse though a message queue. The current default is RabbitMQ.

The RabbitMQ implementation in OpenStack currently lacks support for both Heartbeats and TCP Keepalive. Without these features, the RabbitMQ clients do not reconnect on failure, thus resulting in a complete API outage.

This talk will cover how we worked around this limitation to allow for graceful recovery on failure with HAProxy. While there are many ways to architect HAProxy in the RabbitMQ path, we’ll touch on what worked, and what did not.

15:00 – 15:40 …afternoon tea…
15:40 – 16:30 Selling Mist: Better Metering Through Ceilometer by Sharif Olorin



Recording usage measurements with high resolution and granularity provides many advantages for both public and private OpenStack deployments. External customers are happier because they know what they’re being billed for. Internal customers are happier because they can receive immediate feedback on efficiency improvements. System

operators are happier because they can diagnose problems more effectively, get woken up less frequently and be more confident about who to cluebat when they do.

Achieving this at scale with Ceilometer is nontrivial without sacrificing either data longevity or resolution. This talk presents one solution to the problem of storing high-resolution metrics from OpenStack over the long term using the Vaultaire time-series datastore. I’ll talk about the architecture of our metering system, a few of the challenges we faced getting this system into production, and what we learned from doing so.

Finally, I’ll talk briefly about the Gnocchi time-series-database-as-a-service project, why I think it’s awesome,

and how we at Anchor intend to integrate it into our OpenStack architecture.

16:30 – 16:35 …five minute break…
16:35 – 17:20 OpenStack Operations for Engineers by Alex Tesch, Daniel Martushev, and Anthony Rees



We will discuss the most popular installation tools for OpenStack based on Puppet and Ansible and the key advantages for each of them, as well as give a quick demo of a PackStack installation in 5 minutes. We will also delve into HEAT and run through a HOT example that will orchestrate a full two tier architecture in 5 minutes. The session will close with a tech preview talk of Sahara and a quick demo to provision a Hadoop cluster in OpenStack.

December 20, 2014

[life] Day 324: Christmas in the city

I got a bit of bonus time to myself in the morning, because Zoe had a late breakfast out with Sarah for her birthday, so I used the time to finish off another unit of my real estate licence course and get it into the mail.

After Sarah dropped Zoe off, she watched a bit of TV before we headed off to the doctor to have another go at freezing off the wart on her hand, and to follow up on the suspected chicken pox.

Zoe's fever had resolved itself, and her spots looked like they were starting to fade. The doctor thought she probably just had a viral rash, and it definitely wasn't chicken pox.

Armed with that good news, I definitely wanted to get out of the house in the afternoon, because Zoe had been watching far too much TV.

Zoe said she wanted to go to the park over at West End, and I wanted to take her into the city in the evening to look at the lights, so I thought a good way to achieve both goals would be to take public transport over to West End and then back to the city.

As the Hawthorne ferry terminal is closed for some upgrades, and I didn't fancy walking home with a tired Zoe from Bulimba late at night, we drove as close to the Bulimba ferry terminal as we could find a park, which was incidentally right next to the Love Street park. Zoe had a bit of a play there, before we walked to the Bulimba ferry terminal and took the cross river over to Teneriffe, and jumped on the CityGlider all the way to the park at West End.

Zoe had a great time playing in the park, which was nice and cool and shady, before we jumped on a CityCat back to the city. We got off at North Quay, and walked down to the Mall and into the Myer Centre to escape the heat.

I'd promised Zoe a bubble tea the next time we were in the Myer Centre, so we went to the bubble tea place and shared one of them.

After that we were just sitting on the Mall taking a break, and Anshu's Mum happened to wander past, so she hung out with us. We went and grabbed some sushi for dinner and then Anshu met up with us.

I wanted to catch the Myer Christmas Parade and Pantomime while we were in there, so we assumed a spot where the parade was due to turn right onto Albert Street and head to King George Square.

The Mall was absolutely packed by the time the parade made it up to where we were, and if Zoe hadn't been on my shoulders she wouldn't have seen anything. I'm glad she got to see though. It was pretty impressive, and even had a Santa sleigh with a couple of deer.

After that we headed over to King George Square with the intention of seeing the Christmas tree get lit up. First we had to sit through the pantomime, which wasn't really worth it. Visibility of the stage was poor, but we sat (or rather stood) through it. Then we had to watch the Gold Lotto City Hall Light Spectacular, which was actually pretty good. All sorts of stuff projected onto City Hall.

That all finished, and everyone started leaving, but the tree still didn't get lit up. Upon enquiry, it seemed that it hadn't survived the most recent storm or something. So that was a bit disappointing.

Anshu and her Mum had headed home during the pantomime, and we headed back to North Quay to get a CityCat back to Bulimba. There was quite a wait. I think the CityCat was running behind schedule or something, and Zoe was getting quite tired and having a bit of a meltdown. Then the fireworks started as a welcome distraction. I didn't even realise there were fireworks scheduled, so that was a pretty cool added bonus.

Zoe fell asleep on the CityCat when I was staring out the window. I had to wake her up when we got to Bulimba, and that didn't go terribly well either, and we had a messy trip back to the car.

We made it back home, and I managed to get Zoe into bed without too much more fuss.

Blogging, Music Production, and Experimentation - Part 4

A follow on from:


Have been struggling to come up with ideas for establishing myself within the music sector. Have been going through the possibilities and some of the following options look interesting.



When you are ready (have something worthy of selling to the public), submit your work to various music aggregators (and media outlets) for more advertising.

http://musicaggregator.blogspot.com.au/

http://musicaggregator.blogspot.com.au/p/add-your-music-blog.html

http://musicbloglist.com/

http://songtweak.com/



Hook up with relevant social groups to get you some interest.

https://www.facebook.com/AbletonUserGroupMelbourne?_fb_noscript=1

https://www.ableton.com/en/community/user-groups/

http://www.meetup.com/Ableton-Live-User-Group-Melbourne/



Other options include the usual web specific blogs.

https://soundcloud.com/

http://www.mixcloud.com/

https://bandcamp.com/ 


I've sometimes seen MIDI files being sold online. Who's to say that up and coming artists can't do the same for themselves. Even if you are just a composer or soemthing who's beginining to learn the business you still need to create stems and samples that may be worthy of selling (sample some of the discs from some music magazines) and you'll understand what I mean. Besides, a lot of the time you need composition pieces to be able to audition for music school (if you ever intend to do so). The easiest way that I can think of at the moment to gather interest is to basically, stick the sample on loop and then stick it on YouTube. You can sell it via an online market or else via something like, https://selz.com/

http://subaqueousmusic.com/free-dubstep-and-downtempo-midi-drums/

https://www.dubstepforum.com/forum/viewtopic.php?f=8&t=193790

http://www.nonstop2k.com/midi-files/archive.php?cid=50

http://www.download-midi.com/files/genre/Dubstep

http://www.partnersinrhyme.com/midi/index.shtml

http://www.dancemidisamples.com/download-free-samples.html

http://mididrumfiles.com/

https://www.loopmasters.com/genres/49-Dubstep/products/1062-MIDI-Focus-Dubstep-Synths

http://www.dancemidisamples.com/by-genre-45/dubstep.html

https://primeloops.com/ultimate-dubstep-drummer.html

http://www.midichords.com/midichords

http://mididb.com/



You may need to think about copyright difficulties if you decide to 'cover/copy' from another artist though.

http://www.quora.com/Are-downloaded-MIDI-files-copyright-free



Sell sound samples if you have anything worth sampling.

http://www.midiworld.com/sounds.htm



Sell synthesiser patch sets. Problem is that you often may not be able to sell anything if you don't have any music to be able to advertise your 'wares'. Stick the sample on loop on a group of notes and then run it through a presets at regular intervals to provide a sample of what the customer is being offered on YouTube.

http://alonso-sound.com/dt_catalog/alonso-thomas-gold-spire-soundset/



Sell music making templates. Problem is that like a lot of other things there is a huge market to that you need to deal with. It's a bit of a chicken and egg problem here. You need music to have people want to purchase the template?

http://subaqueousmusic.com/product-category/live-packs/



Another way is to simply make synthesiser software which is easily possible via Reaktor, create sample packs via Kontakt. A lot of the required documentation actually comes with the software to enable you to be able to create.

http://www.native-instruments.com/en/community/reaktor-user-library/other/10/all/all/all/latest/1/

http://www.reaktortips.com/search/label/Practical%20Reaktor



Have been having significant troubles with regards to running CPU load when running certain software synthesiser VSTs. 'Freezing' seems like the easiest option without having to upgrade hardware.

http://www.soundonsound.com/sos/nov07/articles/livetech_1107.htm

https://www.ableton.com/en/articles/reduce-cpu-load/

http://sonicbloom.net/en/ableton-live-tutorial-how-to-freeze-tracks-to-reduce-processing-power/



If you can't figure anything else for the moment try to monetise you're musical journey in the meantime.

http://www.theguardian.com/money/2011/sep/02/how-to-build-and-monetise-a-blog

http://www.wpcopilot.com.au/blog/monetize-wordpress-blog/

http://www.wpcopilot.com.au/affiliate-program/

http://www.blogmarketingacademy.com/top-10-blog-monetization-strategies-ranked/

http://www.problogger.net/make-money-blogging/


Which reminds me there are some interesting options out there for those of you looking to simplify you're blogging environment (if you're running multiple blogs. Note that some of these options are no longer relevant and some services such as Tumblr and YouTube already have such facilities builtin).

December 19, 2014

[life] Day 323: Another day of laying low and far too much TV watching

I started the day off with my last yoga class of the year. It was a really nice one.

Zoe still had a bit of a low-grade fever when Sarah dropped her off, but her spots didn't look any worse.

We watched Frosty the Snowman on Netflix, and then had some lunch and popped out to the library to refresh Zoe's library books. After we got home, we watched The Polar Express on QuickFlix.

Zoe then took another longish nap.

After she woke up, she watched a DVD from the library for a bit.

Sarah arrived to pick up Zoe just before the latest storm of the season was about the hit, so they made a hasty departure.

GMSK Modem Simulation

Modems are an interface between theoretical physics and what can actually be built. The laws of physics set the limits of modem performance, and ultimately the amount of power you need for a certain bit error rate at a receiver. With the right algorithm, we can reach the limits of modem performance.

I think that’s kind of cool. There aren’t many fields where we can do the best the Universe can offer with 20th century technology. For example an internal combustion powered car is only about 15% efficient in converting chemical energy into motion. Solar cells on your roof are also about 15% efficient. We can’t do practical nuclear fusion. But 6 billion GSM mobile phones have a modem that is 100% efficient in converting received radio energy into bits. Unless you are my 16 year old son and keeping forgetting to charge it.

GMSK Demodulators

This week I’ve been getting my head around GSM modems, and have worked up an Octave simulation of a couple of GMSK modems called gmsk.m. I started with this commonly used, non-coherent algorithm for GSM demodulation:

It has the advantage of being compatible with data-port capable legacy FM radios. However the best I can do in my simulations is 4.5dB away from theoretical. So I went looking for a better (hopefully close to ideal) demodulator. After some reading about MSK and GMSK and several days of confusion I eventually managed to make this “coherent” demodulator work (from the 1981 Murota paper listed below):

The adders on the RHS operate on bits and are implemented as XORs. I don’t fully understand the processing steps, especially the XORs at the end. It’s derived from an interpretation of MSK as a form of Offset QPSK, and mysteriously the inphase and quadrature arms operate at half the bit rate. But it works really well, so that’s enough for now.

The term “coherent” means we know the phase and frequency of the received signal. Coherent PSK and FSK modems have ideal performance, and often have matched filter and “integrate and dump” stages. The integrator can be seen as summing all of the energy in the bit, that’s the “Eb” part in Eb/No.

Here are the BER curves for the two modems on Eb/No and C/No scales:

The non-coherent modem is a leaving a lot of bits on the floor. I also note my coherent demod outperforms the laws of physics at high Eb/No. I think I’ll build a warp drive next.

These simulations are some distance from a practical modem. The coherent demod needs clock and phase recovery and a lot of real word testing. However this is all quite possible (it’s in every mobile phone) and I’ve worked through similar steps for the HF FDMDV modem.

The non-coherent modem starts to perform (a BER of less than 1E-2) at a C/No of around 50dB. Curiously, this is where analog FM modulators start to get happy, from the recent post on FSK over FM:

So the non-coherent demod is a nice match to legacy FM radios. I’m not sure if analog FM demodulators would be effective at lower C/Nos, even when teamed with the coherent demod. So I’m not convinced it’s possible to retrofit the coherent demod to existing FM radios, but it’s certainly realisable with a $20 SDR dongle.

GMSK Demod Walk Through

This section has some screen shots of the two demodulators in action. First, here is (one half) of the GMSK signal spectrum:

The lower plot is the cumulative power, and 99% of the power is at the 2460 Hz point, making 4920 Hz bandwidth total. This gives a BW/Rs ratio of 1.02, close to the 1.04 expected for BT=0.5 GMSK at Rs=4800Hz. Nice.

Here is the “eye diagram” of the non-coherent demod:

This explains why the non coherent demod struggles. The low pass filter introduces significant inter-symbol interference. One symbol affects the next one as the LPF smears the symbols into each other. The eye is quiet narrow, even with no noise. A modest amount of noise can close the eye and we get bit errors. We can’t widen the filter as it will let more noise power in.

Here is the filter and integrator outputs from the coherent demod, one plot for the cos (real) and sin (imaginary) arms, with no channel noise:

Here are the integrator outputs with an Eb/No of 8dB:

It’s almost the same! Quite a lot of noise hardly bothers it, the BER is about 1E-3 (1 in 1 thousand)!

Ideas for VHF FreeDV

Now Codec 2 at 1200 bit/s sounds OK at an error rate of 1% (1E-2). Reading off the curves that’s a C/No of 42.5dBHz at 4800 bit/s or 42.5 – 10log10(4800/1200) = 36.5dBHz at 1200 bit/s. We need about 47dBHz for a 12dB SNR (ie scratchy) analog FM copy, or 50dBHz for a good FM copy. So that makes a proposed 1200 bit/s Codec 2 system 10dB ahead of analog FM. I can currently work the local repeater on 500mW with my $50 FM HT, so this proposed system could do it on 50mW. Cool.

Hard to say if people will actually like using Codec 2 over VHF. Quality expectations are different to HF SSB, and people are used to high SNR FM. If most FM signals are strong the extra low level performance of a new digital mode may not be useful.

However if speech quality is king with all that system gain we could user higher quality speech codecs at a higher bit rate. If we have a good C/No we can increase the bit rate and hence speech quality, pushing against the “digital ceiling” in speech quality. One disadvantage of GMSK is that we can’t scale the bit rate in high C/No channels without making the RF bandwidth wider. mPSK is better at this, we can raise the number of bits/symbol and get a greater data throughput in the same RF bandwidth.

The extra system gain allows us to to explore other options. For example two channel TDMA would let us build diplexer free repeaters. This would require running the modem at 2400 bit/s, to get an average of 1200 bit/s. The hardware complexity would be similar to a $50 HT. A 1 watt TDMA repeater based on SDR could be built for $100, and do all sorts of clever things like form mesh networks with adjacent repeaters. Sprinkle them about hill tops in a humanitarian disaster situation, they could be treated as disposable.

I do think a new VHF DV mode must have some significant advantages to gain traction. Here are my current ideas:

  1. An entry level implementation using freely downloadable software that runs on a PC, a sound card, and legacy FM radios through the mic/spkr ports. People get frustrated when told to upgrade all of their radio hardware to one particular brand to use DV.
  2. Be an open standard, with a high performance open source implementation. No annoying closed source components, license fees, and encouraging rather than prohibiting experimentation.
  3. Outperform legacy analog and digital modes.
  4. Diplexor less, trivially simple repeaters.
  5. Variable speech quality levels.

GMSK Modem Resources

Here is a good treatment of various Digital Modulation schemes from Atlanta RF. The Dsplog site has a good explanation and Octave simulation of MSK that helped me get my head around coherent (G)MSK demodulators. I implemented the demodulator from the 1981 IEEE Trans paper “GSM Modulation for Digital Radio Telephony” from Murota and friends. I think this paper originally proposed using GMSK for digital mobile phones.

Music Production and Experimentation - Part 3

A follow on from:

http://dtbnguyen.blogspot.com.au/2014/12/music-production-and-experimentation.html



Have created 'Classical', 'Foreign Hip Hop and R&B', and 'Soundtrack' playlists on my YouTube profile. Not much there at the moment. I'll add more as time goes on.

https://www.youtube.com/channel/UCwVJG67iHHPbmBxuHVbyOlw/playlists



I've been looking at doing a music course of some sort for a while now (short course or even a degree). Fees can range from several hundred to several thousand dollars.

http://www.bhtafe.edu.au/courses/local/Pages/MUPF5.aspx

http://www.aim.edu.au/?gclid=CLfnmJeMyMICFVIDvAodhaUAsw

http://www.aim.edu.au/future-students/domestic-student-information/fees

http://www.aim.edu.au/courses/composition-music-production/entry-requirements

https://www.kangan.edu.au/courses/tafe-courses/browse-for-courses/course-detail?coursecode=2404

http://www.jmcacademy.edu.au/Course/Contemporary-Music-and-Performance.cfm

http://www.melbournepolytechnic.edu.au/sem/music-courses/?gclid=CO22hpeNyMICFUkGvAodmWUA0g

http://www.vu.edu.au/courses/advanced-diploma-of-music-cus60109

http://www.careerfaqs.com.au/online-courses/diploma-of-music-melbourne/

https://www.nida.edu.au/courses/vet/musical-theatre

http://www.melbournepolytechnic.edu.au/study-areas/creative-industries/music/?gclid=CJOz4fDnx8ICFVcJvAod5BkAeg#

http://www.cae.edu.au/web/?category=58

http://www.cae.edu.au/web/?cinfo=courseguides



There may be some government help but you must fit specific criteria.

http://www.melbournepolytechnic.edu.au/study-areas/creative-industries/music/?gclid=CJOz4fDnx8ICFVcJvAod5BkAeg

http://www.melbournepolytechnic.edu.au/shortcourses/song-writing-online

http://www.ctaonline.com.au/Government-Funding-Training-Courses.html

http://www.eaa.edu.au/index.php/prospective-students/government-funding

http://www.melbournepolytechnic.edu.au/fees/fees-for-local-students/

http://www.vic.gov.au/grants.html





There are, of course, some online options which will also provide certification of skills if you aren't keen on spending too much time on campus and/or don't have the time/dedication to go the other way. In most cases, you'll have to pass an audition of some sort though which involves a demonstration of proficiency, a portfolio, as well as possibly an academic pedigree (high school or private tuition).

http://www.quora.com/What-are-some-websites-similar-to-Coursera

https://www.coursera.org/course/classicalcomp

https://www.coursera.org/signature/course/classicalcomp/973841

http://www.quora.com/What-are-some-websites-similar-to-Coursera

http://ocw.mit.edu/courses/music-and-theater-arts/

http://ocw.mit.edu/courses/

http://ocw.mit.edu/courses/music-and-theater-arts/21m-303-writing-in-tonal-forms-i-spring-2009/

http://www.matchacollege.com/blog/2008/get-into-the-rhythm-50-open-courseware-collections-for-musicians/

http://www.musictheory.net/

http://musescore.org/

http://www.pianopractice.org/





There will be some websites which will often place there reference materials behind walls of some sort but with intelligent searching you can often find a way around these limitations without having to register/signup for further marketing material.

https://s3.amazonaws.com/bm-marketing-assets/handbooks/music-theory-handbook.pdf

http://bundles2.bittorrent.com/berklee-online/pdf/Berklee%20Online%20-%20Piano%20Handbook.pdf


http://bundles2.bittorrent.com/berklee-online/



Some material on programming synthesisers.

http://www.musicradar.com/tuition/tech/26-essential-synth-tutorials-224845/

http://exellon.net/book/The_Complete_Synthesizer.pdf

http://www.infekted.org/virus/files/HowardScarr-VirusTutorial-ProgrammingAnalogueSynths.pdf



A place where you can purchase parts to experiment with .

http://littlebits.cc/

http://littlebits.cc/kits/synth-kit



There are a lot of tablet based music making applications now .

http://www.musicradar.com/news/tech/the-best-android-music-making-apps-in-the-world-today-276167

http://www.musicradar.com/news/tech/the-best-android-music-making-apps-in-the-world-today-276167/4

http://www.musicradar.com/news/tech/free-music-software-the-best-audio-app-and-plug-in-downloads-on-the-net-255880



Sometimes you don't have a vocalist nearby. An option is to try computerised vocals.

http://www.bestservice.de/en/virtual_instruments/vocals.html

http://howtomakeelectronicmusic.com/how-to-create-computerized-vocals-in-fl-studio-without-vocalist

https://www.dubstepforum.com/forum/viewtopic.php?f=8&t=263246



Sometimes, I have difficulties with getting the type of sound that I want and/or need. Here are some itneresting manuals.

http://lakeishak129.files.wordpress.com/2014/01/the-mixing-engineers-handbook-2nd.pdf

http://www.bengribaudo.com/audio-engineering/free-learning-resources

http://www.martin-audio.com/userguides/GUIDES/MANUALS/Engineer%20User%20Guide.pdf

http://www.yamahaproaudio.com/global/en/training_support/selftraining/



Having being having some frustrations with sound libraries being built with later versions of Kontakt/Reaktor. Has been frustrating me to the point where I thought is there a way to bypass the checks (easily possible with many simple system checks. I only investigated as I'm on a mobile prepaid connection at the moment which means that I am trying limit my downloads.).

http://www.native-instruments.com/forum/threads/ewql-libraries-with-more-recent-kontakt.148838/

http://www.native-instruments.com/en/support/knowledge-base/show/904/installing-different-versions-of-the-same-native-instruments-application-on-one-computer/

http://www.native-instruments.com/en/support/all-downloads/

http://co.native-instruments.com/index.php?id=freeupdates

http://www.native-instruments.com/?id=freeupdates

http://www.native-instruments.com/en/support/downloads/

https://co.native-instruments.com/?id=updates



Some interesting tips with regards to 'House Music'.

http://modeaudio.com/magazine/deep-house-5-production-essentials

http://www.soundonsound.com/sos/oct99/articles/20tips.htm

http://en.wikipedia.org/wiki/List_of_progressive_house_artists

http://en.wikipedia.org/wiki/Kaskade

http://en.wikipedia.org/wiki/Progressive_house

http://en.wikipedia.org/wiki/List_of_progressive_house_artists

https://topdeejays.com/genres//





Setup a new Tumblr account. Basically, a mirror of my Twitter account.

http://dtbnguyen.tumblr.com/

December 18, 2014

JSON Encoding in WordPress 4.1

Earlier in the year, we noticed a problem with JSON in WordPress. The JSON spec very explicitly notes that it only supports UTF-8, whereas WordPress can use any character set that MySQL supports. So, for sites that didn’t use MySQL’s utf8 or utf8mb4 character sets, this generally presented itself as json_encode() returning false; which resulted in either invalid JSON being returned from an Ajax request, or a JavaScript error in some embedded code.

To fix this, WordPress 4.1 now includes a shiny new function that we recommend for all plugins and themes:

wp_json_encode()

Usage for wp_json_encode() is identical to json_encode(). It works by trying a json_encode(), then checking if that encoded properly. If it failed, wp_json_encode() will go through whatever lump of data you passed to it, convert it to UTF-8, then return it as JSON.

Have fun with WordPress 4.1, and see you next year for new and exciting functionality coming to a WordPress install near you!

Speaker Feature: Andrew Tridgell, Daniel Vetter, Zane Gilmore

Andrew Tridgell

Andrew Tridgell

Flying with Linux

1:20 pm Friday 16 January 2015

Andrew is a Linux addict who has become obsessed with autopilots. When not coding he is testing (and sometimes crashing!) search and rescue aircraft in an attempt to bring affordable search and rescue UAVs to the world.

For more information on Andrew and his presentation, see here.



Daniel Vetter

Daniel Vetter

Botching up IOCTLs

3:40 pm Friday 16 January 2015

Daniel Vetter started to contribute to the linux kernel a few years ago when the graphics stack rewrite broke his old laptop and all the developers were busy fixing newer machines. From then on it went all downhill and since 2011 he's enjoying the fun and frustration of working on the Linux graphics driver stack professionally at Intel's OTC. Since 2012 he is also the kernel maintainer of the Intel graphics driver.

As the i915 maintainter Daniel managed to get the quality issues under control and the driver off the infamous No. 1 spot on the kernel's regression list - where it beat entire subsystems. He established solid testing procedures, created an entire new testsuite for the kernel and enforced strict requirements for merging patches.

Additionally Daniel spent a lot of time improvimg the drm (direct rendering manager) subsystem. Daniel was a major driver behind the effort to write documentation for all driver interfaces. He removed lots of old cruft and separated the new-world modesetting driver from the horror show of the legacy drivers and reducing the rather hapzardous ioctl interface surface for drivers.

For more information on Daniel and his presentation, see here.

You can follow him as @danvet and don’t forget to mention #lca2015.


Zane Gilmore

Zane Gilmore

FLOSSing in the lab – What Plant and Food Research does with FLOSS

3:40pm Thursday 15th January 2015

Zane is a developer and computer consultant for scientists working for the Plant and Food Research Institute. He writes software (mostly in Python) and advises scientists on how to facilitate their science. He has worked as a developer since 2000 after he got a degree in Computer Science at University of Canterbury.

For more information on Zane and his presentation, see here.



Python Software Foundation Outreach Programme

AUCKLAND, New Zealand – Thursday 18th December 2014 – linux.conf.au 2015 organisers are proud to announce an update to our funding programme!



Python Software Foundation Outreach Programme

LCA 2015 and the Python Software Foundation are proud to support our community. To supplement the existing InternetNZ Diversity fund the PSF have donated additional funds for candidates within the Python community.

The Python Software Foundation appreciates LCA 2015's commitment to diversity, and is proud to add its own contribution in the form of the Python Software Foundation Outreach Fund. Much system software for Linux is written in Python (including both distro level tools and open source system management projects like OpenStack, Salt and Ansible), and Linux is often the default choice for deployment of Python web services and other networked applications. This contribution is intended to strengthen ties between the Python and Linux communities by assisting under-represented delegates who participate in the Python community in the region but, without financial assistance, would not be able to attend LCA 2015.

For more information please see our funding registration page.



About linux.conf.au

linux.conf.au is one of the world's best conferences for free and open source software! The coming linux.conf.au; LCA 2015 will be held at the University of Auckland, New Zealand from Monday 12 January to Saturday 16 January 2015. LCA 2015 will be fun, informal and seriously technical, bringing together Free and Open Source developers, users and community champions from around the world. LCA 2015 is the third time linux.conf.au has been held in New Zealand. The first was in Dunedin in 2006 and the second was in Wellington in 2010.

For more information please visit our website

About Linux Australia

Linux Australia is the peak body for Linux User Groups (LUGs) around Australia, and as such represents approximately 5000 Australian Linux users and developers. Linux Australia facilitates the organisation of this international Free Software conference in a different Australasian city each year.

For more information see: http://www.linux.org.au/

Emperor Penguin Sponsors

LCA 2015 is proud to acknowledge the support of our Emperor Penguin Sponsors, Catalyst IT, HP and IBM, and our diversity sponsor Internet NZ.

For more information about our sponsors click below -

        

[life] Day 322: Suspected chicken pox and laying low

At bath time last night, Zoe had some spots on her torso. Interestingly, he first reaction upon seeing them in the mirror was "Chicken!". I was more sceptical, because she's been vaccinated for chicken pox, and wasn't showing other symptoms. I thought it may have been from crawling along the tree branch. So I put her to bed and said we would check them in the morning.

After a good night's sleep, but a ridiculously early start at 5am, she still had spots, but was otherwise fine, so I decided to make a doctor's appointment. I managed to get one for 12:15am, so we just hung out at home in the morning, and Zoe watched some TV. It was ridiculously hot, so it was a good day to be indoors with the air conditioning cranked up.

After an early lunch, we went to the doctor. She said that Zoe had a slight fever, but she was also doubtful if it looked like chicken pox. She said to give it 48 hours to see what happened. She said if it was chicken pox, it'd be a mild case, given she's vaccinated.

I guess the school holidays is as good a time as any to be out of commission. Hopefully we both won't go too stir crazy.

She also said that given how Zoe was presenting we didn't need to go too overboard on isolation, so we made a quick trip out to Westfield Carindale to pick up some birthday cards, before heading home again.

Zoe's temperature got a bit higher in the afternoon, and she ended up taking a long, late nap on the couch. I used the time to work on the next unit of my real estate licence course, and made some good progress.

I pretty much had to wake her up when it was time for Sarah to pick her up, and she still had a low grade fever, but was otherwise in good spirits.

December 17, 2014

Speaker Feature: Brenda Wallace, David Airlie, Dirk Hohndel

Brenda Wallace

Brenda Wallace

EQNZ – crisis response, open source style

1:20pm Wednesday 14th January 2015

Brenda Wallace is an Open Source contibutor from Wellington. She likes all the programming languages, but especially the ones beginning with P. Brenda works with the mighty wonderful people at Rabid Tech. Also, she's not a werewolf.

For more information on Brenda and her presentation, see here.



David Airlie

David Airlie

Displayport MST: why do my laptop dockoutputs not work?

2:15pm Wednesday 14th January 2015

David Airlie is the upstream kernel graphics maintainer and work for Red Hat out of their Brisbane office. He is part of the maintainer team for Red Hat Enterprise Linux graphical components. He recently branched into virtualisation for graphics project and is trying to create a fully open source virtualised 3D graphics device capable of supporting modern operating-system requirements. He also gets distracted from this task my many random other graphics projects, of which support for Displayport MST is one.

For more information on David and his presentation, see here.



Dirk Hohndel

Dirk Hohndel

Sustaining Momentum - or the Gap Between User Request and Developer Capacity

3:40pm Friday 16th January 2015

Dirk is Intel's Chief Linux and Open Source Technologist. He has been an active developer and contributor in the Linux space since its earliest days, among other roles, he worked as Chief Technology Officer of SuSE and as Unix Architect at Deutsche Bank. Dirk joined Intel in 2001 and since then has been working in the Software and Services Group with a focus on the technology direction of Intel's Open Source Technology Center and Intel's engagements in open source. His interests range from kernel to user interaction, from massively scalable cloud services to mobile operating systems. He is an active contributor in many open source projects and organizations, various program committees and advisory boards and currently maintains the Subsurface dive log project. Dirk holds a Diploma in Mathematics and Computer Science from the University of Würzburg, Germany. He lives in Portland, OR, USA.

For more information on Dirk and his presentation, see here.

Running Django on Docker: a workflow and code

It has been an extremely long time between beers (10 months!). I’ve gotten out of the habit of blogging and somehow I never blogged about the talk I co-presented at PyCon AU this year on Pallet and Forklift the standard and tool we’ve developed at Infoxchange to help make it easier to develop web-applications on Docker1.

Infoxchange is one of the few places I’m aware of that runs Docker in prod. If you’re looking at using Docker to do web development, it’s worth checking out what we’ve been doing over on the Infoxchange devops blog.

  1. There’s also Straddle Carrier, a set of Puppet manifests for loading Docker containers on real infrastructure, but they’ve not been released yet as they rely too much on our custom Puppet config.

December 16, 2014

[life] Day 321: Some tide pooling and tree climbing, park fun and a haircut

Zoe slept all night and even slept in a little bit, which was nice, given her late night.

I thought that given it was a nice day and the tide times were well suited for it, that we could go out to Wellington Point again, and walk out to King Island. I suspect the school holidays are going to be a bit of a "best of" things that we've done throughout the year.

I whipped up a quick picnic lunch after breakfast, and we made it out there in good time for low tide. We didn't end up walking all the way out to King Island. Zoe had a great time looking at all the baby crabs running around and went fossicking for shells instead. After a while doing that and not making a lot of progress towards King Island, she'd had enough, so we turned around and had a bit of a play in the park, which included some climbing on the big climbing tree. Zoe wasn't particularly confident this time around, and was resorting to shimmying along the tree, which wasn't terribly compatible with her choice of clothing.

After that, we pulled out the picnic blanket and had a lovely picnic in the shade. The weather really was beautiful today. Not a cloud in the sky, not too hot, and a nice cool breeze.

After lunch, we went back to the playground, and Zoe had another go climbing the tree. This time, after I pointed out that it was just like the balance beam at Tumble Tastics, she veritably charged up the tree walking upright.

She was actually a little too confident, and once she reached the trunk headed up the higher branch running perpendicular to the long low one. I lost my nerve once she got about 10 metres above the ground and out over the concrete and picnic tables, and asked her to come back down. She was doing fine, but I was more worried about how she was going to turn around, and if she was going to lose her nerve and get stuck up there.

I was glad when she made it back down safe and sound. I'm proud to have such a confident and capable daughter, but sometimes it's hard being a free range parent.

We headed home after that, and did a spot of grocery shopping for dinner on the way home. Zoe wanted to go to the park, so after we got home and unpacked, we biked back to the park for a little while, before biking to our haircut appointment.

After that, it was dinner and bed time. I'm hoping we'll have another good night's sleep.

[life] Day 320: Home handyman stuff and visiting relatives

The screws had pulled out of the door frame on the bottom hinges of Zoe's door. I'd found a pretty straightforward looking Instructable on how to repair the situation. As I had a lot of dowel left over from when I built a couple of clothes lines for Zoe, I cut a few short pieces from the long length I had.

Unfortunately getting an exact length was impossible, so I had a bit of dowel sticking out that I needed to sand down, so after Sarah dropped Zoe off, we headed over to Bunnings to get a small drill-mounted sanding disc so I could sand them flush with the door frame.

After I successfully fixed the door, I thought we should go visit Bryce, since it's been quite a while since we've seen him. He wasn't feeling up for an outing, so we just visited him in the Masonic Centre at Sandgate and took him some mince pies.

Since we were relatively close to my parents, we dropped in on them for lunch afterwards, and we watched the photo slideshow DVD that Zoe's Kindergarten had given me on her second-last day, and flicked through her "yearbook" and portfolio.

Zoe napped in the car on the way home, and based on some behaviour in the morning, I figured she could do with it, so I let her nap a bit longer and we drove into the city to pick up her lunchbox from Biome. I probably blew the benefit of shaving on shipping by using their "click and collect" option by paying to park in the Myer Centre, but Zoe was certainly perkier after her nap.

After that, we went home, and I made a quick dinner. I wasn't going to attend my final Thermomix branch meeting because I had Zoe, but I decided in the morning, that given it wasn't a "school night", and the meeting was closer to home than usual. that I might try getting her all ready for bed and bringing her with me.

Fortunately I still had her Trunki all packed with amusements from our US trip in July, so I brought that with us, and that kept her sufficiently amused. She came up for a few cuddles at various points, but was otherwise happy to play quietly at the back of the room. She was really well behaved, and my Group Leader again complimented her on how well behaved she was.

That made for a bit of a late bedtime, but she did well. The nap in the car definitely helped.

Speaker Feature: Jonathan Corbet, Josh Berkus, Mark McClain

Jonathan Corbet

Jonathan Corbet

The kernel report

11:35am Wednesday 14th January 2015

Jonathan Corbet is the lead editor of LWN.net, co-author of Linux Device Drivers, a member of the Linux Foundation's Technical Advisory Board, and a occasional kernel contributor.

For more information on Jonathan and his presentation, see here.



Josh Berkus

Josh Berkus

PostgreSQL Replication Tutorial

1:20pm Wednesday 14th January 2015

Josh Berkus is best known as a core team member of the global PostgreSQL database project. He's also CEO of PostgreSQL Experts Inc., and sits on the board of several database startups. As well as PostgreSQL, Josh dabbles Python, Perl, Redis, and Docker these days, but ask him for an update when you see him. He's had a Linux desktop since 1998.

For more information on Josh and his presentation, see here.



Mark McClain

Mark McClain

Tunnels and bridges: A drive through OpenStack Networkings

1:20pm Thursday 15th January 2015

Mark McClain is a Senior Principal Architect at Yahoo!, member of the OpenStack Technical Committee, and is a core reviewer of the the OpenStack Networking Project. He served as the Technical Lead for Neutron during the Havana and Icehouse cycles. Mark has 14 years of software development experience and OpenStack Networking combines two of his favorite interests: networking and Python.

For more information on Mark and his presentation, see here.



December 15, 2014

Ghost







ISBN: 9781416520870

LibraryThing

Trigger warning, I suppose.























This like a Tom Clancy book, but with weirder sex, much of it non-consensual. Also, not as well thought through or as well researched or as believable. I couldn't bring myself to finish it.



Tags for this post: book john_ringo terrorism nuclear

Related posts: Citadel; Hell's Faire; Princess of Wands; East of the Sun, West of the Moon; Watch on the Rhine; Cally's War
Comment Recommend a book

December 14, 2014

How are we going with Nova Kilo specs after our review day?

Time for another summary I think, because announcing the review day seems to have caused a rush of new specs to be filed (which wasn't really my intention, but hey). We did approve a fair few specs on the review day, so I think overall it was a success. Here's an updated summary of the state of play:







API







API (EC2)



  • Expand support for volume filtering in the EC2 API: review 104450.
  • Implement tags for volumes and snapshots with the EC2 API: review 126553 (fast tracked, approved).




Administrative



  • Actively hunt for orphan instances and remove them: review 137996 (abandoned); review 138627.
  • Check that a service isn't running before deleting it: review 131633.
  • Enable the nova metadata cache to be a shared resource to improve the hit rate: review 126705 (abandoned).
  • Implement a daemon version of rootwrap: review 105404.
  • Log request id mappings: review 132819 (fast tracked).
  • Monitor the health of hypervisor hosts: review 137768.
  • Remove the assumption that there is a single endpoint for services that nova talks to: review 132623.




Block Storage



  • Allow direct access to LVM volumes if supported by Cinder: review 127318.
  • Cache data from volumes on local disk: review 138292 (abandoned); review 138619.
  • Enhance iSCSI volume multipath support: review 134299.
  • Failover to alternative iSCSI portals on login failure: review 137468.
  • Give additional info in BDM when source type is "blank": review 140133.
  • Implement support for a DRBD driver for Cinder block device access: review 134153.
  • Refactor ISCSIDriver to support other iSCSI transports besides TCP: review 130721 (approved).
  • StorPool volume attachment support: review 115716.
  • Support Cinder Volume Multi-attach: review 139580 (approved).
  • Support iSCSI live migration for different iSCSI target: review 132323 (approved).




Cells







Containers Service







Database







Hypervisor: Docker







Hypervisor: FreeBSD



  • Implement support for FreeBSD networking in nova-network: review 127827.




Hypervisor: Hyper-V







Hypervisor: Ironic







Hypervisor: VMWare



  • Add ephemeral disk support to the VMware driver: review 126527 (fast tracked, approved).
  • Add support for the HTML5 console: review 127283.
  • Allow Nova to access a VMWare image store over NFS: review 126866.
  • Enable administrators and tenants to take advantage of backend storage policies: review 126547 (fast tracked, approved).
  • Enable the mapping of raw cinder devices to instances: review 128697.
  • Implement vSAN support: review 128600 (fast tracked, approved).
  • Support multiple disks inside a single OVA file: review 128691.
  • Support the OVA image format: review 127054 (fast tracked, approved).




Hypervisor: libvirt







Instance features







Internal



  • A lock-free quota implementation: review 135296.
  • Automate the documentation of the virtual machine state transition graph: review 94835.
  • Fake Libvirt driver for simulating HW testing: review 139927 (abandoned).
  • Flatten Aggregate Metadata in the DB: review 134573 (abandoned).
  • Flatten Instance Metadata in the DB: review 134945 (abandoned).
  • Implement a new code coverage API extension: review 130855.
  • Move flavor data out of the system_metadata table in the SQL database: review 126620 (approved).
  • Move to polling for cinder operations: review 135367.
  • PCI test cases for third party CI: review 141270.
  • Transition Nova to using the Glance v2 API: review 84887.
  • Transition to using glanceclient instead of our own home grown wrapper: review 133485 (approved).




Internationalization



  • Enable lazy translations of strings: review 126717 (fast tracked).




Networking







Performance



  • Dynamically alter the interval nova polls components at based on load and expected time for an operation to complete: review 122705.




Scheduler



  • A nested quota driver API: review 129420.
  • Add a filter to take into account hypervisor type and version when scheduling: review 137714.
  • Add an IOPS weigher: review 127123 (approved, implemented); review 132614.
  • Add instance count on the hypervisor as a weight: review 127871 (abandoned).
  • Allow extra spec to match all values in a list by adding the ALL-IN operator: review 138698 (fast tracked, approved).
  • Allow limiting the flavors that can be scheduled on certain host aggregates: review 122530 (abandoned).
  • Allow the remove of servers from server groups: review 136487.
  • Convert get_available_resources to use an object instead of dict: review 133728 (abandoned).
  • Convert the resource tracker to objects: review 128964 (fast tracked, approved).
  • Create an object model to represent a request to boot an instance: review 127610 (approved).
  • Decouple services and compute nodes in the SQL database: review 126895 (approved).
  • Enable adding new scheduler hints to already booted instances: review 134746.
  • Fix the race conditions when migration with server-group: review 135527 (abandoned).
  • Implement resource objects in the resource tracker: review 127609.
  • Improve the ComputeCapabilities filter: review 133534.
  • Isolate Scheduler DB for Filters: review 138444.
  • Isolate the scheduler's use of the Nova SQL database: review 89893.
  • Let schedulers reuse filter and weigher objects: review 134506 (abandoned).
  • Move select_destinations() to using a request object: review 127612 (approved).
  • Persist scheduler hints: review 88983.
  • Refactor allocate_for_instance: review 141129.
  • Stop direct lookup for host aggregates in the Nova database: review 132065 (abandoned).
  • Stop direct lookup for instance groups in the Nova database: review 131553 (abandoned).
  • Support scheduling based on more image properties: review 138937.
  • Trusted computing support: review 133106.




Scheduling







Security



  • Make key manager interface interoperable with Barbican: review 140144 (fast tracked, approved).
  • Provide a reference implementation for console proxies that uses TLS: review 126958 (fast tracked, approved).
  • Strongly validate the tenant and user for quota consuming requests with keystone: review 92507.




Service Groups







Sheduler



  • Add soft affinity support for server group: review 140017 (approved).




Tags for this post: openstack kilo blueprint spec nova

Related posts: Specs for Kilo; One week of Nova Kilo specifications; Compute Kilo specs are open; Specs for Kilo; Juno nova mid-cycle meetup summary: slots; Juno nova mid-cycle meetup summary: nova-network to Neutron migration



Comment

Soft deleting instances and the reclaim_instance_interval in Nova

I got asked the other day how the reclaim_instance_interval in Nova works, so I thought I'd write it up here in case its useful to other people.



First off, there is a periodic task run the nova-compute process (or the computer manager as a developer would know it), which runs every reclaim_instance_interval seconds. It looks for instances in the SOFT_DELETED state which don't have any tasks running at the moment for the hypervisor node that nova-compute is running on.



For each instance it finds, it checks if the instance has been soft deleted for at least reclaim_instance_interval seconds. This has the side effect from my reading of the code that an instance needs to be deleted for at least reclaim_instance_Interval seconds before it will be removed from disk, but that the instance might be up to approximately twice that age (if it was deleted just as the periodic task ran, it would skip the next run and therefore not be deleted for two intervals).



Once these conditions are met, the instance is deleted from disk.



Tags for this post: openstack nova instance delete

Related posts: One week of Nova Kilo specifications; Specs for Kilo; Juno nova mid-cycle meetup summary: nova-network to Neutron migration; Juno Nova PTL Candidacy; Juno nova mid-cycle meetup summary: scheduler; Juno nova mid-cycle meetup summary: ironic



Comment

Experiments with hardening OpenWRT: applying the grsecurity patches

A well known set of security enhancements to the Linux kernel is the grsecurity patch.  The grsecurity patch is a (large) patch that applies cleanly against selected supported stock Linux kernel versions. It brings with it PAX, which protects against various well known memory exploits, plus  a number of other hardening features including logging time and mount changes. In particular it enables features such as Non-executable stack (NX) on platforms that do not provide NX in hardware, such as MIPS devices and older x86.

OpenWRT hardening

OpenWRT is a widely adopted embedded / router Linux distribution. It would benefit greatly from including grsecurity, in particular given most MIPS platforms do not support NX protection in hardware. However for a long time the differences between the OpenWRT kernel and the kernel revisions that grsecurity is supported on have been significant and would likely have taken an extreme effort to get working, let alone get working securely.

This is a shame, because there is malware targeted at consumer embedded routers, and it must only be a matter of time before OpenWRT is targeted.  OpenWRT is widely regarded as relatively secure compared to many consumer devices, at least if configured properly,  but eventually some bug will allow a remote binary to be dropped. It would be helpful if the system can be hardened and stay one step ahead of things.

The OpenWRT development trunk (destined to become the next release, ‘Chaos Calmer’ in due course) has recently migrated most devices to the 3.14 kernel tree.  Serendipidously this aligns with the long term supported grsecurity revision 3.14.  When I noticed this I figured I’d take a look at whether it was feasible to deploy grsecurity with OpenWRT.

Applying grsecurity – patch

In late November I pulled the latest OpenWRT sources and the kernel version was 3.14.25, which I noticed matched the current grsecurity stable branch 3.14.25

The grsecurity patch applies cleanly against a stock kernel, and OpenWRT starts with a stock kernel and then applies a series of patches designed to extend hardware support to many obscure embedded things not present in the mainline kernel, along with patches that reduce the memory footprint. Some of the general patches are pushed upstream but may not yet have been accepted, and some could be backports from later kernels.  Examples of generic patches  include a simplified crash report.

Anyway, I had two choices, and tried them both: apply grsecurity, then the OpenWRT patches; or start with the OpenWRT patched kernel.  In both cases there were a number of rejects, but there seemed to be less when I applied grsecurity last. I also decided this would be easier for me to support for myself going forward, a decision later validated successfully.

OpenWRT kernel patches are stored in two locations; generic patches applying against any platform, then platform specific patches.  My work is tested against the Carambola2, an embedded MIPS board supported by the ‘ar71xx’ platform in OpenWRT, so for my case, there were ar71xx patches.

To make life easy I wrote a script that would take a directory of OpenWRT kernel patches, apply to a git kernel repository and auto-commit. This allowed me to use gitg and git difftool to examine things efficiently.  It also worked well with using an external kernel tree to OpenWRT so I didnt have to worry yet about integrating patches into OpenWRT. This script is on github, it should be easily adaptable for other experiments.

(Note: to use an external tree, managed by git, use config options like the following:

CONFIG_KERNEL_GIT_CLONE_URI="path/to/linux-stable"
CONFIG_KERNEL_GIT_LOCAL_REPOSITORY="path/to/linux-stable"
CONFIG_KERNEL_GIT_BRANCH="owrt_grsec_v3.14.25"

There were four primary rejects that required fixing.  This involved inspecting each case and working out what OpenWRT had changed in the way. Generally, this was caused because one or the other had modified the end of the same structure or macro, but luckily it turned out nothing significant and I was able to easily reconcile things. The hardest was because OpenWRT modifies vmstat.c for MIPS and the same code was modified by grsecurity to add extra memory protections.  At this point I attempted to build the system, and discovered three other minor cases that broke the build. These mispatches essentially were due to movements in one or two lines, or new code using internal kernel API modified by grsecurity, and were also easily repaired.  The most difficult mispatch to understand was where OpenWRT rewrites the kernel module loader code, apparently to make better use of MIPS memory structures and it took me a little while to understand how to try and fix things.

The end result is on github at https://github.com/pastcompute/openwrt-cc-linux-3.14.x-grsecurity

Applying grsecurity – OpenWRT quirks

One strange bug that had to be worked around was some new dependency in the kernel build process, where extra tools that grsecurity adds were not being built in the correct order with other kernel prerequisites.

In the end I had to patch how OpenWRT builds the kernel to perform an extra ‘make olddefconfig‘ to sort things out.

I also had to run ‘make kernel_menuconfig‘ and turn on grsecurity.

As the system built, I eventually hit another problem area: building packages. This was a bit of an ‘OH-NO’ moment as I thought it had the potential to become a big rabbit hole. Luckily as it turned out, only one package was affected in the end: compat-wireless.  This package builds some extra user space tools and wifi drivers, and used a macro, ACCESS_ONCE, that was changed by grsecurity to be more secure; and required use of a new macro to make everything work again, ACCESS_ONE_RW. There were rather a number of calls to this macro, but luckily it turned out to be fixable using sed!

Booting OpenWRT with grsecurity – modules not loading

I was able to then complete an INITRAMFS image that I TFTP’d into my carambola2 via uboot.

Amazingly the system booted and provided me with a prompt.

U-Boot 1.1.4-g33f82657-dirty (Sep 16 2013 - 16:09:28)

=====================================
CARAMBOLA2 v1.0 (AR9331) U-boot

 

Starting kernel ...

[ 0.000000] Linux version 3.14.26-grsec (andrew@atlantis4) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r43591) ) #3 Sun Dec 14 18:08:52 ACDT 2014

I then discovered that no kernel modules were loading. A bit of digging and it turns out that a grsecurity option, CONFIG_GRKERNSEC_RANDSTRUCT  will auto-enable CONFIG_MODVERSIONS. One thing I learned at this point is that OpenWRT does not support CONFIG_MODVERSIONS=y, due to the way it packages modules with its packaging system. So an iteration later with the setting disabled, and everything appeared to be “working”

Testing OpenWRT with grsecurity

Of course, all this work is moot if we cant prove it works.

Easy to check is auditing. For example, we now had these messages:

[ 4.020833] grsec: mount of proc to /proc by /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0, parent /[swapper:0] uid/euid:0/0 gid/egid:0/0
[ 4.020833] grsec: mount of sysfs to /sys by /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0, parent /[swapper:0] uid/euid:0/0 gid/egid:0/0
[ 4.041666] grsec: mount of tmpfs to /dev by /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0, parent /[swapper:0] uid/euid:0/0 gid/egid:0/0

However, the acid test would be enforcement of the NX flag. Here I used the code from http://wiki.gentoo.org/wiki/Hardened/PaX_Quickstart to test incorrect memory protections. Result:

[19111.666360] grsec: denied RWX mmap of <anonymous mapping> by /tmp/bad[bad:1497] uid/euid:0/0 gid/egid:0/0, parent /bin/busybox[ash:467] uid/euid:0/0 gid/egid:0/0
mmap failed: Operation not permitted

Success!

Revisiting Checksec, and tweaking PAX

In an earlier blog I wrote about experimenting with checksec.  Here I used it to double-check that the binaries were built with NX protection. MOst were, due to a patch I previously submitted to OpenWRT for MIPS. However, openssl was missing NX. It turns out that OpenSSL amongst everything else it has been discussed for this year, uses assembler in parts of the encryption code! I was able to fix this by adding the relevant linker ‘.note.GNU-stack‘ directive.

The PAX component can be tweaked using the paxctl command, so I had to build that with the OpenWRT toolchain to try it out. I discovered that it doesnt work for files on the JFFS2 partition, only in the ramdisk. Further to enable soft mode, you need to add a kernel boot command line argument. To do this for OpenWRT, edit a file called target/linux/$KERNEL_PLATFORM/generic/config-default where in my case, $KERNEL_PLATFORM is ar71xx

Moving Targets

Right in the middle of all this, OpenWRT bumped the kernel to 3.14.26. So I had to exercise a workflow in keeping the patch current.  As it happened the grsecuroty patch was also updated to 3.14.26 so I presume this made life easier.

After downloading the stock kernel and pulling the latest OpenWRT, I again re-created the patch series, then applied grsecurity 3.14.26.  The same four rejects were present again, so fingers crossed I cherry-picked all my work from 3.14.25 onto 3.14.26. As luck would have it this was one smooth rebase!

Recap of OpenWRT grsecurity caveats

  • CONFIG_GRKERNSEC_RANDSTRUCT is not compatible with the OpenWRT build system; using it will prevent modules loading
  • Some packages may need to be modified to support NX – generally, if these use assembly language and don’t use the proper linker directive.
  • For some reason paxctl only seems to work on files in /tmp not in the JFFS overlay. This is probably only a problem when debugging
  • Your experience with the debugger gdb will probably be sub-optimal unless you put the debug target on /tmp and use paxctl to mark it with exceptions

Summary

After concluding the above, I converted the change set from my local Linux working copy into a set of additional patches on OpenWRT and rebuilt everything to double check.

The branch ‘ar71xx-3.14.26-grsecurity’ in https://github.com/pastcompute/openwrt-cc-ar71xx-hardened has all the work, along with some extra minor fixes I made to some other packages related to checksec scan results.

THIS MAY EXPLODE YOUR COMPUTER AND GET YOU POWNED! This has been working for me on one device with minimal testing and is just a proof of concept.

December 13, 2014

FSK over FM

I’m interested in developing a VHF mode for FreeDV. One intriguing possibility is to connect a modem to legacy analog FM radios, which would allow them to be re-purposed for digital voice. One candidate is FSK at 1200 bit/s, which is often used over FM for APRS. This operates through FM radios using the mic/speaker ports on $50 HTs, no special data ports required.

So I want to know the performance of FSK over FM in terms of Bit Error Rate (BER) for a given SNR. That got me thinking. When you send FSK through a SSB radio, it faithfully mixes the tones up to RF and you get FSK over the channel. The SSB radio just adds a frequency translation step. So we can model FSK like this:

However sending a FSK modem signal through a FM radio is very different:

FSK over FM is not FSK when you look at the over the air waveform. The spectrum is no longer two tones bouncing back and forth. So what is it?

I wrote a simulation called fsk.m to find out. This involved building up a FSK modem, and an analog FM radio simulation. The modem took me only a few hours but I was struggling with the analog FM simulation for a week! In particular making my FM demodulator get the same results as the theory. FM is a bit old school for me, so I had to hit the ARRL handbook and do a bit of research.

FSK Modem

It’s a BEL202 simulation (as used for the APRS physical layer); 1200/2200 Hz tones, 1200 bit/s. I’m using the integrate and dump demodulation method and it matches the theoretical curves for non-coherent BFSK. Here is the FSK modem in action. First the FSK time domain signal and spectrum. The spectrum is a bunch of energy between 1200 and 2200 Hz. Makes sense as the modulator keeps moving back and forth between those two frequencies.

The next figure shows the sames signals with a 10dB SNR. Although the time domain signal looks bad, it actually has a BER one error in every 1000 bits (1E-3). The reason it looks so bad is that in the time domain we are seeing the noise from the entire bandwidth (our sample rate is Fs=96kHz). The demod effectively filters most of that out.

This next plot shows the output from the 1200 and 2200Hz integrators in the FSK demodulator for the 10dB SNR case. The height measures the energy of the tone during that bit period. As we would expect, they are mirror images. When one detects a large amount of energy, the other detects a small amount of the other tone.

Analog FM

The next step was to build a simulation of the modulator and demodulator in an analog FM radio. I wrote some code to test the input Carrier to Noise Ratio (CNR) versus output SNR. The test signal was a 1000 Hz tone, and the modulator had a maximum deviation of 5kHz, and a maximum input audio frequency of 3 kHz. After the demodulator I notched out the 1000 Hz tone so I could measure the noise power, the input to the notch filter was signal plus noise.

Here is the spectrum at the FM demodulator input for a 1000 Hz test tone:

The top plot is the tx signal centred on a 24 kHz carrier, in the bottom plot it has been mixed down to baseband and filtered. The FM signal is 16 kHz wide, as per Carsons rule. Here is the output of the FM demodulator:

At the top is a nice sine wave, and the bottom also shows the sine wave. You can see the effect of the output 3kHz low pass filter used to limit the noise bandwidth of the demod output.

When tested over a range of CNR inputs, I achieved output SNRs (red) in line with the text books (green):

At about 9dB the demodulator falls away from theory as the FM demodulator falls over, this is pretty typical. The theoretical model I have used is only valid above this 9dB threshold. You often hear this threshold effect in FM. The blue line is SSB for comparison. Over a certain threshold FM does quite a bit better in terms of output SNR for the same input CNR.

FSK over FM

OK so lets combine the simulations and look at the BER performance:

Oh dear. If my simulations are accurate, it appears FSK over FM is a lemon. About 7dB worse than regular FSK for the same BER. So using a FSK modem over a SSB radio would allow you to use 7dB less power than running the same modem through a FM radio. Coherent PSK is 3dB better again that FSK so that would get you a 10dB improvement. Simple FSK or PSK transmitters are easy to build too, and needing 7-10dB less output power would simplify them again (e.g. 100mW versus 1W).

Here is the spectrum at the FM demodulator input when sending FSK:

Note the FM spectrum looks nothing like regular FSK “over the air”, which looks like this:

So What went Wrong?

Given the plot of analog FM performance (say compared to SSB) above I had expected better results from FSK over FM.

I think I know where the problem lies. The input CNR is a measure of carrier power to noise power in the input bandwidth of the demodulator. Another way of looking at the VHF channel noise is a “floor”, which can be modelled as the average noise power per 1 Hz of bandwidth, called No.

So the Universe has given us a fixed “noise floor”, which will be the same for any modem. The FM demod input bandwidth is much wider, so it’s sucking up much more noise from the channel, which the poor demodulator has to deal with.

Lets plot the analog FM demod performance again, this time against C/No rather than C/N:

This takes into account the noise bandwidth, everything is “normalised” to the noise floor. When the C/No is beneath 48dB SSB looks much better. We can see a 7dB improvement over FM at low C/No values. This also explains why the microwave guys prefer SSB for their long shots.

Here is the BER curve scaled for C/No:

Conclusion

It appears the key to good modem performance is the RF bandwidth of the signal. Given a constant noise floor No, the signal bandwidth sets the total noise power N=NoB the demodulator has to deal with.

This has put me off the idea of a FreeDV VHF mode based on BEL202 FSK through legacy FM radios. I’d really like to come up with a mode that has sparkling BER versus SNR performance. I haven’t spent years making Codec 2 operate at low bit rates just to throw those gains away in the modem!

Couple of ways forward:

  • Take a look at GMSK.
  • Consider developing a version of the SM1000 into an (open source) VHF SDR radio that can do PSK. Not as crazy as it seems. We are already planning a HF SDR version. Radio hardware is getting simple now the signal processing is all moving to software. We can make the modem so efficient that the PA can be modest (100s of mW).
  • Dream up waveforms that can pass through legacy FM radios and have a low over-the air bandwidth. For example FSK that shifts between 300 and 400 Hz. In the past I’ve dreamed up new Codec 2 modes (1300 and 450 bit/s) to suit the properties of HF channels. So why not design a modem waveform to suit us? Go open source!
  • Cop the performance hit and use BEL202 FSK. It might still be useful to use legacy FM radios for DV even with a 7dB loss in modem performance. It seems to work fine for APRS. If your C/No is high (as is often the case) then FSK over FM will have zero errors.

[life] Day 317: Doctor again, final Tumble Tastics, a good deed and general fun

Zoe slept solidly until 6:48am. It was overcast and cooler, so I dare say that helped. Uninterrupted sleep is always nice. We had a nice snuggle in bed before we started the day.

First up, we had another doctor's appointment so the doctor could have another go at freezing off the wart on her hand. Despite some initial uncertainty, Zoe was much braver this time, and the doctor got to really hit it this time. Zoe was very proud of herself.

After the obligatory Freddo Frog for bravery, we headed home via the Valley to clear my PO box.

After a little bit of TV, we scootered to Tumble Tastics for her final class.

Tumble Tastics has been really great for Zoe. Zoe's always enjoyed gymnastics, and has definitely enjoyed this. She was very fond of Mr Fletcher, her teacher (she seems to really like male teachers) and especially loved the rope swing they had in the classroom. I was personally impressed by the theme that they did each week, and their ability to keep the activities in the relatively small room fresh and varied each week. They use the limited space that they have quite effectively. The fact that it was an easy distance from home was a bonus.

On our way back home, we discovered a stray dog on the side of Hawthorne Road. I checked its collar, and it had a mobile phone number on it, so I gave it a call. It turned out the owner was down at the supermarket, and his wife was at home with a baby, so I offered to return the dog for him.

It was only about a 500 metre walk, but it was very back-breaking, as the dog was pretty dumb and wouldn't follow us, so I head to lead it by the collar all the way, which involved me having to walk bent over all the way. Zoe wanted to help, but he was a bit to big and heavy for her to lead.

He was an interesting cross-breed. He had the markings of a blue heeler, but the head and general body shape of a terrier of some sort.

Due to some ambiguous letterboxes, we ended up at the the wrong house (off by one) and this house had a black Siamese cat that emerged from a boat parked in the front yard when I knocked on the door. Of course the dog decided to chase off after the cat, and I thought all was lost at that point, but he came back after having chased the cat away.

We then proceeded to the right house, returned the dog and went home for a well earned lunch.

After lunch, we went for a walk in the rain to post a letter. Zoe had a great time puddle jumping in her rain boots. We also made an opportunistic Christmas present purchase, and then went home again.

We had an unplanned afternoon of silly play for a while, with lots of running around and tickles and laughter. It was nice. Our downstairs neighbour, Deana, popped up to hang out for a bit as well, which was nice.

Zoe watched a bit of TV after that, and then Sarah arrived to pick her up.

December 12, 2014

USB product IDs for documentation - success

Motivation

In a previous posting I reported a lack of success when enquiring of the USB Implementors' Forum if a Vendor ID had been reserved for documentation.

To recap my motivation, a Vendor ID -- or at least a range of Product IDs -- is desirable to:

  • Avoid defamation, such as using a real VID:PID to illustrate a "workaround", which carries the implication that the product is less-than-perfect. Furthermore, failing to check if a VID:PID has actually been used is "reckless defamation".

  • Avoid consumer law, such as using a real VID:PID to illustrate a a configuration for a video camera, when in fact the product is a mouse.

  • Avoid improper operation, as may occur if a user cuts-and-pastes an illustrative example and that effects a real device.

  • Avoid trademark infringment.

For these reasons other registries of numbers often reserve entries for documentation: DNS names, IPv4 addresses, IPv6 addresses.

Allocation of 256 Product IDs, thanks to OpenMoko

OpenMoko has been generous enough to reserve a range of Product IDs for use by documentation:

0x1d50:0x5200 through to 0x1d50:0x52ff

Note carefully that other Product IDs within Vendor ID 0x1d50 are allocated to actual physical USB devices. Only the Product IDs 0x1d50:0x5200 through to 0x1d50:0x52ff are reserved for use by documentation.

My deep thanks to OpenMoko and Harald Welte.

Application form

The application form submitted to OpenMoko read:

  • a name and short description of your usb device project

    Documentation concerning the configuration of USB buses and devices.

    For example, documentation showing configuration techniques for Linux's udev rules.

    The meaning of "documentation" shall not extend to actual configuration of a actual device. It is constrained to showing methods for configuration. If an VID:PID for an actual device is required then these can be obtained from elsewhere.

    OpenMoko will not assign these "Documentation PIDs" to any actual device, now or forever.

    Operating systems may refuse to accept devices with these "documentation VID:PIDs". Operating systems may refuse to accept configuration which uses these "documentation VID:PIDs".

  • the license under which you are releasing the hardware and/or software/firmware of the device

    The documentation may use any license. Restricting use to only free documentation is problematic: the definition of "free" for documents is controversial; and it would be better if the PID:VIDs were well known and widely used by all authors of technical documentation.

  • a link to the project website and/or source code repository, if any

    Nil, one can be created if this is felt to be necessary (eg, to publicise the allocation).

  • if you need multiple Product IDs, please indicate + explain this at the first message, rather than applying for a second ID later

    Approximately 10.

December 11, 2014

[life] Day 316: Bike riding play date and picnic

Zoe woke up at around 1:30am. I think the fact that her nightlight had gotten unplugged didn't help matters, and despite fixing that up, she jumped into bed with me at 1:50am.

We had a slow start to the day, but that said, I did manage to bake a batch of mince pies and make pastry for a quiche before we headed out at 9:30am, so it wasn't an unproductive morning.

I'd organised with Kelley to have a bike riding play date with Chloe at the Minnippi Parklands. I figured that since Chloe can already ride a bike, it might encourage Zoe.

It was a pretty hot morning, and not a lot of attempted bike riding happened before Zoe had had enough. No major breakthroughs happened, but it was very handy having a second adult. I think I need to put Zoe's bike seat up, as she's grown a bit since she first started trying to learn.

After we gave up on the bikes, the girls went and played on the pretend aeroplane and air traffic control tower for the rest of the morning, and we watched a storm roll in.

By early afternoon, the storm was looking a bit ominous, and Kelley had to be back at school, so we dropped them back home, and Zoe played for a bit at Chloe's place before we headed home to get ready for swim class.

In the mean time, the storm hit and appeared to pass, so we drove to swim class, but there was still lightning around, so swim class was canceled.

We headed back home so I could finish making dinner. Zoe was pretty tired from the day's activities, so I'm hoping she has a good sleep tonight.

[life] Day 315: End of Kindergarten

Well, the day finally arrived. Zoe graduated from Kindergarten.

I started the morning failing to go for a run again. I should just give up until after Summer I think. I had my chiropractic adjustment and did some blogging, before heading out to Zoe's Kindergarten for their farewell morning tea.

The morning tea was nice, and we were free to take our kids home afterwards, so we were out of there by about midday.

The Kindergarten year feels like it's flown by so quickly. I've been really happy with the Seven Hills C&K. I'm grateful my friend Kim told me about C&K while there was still time to get Zoe a place, and that I've been able to have the year off to allow her to go. I think it's definitely a better environment than long day care. The transition statement, which I guess can best be described as an exit report card for Zoe was absolutely lovely. Time will tell, but I think it has prepared her well for Prep next year.

It was also great to be able to serve on the Kindergarten's Parent Advisory Group committee this year. That gave some insight into how the Kindergarten, and C&K in general operate.

Seven weeks of school holidays lie ahead of us, which I'm sure will fly by pretty quickly.

Megan came over with her Mum in the afternoon for a play date, and I prepared some more mince pies.

Zoe and I went out for dinner with my cousin, Renata, to celebrate Zoe's graduation from Kindergarten and we had a nice dinner out.

SM1000 Part 9 – First Betas

Edwin and his team at Dragino have hand assembled the first two SM1000 Beta units in Shenzhen. I’m working with him to perform some initial tests while we wait a few days for the prototype enclosures to be made. Then Rick and I will both get a SM1000 shipped to us for testing. We’ve found a few little issues so far which we will correct before the Qty 100 beta run later this month.







skiboot-4.1

I just posted this to the mailing list, but I’ve tagged skiboot-4.1, so we have another release! There’s a good amount of changes since 4.0 nearly a month ago and this is the second release since we hit github back in July.

For the full set of changes, “git log” is your friend, but a summary of them follows:

  • We now build with -fstack-protector and -Werror
  • Stack checking extensions when built with STACK_CHECK=1
  • Reduced stack usage in some areas, -Wstack-usage=1024 now.
    • Some functions could use 2kb stack, now all are <1kb
  • Unsafe libc functions such as sprintf() have been removed
  • Symbolic backtraces
  • expose skiboot symbol map to OS (via device-tree)
  • removed machine check interrupt patching in OPAL
  • occ/hbrt: Call stopOCC() for implementing reset OCC command from FSP
  • occ: Fix the low level ACK message sent to FSP on receiving {RESET/LOAD}_OCC
  • hardening to errors of various FSP code
    • fsp: Avoid NULL dereference in case of invalid class_resp bits
    • abort if device tree parsing fails
    • FSP: Validate fsp_msg in fsp_queue_msg
    • fsp-elog: Add various NULL checks
  • Finessing of when to use error log vs prerror()
  • More i2c work
  • Can now run under Mambo simulator (see external/mambo/skiboot.tcl) (commonly known as “POWER8 Functional Simulator”)
  • Document skiboot versioning scheme
  • opal: Handle more TFAC errors.
    • TB_RESIDUE_ERR, FW_CONTROL_ERR and CHIP_TOD_PARITY_ERR
  • ipmi: populate FRU data
  • rtc: Add a generic rtc cache
  • ipmi/rtc: use generic cache
  • Error Logging backend for bmc based machines
  • PSI: Drive link down on HIR
  • occ: Fix clearing of OCC interrupt on remote fix

So, who worked on this release? We had 84 csets from 17 developers. A total of 3271 lines were added, 1314 removed (delta 1957).

Developers with the most changesets
Stewart Smith 24 28.6%
Benjamin Herrenschmidt 17 20.2%
Alistair Popple 8 9.5%
Vasant Hegde 6 7.1%
Ananth N Mavinakayanahalli 5 6.0%
Neelesh Gupta 4 4.8%
Mahesh Salgaonkar 4 4.8%
Cédric Le Goater 3 3.6%
Wei Yang 3 3.6%
Anshuman Khandual 2 2.4%
Shilpasri G Bhat 2 2.4%
Ryan Grimm 1 1.2%
Anton Blanchard 1 1.2%
Shreyas B. Prabhu 1 1.2%
Joel Stanley 1 1.2%
Vaidyanathan Srinivasan 1 1.2%
Dan Streetman 1 1.2%
Developers with the most changed lines
Benjamin Herrenschmidt 1290 35.1%
Alistair Popple 963 26.2%
Stewart Smith 344 9.4%
Mahesh Salgaonkar 308 8.4%
Ananth N Mavinakayanahalli 198 5.4%
Neelesh Gupta 186 5.1%
Vasant Hegde 122 3.3%
Shilpasri G Bhat 39 1.1%
Vaidyanathan Srinivasan 24 0.7%
Joel Stanley 21 0.6%
Wei Yang 20 0.5%
Anshuman Khandual 15 0.4%
Cédric Le Goater 12 0.3%
Shreyas B. Prabhu 9 0.2%
Ryan Grimm 3 0.1%
Anton Blanchard 2 0.1%
Dan Streetman 2 0.1%
Developers with the most lines removed
Mahesh Salgaonkar 287 21.8%
Developers with the most signoffs (total 54)
Stewart Smith 44 81.5%
Vasant Hegde 4 7.4%
Benjamin Herrenschmidt 4 7.4%
Vaidyanathan Srinivasan 2 3.7%
Developers with the most reviews (total 2)
Vasant Hegde 2 100.0%

December 10, 2014

Keynote Speaker - Bob Young

Bob Young

The LCA 2015 team are honoured to announce our third Keynote speaker - Bob Young, founder and chairman of Lulu.com, co-founder of Red Hat and the Center for Public Domain.

Bob's presentation is scheduled for 09:00 am Wednesday, 14 January 2015

Bob Young is the founder and chairman of Lulu.com, a premiere international marketplace for new digital content on the Internet, with more than 300,000 recently published titles and more than 15,000 new creators from 80 different countries joining each week.

Lulu.com, founded in 2002, is Young's most recent endeavour. The success of this company has earned Young notable recognition; he was named one of the "Top 50 Agenda-Setters in the Technology Industry in 2006" and was ranked as the fourth "Top Entrepreneur for 2006," both by Silicon.com.

In 1993, Young co-founded Red Hat (NYSE: RHT), the open-source software company that gives hardware and software vendors a standard platform on which to certify their technology. Red Hat is a Fortune 500 company and chief rival to Microsoft. His success at Red Hat won him industry accolades, including nomination as one of Business Week's "Top Entrepreneurs" in 1999

Before founding Red Hat, Young spent 20 years at the helm of two computer-leasing companies that he founded. His experiences as a high tech entrepreneur combined with his innate marketing savvy led to Red Hat's success. His book, "Under the Radar", chronicles how Red Hat's open source strategy successfully won wide industry acceptance in a market previously dominated by proprietary binary-only systems. Young has also imparted the lessons learned from his entrepreneurial experiences through his contributions to the books to "You've GOT to Read This Book!" and "Chicken Soup for the Entrepreneur's Soul."

In 2000, Young co-founded the Center for Public Domain, a non-profit foundation created to bolster healthy conversation of intellectual property, patent and copyright law, and the management of the public domain for the common good. Grant recipients included the Electronic Frontier Foundation, the Creative Commons, the Free Software Foundation, and the Future of Music Coalition.

In addition to enjoying fly fishing, Young collects calculators and antique typewriters, a nod to his beginnings as a typewriter salesman and can usually be found sporting a pair of red socks. However, instead of red on his head, Young now tips his orange hat.

The LCA 2015 Auckland Team

[life] Day 314: Kindergarten, startup stuff

I wanted to start the day with a run, but like so many mornings before this one, I just couldn't be bothered. I've really fallen out of the habit.

Instead, I managed to knock over another unit of my real estate licence course by 9:30am. It turned out to be a short and sweet unit, which was great. I'm happy to be down to only four units to go by the end of Kindergarten. It's not the highly optimistic progress that I'd hoped, but being down to the last quarter of the course is still a nice milestone to go into the school holidays at.

To atone for my lack of running, I ended up wandering all over the neighbourhood instead. First in one direction to drop a dish back to Kelley, then in another direction to the post office to mail off the assessment, and then back the other way again to put a brochure in a prospect's mailbox. Google Fit was very happy with me.

After doing a bunch of random stuff at home, I caught a bus into the city for a lunch meeting, and then a taxi home in time to pick Zoe up from Kindergarten.

We popped out to Bunnings to pick up a tap timer for the common area gardens, and then got home before the storm of the day hit.

I did a spot of baking for Zoe's Kindergarten end of year morning tea, and Sarah arrived to pick Zoe up.

The storm didn't really produce much other than a spectacular light show. I haven't seen so much lightning since being back in Brisbane, and it was very impressive. I did miss a good electrical storm living in California...

I closed out the day with a nice yoga class.

December 09, 2014

LUV Beginners December Meeting: SUSE Linux

Dec 20 2014 12:30
Dec 20 2014 16:30
Dec 20 2014 12:30
Dec 20 2014 16:30
Location: 

RMIT Building 91, 110 Victoria Street, Carlton South

Terry Kemp will demonstrate installation and provide an overview of Open SUSE 13.2 and if time allows an overview of SUSE Studio.

Terry is a member of LUV and long-time Linux user from the early days of Slackware -- until one day he saw at a LUV install fest at MLC an install of SUSE, which he has been using since. He was on the committee of the Melbourne PC Users Group and convenor of their Linux and Open Souce SIG.

LUV would like to acknowledge Red Hat for their help in obtaining the Buzzard Lecture Theatre venue and VPAC for hosting.

Linux Users of Victoria Inc., is an incorporated association, registration number A0040056C.

December 20, 2014 - 12:30

read more

[life] Day 313: Kindergarten, errands and podiatrist

I had a pretty busy morning. Zoe woke up around 12:45am complaining about a sore foot or something. I never quite got to the bottom of it, but I resettled her and got her back to sleep.

She then woke up at 6am for the day, and we managed to breeze through the morning super easily (for a change), with enough time for me to put laundry away and pump up the bike tyres and still arrive at Kindergarten right on opening time. It was all rather amazing.

The Kindergarten director asked me if I happened to have 40 CD sleeves "because I was a computer person", so I offered to go pick some up for her.

I biked back home, and fixed up one of my real estate licence course units that I had to resubmit due to a couple of mistakes, and then headed out in the car.

I debated going to OfficeWorks, which would have resulted in more back and forth, or trying K Mart at Cannon Hill. I ended up going for K Mart, and they didn't have any. Neither did Dick Smith or the post office. I got lucky at one of the cheap shops, and managed to get a pack of 100. I did manage to pick up some cheap plain t-shirts for Zoe to wear under her sun dresses to protect her shoulders, so it wasn't a completely wasted trip.

I dropped the sleeves back into the Kindergarten, and then mailed off the corrected coursework and headed back home.

There was another storm looming at around pick up time, so I drove back to Kindergarten. They've already started end of year clean up stuff, and they've taken down all the stuff from this year from the walls, and the Kindergarten looks shocking stark now.

My health insurance covers podiatry, so I figured I might as well get Zoe checked out before we buy school shoes. I'd made an appointment for 3pm at the myFootDr headquarters over in Camp Hill, where my neighbour Meg happens to work.

Zoe was initially not keen on going, but once we got there, she was fine. They were running a bit behind, so we watched some TV in the waiting room. After watching Wild Vets, Zoe's decided she doesn't want to be a vet any more.

We had a really nice podiatrist, and Zoe was very comfortable with her, and happy to go through the examination. The podiatrist was very impressed with Zoe's physical abilities and general balance, and said she was well ahead of her milestones, which was pretty impressive. I chalk that up to all of the varied physical activities she's done this year.

She said normally she wouldn't try and put a 4 and a half year old on the treadmill for video gait analysis, but given how good Zoe had been, she gave it a shot. Zoe did fine.

I'm really glad that I took her to the podiatrist, because I got some good general advice about what to expect with Zoe's growth given her body shape, and we bought a more appropriate shoe type for her foot than I'd have otherwise bought at the uniform shop. I also got a pair of running shoes for her as well. Zoe had heaps of fun to boot.

The storm hit while we were there, but fortunately there was no hail in it. It had mostly receded by the time we left. We popped in to the post office on the way home, and then the weather turned a bit foul again, and we timed it just right to pick up Anshu from the ferry terminal on the way home.

Sarah arrived not long after that to pick Zoe up.

[tech] A geek Dad goes to Kindergarten with a box full of Open Source and some vegetables

Zoe's Kindergarten encourages parents to come in and spend some time with the kids. I've heard reports of other parents coming in and doing baking with the kids or other activities at various times throughout the year.

Zoe and I had both wanted me to come in for something, but it had taken me until the last few weeks of the year to get my act together and do something.

I'd thought about coming in and doing some baking, but that seemed rather done to death already, and it's not like baking is really my thing, so I thought I'd do something technological. I just wracked my brains for something low effort and Kindergarten-age friendly.

The Kindergarten has a couple of eduss touch screens. They're just some sort of large-screen with a bunch of inputs and outputs on them. I think the Kindergarten mostly uses them for showing DVDs and hooking up a laptop and possibly doing something interactive on them.

As they had HDMI input, and my Raspberry Pi had HDMI output, it seemed like a no-brainer to do something using the Raspberry Pi. I also thought hooking up the MaKey MaKey to it would make for a more fun experience. I just needed to actually have it all do something, and that's where I hit a bit of a creative brick wall.

I thought I'd just hack something together where based on different inputs on the MaKey MaKey, a picture would get displayed and a sound played. Nothing fancy at all. I really struggled to get a picture displayed full screen in a time efficient manner. My Pi was running Raspbian, so it was relatively simple to configure LightDM to auto-login and auto-start something. I used triggerhappy to invoke a shell script, which took care of playing a sound and an image.

Playing a sound was easy. Displaying an image less so, especially if I wanted the image loaded fast. I really wanted to avoid having to execute an image viewer every time an input fired, because that would be just way too slow. I thought I'd found a suitable application in Geeqie, because it supported being out of band managed, but it's problem was it also responded to the inputs from the MaKey MaKey, so it became impossible to predictably display the right image with the right input.

So the night before I was supposed to go to Kindergarten, I was up beating my head against it, and decided to scrap it and go back to the drawing board. I was looking around for a Kindergarten-friendly game that used just the arrow keys, and I remembered the trusty old Frozen Bubble.

This ended up being absolutely perfect. It had enough flags to control automatic startup, so I could kick it straight into a dumbed-down full screen 1 player game (--fullscreen --solo --no-time-limit)

The kids absolutely loved it. They were cycled through in groups of four and all took turns having a little play. I brought a couple of heads of broccoli, a zucchini and a potato with me. I started out using the two broccoli as left and right and the zucchini to fire, but as it turns out, not all the kids were as good with the "left" and "right" as Zoe, so I swapped one of the broccoli for a potato and that made things a bit less ambiguous.

The responses from the kids were varied. Quite a few clearly had their minds blown and wanted to know how the broccoli was controlling something on the screen. Not all of them got the hang of the game play, but a lot did. Some picked it up after having a play and then watching other kids play and then came back for a more successful second attempt. Some weren't even sure what a zucchini was.

Overall, it was a very successful activity, and I'm glad I switched to Frozen Bubble, because what I'd originally had wouldn't have held up to the way the kids were using it. There was a lot of long holding/touching of the vegetables, which would have fired hundreds of repeat events, and just totally overwhelmed triggerhappy. Quite a few kids wanted to pick up and hold the vegetables instead of just touch them to send an event. As it was, the Pi struggled to play Frozen Bubble enough as it was.

The other lesson I learned pretty quickly was that an aluminium BBQ tray worked a lot better as the grounding point for the MaKey MaKey than having to tether an anti-static strap around each kid's ankle as they sat down in front of the screen. Once I switched to the tray, I could rotate kids through the activity much faster.

I just wish I was a bit more creative, or there were more Kindergarten-friendly arrow-key driven Linux applications out there, but I was happy with what I managed to hack together with a fairly minimal amount of effort.

December 07, 2014

[life] Day 310: Doctor, shopping, Tumble Tastics and a washed out Movies in the Park

Zoe slept solidly until 7am, which was lovely.

I'd made an appointment with Zoe's doctor to have some funny looking spots on her chest looked at. The spots were nothing, but the doctor decided to try and freeze the wart off Zoe's hand, which I hadn't been prepared for. Zoe was very brave about it though. The doctor wants to give it another hit in a week.

I've been wanting to get a portable shade tent for the beach for a while, and at BCF it's a seasonal item, so I had to wait for them to come into season. We headed over to BCF after the doctor.

BCF really is a poor cousin to REI. I miss REI. We did run into one of Zoe's Kindergarten teachers at BCF, so that was a bit of a treat for Zoe.

By the time we were done with that, it was getting close to time for Tumble Tastics, so we headed back home to get ready, and then Zoe wanted to go by car because it was hot.

We just chilled out at home after lunch, and I was watching the weather radar while debating the virtues of trying to go to the Hawthorne Markets and Councillor Shayne Sutton's last Movies in the Park night for the year. There was a pretty decent looking storm brewing.

In the end, I decided to wing it, and we headed off to the markets with umbrellas and blankets and camp chairs. I felt like a bit of a pack horse. As luck would have it, it started to rain a little bit half way there, and more earnestly once we arrived.

The upside was the line for free facepainting was non-existent, and Zoe also got to do some free craft activities without too much competition. Santa arrived not long after that.

The movie screening was moved inside the Morningside Panthers clubhouse, but the weather had turned most people away. There were probably only about 40 die hards that bothered to stick around.

The movie was Arthur Christmas, which wasn't something I was familiar with. It was pretty good though, if a little over Zoe's head. She enjoyed it nevertheless.

It was still raining lightly at the end of the movie, so we walked home with our umbrellas, and I got Zoe to bed.

December 05, 2014

BTRFS Status Dec 2014

My last problem with BTRFS was in August [1]. BTRFS has been running mostly uneventfully for me for the last 4 months, that’s a good improvement but the fact that 4 months of no problems is noteworthy for something as important as a filesystem is a cause for ongoing concern.

A RAID-1 Array

A week ago I had a minor problem with my home file server, one of the 3TB disks in the BTRFS RAID-1 started giving read errors. That’s not a big deal, I bought a new disk and did a “btrfs replace” operation which was quick and easy. The first annoyance was that the output of “btrfs device stats” reported an error count for the new device, it seems that “btrfs device replace” copies everything from the old disk including the error count. The solution is to use “btrfs device stats -z” to reset the count after replacing a device.

I replaced the 3TB disk with a 4TB disk (with current prices it doesn’t make sense to buy a new 3TB disk). As I was running low on disk space I added a 1TB disk to give it 4TB of RAID-1 capacity, one of the nice features of BTRFS is that a RAID-1 filesystem can support any combination of disks and use them to store 2 copies of every block of data. I started running a btrfs balance to get BTRFS to try and use all the space before learning from the mailing list that I should have done “btrfs filesystem resize” to make it use all the space. So my balance operation had configured the filesystem to configure itself for 2*3TB+1*1TB disks which wasn’t the right configuration when the 4TB disk was fully used. To make it even more annoying the “btrfs filesystem resize” command takes a “devid” not a device name.

I think that when BTRFS is more stable it would be good to have the btrfs utility warn the user about such potential mistakes. When a replacement device is larger than the old one it will be very common to want to use that space. The btrfs utility could easily suggest the most likely “btrfs filesystem resize” to make things easier for the user.

In a disturbing coincidence a few days after replacing the first 3TB disk the other 3TB disk started giving read errors. So I replaced the second 3TB disk with a 4TB disk and removed the 1TB disk to give a 4TB RAID-1 array. This is when it would be handy to have the metadata duplication feature and copies= option of ZFS.

Ctree Corruption

2 weeks ago a basic workstation with a 120G SSD owned by a relative stopped booting, the most significant errors it gave were “BTRFS: log replay required on RO media” and “BTRFS: open_ctree failed”. The solution to this is to run the command “btrfs-zero-log”, but that initially didn’t work. I restored the system from a backup (which was 2 months old) and took the SSD home to work on it. A day later “btrfs-zero-log” worked correctly and I recovered all the data. Note that I didn’t even try mounting the filesystem in question read-write, I mounted it read-only to copy all the data off. While in theory the filesystem should have been OK I didn’t have a need to keep using it at that time (having already wiped the original device and restored from backup) and I don’t have confidence in BTRFS working correctly in that situation.

While it was nice to get all the data back it’s a concern when commands don’t operate consistently.

Debian and BTRFS

I was concerned when the Debian kernel team chose 3.16 as the kernel for Jessie (the next Debian release). Judging by the way development has been going I wasn’t confident that 3.16 would turn out to be stable enough for BTRFS. But 3.16 is working reasonably well on a number of systems so it seems that it’s likely to work well in practice.

But I’m still deploying more ZFS servers.

The Value of Anecdotal Evidence

When evaluating software based on reports from reliable sources (IE most readers will trust me to run systems well and only report genuine bugs) bad reports have a much higher weight than good reports. The fact that I’ve seen kernel 3.16 to work reasonably well on ~6 systems is nice but that doesn’t mean it will work well on thousands of other systems – although it does indicate that it will work well on more systems than some earlier Linux kernels which had common BTRFS failures.

But the annoyances I had with the 3TB array are repeatable and will annoy many other people. The ctree coruption problem MIGHT have been initially caused by a memory error (it’s a desktop machine without ECC RAM) but the recovery process was problematic and other users might expect problems in such situations.

[life] Day 309: Seaworld

My friends Alec and Christine were holidaying on the Gold Coast with their daughter Eloise this week, and I'd made plans to rendezvous with them at Seaworld for the day.

Sarah dropped Zoe around in the morning, and we departed not long after, with a side visit to the post office to clear my post office box.

We arrived at Seaworld just after 10am, and Alec and Christine were already inside and had secured some seats for the Seal Detective show. They saved us some seats and we joined them.

After that, we tried to watch the dolphin show, but they had to cancel it because someone had managed to trip over a stroller that was past the stroller parking area and had injured themselves. It seemed like quite the incident management, with a lot of Seaworld people descending on the scene, and erecting screens around the injured person. I have no idea why they weren't able to quickly move them and proceed with the show.

We grabbed some lunch and had the obligatory ride on the Vikings Revenge Flume Ride (that thing is such a Seaworld institution). It was getting hot, and Eloise was a bit tired and cranky from a full week of vacationing, so we decided to go back to their hotel and have a swim in the pool.

Zoe wanted to take the bus back with them, so I drove back to the Marriott and availed myself of their free valet parking, and we had a swim. The Surfers' Paradise Marriott certainly has a very impressive swimming area. We had lots of fun.

We ended up staying for dinner before heading back. Zoe fell asleep in the car on the way back despite my best efforts to prevent it. She had quite a meltdown when I had to get her out of the car when we got home, so I had to basically get her into her pajamas and pour her into bed and she fell back asleep easily.

It was a really nice day out.

December 04, 2014

Music Production and Experimentation - Part 2



I've recently been working on music as an alternative hobby/career as has been indicated by the contents of this blog.



For an idea of some of the stuff that I'm interested in, please checkout my YouTube profile. There may be some remixes and some original stuff coming out in the near future via this avenue (some of the lower quality productions/samples are likely to go out via YouTube while the higher quality stuff is likely to go out via other outlets).




Compression as opposed limiting to reduce impact of increasing volume and limiting effect.

http://www.dummies.com/how-to/content/dynamic-processors-compressorslimiters.html

http://en.wikipedia.org/wiki/Dynamic_range_compression

http://www.audio-production-tips.com/limiter.html

http://www.soundonsound.com/sos/jun99/articles/mixcomp.htm



Some interesting information on creating Vinyl effects in Ableton.

http://www.musicsoftwaretraining.com/blog/how-to-create-a-vinyl-effect-in-ableton/

https://forum.ableton.com/viewtopic.php?t=2463

http://www.afrodjmac.com/blog/2013/09/21/free-ableton-live-pack-91-vinyl-scratcher-effect-plus-delay-modes-tutorial

http://www.afrodjmac.com/blog/2012/05/09/ableton-live-pack-56-vinyl-crackler

http://www.synthtopia.com/content/2012/05/11/ableton-live-vinyl-crackler-rack/



If you've ever heard electronic music you'll have heard strange electronic, vocal sounds before.

http://en.wikipedia.org/wiki/Vocoder/

https://www.gearslutz.com/board/electronic-music-instruments-electronic-music-production/567980-what-best-sounding-software-vocoder-if-such-thing-exists.html

http://manual.audacityteam.org/o/man/tutorial_vocal_removal_and_isolation.html

http://wiki.audacityteam.org/wiki/Vocal_Removal_Plug-ins

http://audionamix.com/



Listen closely to a lot of modern music and you'll realise that a lot of it contains multiple drum machine synthesisers with often clever overlapping and layering.

http://en.wikipedia.org/wiki/Drum_machine

http://www.attackmagazine.com/features/top-ten-classic-drum-machines/

http://www.sweetwater.com/c643--Drum_Machines_Modules

http://electronicmusic.wikia.com/wiki/Drum_synthesizer



Despite what I had previously thought about building modern electronic music it's not that easy.

http://www.wikihow.com/Write-a-House-Track

http://news.beatport.com/how-to-write-a-hit-house-track-10-top-tips/

http://www.musicradar.com/tuition/tech/26-house-production-tips-486841/

http://www.edmproducer.com/writing-melodies/

https://www.samplemagic.com/details/72/the-secrets-of-house-music-production

http://en.wikipedia.org/wiki/Song_structure_%28popular_music%29

http://en.wikipedia.org/wiki/Thirty-two-bar_form

http://www.wikihow.com/Produce-and-Write-Dance-Music

http://emusictips.com/2008/08/top-10-signs-your-electronic-music-is-amateur/

http://www.howmusicworks.org/910/Writing-Songs/Song-Structure

http://www.sommercamp.at/workshop2010/Songwriter/Writing_files/craftofSongwriting.pdf

http://dougashdown.com/An%20Introduction%20To%20Songwriting.pdf

http://www.songwritingfever.com/books/getstarted.pdf

https://garyewer.wordpress.com/2012/07/17/8-tips-for-writing-a-song-bridge/

http://homerecording.com/bbs/general-discussions/singing-vocals/how-do-you-write-bridge-song-structure-general-152631/

http://www.learneverythingabout.com/lyrics/song-structure-bridges.html

http://www.wikihow.com/Write-a-Bridge-for-a-Song

http://www.satoshitomiie.com/?p=766

http://www.learneverythingabout.com/lyrics/song-structure-bridges.html

http://www.soundstosample.com/blog/pro-tips/progressive-house-production-tips



Building software synthesisers for profit using Reaktor and other software.

http://basicsynth.com/

https://www.dubstepforum.com/forum/viewtopic.php?t=63293

https://www.udemy.com/build-a-synth-in-reaktor/

http://software-tips.wonderhowto.com/how-to/build-basic-modular-synth-reaktor-5-1-295767/

http://www.sonicacademy.com/Training+Videos/Course+Overview/Learn-How-To-Make-a-Synth-using-Native-Intruments-Reaktor.cid2095

http://www.synthtopia.com/content/2009/02/26/very-basic-modular-synth-made-in-reaktor/

http://www.nireaktor.com/reaktor-tutorials/building-a-basic-reaktor-synth/

http://www.synthedit.com/



Some notes that should keep your stuff from sounding amateurish.

http://www.nonalignmentpact.com/2008/09/telltale-signs-that-youre-amateur.html

http://www.hometracked.com/2008/02/05/auto-tune-abuse-in-pop-music-10-examples/



Sound effects feature heavily in modern music. Keep up with your reading.

http://en.wikipedia.org/wiki/Phasing_%28music%29

http://en.wikipedia.org/wiki/Phaser_%28effect%29

http://en.wikipedia.org/wiki/Bitcrusher

http://electronicmusic.wikia.com/wiki/Bit_crushing

http://en.wikipedia.org/wiki/Dither

http://en.wikipedia.org/wiki/Chorus_effect

http://www.sae.edu/reference_material/audio/pages/fullindex.htm



Some interesting software synthesisers/VST's out there.

http://boscomac.free.fr/

http://www.phuturetone.com/

http://www.vintagesynth.com/

http://freesoftsynth.com/

http://en.wikipedia.org/wiki/Software_synthesizer

http://www.musictech.net/2013/09/software-synths/

SM1000 Part 8 – Video and Beta CAD work

Over the last few months Rick KA8BMA has been working steadily on the schematic, PCB, and enclosure CAD work for the SM1000 Beta. This is now complete, the Beta PCBs have been made, and the first 2 Beta units are being hand assembled by Edwin at Dragino. Rick and I will test these, then kick off the Qty 100 Beta run which I estimate will be on sale in January.

I’m a bit intimidated by the mechanical CAD work required to make an enclosure, but Rick has stepped right up and done a fine job designing a bent metal case comprised of two U-shaped halves. This can be economically made in small quantities. This sort of case is more suited to the “small box on the desk” form factor, but that’s OK for now. It still has an aperture for the internal microphone. Click for larger images.







Last week I visited VK2 and gave a talk at the ARNSW Home Brew Group meeting at Dural, on the NW edge of Sydney. I had a very pleasant day with Peter Marx who was kind enough to drive me there and record the talk. As well as the standard intro to Codec 2 and FreeDV the second half covers the SM1000.

[life] Day 308: Christmas shopping in the city

Zoe managed to slip and fall on her bottom trying to get out of bed at midnight last night. I resettled her back in her bed and she was up for the day at a delightful 5:45am.

I thought we could take the bus into the city and do some Christmas shopping.

After a lot of procrastinating, we finally got out of the house, and managed to walk straight onto a bus, which was pretty good timing.

Our first stop was Officeworks to get Zoe's Kindergarten transition statement (which I'd received the previous day and was absolutely fantastic) copied, and then we dropped into biome to attempt to look at PlanetBox (unsuccessfully, they were all out of stock).

Then we headed over to the Myer Centre, to check out the Santa offerings. I was on a quest to find a real bearded Santa, as all of Zoe's original Santa photos were with real bearded Santas (except for last year, which was a major disappointment). I got lucky, and the Myer store Santa had a real beard (or as it turned out, one of them did).

Myer runs a pretty tight ship with their Santa, and it turns out the reason they have him sequestered away in a tiny room, is they actually run two Santas in parallel, and having him out of sight helps to not ruin the illusion for the kids.

After the photo, Zoe went and had lunch with Sarah, and I did a spot more Christmas shopping and grabbed some lunch myself.

After Zoe was reunited with me, we made our way back to the bus and headed home.

After we got home, we just chilled out at home until Sarah picked Zoe up.

Gender Acceptance

A very nice example of gender acceptance by parents.
Public acknowledgement in this way is awesome – well done to them!
And I figure the “tidy your room” is pretty much a “all is fine and normal, getting on with it” statement. Awesome.Source: Courier Mail (Brisbane AU, December 2014)

Craige McWhirter: Managing KVM Console Logs for Nova

Update

It turns out that this DOES NOT work around bug 832507. Please do not use this thinking that it does.

There's a problem with console logs. That was a hard sentence to word. I wanted to say a number of versions of it but each made it sound like the problem was with either OpenStack, Nova, libvirt / qemu-kvm. I didn't particularly feel like pointing the finger as the solution appears to need to come from a number of directions...

So the problem is that it is entirely possible when running KVM hypervisors with OpenStack Nova to have the compute nodes disks fill up when instance(s) console logs get a little chatty.

It's not a desirable event and the source will catch you by surprise.

There's currently no way to manage these KVM console logs via either qemu-kvm or via OpenStack / Nova so I wrote manage_console_logs.sh (github) (bitbucket) to do this.

manage_console_logs.sh operates as follows:

  • Creates a lock file using flock to ensure that the script is not already running.
  • Checks the size of each console log
  • If it's greater than the nominated size it's truncated using tail.

That's it. A pretty straight forward method for ensuring your compute node disks do not fill up.

You should schedule this via cron at you desired frequency and add a monitoring check to ensure it's doing it's job as expected.

Keynote Session - Q&A with Linus Torvalds

Linus Torvalds

Way, way back in 2003, at LCA in Perth, there was a Q&A session with Linus Torvalds, Bdale Garbee and Andrew Tridgell. It’s time for a follow-up so at LCA 2015 in Auckland it’s going to happen!

The Q&A session is scheduled for 09:00 am Friday, 16 January 2015 and will be moderated by Bdale Garbee with the assistance of Andrew Tridgell.

Helsinki-born Linus, who simply calls himself a Software Engineer, was the principal force behind developing the Linux kernel. It all started from an initial usenet posting in August of 1991 and made what has proved to be a historic debut with the release of version 1.0 on March 14 1994.

In June 2003 Linus started working for Open Source Development Labs. After merging with the Free Standards Group it became the Linux Foundation where Linus continues to work as the project’s coordinator and is Chief Architect of the Linux kernel.

In 2005, after criticism for his use and alleged advocacy of BitKeeper, proprietary software for version-control in the Linux kernel, Linus wrote a free-software replacement for BitKeeper called GIT which is now the most widely-adopted version-control system for software development.

Linus is an accomplished diver and in 2011, frustrated with the lack of decent divelog software on Linux, he developed Subsurface (http://subsurface-divelog.org/) an Open Source divelog program that runs on Windows, Mac and Linux.

We know that there are a number of beautiful diving spots not too far from Auckland...

The LCA 2015 Auckland team would like to thank the Linux Foundation for their assistance in making this possible.

December 03, 2014

TFTP server, Fedora 20

The major system management tools have altered in recent Fedora versions, so the long-remembered phrases no longer work. Here is how to install and make available to the world a TFTP server.

$ sudo yum install tftp tftp-server
$ sudo cat <EOF >> /etc/hosts.allow
in.tftpd: ALL
EOF
$ sudo firewall-cmd --add-service tftp
$ sudo firewall-cmd --permanent --add-service tftp
$ sudo systemctl enable tftp.socket
$ sudo systemctl daemon-reload

Test with:

$ sudo cp example.bin /var/lib/tftpboot/
remote$ tftp server.example.com
tftp> get example.bin
tftp> quit

Use cp rather than mv so that SELinux sets the correct attribute on the file.

Consider that between Fedora 14 (2010) and Fedora 22 (2015) the package installation command, firewall configuration and init system configuration of this common systems administration task all change. I wonder if that invalidation of years of practice accounts for some of the opposition to those changes.

Building the development version of Terraform

Instructions on how to build the development version of Terraform.

First you need to install Go, I have a script for this that would be easy to adapt for your needs. It installs Go, but also downloads some common projects (go-bindata, lint) and my own projects (gosnmp, evaler).

#!/bin/bash

## install go

tgz=go1.3.3.linux-amd64.tar.gz
url=https://storage.googleapis.com/golang/$tgz

if ! [ -f /var/tmp/$tgz ] ; then
	cd /var/tmp
	wget $url
fi

if ! [ -d /usr/local/go ] ; then
	sudo tar -C /usr/local -xzf /var/tmp/$tgz
fi

## setup dev directory structure

mkdir -p ~/go/{sonia,thirdparty}/{bin,pkg,src}

cd ~/go/thirdparty/src
#---------------------

read -p "Install third party repos? (go-bindata, lint)"
if [[ $REPLY =~ ^[Yy]$ ]] ; then
	if ! [ -d github.com/jteeuwen/go-bindata ] ; then
		go get github.com/jteeuwen/go-bindata/...
		cp ~/go/thirdparty/bin/go-bindata ~/bin
	fi

	if ! [ -d github.com/golang/lint ] ; then
		go get github.com/golang/lint/golint
		cp ~/go/thirdparty/bin/golint ~/bin
	fi
fi

cd ~/go/sonia/src
#----------------

read -p "Install soniah repos? (gosnmp, evaler)"
if [[ $REPLY =~ ^[Yy]$ ]] ; then
	# do 'git clone' not 'go get' so origin is writeable
	dir=github.com/soniah
	if ! [ -d $dir/evaler ] ; then
		mkdir -p $dir
		cd $dir
		git clone git@github.com:soniah/evaler.git
		cd -
	fi

	dir=github.com/soniah
	if ! [ -d $dir/gosnmp ] ; then
		mkdir -p $dir
		cd $dir
		git clone git@github.com:soniah/gosnmp.git
		cd -
	fi
fi

A common pattern in Go (which my setup script demonstrates) is to split your code from thirdparty code. This requires configuring your shell (~/.zshrc, ~/.bashrc):

export GOPATH=~/go/thirdparty:~/go/sonia                                          
export PATH=${GOPATH//://bin:}/bin:$PATH

Then you need to follow the Terraform instructions for building, that is:

$ cd ~/go/thirdparty/src
$ go get -u github.com/mitchellh/gox
$ cd ~/go/thirdparty/src/github.com/hashicorp/terraform
$ make updatedeps
$ make dev
# put the binaries somewhere in your path, eg /usr/local/bin
$ sudo cp bin/terraform* /usr/local/bin

OpenStack ATC meetup at linux.conf.au 2015

The OpenStack miniconf at linux.conf.au next year is targeted at deployers and operators of OpenStack — it is not a developer meetup. Therefore, we’ve decided to run a developer meetup the Sunday before linux.conf.au.

Details and signup for that event are at — https://www.eventbrite.com.au/e/linuxconfau-2015-openstack-atc-meetup-tickets-14765282357

Thanks to Catalyst for agreeing to host the meetup.

Memorable Quotes - Part 8



- George Clooney, likewise, has a right to be heard, and his work monitoring the human rights situation in Sudan is entirely laudable. But the rarefied atmosphere that fosters stars' idealism often makes them terrible politicians. They think that because they've played a part on the big screen, it can be replicated in real life. Clooney plays an art hunter in The Monuments Men, so he suddenly thinks he's qualified to talk about the Elgin Marbles. But because his life is actually detached from the realities of the world, it is probably just as well that he never runs for anything. If he won, the results could be disastrous.



Consider the example of Arnold Schwarzenegger. When he ran for Governor of California in 2003, Arnie ran as a superhero - the Governator. He took the press aboard the Total Recall bus to the Orange County fairgrounds to illustrate his opposition to the state's car tax. In front of a giant steel wrecking ball, he said, "In the movies, if I played a character and I didn't like something, you know what I did? I destroyed it." Then the wrecking ball fell on to a car. "Hasta la vista, car tax!" he cried.



Arnie won the election and he repealed the car tax. It cost $5 billion in revenues and nearly bankrupted California. Life, it seems, is not like the movies.

http://www.smh.com.au/entertainment/movies/why-dont-you-just-shut-up-and-act-george-clooney-20140213-32jue.html?google_editors_picks=true

- "No one looks at the waterfront of Brisbane ... and feels deeply moved by the grace and sweetness of the scene," de Botton writes in the post.



"While most people find the centre of Paris wonderful and others will delight in the winding streets of Siena, no one on the planet responds deeply to the brutal cross-city expressway and chunky, stained office blocks."

http://www.heraldsun.com.au/travel/australia/philosopher-and-author-alain-de-botton-backtracks-on-bagging-brisbane-as-ugly-city/story-fnjjv0rb-1226868172391

- "Efficiency is lack of wasted movement," says Cox, "and if you're on the customer end, what that looks like is precision."

http://robbreport.com/xojet/articles/alternative-approach

- Yet suits are nothing more than symbols: empty expressions of wealth and authority. They were first worn by middle-class British dandies trying to pass themselves off as aristocrats, and I'd argue that nothing's changed in the 200 years since. Every time we don a suit, we clad ourselves in a veneer of "respectability" (it's not as though we do it for comfort). And, in doing so, we tell ourselves, and everyone around us, that what we wear is what matters, not what we think, say or do.

http://www.smh.com.au/federal-politics/blogs/public-sector-informant/every-time-you-dress-to-impress-at-the-office-you-demean-yourself-20140505-37rn7.html
- Once China is capable of launching three warheads simultaneously, the magazine said that a single DF-41 missile would be capable of wiping out three American cities in one go. With other strategic offensive weapons such as the JL-2 submarine-launched ballistic missile and the DF-31A intercontinental ballistic missile, China will be able to gain more of an advantage in arms limitation talks with the United States.

http://www.wantchinatimes.com/news-subclass-cnt.aspx?cid=1101&MainCatID=11&id=20140626000172

- An ultra-conservative Egyptian cleric has said that watching football matches is unacceptable in Islam because it is a distraction and "destroys nations".



Yasser Borhami, a founding member of the main Salafi movement in Egypt, the Salafi Call, sparked an outcry when he said spending time watching the World Cup games in Brazil was "a disaster that makes me very irate".



He claimed that it was a distraction from religious and worldly duties, ultimately leading to "the destruction of nations and peoples".

http://www.theguardian.com/world/2014/jun/15/egyptian-cleric-yasser-borhami-says-watching-football-destroys-nations

- "...he ascended into heaven and is seated at the right hand of the Father. He will come again in glory to judge the living and the dead, and his kingdom will have no end. ... We look for the resurrection of the dead, and the life of the world to come."

http://en.wikipedia.org/wiki/Second_Coming

- To put it in prospective for you fellow Ozbargainers, Half the Earth's population earns less than US $500 a Month, and out of those about half again ( 2 Billion ) earn under US $200 per month, over a Billion do not even earn US $100 a month, and most have to work for 45 to 60 hrs.+ a week in bad conditions. Most headphones are made in countries with low wages. A few dollars worth of plastic, steel, copper etc. some R & D, packaging and paper. The rest is marketing, wholesale, duties/tax and big retail mark-up. If you got this far, that was my late night rant. Holland just beat Mexico in World Cup, happy now :-)

https://www.ozbargain.com.au/node/150868

- Courts have rules of evidence, for very good reason. These rules have been developed over many years and are designed to ensure that judges and juries make the fairest decision possible. The problem is neither we, nor the media, follow any such rules. That means that bits and pieces of information about each of us - parts of the story when there might be many versions, often completely untested - are passed on every day. In normal daily life we call it gossip.



Sadly, some investigative journalists get away with being paid to publish this sort of stuff, irrespective of whether innocent people are damaged along the way. They would say they are only doing their job, working to shine a light on bad things that do happen. When they do in fact shine that light and wrongdoers get their due, we should all cheer. The trouble is that often, in digging to find the dirt and shine the light, they chuck a fair bit of mud.



Shorten has had a rough time of it. He can be grateful for the decency shown all around. Perhaps he will insist the same courtesies are extended by his team on future occasions. But don't hold your breath.

http://www.smh.com.au/comment/imagine-if-tony-abbott-had-been-accused-of-rape--20140829-109zcr.html?google_editors_picks=true

- "In a time of drastic change it is the learners who inherit the future. The learned usually find themselves equipped to live in a world that no longer exists."

 - Eric Hooffer

https://www.linkedin.com/profile/view?id=17031103&authType=name&authToken=pgeZ&trk=prof-sb-browse_map-name

-  Feces - its exact composition varies widely depending upon the diet and health of the defecator, but broadly speaking fecal matter consists of water, inorganic salts, food residues, amino acids and digestive enzymes, cellulose and fiber; mucus, blood, bacteria, and parasites are also commonly present. We have seen no reports of any scientific study undertaken to determine the health effects of customary shit-eating, but from the standpoint of contagion it is probably not a great deal more (though certainly it is not any less) dangerous than the consumption of semen, menstrual blood, etc., all of which, as noted above, may be risky.

http://www.baymoon.com/~btoak/faustus/fluids.html

- Nixon's fake craziness -- what he privately called his "madman theory" -- may have had a lasting effect in Moscow. A decade later when Ronald Reagan first took up residence in the White House, the Soviets were so sure the new president was dangerously irrational that they put their own forces on high alert expecting an imminent nuclear attack.



It's doubtful anyone worries about Obama doing anything crazy. Contrary to what Nixon believed, sanity should be a good thing, right? Maybe, but is Obama's caution also why the Russians and, perhaps, the Chinese, have no compunction about defying him?



It's a tough, crazy world out there and, though we wish humanity would grow up a little, it still seems as if we are stuck playing the foolish games of high school on a global scale.

http://www.latimes.com/opinion/topoftheticket/la-na-tt-barack-obama-too-sane-20141112-story.html

- I'm also guessing you don't literally believe, as the Bible states, we should put people to death for being magicians, saying God doesn't exist, adultery, homosexuality, working on the Sabbath and worshipping graven images.



Why? Because I think, deep in your heart, you know the Bible is not the literal word of God but a series of texts compiled over many centuries by a huge, disparate group of clever men.



And I'd suggest you also recognise even the Bible has to move with the times and, what may have been laudable 2000 years ago - like selling your daughter into sexual slavery (Exodus 21:7-11) - is not so cool in Australia in 2013.



So let's be clear: this has nothing to do with the word of God and the Bible - it's merely how you're interpreting it, and your interpretation on this issue, I suspect, is based on one thing alone.

http://www.brisbanetimes.com.au/executive-style/culture/all-men-are-liars/that-doesnt-sound-very-christian-to-me-20131115-2xjfm.html

- "We write to you because we believe that the ABC has a particularly important role in presenting religion both in its own right and as an integral part of modern Australian society, thanks to the high-quality specialist religion programming provided by both television and radio."



They write: "We believe the faith and values we hold will always occupy a central part in the formation of our Australian national identity. Further, an understanding of religion plays a crucial part in grasping today's ever more complex social and political developments both in Australia and internationally ...



"It has never been more important for Australians to have access to content that builds a deeper understanding of the role of faith in the lives of individuals or society, as demonstrated in last month's G20 interfaith summit.

http://www.brisbanetimes.com.au/national/religious-leaders-unite-to-plead-to-abc-board-20141202-11yh2j.html
- Liberté, Égalité, Fraternité, French for "Freedom, equality, brotherhood",[1] is the national motto of France and the Republic of Haiti, and is an example of a tripartite motto. Although it finds its origins in the French Revolution, it was then only one motto among others and was not institutionalized until the Third Republic at the end of the 19th century.[2] Debates concerning the compatibility and order of the three terms began at the same time as the Revolution.
- This may seem counterintuitive given this is home turf for the nation's greatest political minds. State Circle syndrome hits those who forget Capital Hill exists for all who are not on it, rather than the other way around.

http://www.theaustralian.com.au/opinion/columnists/only-labor-cant-see-abbott-was-on-money-with-electoral-funding-u-turn/story-fn8qlm5e-1226654786822

- "If we want to survive in this competitive context worldwide, then we must strengthen Europe and that also means that even the biggest countries in the EU will not be able to stand alone. So, strengthening the idea and the substance of the European integration is key. We need more Europe, not less", he concluded.

http://www.incyprus.com.cy/en-gb/Top-Stories-News/4342/35276/rebuilding-trust-in-cyprus-banks
- "She's going to get me out. I am acting as an individual - I am taking responsibility for improving my lot." And that - though not by murder - is what Damian did. He got a degree - almost unheard of in Newarthill - and went south to Brighton.



Today he is a well-known and talented writer, and what he calls a salonniere (presumably the feminine is intended). He holds social gatherings in Shoreditch House, London, in which the quality of wit, words and wisdom is sharpened by conversation. He is an entrepreneur of the world of letters. And there he was, standing before us in the great hall of Dartington - poised, funny but modest, a credit to the opportunity society which Thatcher encouraged. Do read his book.

http://www.dnaindia.com/world/1861595/report-the-boy-from-motherwell-inspired-by-margaret-thatcher

- "Innovation at the technology frontier is quite different in nature from catching up technologically. It is not something that can be achieved through government planning," it said.

http://www.telegraph.co.uk/finance/comment/ambroseevans_pritchard/10186546/China-defies-IMF-on-mounting-credit-risk-and-need-for-urgent-reform.html

- "I've been blessed to be able to do something that I love for over 40 years and have always enjoyed the challenge of change,"

Gary England

http://www.newson6.com/story/22914095/gary-england-named-vice-president-at-griffin-communications

- "We need to make more things, design more things, have more technology and sell more things overseas. We are beginning to see that happen. We need now to go further and faster."

David Cameron
http://www.telegraph.co.uk/news/politics/10197738/David-Cameron-Immigration-is-constant-drain-on-public-services.html

- The president spoke of the importance of striking a balance between "secrecy and the right to know" but said he would make no apologies for trying to protect classified information that could put citizens at risk. http://www.theaustralian.com.au/in-depth/us-politics/obama-acts-on-tax-benghazi-scandals/story-fngeyb4x-1226645107296

- Just over 98,000 Britons live in Germany, around a third of them British soldiers and their families. Berlin has a particularly strong pull for artists - Turner Prize winners Douglas Gordon and Susan Phillipz live here, as does Tacita Dean. The German capital's appeal combines history, generous cultural subsidy, and - until rents started to rise recently - cheap spaces to live and work. The city's attraction to laid-back, creative types is further enhanced by the fact that you rarely see a suit here; the bankers are all in Frankfurt.

...

In Swabia, Germany's prosperous south-western corner, the saying goes: "Schaffe, schaffe, H?usle baue" - literally, "work, work - and build a little house."

http://www.telegraph.co.uk/news/worldnews/europe/germany/10206103/What-we-can-learn-from-the-Germans.html

- US leadership on the world stage is not about empty platitudes, amply displayed recently by Barack Obama in Berlin, or meaningless, feel-good initiatives of the kind rolled out by the White House during the president's tour of Africa. American leadership should never be a cynical PR exercise aimed at boosting a president's popularity abroad or accommodating the whims of foreign governments. It must always be based on a clear-cut understanding of what is in America's vital national interest. And therein lies the heart of the failure of the Obama doctrine. A president who believes in apologising for his country, appeasing his nation's enemies, undercutting US national sovereignty, and sidelining America's traditional allies, cannot hope to operate an effective foreign policy, one that commands respect both at home and abroad.

http://blogs.telegraph.co.uk/news/nilegardiner/100227825/the-obama-doctrine-is-a-huge-failure-because-it-isnt-based-on-us-interests/

- "There's no magic bullet that's going to rapidly devalue the dollar and make things easier for struggling businesses in the immediate future."

Dr Henry cautioned against attempts to counteract currency market forces and push the Australian dollar lower, saying a flexible floating exchange rate had been key to the nation weathering international financial turmoil.

Instead, he urged Australian companies to look at how they could better integrate themselves with the rest of the region.

"Australian businesses need to learn from others, and that means that many businesses who once defined themselves as Australian must now begin, if they haven't already, looking at themselves as regional businesses, either through becoming part of regional supply chains, partnering with similar or complementary firms overseas, or even moving some components of their business to Asia," he said.

http://www.abc.net.au/news/2012-08-20/henry-warns-of-grim-fiscal-reality/4210786

- "Remarkably, it appears that the very genetic adaptations that allow the diamondback moth to cope with these natural compounds also allow it to detoxify the insecticides used against it,"' Professor Gurr said.

http://www.brisbanetimes.com.au/environment/animals/scientists-crack-super-moths-survival-secret-20130114-2cptn.html

- "The reality is at the end of the day there is no different approach. It's all the same: it is what is the tool that allows customers to do what they do best."

http://www.forbes.com/sites/oliverchiang/2011/02/28/facebook-investor-peter-thiel-palantir-is-the-next-facebook-or-google/print/

- To use a Churchillian phrase, the man was a riddle and a mystery inside an enigma, and by extension so too the secretive state he presided over.

http://www.bbc.co.uk/news/world-africa-19341954

- Snowden's cache has unveiled the existence of a veritable alphabet soup of programs - with code names including Prism, Tempora, xKeystroke, Muscular, Pinwale, EgotisticalGiraffe, Stormbrew, Fairview, Oakstar, Mainway, and Nucleon - all aimed at harvesting, storing and analysing as much of the world's electronic communications as can be scooped up.

http://www.smh.com.au/technology/technology-news/who-is-monitoring-the-covert-operations-of-the-worlds-spy-agencies-20131206-2ywpt.html

- Only about 1 in 1,000 Web readers clicks on the average display ad. On Facebook, that number is closer to 1 in 2,000, according to Webtrends. Even ads sent by unsolicited postal mail generate a response rate that is many times higher, according to published industry numbers.

http://www.latimes.com/business/la-fi-facebook-display-ads-20120525,0,4871607.story

Memorable Quotes - Part 7



- "There was a poll recently on the favorability of everything in American life," he told a gathering in the Russell Senate Office Building, upstairs from his office. "The favorability numbers of Congress ranked just below a colonoscopy. So we are trying to raise it at least above that."

http://www.washingtonpost.com/opinions/dana-milbank-john-mccain-the-maverick-is-back/2013/07/22/eacdecc2-f30b-11e2-ae43-b31dc363c3bf_story.html?tid=pm_pop

- "My strength and weakness is I enjoy being in the arena," he said, quoting his hero, Teddy Roosevelt. "I like the fight."



That's good news. The important thing is not where McCain has been but that he's back. He's needed more than ever.

http://www.washingtonpost.com/opinions/dana-milbank-john-mccain-the-maverick-is-back/2013/07/22/eacdecc2-f30b-11e2-ae43-b31dc363c3bf_story.html?tid=pm_pop

- "Some of the guys who come from pure science and maths backgrounds are used to solving a problem and it works," Patrick Boyle says. "They think they can find a formula that will perfectly describe how the market moves. That is the philosopher's stone - it is utterly impossible." The danger is that in only seeing numbers and patterns the human dimension is forgotten.



After 16 years in the City, Simon Jones is now planning to go travelling. "A quant can earn up to seven figures," he tells me, "but sometimes I do wonder whether I contributed positively to society."



And what does he conclude? He pauses. "I was working with the best of the best," he says. "My bank employed the brightest engineers, chemists and scientists - and we were all working together to get richer. The chemical and physics and health industries are worse off because of what we do because I tell you this: if there was a pay bonus structure similar to what we had in the City for curing cancer, we'd have found a cure for cancer."



I find that sad and a little bit frightening. So, I ask, quants: good or bad? Jones looks at me and says, "Humans just found a new way of being greedy."

http://www.telegraph.co.uk/finance/10188335/Quants-the-maths-geniuses-running-Wall-Street.html
- According to a phenomenon known as Zipf's law, the second largest city should be half the size of the largest, the third largest a third of the size, and so on. But this doesn't hold true in Britain, where there are a surprisingly large number of very small cities. Birmingham is Britain's second largest city, but it's less than a seventh the size of London. If the regions want to be more successful, they must learn to grow their cities.

http://www.telegraph.co.uk/finance/economics/10188204/Why-Britain-needs-its-little-cities-to-grow-up.html

- The greatest challenge faced by America is not foreign technology from countries that are not democratic, but from our own idealistic and naive opposition to these programs. And these programs cannot be quickly reassembled when the error of not maintaining them is discovered too late.

http://www.washingtonpost.com/wp-srv/special/politics/prism-collection-documents/?hpid=z1

- It is clear that the European Parliament elections next year will be make-or-break the future of the EU. We must realize that the time of the sovereign national state is over. We have to dare to admit that Sweden is dependent on the rest of Europe and that we have everything to gain from more in depth cooperation, also when it comes to security and defence.



I am convinced that a more in depth cooperation with our Nordic and European friends will guarantee both security and an effective defence.

http://www.thelocal.se/49150/20130723/

- "To stem the evangelical growth is not his goal. Francis is more of a pastor, more humble, more of a prophet who rediscovers the church of testimony, coherent with the fundamental values of the Gospel," said Teixeira.



This is in sharp contrast to a church which in the past decades had been characterized by "splendor, doctrinal hot air and seen as a repository of the single truth," he added.

http://www.google.com/hostednews/afp/article/ALeqM5hFWBd6ELIpEq1NGsZykUNzOVyo5g?docId=CNG.2b599a31130f2e66dc5fa6961075201e.4e1

- While the movie Contact, based on Carl Sagan's book of the same name, popularised the idea of aliens dozens of light-years away picking up an old telecast of the 1936 Berlin Olympics that was unintentionally transmitted into space, our civilisation has become quieter to any outside observers in recent decades. As our civilisation makes the jump from analog to digital, communication is increasingly carried by fibre-optic cables and relatively weak mobile phone repeaters rather than powerful broadcast transmitters. Rather than spilling out messy radio transmissions, Marcy posits that alien civilisations would use something much more precise and efficient than radio waves to stay connected, and lasers fit the bill. At the Keck Observatory, he hopes to spy an errant beam flashing from a distant star system, an observation that would be strikingly obvious on a spectrum.



This shift to new ways for finding E.T. is in part due to the failure of traditional SETI (Search for Extraterrestrial Intelligence) to pick up radio signals from deep space. Federal funding for SETI projects ended in 1995, but private benefactors have stepped up to support the search for alien radio transmissions, including Microsoft co-founder Paul Allen, who has sunk more than $US30 million into a giant radio telescope array now under construction northeast of San Francisco.



Nevertheless, the silence underscores the question once posed by Nobel prize-winning physicist Enrico Fermi: If intelligent life is common in the galaxy, "where is everybody?"



Marcy admits that this so-called "Fermi paradox" poses a powerful counterargument to the prospect of success for any search for extraterrestrial intelligence. But what if, even if the chances are vanishingly remote, he is successful? More disturbingly, what if (as some respected physicists fear) he finds a Death Star?



"The first thing we do is transmit a message to them that says, 'We taste bad.' "

http://www.smh.com.au/technology/sci-tech/hunt-for-alien-spacecraft-begins-as-planetspotting-scientist-geoff-marcy-gets-funding-20130724-2qibc.html

- Apple is not seen as the really cool company any more. Steve Jobs is dead, and to paraphrase Lloyd Benson's famous comment to Dan Quayle: "I knew Steve Jobs, Tim, and you're no Steve Jobs."



The parallels with Microsoft, which announced equally disappointing financial results last week, are many. Both companies redefined the industry - Microsoft in the 1980s with MS-DOS and in the 1990s with Office and Windows, and Apple in the 2000s with the iPod and iPhone and in the 2010s with the iPad..



Both companies had at their peak a market capitalisation exceeding God's (Apple at one stage nearing a trillion dollars). Both companies had charismatic and visionary founders who were replaced by functionaries.



In both cases, the companies became arrogant through their own success. The ancient Greeks called it hubris - such a blind faith in one's past glories that you cannot believe it will ever end.



Well it has.

http://www.itwire.com/it-industry-news/listed-tech/60834-steve-jobs-where-are-you?-apple-loses-its-shine

- "To brush aside America's responsibility as a leader - and more profoundly - our responsibilities to our fellow human beings under such circumstances would have been a betrayal of who are."

http://www.nytimes.com/2013/07/24/us/politics/us-urged-to-adopt-policy-justifying-intervention.html?_r=0

- "Great achievement is usually born of great sacrifice, and is never the result of selfishness." ~ Napoleon Hill

You don't need to have a 100-person company to develop that idea. - Larry Page

"If I have seen farther than others, it is because I was standing on the shoulder of giants." John Quincy Adams

"Leadership should be born out of the understanding of the needs of those who would be affected by it." - Marian Anderson

"With this endless parade of distractions and political posturing and phony scandals, Washington's taken its eye off the ball," Mr. Obama told an audience at Knox College, in Galesburg, Ill., the site of his first major economic speech as a young senator eight years ago. "And I am here to say this needs to stop. This needs to stop. This moment does not require short-term thinking. It does not require having the same old stale debates. Our focus has to be on the basic economic issues that matter most to you -- the people we represent."

http://www.nytimes.com/2013/07/25/us/politics/obama-to-restate-economic-vision-at-knox-college.html?_r=0
- "This growing inequality, it's not just morally wrong, it's bad economics," he said. "Because when middle-class families have less to spend, guess what? Businesses have fewer consumers. When wealth concentrates at the very top, it can inflate unstable bubbles that threaten the economy. When the rungs on the ladder of opportunity grow farther and farther apart, it undermines the very essence of America, that idea that if you work hard, you can make it here."



He called on Republicans to pick up his economic proposals and to pass legislation overhauling the immigration system. He also scolded Republicans for trying to undercut his health care program and argued that it would expand coverage and trim costs.



But he also challenged members of his own party to stop defending outdated government programs and resisting change.



"I will be saying to Democrats, we've got to question some of our old assumptions," he said. "We've got to be willing to redesign or get rid of programs that don't work as well as they should."

http://www.nytimes.com/2013/07/25/us/politics/obama-to-restate-economic-vision-at-knox-college.html?_r=0

- "Unfortunately, opportunities for upward mobility in America have gotten harder to find over the past 30 years. That's a betrayal of the American idea. And that's why we have to do a lot more to give every American the chance to work their way into the middle class," he said.



He concluded: "That's why we don't call it John's dream or Susie's dream or Barack's dream - we call it the American Dream. That's what makes this country special - the idea that no matter who you are, what you look like, where you come from or who you love - you can make it if you try."

http://www.telegraph.co.uk/news/worldnews/barackobama/10200850/Barack-Obama-warns-American-dream-is-in-danger-of-becoming-a-myth.html

- "The Vietnamese have learned from their own history that we all have no permanent enemies, only friends yet to be made," he said.

...

"There will never be a matriculation from dictatorship to democracy if we stand with the dictatorship," said Congressman Chris Smith from New Jersey. " So I say 'meet with presidents like Sang who was not elected by the people as we all know ... meet with him, argue with him, but don't enable him, don't walk around smiling, having so many photo ops that the plight of the dissidents gets lost."

http://www.voanews.com/content/vietnamese-president-in-washington-seeking-new-relationship/1709661.html

- She believes the pull towards terrorist activities is a mental health issue.



"There is a lethal four part cocktail that draws people toward terrorism that involves a group, an ideology, social support (either on the internet, or through a teacher or authority figure) and individual vulnerability - often these people are suffering post traumtaic stress.



"It's all about community health; in conflict zones you see groups taking advantage of vulnerable grief stricken people."

http://www.smh.com.au/world/terrorist-whisperer-helping-nsw-police-20130725-2qmvi.html

- Let's be clear. People smugglers are brokers of slim chance. For their market to exist they need two things: human misery born of violence and persecution, and they need a product to sell. Australia is that product - a land of ''hope, reward and opportunity'', as the current Liberal Party slogan so neatly says.



Rudd's shamelessly rightward policy shift has infuriated his opponents and has been done under the moral cover of stopping deaths at sea. As covers go, it's a solid one.



But the political opportunism of Labor's capitulation should not be used to obscure its potential to solve one of the country's most intractable problems.

http://www.theage.com.au/federal-politics/political-opinion/dont-let-political-opportunism-hide-an-idea-that-may-work-20130722-2qewr.html

- He called his friend "brilliant", and said Jack's latest research on medical devices could help save the lives of many people. "In this world full of people fearfully complying and worrying, very few people are crazy enough to challenge the rules, to approach life in an unconventional paradigm and to speak up to contribute to change this world," Suiche said.

http://www.guardian.co.uk/technology/2013/jul/26/hacker-barnaby-jack-san-francisco-dies

- One of my favourite sayings comes from the late American futurist Roy Amara: "We tend to overestimate the effect of a technology in the short run and underestimate the effect in the long run."

http://www.itwire.com/2012-06-01-13-40-03/browse/c-level/56422-exponential-growth-versus-linear-thinking

- There are people who tell me I've helped him. Mental health experts who say that the simple act of being someone's friend can change his brain chemistry, improve his functioning in the world. I can't speak for Mr. Ayers in that regard. Maybe our friendship has helped him. But maybe not. I can, however, speak for myself. I can tell you that by witnessing Mr. Ayers's courage, his humility, his faith in the power of his art, I've learned the dignity of being loyal to something you believe in. Of holding onto it, above all else. Of believing, without question, that it will carry you home.

http://www.imdb.com/title/tt0821642/quotes

- Either we shape the future or we allow ourselves to be shaped by it.

http://www.theaustralian.com.au/business/in-depth/pm-extends-nbn-for-remote-areas-including-280m-satellite-dish-contract/story-e6frgaif-1226424552945

- We hold these truths to be self-evident, that all men are created equal, that they are endowed by their creator with certain inalienable Rights, that among these are Life, Liberty and the pursuit of Happiness.

http://en.wikipedia.org/wiki/Life,_liberty_and_the_pursuit_of_happiness

http://en.wikiquote.org/wiki/Liberty

- Those who would give up Essential Liberty to purchase a little Temporary Safety, deserve neither Liberty nor Safety.

http://en.wikiquote.org/wiki/Benjamin_Franklin

- In the US, taking a risk and failing is not the end: there is honour in getting back up. Bankruptcy offers a new chance, and the culturally favoured response is to keep fighting. American economic dynamism owes much to this forgiving attitude to risk-taking.



Europeans regard insolvency with a much darker moral taint. To go bankrupt has traditionally been to be branded untrustworthy - a shame to hide by leaving business for ever, even (once upon a time) by taking leave of one's life. This still shows up in such archaic rules as Ireland's 12-year bankruptcy period (which is finally being reformed).



Paradoxically, this cultural allergy to failure leads not just to less risk-taking, but to policies that bail out those that do take big risks and lose. Europe finds the idea of default so intolerable that, in the current crisis, it has preferred to cover the debts of the bankrupt. It suffers as a result.

http://www.ft.com/cms/s/0/2493b90c-f51c-11e2-94e9-00144feabdc0.html

- "By using a coding contest to find the best talent, we'll be able to quickly spot the engineers with the X factor -- the 5X programmers who are 5 times more productive than the average engineer," Said Soren Harner, VP Engineering at BigCommerce. "They are the polyglot master craftspeople who want to create something brilliant. More specifically, we're looking to find great talent in a range of languages including Clojure, Ruby, CoffeeScript, and PHP."

http://www.itwire.com/it-people-news/recruitment/60255-just-like-survivor-competing-for-a-job

- Ignorance helps to breed fear. Practically every so-called security measure taken since then has only ratcheted up the fear index and just provided what well-known security guru Bruce Schneier calls "security theatre".
http://www.itwire.com/opinion-and-analysis/open-sauce/60279-the-land-of-the-free-and-the-brave-and-24-hour-snooping

- There's nothing inherently wrong with noticing achievements - when they result from moxie and grit. A person who, through effort and will (not luck or talent or some other accident of birth), transcends the norm to do something amazing is worthy of celebration. The average passer-by who runs into a burning building to save someone is a hero; a firefighter who draws a pay cheque, received training and consciously chose the job is not.

http://www.smh.com.au/lifestyle/celebrity/lets-excise-this-celebrity-cancer-20130727-2qqvs.html

North Korea has too many horrors to describe -- gulags, starvation, forced reverence of a demented leader -- but Internet access would speed the end of the regime. The utter lack of knowledge about the outside world there keeps a lid on dissent and domestic strife. North Koreans for the most part live in a total information dead zone, told they are lucky even as they endure food shortages and freezing winters without heating. The fact that it could all be undone with the flip of a switch is both maddening and heartbreaking.
http://www.theatlantic.com/international/archive/2013/05/eric-schmidt-kim-jong-un-could-turn-on-north-koreas-internet-if-he-wanted/276008/

- "Politics are not about magic but rather a combination of strategy, coherence and passion"

http://theworldoutline.com/2013/07/hollandes-handbook-on-how-to-land-in-safer-waters-solutions-for-economic-recovery/

- Russian aerospace companies have demonstrated an ability to outpace US aerospace manufacturers in terms of delivery of an operational capability and also the diversity of the capabilities of their weapons systems. The cumbersome US acquisition system, and marketing rather than technology driven aerospace industry, put the US at a distinct competitive disadvantage in rapidly adapting to an evolving threat environment.

http://www.ausairpower.net/APA-NOTAM-300309-1.html

- "Most of the fighters we have available today with vectored thrust, the Su-30MKI and MKM, can perform these maneuvers," Bogdan tells Aviation Week. "Where this aircraft is different is that it has more thrust, so when it performs the 'bell' maneuver, it can stand still, with afterburning on, and can sustain flight at 120-140 kph."

The emphasis in "supermaneuverability" runs counter to much Western air combat doctrine, which stresses high speed, the avoidance of the slower "merge" and tactics that do not lose the aircraft's energy. Bogdan, however, says supermaneuverability can be essential.

"The classical air combat starts at high speed, but if you miss on the first shot--and the probability is there because there are maneuvers to avoid missiles--the combat will be more prolonged," he says. "After maneuvering, the aircraft will be at a lower speed, but both aircraft may be in a position where they cannot shoot. But supermaneuverability allows an aircraft to turn within three seconds and take another shot."

However, Bogdan adds, "you have to be careful using that weapon. It's like a sniper--you can't shoot many times from the same spot because you disclose your position."

As for the doctrine that energy should be conserved, Bogdan notes: "The theory of air combat has always evolved. In the 1940s and 1950s, the first priority was height, then speed, then maneuver and then firepower. Then with the third and fourth generation, it was speed, then height and then maneuver. Supermaneuverability adds to this. It's the knife in the soldier's pocket."

http://www.aviationweek.com/Article.aspx?id=/article-xml/AW_06_24_2013_p33-589854.xml

- This is a well-researched and fascinating book, despite the blinkers. And it ends with a note of caution for those of us liberal historians who might otherwise naturally place ourselves on the "open government" rather than the "secret state" side of this argument. The more "open" government becomes - in the sense of its written records being available to everyone - the less likely our governors are to write things down. That will seriously cripple future historians and anyone wanting to find out how government works. For this reason, as Moran puts it, if WikiLeaks is permitted to reveal all, "society will have paid a very high price indeed for Assange's crusade". Whether that price outweighs the benefits of rulers having to act responsibly, because the people are watching them, is the central issue here.

http://www.guardian.co.uk/books/2013/jan/10/classified-secrecy-state-christopher-moran-review

- Cooper writes: "Crime doesn't stop at the Channel. Criminals don't stay within national borders. There are an estimated 3,600 organised crime groups active across Europe, involved in drugs, human trafficking, online child exploitation and theft.

"Cross-border crime is likely to keep increasing whether we are in the European Union or outside it. That means the police need a clear framework for legal and effective co-operation across borders - and for ministers to ditch it is crazy."

http://www.guardian.co.uk/politics/2013/jun/11/tory-eurosceptics-david-cameron-eu

- "Walk softly and carry a big stick." Teddy Roosevelt



"The more that is disclosed about what's known about espionage activity in Australia or operational aspects in counter-intelligence, the more that our opponents, people who are engaging in espionage, will know about our capability and know about the methods that we have for detecting espionage or cyber threats."

http://www.abc.net.au/news/2013-05-28/government-urged-to-come-clean-on-foreign-cyber-threat/4716978

- "We cannot allow an imbalance of the system of strategic deterrence, reduction of the effectiveness of our nuclear forces. Therefore, the establishment of military-space defense will remain one of the key areas of military construction," Putin said at a recent meeting on the state defense order in St. Petersburg.



The President is convinced that Russia should take into account the development plans of the armed forces for the first, so-called preemptive strike. To reflect such strikes, we need high precision, non-nuclear weapons.

http://english.pravda.ru/russia/economics/10-07-2013/125077-high_precision_weapons_russia-0/

- Russia's new Yars, Topol-M and Bulava ICBMs are unvulnerable to the US missile defense system. The commander of the Russian SFM said that it was best for the enemy to destroy the missile during the initial part of its flight, when it gathers speed. The missile separates later, which makes it harder for interceptors to detect the missile in a whole cloud of fake targets.



Russia's state-of-the-art ballistic missiles have the shortest boost phase of the flight - this phase is much shorter than it was with older missiles. "At this short part of the flight the missiles perform active maneuvers, which makes it impossible for interceptors to plan the attack.



"We conducted the tests to evaluate and confirm the nuclear safety of Topol warheads. The results of the tests showed that even in case of most complicated breakdowns, fires or explosions, the nuclear explosion of the warhead is excluded," Karakaev said.

http://english.pravda.ru/russia/politics/19-12-2011/120016-russia_monster_ballistic_missile-0/

- Therefore, European CEOs and entrepreneurs called on the European Commission to open the Internet, "so that everyone is able to send and receive the content, run the applications and use the services of their choice, on the device of their choice."



They also consider that network management should be keep to a minimum, as well as discrimination in the treatment of Internet traffic. "Network access providers must be prohibited from blocking, degrading, hindering," they explained.



The group concluded their letter saying that transparency and facilitating switching "are important but insufficient to protect the open Internet."

http://www.neurope.eu/article/european-entrepreneurs-ask-net-neutrality

- "Of course there's an element of information-gathering in international naval drills, but this works both ways," he told The Cable. "I'm sure it's not beyond the wit of the US Navy to choreograph exercises where China's role does not involve access to sensitive information about US or allied capabilities."


"Chinese participation in RIMPAC will presumably focus on seamanship and non-warlike activities, rather than high-end combat drills or live-fire exercises," he continued. "The United States and allies have long called on China to make use of standard modes of operational communication to prevent incidents leading to conflict. It would be absurd to lock China out of exercises aimed at advancing precisely that goal." 


But Chabot sees the invitation as a strategic and diplomatic misstep. "We don't need to be provocative with China, but I think we keep rewarding really bad behavior," he said. "China's blatant stealing of U.S. technologies, their hundreds of cyber attacks on U.S. industries and government agencies. It's all pretty much ignored." 
http://thecable.foreignpolicy.com/posts/2013/06/04/congressman_obama_is_letting_china_steal_us_military_secrets

- In a statement published by WikiLeaks late on Monday, Mr Snowden accused the US president, Barack Obama, of "using citizenship as a weapon".



"Although I am convicted of nothing, (the United States) has unilaterally revoked my passport, leaving me a stateless person," he added. "Without any judicial order, the administration now seeks to stop me exercising a basic right. A right that belongs to everybody. The right to seek asylum.



"Their purpose is to frighten, not me, but those who would come after me."

http://www.telegraph.co.uk/news/worldnews/europe/russia/10155407/Edward--Snowden-says-he-risks-the-death-penalty-as-escape-routes-narrow.html

- Raytheon's slimmed-down spy blimp is a spin-off however, from a much larger and highly-secretive Pentagon project. Among other high-tech, privacy-killing tools currently under development is the Defense Advanced Research Project Agency's (DARPA) Integrated Sensor Is Structure (ISIS) program. As conceived by the agency, ISIS will be a high-altitude autonomous airship built for the U.S. Air Force that can operate at seventy thousand feet and stay aloft for a decade.

Washington Technology reported that Lockheed Martin won a 400 million dollar deal to design the system. "Under the contract" the publication revealed, "Lockheed Martin will provide systems integration services, and Raytheon Co. will furnish a high-energy, low-power density radar, Lockheed Martin officials said."[38] Operating six miles above the earth's surface, well out of range of surface-to-air missiles, the airship will be some 450 feet long, powered by hydrogen fuel cells and packed with electronic surveillance gear and radar currently being field-tested by Raytheon.

While serious civil liberties' issues inherent to such programs have been swept under the proverbial carpet, huge funding outlays by Congress for Pentagon's "black" budget operations demonstrate the hollowness of President Obama's "change" mantra. Like much else in Washington, administration rhetoric is (if you'll pardon the pun) so much hot-air meant to placate the rubes.

http://www.globalresearch.ca/the-economic-crisis-and-the-pentagon-s-black-budget/23422

- In the month following Edward Snowden's leaks about U.S. government programs collecting information from phone and Internet companies, some U.S. citizens seemed unsurprised and resigned to being monitored. According to a poll conducted by the Pew Research Center last month, 56% of Americans think the collection of telephone metadata is acceptable.

http://edition.cnn.com/2013/07/04/tech/web/restore-nsa-protests/?hpt=te_t1

- "The internet is a glorious organism, a vast piece of connective tissue that binds us all together. It's surprisingly intimate. Yet, it's also a place where people imagine that they don't have to be held to account in the same way that we are when we talk face to face. And for governments, it's become a spying machine."

http://www.canberratimes.com.au/entertainment/information-and-deception-20130704-2pf8b.html?google_editors_picks=true

- Native to South America, the red fire ant organises itself into two types of social structure - one with a single queen in a colony, the other with hundreds. Though they are the same type of ant, the workers of either group will kill the queens of the other, the researchers wrote.

http://www.smh.com.au/environment/animals/supergene-link-to-ant-social-system-20130117-2cw49.html

- "Overexposure of security and intelligence activities can damage, and damage badly, state security and that is why in every debate we must not underestimate the security interest," Mr Netanyahu said in remarks communicated by his office.

"And in the reality in which Israel lives, it must be a central interest," he said in a thinly-veiled criticism of the media frenzy provoked by Zygier's case.

http://www.theaustralian.com.au/national-affairs/mark-dreyfus-rules-out-inquiry-into-asio-over-ben-zygiers-jailing-death/story-fn59niix-1226580223823

- "Life, Liberty, and the pursuit of Happiness" is a well-known phrase in the United States Declaration of Independence.

http://en.wikipedia.org/wiki/Life,_liberty_and_the_pursuit_of_happiness

- It would be silly to take any one of these incidents too seriously. But it would be equally silly to ignore them. We spent the 1990s enjoying the fruits of post-Cold War prosperity, the early 2000s fighting the war on terrorism. We are intellectually, economically and militarily unprepared to contemplate Great Power conflict, let alone engage in the hard work of renewing alliances and sharpening strategy. But History is back, whether we want it to be or not. Happy New Year.

http://www.washingtonpost.com/opinions/anne-applebaum-china-and-russia-bring-back-cold-war-tactics/2013/12/25/f65939d6-6bef-11e3-aecc-85cb037b7236_story.html

- "I was being judged by people who had less knowledge than me, so what was it truly worth? I gave Michelin inspectors too much respect, and I belittled myself. I had three options: I could be a prisoner of my world and continue to work six days a week, I could live a lie and charge high prices and not be behind the stove or I could give my stars back, spend time with my children and re-invent myself."[7]

http://en.wikipedia.org/wiki/Marco_Pierre_White

"The mind is its own place, and in itself can make a heaven of hell, a hell of heaven.."

- John Milton, Paradise Lost

http://www.goodreads.com/work/quotes/1031493-paradise-lost

"If you don't engage the scientific community constructively, and try to look for newer horizons, you will never able to develop science and technology," says Ajey Lele, research fellow at the Institute for Defence Studies and Analyses in Delhi. Referring to India's Mangalyaan orbiter, he says: "It is not only the 'Mars moment' will give you results; the entire process of learning will give you a certain amount of development."

http://www.smh.com.au/technology/sci-tech/asian-powers-open-new-chapter-in-space-race-20140104-30at2.html

- Creativity alone does not foster innovation, nor do abstract scientific or mathematical concepts. Innovators also need to know how to render those creative ideas into working products that can be put into use.

http://www.theatlantic.com/education/archive/2014/01/stem-needs-a-new-letter/282973/

- " 'I can't feel bad about being who I am, just like the girl next to me can't feel bad about being who she is,' she says. 'Because a rose can never be a sunflower, and a sunflower can never be a rose'."

http://www.perthnow.com.au/entertainment/kerr-pow-whack-for-air-apparent-as-miranda-gets-slated/story-e6frg30l-1226217169279

- All Barinas are Suzuki Swifts. Barina is Italian for Cardboard Faecal Container.

https://www.ozbargain.com.au/node/133234

- "I'm called 'the poorest president', but I don't feel poor. Poor people are those who only work to try to keep an expensive lifestyle, and always want more and more," he says.



"This is a matter of freedom. If you don't have many possessions then you don't need to work all your life like a slave to sustain them, and therefore you have more time for yourself," he says.

http://www.bbc.co.uk/news/magazine-20243493

- If we look at His divine side, it's hard to imagine God not smiling at some of the absurdities of the world.

http://www.relevantmagazine.com/god/deeper-walk/features/28558-jesus-was-funnier-than-we-think

- And anyway, can you get any more retarded than licking your own pussy?

http://forums.govteen.com/general-curiousity/272776-can-girl-lick-herself-2.html

- On April 8, 1998, Kelly was arrested on three misdemeanor charges of disorderly conduct, including one charge on violating noise ordinance for playing his own music extremely loud from his car while singing along.[111] Prosecutors from the district attorney's office dropped the first two charges on May 7 and the noise charge on July 22 that year.[112][113]

http://en.wikipedia.org/wiki/R._Kelly#Personal_life

- Your panties tell you if someone's hot. Your heart tells you if someone's cute. Your mom tells you if someone's handsome.

http://www.reddit.com/r/AskWomen/comments/1hfc9z/what_makes_a_guy_hotsexy_rather_than_cute/ 
- http://politicalhumor.about.com/od/bushquotes/a/dumbbushquotes.htm

- Just FYI....I notice during a regular doggy-style position, if I lift one leg up and plant my foot flat on the bed, I last longer. Pretty much the proposal(marriage) kneeling position.

http://www.pegym.com/forums/premature-ejaculation-forum/32926-my-ejaculation-has-trigger.html

- In Germany, a country that can't produce the talent or children it needs, the unemployed are in very high demand.

http://www.psmag.com/navigation/business-economics/germany-unemployment-better-employment-74434/

- "The government always knew best and the people were kind of stupid. I think still a bit of that is lingering on," said Michael Breen, author of The Koreans: Who They Are, What They Want, Where Their Future Lies.

...

''New media and social networking services like Twitter have emerged as new political tools for anti-government and left-wing people,'' said activist Chang Yeo-kyung. ''The government wants to create a chilling effect to prevent the spread of critical views.''

http://www.smh.com.au/world/wired-koreans-on-web-watch-20120813-244tn.html

- Big Mobile managing director Rob Hall said while we punch above our weight in other categories at Cannes, in mobile Australia is far behind. "The penetration is here, consumer usage is here, brands are just so far behind where the consumers are," he said. "Innovation is almost dead in the mobile industry here."

http://www.adnews.com.au/adnews/the-cowardly-client-australia-too-scared-to-innovate/google_editors_picks/true

- .... capitalism had the singular virtue of rewarding people who had chosen the correct parents, or had been lucky in business ...

http://forum.rpg.net/showthread.php?570150-Where-I-read-Tom-Clancy-novels-at-random-starting-with-Rainbow-Six/page4

- "Just as ant colonies do things that are far beyond the abilities of isolated insects, cities achieve much more than isolated humans," he writes. "Cities enable collaboration, especially the joint production of knowledge that is mankind's most important creation. Ideas flow readily from person to person in the dense corridors of Bangalore or London, and people are willing to put up with high urban prices just to be around talented people, some of whose knowledge will rub off."

http://www.theage.com.au/comment/abbotts-biggest-broken-promise--to-build-our-cities-well-20140421-zqx73.html

Running skiboot (OPAL) on the POWER8 Simulator

skiboot is open source boot and runtime firmware for OpenPOWER. On real POWER8 hardware, you will also need HostBoot to do this (basically, to make the chip work) but in a functional simulator (such as this one released by IBM) you don’t need a bunch of hardware procedures to make hardware work, so we can make do with just skiboot.

The POWER8 Functional Simulator is free to use but not open source and is only supported on limited platforms. But you can always run it all in a VM! I have it running this way on my laptop right now.

To go from a bare Ubuntu 14.10 VM on x86_64 to running skiboot in the simulator, I did the following:

  • apt-get install vim git emacs wget xterm # xterm is needed by the simulator. wget and editors are useful things.
  • (download systemsim-p8…deb from above URL)
  • dpkg -i systemsim-p8*deb # now the simulator is installed
  • git clone https://github.com/open-power/skiboot.git # get skiboot source
  • wget https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.8.0/x86_64-gcc-4.8.0-nolibc_powerpc64-linux.tar.xz # get a compiler to build it with
  • apt-get install make gcc valgrind # get build tools (skiboot unittests run on the host, so get a gcc and valgrind)
  • tar xfJ x86_64-gcc-4.8.0-nolibc_powerpc64-linux.tar.xz
  • mkdir -p /opt/cross
  • mv gcc-4.8.0-nolibc /opt/cross/ # now you have a powerpc64 cross compiler
  • export PATH=/opt/cross/gcc-4.8.0-nolibc/powerpc64-linux/bin/:$PATH # add cross compiler to path
  • cd skiboot
  • make # this should build a bunch of things, leaving you with skiboot.lid (and other things). If you have many CPUs, feel free to make -j128.
  • make check # run the unit tests. Everything should pass.
  • cd external/mambo
  • /opt/ibm/systemsim-p8/run/pegasus/power8 -f skiboot.tcl # run the simulator

The last step there will barf as you unlikely have a /tmp/zImage.epapr sitting around that’s suitable. If you use op-build to build a full set of OpenPower foo, you’ll likely be able to extract it from there. Basically, the skiboot.tcl script is adding a payload for skiboot to execute. On real hardware, this ends up being a Linux kernel with a small userspace and petitboot (link is to IBM documentation for IBM POWER8 systems). For the simulator, you could boot any tiny zImage.epapr you like, it should detect OPALv3 and boot!

Even if you cannot be bothered building a kernel or petitboot environment, if you comment out the associated lines in skiboot.tcl, you should be able to run the simulator and see the skiboot console message come up that says we couldn’t load a kernel.

At this point, congratulations, you can now become an OpenPower firmware hacker without even possessing any POWER8 hardware!

skiboot/OPAL versioning

skiboot is boot and runtime firmware for OpenPower systems. There are other components that make up all the firmware you need, but if you’re, say, a Linux kernel, you’re going to be interacting with skiboot.

I recently committed doc/versioning.txt to skiboot to try and explain our current thoughts on versioning releases.

It turns out that picking version numbers is a bit harder than you’d expect, especially when you want to construct a version string to display in places that has semantic meaning. In fact, the writing on Semantic Versioning influenced us heavily.

Since we’re firmware, making incompatible API changes is something we should basically never, ever do. Old kernels should must boot and work on new firmware and new kernels should boot and function on old firmware (and if they don’t, it plainly be a kernel bug). So, ignore the Major version parts of Semantic Versioning for us :)

For each new release, we plan to bump the minor version for mostly bug fix releases, while bump the major version for added functionality. Any additional information is to describe the version on that particular platform – as everybody shipping OPAL is likely to build it themselves with possibly some customizations (e.g. YOUR COMPANY NAME HERE, support for some on board RAID card or on-board automated coffee maker). See doc/versioning.txt for details.

You may wonder why we started at 4.0 for our first real version number. Well… this is purely a cunning plan to avoid confusion with other things, the details of which will only be extracted out of my when plied with a suitable amount of excellent craft beer (because if I’m going to tell a boring story, I may as well have awesome craft beer).

December 02, 2014

[life] Day 307: Kindergarten, startup stuff, swim class

Zoe woke up at 1:48am. Something about not liking the colour of her bed (we're back at that one again). I didn't have the energy to try and put her back to bed, so I let her jump in with me.

Zoe ended up having a big sleep in, I think until around 7am. I let her sleep, since I figured she needed it, but coupled with some spectacular procrastination, it meant we needed to drive to Kindergarten.

I had an appointment at 9:30am, so I didn't get started on my real estate licence coursework until after 10am, and I wasn't feeling particularly motivated. I managed to procrastinate my way through finishing off last week's unit and got it in the mail by the time I had to pick Zoe up.

I'd shifted Zoe's swim class to this afternoon to free up Thursday for a day trip, but the class wasn't until 4:45pm. After a bit of TV, we headed off anyway. Zoe wanted to ride her scooter, and wanted me to rollerblade, and as we had plenty of time, we took a more indirect route.

Even with all that, we still had an hour up our sleeves, so we stopped off at the park for a play. We ran into Flynn, who Zoe met at her pre-Prep afternoons at school, so that was nice.

We went to swim class, and I ran into the parents of one of the girls from Zoe's Kinderballet, so I had a bit of a chat with them while Zoe had her swim class.

After that, we headed back home. I gave Zoe a bath while dinner cooked, and that got everything back on schedule. We actually ended up with time up our sleeves, so we sat out on the balcony and watched the fruit bats taking flight at dusk.

Speaker Feature: Michael Homer, Andrew Cowie, Beau Johnson

Michael Homer

Michael Homer

Grace: an open-source educational programming language

3:40pm Friday 16th January 2015

Michael has a long-standing interest in programming languages and language features that help programmers say what they mean. He has spent the last three years designing and building a compiler for the Grace language, and participating in the design and evaluation of the language itself. He has worked on the GoboLinux distribution and is also interested in education, package management, JavaScript, the web, and data storage.

For more information on Michael and his presentation, see here. You can follow him as @michaelhomer and don’t forget to mention #lca2015.



Andrew Cowie

Andrew

Vaultaire: a data vault for system metrics, backed onto Ceph

3:40pm Thursday 15th January 2015

Somewhat unusually for a free software hacker, Andrew Cowie was an infantry officer in the Canadian army, having graduated from Royal Military College with a degree in engineering physics. He saw service across North America and a peacekeeping tour in Bosnia. He later ran operations for a new media company in Manhattan and was a part of recovering the firm after the Sept 11 attacks. He regularly consults on crisis resolution, change management, robust architectures, and (more interestingly) leveraging Open Source to achieve these ends.

Andrew currently looks after the engineering group at Anchor Systems, where lately he's been working on scalable distributed systems, building server side code in Haskell and doing as little JavaScript as possible.

For more information on Andrew and his presentation, see here.



Beau Johnston

Beau

Making code run fast on all the things (with OpenCL)

10:40am Wednesday 14th January 2015

Beau is a PhD Candidate at the Australian National University and freelance code-monkey. He has an interest in OpenCL, OpenGL, OpenCV, creative naming conventions and image processing. He has developed for iOS, Android, OSX, Linux and a micro-CT machine.

In his free time he likes to play boardgames, lawn bowls and badminton.

For more information on Beau and his presentation, see here.

Memorable Quotes - Part 6

A follow on from:


- As a society, we subliminally hold ancient prejudices. The woman must be at least complicit in any rape and even the instigator, by dressing or acting provocatively, by not being sufficiently wary, by incautiously walking down a deserted street in the night or the day, by getting drunk, by leaving a party with a guy, by accepting an invitation, being too nave, trusting, sexy. Merely by being women, we're alluring, and worse: we're temptresses. With this course of reasoning, the burka seems a reasonable solution.



In societies like ours that accept rape myths - acquaintance rape happens because of "mixed signals", rapists can't control sexual urges, women lie about being raped, women invite rape by their actions or their dress - men are more likely to commit rape because these beliefs make it seem almost acceptable.



At my trial, the serial rapist's attorney read his deposition. In it he said he'd have a few beers, then break into women's houses and "cause a little mischief". I've no doubt that is exactly how he thought of his crime. I've no doubt many rapists think the same of their crimes: "Na, na, na, na, na." Stop whining; what's the big deal? The rapist was asked if he had anything he wanted to add to his deposition, and he ran on for an hour. Among other woe-is-me statements, this is the most memorable: "These women are ruining the good name of my family."



How dare we cause all this trouble?



How dare we not?

http://www.dailylife.com.au/news-and-views/dl-opinion/why-i-didnt-scream-when-i-was-being-raped-20130730-2qwle.html

- The ultimate problem is bigger than that. As we discovered during the financial crisis, whenever there is a serious difficulty, and these globalised experiments go wrong, the burden of averting anarchy falls back on the nation state and its taxpayers. It will be exactly the same if the internet ever freezes in some unforeseeable manner, or transcontinental energy infrastructure is blown up by the next generation of terrorists. In a crisis, when globalisation fails, we will turn to our nation's government and expect it, with our hard-earned money, to help.



That certainly should not mean bigger government. But small-government conservatives have traditionally never believed in the idea of no government. The need instead is for a stronger, more effective, truly independent-minded state.



I fear the status quo involves just accepting the numerous downsides of globalisation, and seeing it as like the weather, a force it is impossible to restrain even a little. This means stumping up for ever larger repair bills after the next storm.



In a different context, David Howell's host in 1961 argued against defeatism and despair by saying that we do have considerable scope to influence the direction of events, if only we have the guts. Which politicians will be big enough to really stand up to the corporate giants and to tame them? As JFK put it: "Things do not happen; they are made to happen."

http://www.telegraph.co.uk/technology/internet/10214068/Globalisation-has-a-darker-side-and-its-a-challenge-to-us-all.html
- "In modern times, because war is all the time on television, people see this and can't take it. There are limits. There is a price you pay," then-deputy prime minister Dan Meridor said in 2011, remarks echoed recently by Israeli officials and officers.

http://www.reuters.com/article/2013/05/26/us-syria-crisis-israel-arms-idUSBRE94P05Y20130526

- Times will change, people will change, values and morals will change in the digital world.


Those issues included ''21st-century laws'' on online privacy, freedom of information and government transparency. ''Many people see Iceland as a kind of laboratory for democracy,'' she said. ''We have to live up to this reputation.''
http://www.smh.com.au/technology/technology-news/internet-activists-turned-pirates-sail-into-icelands-parliament-20130429-2iota.html

- In light of the continuing sequestration fight, the minutes of one National Security Council meeting in 1960, the last year of Eisenhower's administration, give an idea of what he might have thought of the current morass:



"He believed it was the duty of military officers to get along with less if at all possible. He realized it was also the duty of military officers to ensure the military safety of the U.S., but he believed that no absolute assurance on this point could ever be given."



What Eisenhower shows us today is that while we cannot completely assure safety given any amount of spending, we can definitively show what that spending could otherwise accomplish. And that is valuable.
http://atwar.blogs.nytimes.com/2013/04/16/what-would-a-fighter-jet-buy-60-years-after-eisenhowers-speech/

- "The parasite wants to survive in the host without killing it, so it needs to know how many [parasites] there are and when the best time is to leave the host," he said.
http://www.theage.com.au/technology/sci-tech/malaria-parasites-thrive-by-talking-20130515-2jmph.html

- "It's not just the skills that they bring; it is also the attitude that they bring."

http://www.brisbanetimes.com.au/national/bringing-the-right-stuff-20130804-2r7dd.html

- ''What I fear, if you can call it that, is that we, as a species, take the safe road and don't try to exceed our limits.''



Mr Tamits is similarly philosophical. ''I'd rather die looking upon Earth from outer space than to be on my deathbed thinking I could have had my chance.''

http://www.theage.com.au/technology/sci-tech/one-way-only-reality-check-for-our-favourite-martians-20130804-2r7mb.html
- Talk is anything but cheap. Mr. Obama and his administration would do well to remember that at a time when the world has enough existing problems to deal with, when we need statesmen to be magnificent negotiators and diplomats, and when snubs are antagonistic and destructive.

http://www.foxnews.com/opinion/2013/08/07/mr-obama-should-have-met-with-putin/

- France's president may be a 'child of 68,' a man whose ideals are rooted in another era but times have changed and he has to play the card he has been dealt.



Or else, he'll be history, just like the protagonists of that fateful day 200 years ago -- just without the glory.

http://www.gulf-times.com/Mobile/Opinion/189/details/360939/Libert%C3%A9,-%C3%A9galit%C3%A9-...-r%C3%A9alit%C3%A9

- "The idea that we can influence the trajectory of the politics is foolish," Cook said. "But to have not been consistent in emphasizing our own values in this situation is a mistake. We should stick to the principles of democracy and recognition for the rule of law."

http://abcnews.go.com/Politics/wireStory/egypt-challenges-obamas-arab-spring-philosophy-19989050

- But this, in Westminster, is something new: a group of parliamentarians, some of them, like John Redwood, Peter Lilley, Andrew Tyrie and Graham Stringer, senior and experienced, prepared to abandon all caution and declare an all-out war on the evidence. Listening to the debate on Tuesday, I had the sense that they were undergoing an initiation test, like Mara gang members acquiring a facial tattoo. To show you are a true believer, you must disfigure your political record by reciting a ream of nonsense in parliament. So, with a heavy heart, I find myself going in again.

http://www.theguardian.com/commentisfree/2013/sep/16/can-mps-resist-flat-earth-love-in

- Beware the FALSE PROPHETS and TROLLS that look to draw you in to fruitless conversation....One will lead you from the true path and the other is always hungry!!! :)

Never approach a Bull from the front, a Horse from the back, or an Idiot from any direction

http://www.f1technical.net/forum/viewtopic.php?p=455832&f=4#p455832
- "One of the big things that differentiates Formula 1 from almost all other sports, with perhaps the exception of the Americas Cup, is that combination of man and machine," he argued.



"You can have a great car with an average driver and you won't win, a great driver with an average car you won't win. It's about both.

http://uk.eurosport.yahoo.com/news/formula-1-newey-warns-f1-risks-stagnation-122105292--f1.html

- Christmas is a time for love. As a Christian, I believe it begins with the redeeming love of God, but if you don't share my faith you will still probably agree that Christmas without love is not Christmas at all.



I have no intention of spoiling Christmas for one of my children, nor any of my nieces and nephews, by giving them a present they're not going to enjoy. It's all about the love, Senator, not the politics.

http://www.brisbanetimes.com.au/comment/the-hermit/giving-girls-dolls-causes-domestic-violence-rubbish-20141202-11yhuv.html

- I'm also guessing you don't literally believe, as the Bible states, we should put people to death for being magicians, saying God doesn't exist, adultery, homosexuality, working on the Sabbath and worshipping graven images.



Why? Because I think, deep in your heart, you know the Bible is not the literal word of God but a series of texts compiled over many centuries by a huge, disparate group of clever men.



And I'd suggest you also recognise even the Bible has to move with the times and, what may have been laudable 2000 years ago - like selling your daughter into sexual slavery (Exodus 21:7-11) - is not so cool in Australia in 2013.



So let's be clear: this has nothing to do with the word of God and the Bible - it's merely how you're interpreting it, and your interpretation on this issue, I suspect, is based on one thing alone.

http://www.brisbanetimes.com.au/executive-style/culture/all-men-are-liars/that-doesnt-sound-very-christian-to-me-20131115-2xjfm.html
- "They cry during the national anthem, they cry at the end of extra-time, they cry before and after the penalties," said technical director Carlos Alberto Parreira.

http://www.smh.com.au/fifa-world-cup-2014/world-cup-news-2014/brazil-coach-luiz-felipe-scolari-summons-psychologist-to-camp-20140703-zsu1p.html

- Commander William Adama: There's a reason you separate military and the police. One fights the enemies of the state, the other serves and protects the people. When the military becomes both, then the enemies of the state tend to become the people.

http://www.imdb.com/title/tt0407362/quotes 
- "We're using missile defense to protect our civilians, and they're using their civilians to protect their missiles"

https://plus.google.com/+LeslieP/posts/eKnY1gVhrbh

- Richard Feynman once said, "I think I can safely say that nobody understands quantum mechanics."[48] According to Steven Weinberg, "There is now in my opinion no entirely satisfactory interpretation of quantum mechanics."[49]

http://en.wikipedia.org/wiki/Quantum_mechanics

- "In these cases where there is an unjust aggression, I can only say this: It is licit to stop the unjust aggressor. I underline the verb: stop. I do not say bomb, make war, I say stop by some means. With what means can they be stopped? These have to be evaluated. To stop the unjust aggressor is licit," Francis said about airstrikes, according to a transcript by America magazine.

http://www.washingtonpost.com/news/local/wp/2014/09/16/977/

- "Man cannot discover new oceans unless he has the courage to lose sight of the shore." - Andre Gide

"By changing nothing, nothing changes." -Tony Robbins

http://www.seek.com.au/job/27563592
- "There's nothing wrong with the car, except that it's on fire."

Murray Walker

http://www.f1technical.net/

- Anyone who dreams of a better world knows that a civil society runs on trust. We need to be able to assume that our fellow citizens appreciate the value of mutual respect and those qualities of kindness, compassion, care and concern that distinguish the much-vaunted ''civil societies'' from the rest.



But trust is more than a personal, private matter: it starts at the top. We need to feel confidence in the integrity of our institutions, whether political, legal, religious, commercial or cultural. We need to be able to trust our leaders, above all. In spite of our cynicism, and regardless of how often we might have been disappointed, we (and our children) still look hopefully to them as examples of probity, charity, loyalty, integrity and decency.

http://www.smh.com.au/comment/budget-2014-is-this-the-australia-we-really-want-to-be-20140516-zrevn.html?google_editors_picks=true

- Capitalism is a process of creative destruction, as the Austrian economist Joseph Schumpeter famously put it. Lumbering, seemingly unassailable corporate giants eventually wither, elbowed aside by fresher, hungrier start-ups; modern technologies disrupt long-established industries; and, perhaps most terrifyingly of all, once-useful skills become redundant, replaced by new roles, jobs and opportunities.



It's scary but it works. Change has been with us since the Industrial Revolution ended centuries of debilitating human stagnation. It is painful in the short-term but rewarding for society over the long-term, fuelling rising living standards.

http://www.telegraph.co.uk/finance/jobs/10889934/Open-your-companys-doors-and-let-the-machines-in-the-economy-depends-on-it.html

Memorable Quotes - Part 5

A follow on from:
 
- "The problem with trying to disabuse someone of a conspiracy theory is that any argument you make becomes part of the conspiracy, so I don't know if it's possible to convince the Chinese that it's not about encircling them," she said.

http://www.reuters.com/article/2013/04/10/us-korea-usa-china-idUSBRE93903U20130410  
- M: Today I've repeatedly heard how irrelevant my department has become. "Why do we need agents, the Double-0 section? Isn't it all antiquated?" Well, I suppose I see a different world than you do, and the truth is that what I see frightens me. I'm frightened because our enemies are no longer known to us. They do not exist on a map. They're not nations, they're individuals. And look around you. Who do you fear? Can you see a face, a uniform, a flag? No! Our world is not more transparent now, it's more opaque! It's in the shadows. That's where we must do battle. So before you declare us irrelevant, ask yourselves, how safe do you feel? Just one more thing to say, my late husband was a great lover of poetry, and... I suppose some of it sunk in, despite my best intentions. And here today, I remember this, I believe, from Tennyson: "We are not now that strength which in old days moved earth and heaven, that which we are, we are. One equal temper of heroic hearts, made weak by time and fate, but strong in will. To strive, to seek, to find, AND NOT TO YIELD."

http://www.imdb.com/title/tt1074638/trivia?tab=qt

http://www.mi6community.com/index.php?p=/discussion/4601/tennyson-the-key-to-understanding-skyfall-contains-spoilers/p1
- When someone is bluffing with chips, their actions are often stilted and visibly precise, with a notable pause to think before they are carried out. Look for his responses that don't appear to flow naturally; these are the ones that should require further examination. 
http://www.telegraph.co.uk/sport/othersports/cycling/lancearmstrong/9812142/Lance-Armstrong-on-Oprah-expert-panel-analysis.html

- the doctrine, developed after Rwanda's genocide, that the international community must act if governments fail to protect their own citizens. The Henry Jackson Society, a UK think-tank, has also argued that legal authorisation from the General Assembly could be based on the "Uniting for Peace" resolution of 1950, which was used to overcome the Soviet Union's obstruction at the Security Council in the Korean war.
- "The euro zone has long since stopped being a brotherhood for increasing prosperity and mutual stability. It has transformed itself into a school of gladiators in which everyone fights for his own advantage and his survival."

http://www.spiegel.de/international/europe/german-press-reaction-to-cyprus-bailout-a-891018.html

http://www.globalresearch.ca/criminal-act-the-european-unions-financial-looting-of-cyprus/5328989
- "Peace, like air and sunshine, is hardly noticed when people are benefiting from it," Chinese President Xi Jinping noted in his opening speech at Boao. "But none of us can live without it."

http://www.bbc.co.uk/news/world-asia-china-22062589

- "We turned the inside of our tent into a circus. 'Cause inside of our circus, we cannot be injured. Inside of our circus, we cannot be touched."

http://www.hark.com/jarhead/we-turned-the-inside-of-our-tent-into-a-circus

- The fact that the polls now seem to be locked into an easy Coalition win on September 14 has meant that the prospect of Anthony John Abbott, Prime Minister, has finally to be confronted as emerging reality rather than a possible future scenario, so the punters are reluctantly turning away from the easy pickings of the carcase of the Labor Party to take a few cautious sniffs at the fresh meat of an incoming government. And, by and large, they are not too keen on the smell.

http://www.abc.net.au/unleashed/4657092.html

- But leadership, especially for someone who has achieved that level of power, requires three elements: It must communicate a clear vision and a commitment to its realization; it must mobilize and inspire others into action; and it must produce results."

http://spectator.org/archives/2013/05/07/turning-on-obama

- "He may be a sonofabitch, but he's our sonofabitch."

http://www.guardian.co.uk/commentisfree/2013/may/13/syria-post-superpower-era-obama-indecision

- Today's nugget of investing wisdom comes courtesy of a refreshing post from Joshua Brown of The Reformed Broker.



So often in investing, people feel the need to break out fancy trading equipment, glue themselves to their computers all day and employ a host of complicated math equations to make the best decisions.

 
Not so, says Brown:



"The fancier the math one uses to justify an entrenched investment opinion, the more obscure and arcane the indicators employed, the more desperate and wrong that person is," he writes.



"We don't resort to algebraic equations when we're on the winning side of a trade and confident that we have gotten the broad strokes right. It is only when our backs are against the wall and the core beliefs we've publicly held have proven to be ineffective or incorrect that we resort to mining for "new" data from decades ago to re-prove our original thesis. This is more about saving face and nursing a bruised ego than it is about making money."



In fact, as an individual investor, you may have insights that the professionals who get paid to trade could never possess.

http://au.finance.yahoo.com/news/smart-investor-heres-math-rule-213716691.html

- "In some ways the devastation is beautiful. There is regrowth and regeneration, it's part of nature and relative to the debate about global warming and climate change."

http://www.smh.com.au/entertainment/art-and-design/censored--images-of-our-ugly-truths-natural-and-manmade-20130525-2n3s1.html

- Intrusive government regulations and high costs, uncompetitive labour agreements that lock in above market wage increases, and insufficient volumes for economies of scale all played a significant role in Ford's demise. Another important factor is excess capacity in the global car market due to foreign government subsidies.

http://www.abc.net.au/unleashed/4709208.html

- A newspaper comes out once a day and needs to be put together differently every time. It can no longer be used to find out what's going on, except by a rapidly diminishing group of people who don't really want to know what's going on.

...

Newspapers must be reinvented to be sort of daily magazines, bought for reading rather than finding things out, and that should have happened years ago. Websites need to be fast-moving, constantly updated, accurate sources of information and analysis.

http://www.abc.net.au/news/2012-06-19/kohler-newspapers-should-be-quarantined-from-the-web/4079498
- The glory of mountain climbing lies in the fact that success is never guaranteed.

http://www.nytimes.com/2013/06/01/opinion/the-right-way-to-do-the-hillary-step.html?_r=0

- "Things are changing way faster than they were in the 1970s or 1980s with technology, capital and talent available everywhere in the world, which was not the case then. This is making the lack of action, vision and priorities a much more difficult thing and a much bigger sin than before."

http://www.telegraph.co.uk/finance/financialcrisis/10093809/France-worse-off-than-UK-in-the-1970s-Axa-chief.html

- "Whenever destroyers appear among men, they start by destroying money, for money is men's protection and the base of a moral existence. Destroyers seize gold and leave to its owners a counterfeit pile of paper. This kills all objective standards and delivers men into the arbitrary power of an arbitrary setter of values. Gold was an objective value, an equivalent of wealth produced. Paper is a mortgage on wealth that does not exist, backed by a gun aimed at those who are expected to produce it. Paper is a check drawn by legal looters upon an account which is not theirs: upon the virtue of the victims. Watch for the day when it bounces, marked, 'Account overdrawn." -Ayn Rand

http://www.marketoracle.co.uk/Article40712.html

- "We are not engaging in a purely material enterprise, we are engaging in a human enterprise which will promote peace and mark a major step for civilisation".

http://www.neurope.eu/blog/towards-european-public-space

- But leadership requires more than an unusually elevated dose of political vitamins: it requires a disciplined intellectual framework that can shape an understanding of the past, underpin mastery of the present and guide the search to enlarge the future. Lacking that, no number of resurrections can transform persistent failure into enduring success. To believe otherwise is to court ultimate disaster, with nothing but disappointment along the way.

http://www.theaustralian.com.au/opinion/columnists/kevin-rudds-real-record-as-pm-speaks-for-itself/story-fn7078da-1226678687731

- "We seem to be standing by --and, frankly, asking -- for perfectness in science,"' Sullivan wrote in the 2007 CNA report. "People are saying they want to be convinced, perfectly. They want to know the climate-science projections with 100 percent certainty. Well, we know a great deal, and even with that, there is still uncertainty. But the trend line is very clear. We never have 100 percent certainty. We never have it. If you wait until you have 100 percent certainty, something bad is going to happen on the battlefield. That's something we know. You have to act with incomplete information. You have to act based on the trend line. You have to act on your intuition sometimes."

http://www.livescience.com/38167-national-security-impact-of-warming-climate.html

- "We don't don't get a chance to do that many things, and every one should be really excellent. Because this is our life. Life is brief, and then you die, you know? We've all chosen to do this with our lives. So it'd better be damn good."

http://www.linkedin.com/today/post/article/20130711092924-13518874-the-10-secrets-to-becoming-a-fortune-500-ceo

- "You need brilliant minds to write good reports. But you also need efficient practitioners to apply those recommendations," he said.

http://www.france24.com/en/20130521-france24-interview-french-education-elite-schools

- In his book Mother Earth and Mankind, celebrated historian Arnold Toynbee wrote that if the Chinese remain mindful of their past and future, "they may do a great service, not only to their own country, but to the whole of mankind at a critical stage in mankind's enigmatic course."

http://theconversation.com/china-can-teach-the-west-about-tackling-climate-change-15902
- Wall Street fails to understand the compounding power of a viral feedback loop. Hence, traditional financial firms underestimate the global demand for Tesla automobiles and related products. Most Wall Street firms are linear thinkers, and they do not understand the non-linear mathematics of viral feedback loops. Consequently, their linear models miscalculate the power and impact of viral marketing.



So get with the loop.

http://au.finance.yahoo.com/news/asset-manager-heres-goldman-sachs-210219090.html

- In an age dominated by economic fears and corroded by loathing for politicians, the irreducibles of life make the health service the sole arena where the visceral issues of love, birth and death bind parliamentarians and the people. The NHS, a conduit through the no man's land separating the governing and the governed, is not the creaking relic of Tory myth.



Its problems are not, at heart, poor management or regulation (though neither help) but that it is being asked to do too much with too few staff. And yet, with demography and demand stacked against it, it accounts for 9.6 per cent of GDP, compared to 17.9 per cent in the US for far worse care. Some golden future of privatisation is a neverland sustained only by the erroneous notion that private services offer better and safer treatment. The public, who queue at GPs' surgeries, who languish in A&E and who, too often, see their parents or grandparents condemned to live and die like cattle, know all of this.



That is why the battle for the NHS is so bitter and the prize for offering a 21st-century settlement so immense. Ed Miliband is sitting on the big idea which might just save the health service. He should back it.

http://www.telegraph.co.uk/health/10182988/The-NHS-is-not-a-creaking-relic-whatever-the-Tories-may-say.html
- Political memoirs are their own thing. There is inevitable self justification, sometimes outright delusion. There is record setting and score settling, foes touched up, fellow travellers flattered.



Some are stagey and allegorical, their true purpose all too transparent - the text is a bridge to life on the speaker's circuit after politics, a crude marketing exercise. Some hold back, constrained by dull instincts, cramped rooms, cut lunches and wooden formulations. Some are gossipy and gonzo, like Bob Carr's magnificently picaresque romp through the foreign affairs portfolio published earlier this year.



The best contributions tell the truth, or if not the truth (a vexatious and flexible concept, given history's tendency to be somewhat in the eye of the beholder) - then at least truth according to the person providing the story. The reflections are authentic, and ring true. There is an attempt to interrogate events and emotions and experiences.

http://www.theguardian.com/world/2014/sep/24/julia-gillards-memoir-insightful-unflinching-revealing

[life] Day 306: Running, Kindergarten visit, Christmas party

After helping out with Saturday's New Farm parkrun by being the timekeeper, I felt additionally motivated to get out and go for a run again. It was overcast and cooler this morning, so that helped. I managed to get out and running pretty early.

Annoyingly, my phone decided it had a completely different idea of distance than reality (I think it decided my approximately 7 km run was 20 km, which was very annoying) so the record of the run is pretty much useless. I hope this isn't a sign of further problems with Android 5.0 on my phone.

After that, I pottered around home for a bit before getting ready to go spend a chunk of time at Kindergarten. I had to pick up some stuff from the supermarket on the way, and I ended up getting there a bit later than I'd intended, but it seemed to work out well with the schedule they were running to at Kindergarten.

I've been wanting to go and spend a day with Zoe at Kindergarten all year, it's just taken me until the second last week to get my act together and make it happen. I know some of the mothers had done baking and stuff with the kids, but I thought that I could do something technological instead. I'll go into all the technical details in another post.

I had a really fun morning with all the kids. Initially it was just with the kids from Zoe's unit, but after all of them had had a bit of a turn, Zoe's teacher asked me if I wanted to do it with the kids in Megan's unit as well, so I moved over to the other classroom and they all had a turn too. It was lovely to properly meet all of the kids, especially the ones I didn't already know by name.

I stuck around until Zoe had lunch, and then left when they had their rest time, and went home for a bit of a rest myself. Zoe was super happy that I was able to spend some time there.

I drove back for pick up time, and we just hung out at home afterwards.

It was my Thermomix branch Christmas Party, and I'd booked the same babysitter that had nannied for me previously. That seemed to work out pretty well.

Specs for Kilo, an update

We're now a few weeks away from the kilo-1 milestone, so I thought it was time to update my summary of the Nova specifications that have been proposed so far. So here we go...



API







API (EC2)



  • Expand support for volume filtering in the EC2 API: review 104450.
  • Implement tags for volumes and snapshots with the EC2 API: review 126553 (fast tracked, approved).




Administrative



  • Check that a service isn't running before deleting it: review 131633.
  • Enable the nova metadata cache to be a shared resource to improve the hit rate: review 126705 (abandoned).
  • Enforce instance uuid uniqueness in the SQL database: review 128097 (fast tracked, approved).
  • Implement a daemon version of rootwrap: review 105404.
  • Log request id mappings: review 132819 (fast tracked).
  • Monitor the health of hypervisor hosts: review 137768.
  • Remove the assumption that there is a single endpoint for services that nova talks to: review 132623.




Cells







Containers Service







Database







Hypervisor: Docker







Hypervisor: FreeBSD



  • Implement support for FreeBSD networking in nova-network: review 127827.




Hypervisor: Hyper-V



  • Allow volumes to be stored on SMB shares instead of just iSCSI: review 102190 (approved).




Hypervisor: Ironic







Hypervisor: VMWare



  • Add ephemeral disk support to the VMware driver: review 126527 (fast tracked, approved).
  • Add support for the HTML5 console: review 127283.
  • Allow Nova to access a VMWare image store over NFS: review 126866.
  • Enable administrators and tenants to take advantage of backend storage policies: review 126547 (fast tracked, approved).
  • Enable the mapping of raw cinder devices to instances: review 128697.
  • Implement vSAN support: review 128600 (fast tracked, approved).
  • Support multiple disks inside a single OVA file: review 128691.
  • Support the OVA image format: review 127054 (fast tracked, approved).




Hypervisor: ironic







Hypervisor: libvirt







Instance features







Internal



  • A lock-free quota implementation: review 135296.
  • Automate the documentation of the virtual machine state transition graph: review 94835.
  • Flatten Aggregate Metadata in the DB: review 134573.
  • Flatten Instance Metadata in the DB: review 134945.
  • Implement a new code coverage API extension: review 130855.
  • Move flavor data out of the system_metadata table in the SQL database: review 126620 (approved).
  • Move to polling for cinder operations: review 135367.
  • Transition Nova to using the Glance v2 API: review 84887.
  • Transition to using glanceclient instead of our own home grown wrapper: review 133485.




Internationalization



  • Enable lazy translations of strings: review 126717 (fast tracked).




Networking







Performance



  • Dynamically alter the interval nova polls components at based on load and expected time for an operation to complete: review 122705.




Scheduler



  • Add a filter to take into account hypervisor type and version when scheduling: review 137714.
  • Add an IOPS weigher: review 127123 (approved, implemented); review 132614.
  • Add instance count on the hypervisor as a weight: review 127871 (abandoned).
  • Allow limiting the flavors that can be scheduled on certain host aggregates: review 122530 (abandoned).
  • Allow the remove of servers from server groups: review 136487.
  • Convert get_available_resources to use an object instead of dict: review 133728.
  • Convert the resource tracker to objects: review 128964 (fast tracked, approved).
  • Create an object model to represent a request to boot an instance: review 127610.
  • Decouple services and compute nodes in the SQL database: review 126895 (approved).
  • Enable adding new scheduler hints to already booted instances: review 134746.
  • Fix the race conditions when migration with server-group: review 135527 (abandoned).
  • Implement resource objects in the resource tracker: review 127609.
  • Improve the ComputeCapabilities filter: review 133534.
  • Isolate the scheduler's use of the Nova SQL database: review 89893.
  • Let schedulers reuse filter and weigher objects: review 134506 (abandoned).
  • Move select_destinations() to using a request object: review 127612.
  • Persist scheduler hints: review 88983.
  • Stop direct lookup for host aggregates in the Nova database: review 132065 (abandoned).
  • Stop direct lookup for instance groups in the Nova database: review 131553.




Security



  • Provide a reference implementation for console proxies that uses TLS: review 126958 (fast tracked, approved).
  • Strongly validate the tenant and user for quota consuming requests with keystone: review 92507.




Storage



  • Allow direct access to LVM volumes if supported by Cinder: review 127318.
  • Enhance iSCSI volume multipath support: review 134299.
  • Failover to alternative iSCSI portals on login failure: review 137468.
  • Implement support for a DRBD driver for Cinder block device access: review 134153.
  • Refactor ISCSIDriver to support other iSCSI transports besides TCP: review 130721.
  • StorPool volume attachment support: review 115716.
  • Support iSCSI live migration for different iSCSI target: review 132323 (approved).




Tags for this post: openstack kilo blueprint spec nova

Related posts: Specs for Kilo; How are we going with Nova Kilo specs after our review day?; One week of Nova Kilo specifications; Compute Kilo specs are open; Juno nova mid-cycle meetup summary: slots; Juno nova mid-cycle meetup summary: nova-network to Neutron migration



Comment

December 01, 2014

Speaker Feature: Mark Smith, Roan Kattouw, Mike Tarantino

Mark Smith

Mark Smith

Building Services in Go!

1:20pm Friday 15th January 2015

Mark is a little bit of everything. He's done time as a software engineer, a MySQL DBA, a sysadmin, and even managed an operations team. He's worked for the likes of Google and Mozilla, started a successful open source project (Dreamwidth Studios).

In his free time, he likes to write code in Perl, Go, and Python as well as fly small aircraft. He believes strongly in the Oxford comma and wishes to move back to Iceland one day.

For more information on Mark and his presentation, see here.



Roan Kattouw

Roan

Tails from the Trenches: Battling Browser Bugs for “Fun” and (Non-)Profit

10:40am Thursday 15th January 2015

Roan has been hacking on MediaWiki since 2007. In 2009, he crossed over to the dark side and became a front-end developer (he’s one of those “children” who started front-end development when jQuery already existed).

Since then, he has attempted to make the dark side a little bit less evil by working on ResourceLoader (a JS/CSS loading system for MediaWiki) and VisualEditor (a next-generation editor for wiki pages).

For more information on Roan and his presentation, see here.



Mike Tarantino

Mike Tarantino

Mixing In The Free World

2:15pm Friday 16th January 2015

Mike is a Grammy-nominated recording engineer with 13 years of professional experience, working with artists such as James Blunt, Pete Murray, Badly Drawn Boy, Sloan and Michael Jackson. As a songwriter and musician, his songs have been used in a variety of places from popular TV shows to the sleaziest burlesque halls in Brooklyn.

He was the composer of a neo-swing musical, Buddy Cianci the Musical, performed in New York. He takes inspiration from his cyborg lawyer wife to find free and open solutions wherever he can, as proved by writing the popular theme song of the free software oggcast, Free as in Freedom.

For more information on Mike and his presentation, see here.

Network clock examples

Way back in 2006, Andy Wingo wrote some small scripts for GStreamer 0.10 to demonstrate what was (back then) a fairly new feature in GStreamer – the ability to share a clock across the network and use it to synchronise playback of content across different machines.

Since GStreamer 1.x has been out for over 2 years, and we get a lot of questions about how to use the network clock functionality, it’s a good time for an update. I’ve ported the simple examples for API changes and to use the gobject-introspection based Python bindings and put them up on my server.

To give it a try, fetch play-master.py and play-slave.py onto 2 or more computers with GStreamer 1 installed. You need a media file accessible via some URI to all machines, so they have something to play.

Then, on one machine run play-master.py, passing a URI for it to play and a port to publish the clock on:

./play-master.py http://server/path/to/file 8554

The script will print out a command line like so:

Start slave as: python ./play-slave.py http://server/path/to/file [IP] 8554 1071152650838999

On another machine(s), run the printed command, substituting the IP address of the machine running the master script.

After a moment or two, the slaved machine should start playing the file in synch with the master:

Network Synchronised Playback

If they’re not in sync, check that you have the port you chose open for UDP traffic so the clock synchronisation packets can be transferred.

This basic technique is the core of my Aurena home media player system, which builds on top of the network clock mechanism to provide file serving and a simple shuffle playlist.

For anyone still interested in GStreamer 0.10 – Andy’s old scripts can be found on his server: play-master.py and play-slave.py

November 30, 2014

Speaker Feature: Karen Sandler, Marco Ostini, Joel Stanley

Karen Sandler

Karen Sandler

The Low Down on IRS status for Free and Open Source Software Non-profits in the US.

11:35am Thursday 15th January 2015

Karen M. Sandler is the Executive Director of the Software Freedom Conservancy. She is known for her advocacy for free software, particularly in relation to the software on medical devices. Prior to joining Conservancy, she was Executive Director of the GNOME Foundation where she has recently been elected to the Board of Directors. Before that, she was General Counsel of the Software Freedom Law Center.

Karen co-organizes the award winning GNOME Outreach Program for Women and is an advisor to the Ada Initiative. She is also pro bono General Counsel to QuestionCopyright.Org. Karen is a recipient of the O'Reilly Open Source Award and co-host of the oggcast, Free as in Freedom.

For more information on Karen and her presentation, see here.



Marco Ostini

Marco

The Imperfect Penguin

10:40am Wednesday 14th January 2015

Marco is an Information Security Analyst for AusCERT, and has been an active member of various open source groups and endeavours. Since the early '90s Marco has been hands-on with Linux, deploying it along with other FOSS goodness in infrastructure within one of Australia's larger universities. When it comes to the desktop Marco attempts to be slightly distro agnostic always using both a dpkg and rpm based distro in tandem.

Marco was on the team that hosted LCA in Brisbane - a team that will always be hero's in our minds!

For more information on Marco and his presentation, see here. You can follow him as @Marcoostini and don’t forget to mention #lca2015.



Joel Stanley

FPGA killed the video capture star

Joel Stanley

3:40pm Wednesday 14th January 2015

Joel is an embedded hardware hacker with a background in Electrical Engineering. His fascination with FPGAs started when he created a FPGA based quad-core Gameboy emulator. Since then he has been seen flying High Altitude Balloons with Project Horus, hacking on Android powered software defined radios, and working on the FPGA parts of timsvideos as a Summer of Code mentor.

While not hacking on his hobbies, he works on the Linux Kernel at IBM OzLabs.

For more information on Joel and his presentation, see here.

Running FreeBSD on the carambola2

The carambola2 is a small module built around the Atheros AR9330 SOC. Manufactured by 8devices, it has 64MB RAM, 16MB flash, two Ethernet ports and a host of GPIO pins, some of which can be configured as i2c, SPI or i2s. The carambola2 is shipped with OpenWRT a Linux distribution targeted at small devices and as a replacement firmware for consumer routers.

I have previously presented on using the carambola2 at the Sysadmin Miniconference at LCA2014 (slides here, video here)

To try something different, I thought I’d take FreeBSD for a run on this board. This became an extensive learning exercise as I knew absolutely nothing about any of the *BSD distributions other than their unix heritage and that they use BSD type licenses instead of GPL for the kernel and most of the userland.

Preparation

As with any of these things, there are a bunch of perceived or actual pros/cons between OpenWRT and FreeBSD.

Some of these I only discovered during this process.

My requirements included:

  • Being able to do a complete firmware build from source, which is possible for both OpenWRT and FreeBSD
  • Easy access to LED and GPIOs
  • Run the image from a RAM filesystem

Some pros/cons of either include:

  • The build system used is actually the standard build system for FreeBSD. You could probably build OpenWRT under OpenWRT but you usually dont.
  • The build system when used for cross compiling is functional but not as elegant as OpenWRT
  • OpenWRT builds actually take significantly longer from scratch for some reason
  • FreeBSD may be regarded as more secure under some circumstances, for some definition of security. But see below…
  • FreeBSD ships with two firewalls: pf, and ipfw. This adds quite a learning curve when doing a bottom up build like this.
  • Many common packages (the BSD “ports” system) do not cross-build correctly for mips under FreeBSD
  • FreeBSD 10.x ships with llvm as the default compiler but falls back to gcc for cross-building mips. But the gcc supplied with FreeBSD is only 4.2      O_o      Apparently this is for licensing reasons. This can be worked around  but I haven’t had time to try it yet. Ramifications of this likely include weaker security.

The carambola2 and the mips platform in general is actually reasonably well supported by FreeBSD, although it is treated as a ‘beta’. As to be expected, to build a firmware for FreeBSD requires a host FreeBSD system (at least this would be the path of least resistance!)

I built a virtual machine using kvm and was able to install FreeBSD 10.0 with minimum of hassle. I was pleasantly surprised at how easy it was to get up and running to OpenBox. FreeBSD has ‘pkg’ as a binary package manager and it worked similarly enough to ‘apt-get’, or ‘yum’ that I had a build machine up in about half an hour.

I did need to install bash and vim and gedit, some things are just too hard to give up!

Build Process

There appeared to be more than one way to cross-build, including the use of qemu as a build host inside FreeBSD, but rather than chasing turtles on this occasion I went with a tool called ‘freebsd-wifi-build‘. This was actually quite straightforward and produced me a working firmware out of the box, with some caveats. The firmware includes only binaries from the FreeBSD base userland, and only a limited subset at that. Initially it also wanted to build as the root user, which was both an annoyance and a shock to discover, although I soon resolved that problem; I hope to soon have patches accepted into the project to change the default to build as user!

In general, constructing a firmware using FreeBSD is more manual than OpenWRT, as it lacks the all-encompassing configuration of packages and the packaging infrastructure provided by OpenWRT opkg. It is more  similar to the Linux buildroot or even Gentoo.

The end result is a build script that automates the process I used to customise things, this is published at https://github.com/pastcompute/carambola2-freebsd-userbuild , for use as you see fit.

To flash the firmware, I used scp to copy the image to my host machine then using minicom to connect to the board, flash via tftp.

freebsd-wifi-build produces separate kernel and filesystem images, I was able to combine them into one file to simplify flashing.

Easy Wins

  • Network worked, with caveats
  • I was able to toggle the LED using ‘/dev/led’, although overall Linux has much better access to GPIO / LED hardware

Tweaking required along the way

  • FreeBSD swaps the ethernet ports relative to OpenWRT, and also by default configured them in switched mode instead of independently routed. I resolved this by rebuilding the firmware with the latest FreeBSD kernel from -CURRENT, which made the ethernet PHY configuration configurable.
  • As part of resolving that, I by chance discovered I could built the FreeBSD-release-10.1.0 userland and the bleeding edge FreeBSD-CURRENT kernel and have them cooperate together!
  • Only some of the FreeBSD ports easily build with the default cross compiler configuration. This limits the software that can be installed (at least, if built using the ports infrastructure)
  • Defaulting to gcc-4.2 means various important security measures, such as -fstack-protector, are disabled
  • I also had to tweak the default FreeBSD kernel configuration provided for the carambola2, to turn on the FAT filesystem (for USB transfer) and to enable additional GPIO
  • FreeBSD ignores uboot environment and arguments on the ar71xx platform, I managed to patch the kernel to support that

Summary

I’ll keep using OpenWRT on most of my devices for the forseeable future. But I will have a couple of FreeBSD gadgets thrown into the mix, just so I can keep learning new things, and also because ironically FreeBSD supports another router I have, the dir-632 ( I blogged about this device previously) which is not officially supported in the mainline OpenWRT and probably wont be anytime soon, but does work in a FreeBSD fork, zrouter.

It will also be interesting to compare the performance of pf against iptables.

Potential future exploration ideas: running Debian kFreeBSD on the carambola2.

[life] Day 303: Baking, Tumble Tastics and TuKindergarten Christmas party

I've left this post too long, and I can't remember how Zoe slept.

We did some baking in the morning, and made our first batch of Christmas mince pies. As usual, the shortbread pastry dough is going to require some tweaking to be workable enough for my liking, but I was fairly happy with the first batch.

We made a quick foray at the supermarket for more baking ingredients before it was time to leave for Tumble Tastics.

The weather was looking a bit dubious, so we walked to Tumble Tastics, and Zoe did lots of puddle jumping with her rain boots.

After lunch we made another batch of mince pies, and then headed over early to Zoe's Kindergarten Christmas party, as I'd said I'd help with set up.

The party went really well. I got roped into doing emcee duties with the local politicians for the raffle draw, before the kids performed.

The kids' performance was very cute. Zoe went home with Sarah and I stayed behind to help with the pack up. It's hard to believe Zoe only has 5 more days of Kindergarten. The year has gone by so quickly.

November 28, 2014

FingerTech Mecanum meets Actobotics

Sparkfun sell some nice little omniwheels made by FingerTech Robotics. These come with a grub screw mount for a 3mm axle. While it is said around the webs that one might drill out the mount to accept up to a 6mm axle, I wanted a more flexible solution for mounting these wheels onto an Actobotics structure. It turns out that the four screw mounts (using what I think are x-40 screws) are in an extremely close location to the four screws on the Actobotics hub mount. Unfortunately it was a tad hard for me to get a hold of longer x-40 screws to attach the hub mount, so I ended up taking the wheel apart and replacing the standoffs with the Actobotics ones. The result is shown below:





The below shows the mecanum wheel taken apart. The three standoffs you see vertical in the image are the original ones from the wheel. These are about 1 inch long, so you'll be wanting some 1 inch actobotics standoffs to replace them with. When you unscrew the original standoffs then the hub mount part (centre of the red alloy), will be able to fall out and be removed. This lets you screw the Actobotics standoffs on and then on the other side use slightly longer bolts to attach the hub mount to the wheel to get the assembly shown above.





Apart from a clean 6mm hookup for the stepper motors that I plan to use, this is a handy modification allowing the 1/4 inch hub mount or other sizes to be substituted in instead. This is handy if you want to switch from 6mm to 6.35mm (1/4 inch) axles as you can easily change your mind just by changing the actobotics hub mounts.



[life] Day 302: Playdate, swim class and a supercell storm

Zoe managed to sleep all night for a change, and instead, I had Smudge going mental on the doormat outside my room at around 2am. It's a conspiracy to not give me a solid night's sleep, I swear.

I'd organised another play date with Chloe, this time at our place. They were a bit late arriving, so we just hung out and watched some DVDs until they arrived.

The girls had a good time playing together, and I made some breadrolls for lunch and gave Kelley a bit of a one on one Thermomix demonstration.

They hung around after lunch until it was almost time for Kelley to pick up her older daughter from school, and we biked over not long after that to go to swim class.

Hampton Swim School was having their SwimSAFER week this week, and instead of normal classes, they had a bunch of different stations set up around the pool where they did different safety activities. It seemed pretty cool.

Unfortunately not long into her class, Zoe came over to me complaining of ear pain at the top of her ear. On quick inspection, it turned out that somehow a large ant had gotten trapped in her ear (fortunately it wasn't the ear canal) and had bitten her. I have no idea how it got in there.

I managed to fish it out with one of my keys, but it must have been hurting a lot, as she was very upset, and didn't want to go back to her class. I tried using some Stingose from Hampton's impressive first aid kit, but she was done and wanted to go home, so we did.

We biked back home, and I gave her some ibuprofen and a more surgical application of Stingose. Our downstairs neighbour, Deana, popped up with her baby daughter for a chat, and I think that served as a good distraction as well.

Meanwhile, a massive storm rolled in, with some very impressive thunder and lightning, and also what was possibly Zoe's first hailstorm.

It was a crazy loud storm, and Zoe handled it pretty well. She initially thought the hailstones were Mentos. I managed to catch some of storm on my phone, and I've uploaded a video to YouTube. I've never heard anything quite like an approaching hailstorm on nearby tin roofs before it hit locally.

The storm passed pretty quickly, as it was moving pretty fast, but with all the excitement dinner was a bit late.

Learning the ArduPilot codebase

I've put together a wiki page on learning the ArduPilot code base. Perhaps you are a ArduPilot user who is looking for something to occupy them while recovering from too much turkey this weekend? Try some of the exercises on this wiki page as a sure fire cure for the effects of overindulging:
Best wishes for a great weekend from the ArduPilot team

rstdiary

I find it very useful to spend 5 minutes a day to keep a small log of what was worked on, major bugs or reviews and a general small status report. It makes rolling up into a bigger status report easier when required, or handy as a reference before you go into meetings etc.

I was happily using an etherpad page until I couldn't save any more revisions and the page got too long and started giving javascript timeouts. For a replacement I wanted a single file as input with no boilerplate to aid in back-referencing and adding entries quickly. It should be formatted to be future-proof, as well as being emacs, makefile and git friendly. Output should be web-based so I can refer to it easily and point people at it when required, but it just has to be rsynced to public_html with zero setup.

rstdiary will take a flat RST based input file and chunk it into some reasonable looking static-HTML that looks something like this. It's split by month with some minimal navigation. Copy the output directory somewhere and it is done.

It might also serve as a small example of parsing and converting RST nodes where it does the chunking; unfortunately the official documentation on that is "to be completed" and I couldn't find anything like a canonical example, so I gathered what I could from looking at the source of the transformation stuff. As the license says, the software is provided "as is" without warranty!

So if you've been thinking "I should keep a short daily journal in a flat-file and publish it to a web-server but I can't find any software to do just that" you now have one less excuse.

November 27, 2014

Declaration of election and call for nominations

Dear Linux Australia Community,

Pursuant to clause (15) of the Linux Australia constitution [1] we

hereby declare an election open and call for nominations to the Linux Australia

Council for the term January 2015 to January 2016.

All office bearer and ordinary committee member positions are open for

election.

* Nominations will open from 19 November until 17 December

* Voting will open 17 December until 13 January 2015

* Results will be announced at the AGM in Auckland at linux.conf.au on or

after 14 January

The election can be viewed here:

https://www.linux.org.au/membership/index.php?page=view-election&id=21

What do I need to do?

First of all, make sure your details are correct in MemberDB [2]

If you wish to nominate, identify the positions you wish to nominate for

and get an understanding of what they involve. Think about what you

might bring to the role and prepare a short pitch. Then, accept the

nomination you've been given by clicking the 'Accept nomination' link.

If you wish to nominate another person for a position, you may wish to

contact them first and have a chat to make sure they're happy being

nominated. Then follow the 'Nominate' link to nominate them.

Once voting is open, you will be able to vote for candidates. Results

will be announced at the AGM at linux.conf.au.

Why should I nominate?

Being a member of Linux Australia Council is a fun way to meet new

people, work on exciting projects and expand your skill base. It gives

you excellent transferable skills to help build your career, and allows

you to grow your professional network. It looks great on a CV, and is

also a chance to give back to the vibrant Linux and open source

ecosystem in Australia and globally. If you're passionate about Linux

and open source, it's a great opportunity to help drive and steer

Australia's contribution in this field.

The roles do require a time commitment - generally around 2-3 hours per

week - so please consider this with your nomination.

[1]http://www.linux.org.au/constitution

[2]http://www.linux.org.au/membership

As always, your feedback and questions are warmly welcomed. If you'd

like to have a chat with anyone on Council around what it involves,

please do make contact.

With kind regards,

Kathy

--

Kathy Reid

Secretary

Linux Australia

secretary at linux.org.au

http://linux.org.au

Linux Australia Inc

GPO Box 4788

Sydney NSW 2001

Australia

ABN 56 987 117 479

Student's Competition

We want you to have an opportunity to demonstrate your skills, not to us - to the sponsors (your potential new employer).

Send us a piece of work that you have achieved in the last year - something that you are proud of and you think would make a prospective employer very interested in talking to you.

We will pass your submissions directly to the sponsors so that they get to see all of them.  Your submission may interest a sponsor even if you don't win and sponsors are always looking for talent.

Prizes will include upgrading your ticket to Professional (which means attending the Professional Delegates Networking Session and the Penguin Dinner) and possibly hardware prizes.

Note: We know that this will be something that you have worked very hard on, so it will be treated with care and your copyright will be respected.

Why should you, as a student, attend LCA 2015?

LCA 2015 provides an amazing experience and opportunity to rub shoulders with some of the best in the industry. The talks span many categories providing insights into places where Open Source technologies are being utilized - from deployments of systems after the Christchurch earthquakes to the phone currently in your pocket. LCA 2015 will provide an awesome opportunity to get to know people involved in the Open Source industry, companies who are currently hiring!!

What does it cost?

The heavily-subsidised ticket cost available to students is NZ$149, all that’s required is a valid student ID. (Lasts year's one for new graduates is fine.)

Limited funding for students otherwise unable to attend is available, please see below.

Can you receive help with funding?

LCA 2015 and Internet NZ are proud to support diversity.

The Internet NZ Diversity Programme is one way we ensure that LCA 2015 continues to be an open and welcoming conference for everyone. The programme assists Open Source contributors to attend linux.conf.au from across New Zealand and the Pacific region.

You can apply for the Internet NZ Diversity Programme funding here.

What do you need to do?

  • Register and pay for your ticket.
  • Fill out the form and submit.
  • Attend the conference, meet people and have fun!

Looking for more information?

For information about anything else, including accommodation, a great place to start is the wiki.

[life] Day 301: Kindergarten, self-care, errands galore

Yesterday felt like a bit of a blur, probably because I had a late night the night before.

I was up pretty early. I had my chiropractic adjustment and did some tidying up before the cleaners arrived.

I popped out to OfficeWorks to do a test print of my Christmas card while the cleaners were here, and then went straight to my massage appointment.

From there, I went straight to the Kindergarten to chair the last PAG meeting of the year. It's hard to believe there's only a couple of weeks of Kindergarten left. The year has flown by.

We popped over to Bunnings and the pet shop to get some more kitty litter, before dropping in at Hannah Photography to pick up the photo on canvas from our photo shoot. Zoe had fun playing with Hannah's cat, Charlie.

Sarah dropped in to spend a bit of quality time with Zoe, and I used the time to tweak my Christmas card a little bit. After Sarah left, we did another run to OfficeWorks to get them printed.

After that, it was time for a late dinner and off to bed.

November 26, 2014

Speaker Feature: Jeremy Kerr, Paul McKenney, Michael Kerrisk

Jeremy Kerr

JeremyKerr

OpenPOWER: Building an open-source software stack from bare metal

2:15pm Thursday 15th January 2015

Jeremy Kerr is a Power platform architect at IBM's Linux Technology Center. His background is in Linux development (specialising in Linux bringup on new hardware), and operating systems research.

Jeremy has been hacking on open source software development for over 14 years. As well as the kernel, Jeremy has contributed to a range of other open source projects, including petitboot (a Linux-based bootloader), K42 (a research operating system), patchwork (a web-based patch-tracking system) and nfsim (the netfilter simulation environment).

For more information on Jeremy and his presentation, see here. You can follow him as @jeremymeep and don’t forget to mention #lca2015.



Paul McKenney

Paul

Bare-Metal Multicore Performance in a General-Purpose Operating System (Adventures in Ubiquity)

3:40pm Thursday 15th January 2015

Paul E. McKenney has been coding for more than four decades, more than half of that on parallel hardware, where his work has earned him a reputation among some as a flaming heretic. Over the past decade, Paul has been an IBM Distinguished Engineer at the IBM Linux Technology Center.

Paul maintains the RCU implementation within the Linux kernel, where the variety of workloads present highly entertaining performance, scalability, real-time response, and energy-efficiency challenges. Prior to that, he worked on the DYNIX/ptx kernel at Sequent, and prior to that on packet-radio and Internet protocols (but long before it was polite to mention Internet at cocktail parties), system administration, business applications, and real-time systems. His hobbies include what passes for running at his age (AKA "hiking") along with the usual house-wife-and-kids habit.

For more information on Paul and his presentation, see here.



Michael Kerrisk

Michael Kerrisk

An introduction to Linux namespaces

10:40am Thursday 15th January 2015

Michael Kerrisk is the author of the acclaimed book, "The Linux Programming Interface", a guide and reference for system programming on Linux and UNIX. He contributes to the Linux kernel primarily via documentation, review, and testing of new kernel-user-space interfaces. In Auckland, he will be celebrating having recently passed 10 years as the maintainer of the Linux man-pages project.

Michael is New Zealander, working as a trainer and consultant in Munich, Germany.

For more information on Micheal and his presentation, see here.

Hiding network disconnections using an IRC bouncer

A bouncer can be a useful tool if you rely on IRC for team communication and instant messaging. The most common use of such a server is to be permanently connected to IRC and to buffer messages while your client is disconnected.

However, that's not what got me interested in this tool. I'm not looking for another place where messages accumulate and wait to be processed later. I'm much happier if people email me when I'm not around.

Instead, I wanted to do to irssi what mosh did to ssh clients: transparently handle and hide temporary disconnections. Here's how I set everything up.

Server setup

The first step is to install znc:

apt-get install znc

Make sure you get the 1.0 series (in jessie or trusty, not wheezy or precise) since it has much better multi-network support.

Then, as a non-root user, generate a self-signed TLS certificate for it:

openssl req -x509 -sha256 -newkey rsa:2048 -keyout znc.pem -nodes -out znc.crt -days 365

and make sure you use something like irc.example.com as the subject name, that is the URL you will be connecting to from your IRC client.

Then install the certificate in the right place:

mkdir ~/.znc
mv znc.pem ~/.znc/
cat znc.crt >> ~/.znc/znc.pem

Once that's done, you're ready to create a config file for znc using the znc --makeconf command, again as the same non-root user:

  • create separate znc users if you have separate nicks on different networks
  • use your nickserv password as the server password for each network
  • enable ssl
  • say no to the chansaver and nickserv plugins

Finally, open the IRC port (tcp port 6697 by default) in your firewall:

iptables -A INPUT -p tcp --dport 6697 -j ACCEPT

Client setup (irssi)

On the client side, the official documentation covers a number of IRC clients, but the irssi page was quite sparse.

Here's what I used for the two networks I connect to (irc.oftc.net and irc.mozilla.org):

servers = (
  {
    address = "irc.example.com";
    chatnet = "OFTC";
    password = "fmarier/oftc:Passw0rd1!";
    port = "6697";
    use_ssl = "yes";
    ssl_verify = "yes";
    ssl_cafile = "~/.irssi/certs/znc.crt";
  },
  {
    address = "irc.example.com";
    chatnet = "Mozilla";
    password = "francois/mozilla:Passw0rd1!";
    port = "6697";
    use_ssl = "yes";
    ssl_verify = "yes";
    ssl_cafile = "~/.irssi/certs/znc.crt";
  }
);

Of course, you'll need to copy your znc.crt file from the server into ~/.irssi/certs/znc.crt.

Make sure that you're no longer authenticating with the nickserv from within irssi. That's znc's job now.

Wrapper scripts

So far, this is a pretty standard znc+irssi setup. What makes it work with my workflow is the wrapper script I wrote to enable znc before starting irssi and then prompt to turn it off after exiting:

#!/bin/bash
ssh irc.example.com "pgrep znc || znc"
irssi
read -p "Terminate the bouncer? [y/N] " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]
then
  ssh irc.example.com killall -sSIGINT znc
fi

Now, instead of typing irssi to start my IRC client, I use irc.

If I'm exiting irssi before commuting or because I need to reboot for a kernel update, I keep the bouncer running. At the end of the day, I say yes to killing the bouncer. That way, I don't have a backlog to go through when I wake up the next day.

LUV Main December 2014 Meeting: A vain attempt to rescue Australian democracy with a little JavaScript / holiday gifts

Dec 2 2014 19:00
Dec 2 2014 21:00
Dec 2 2014 19:00
Dec 2 2014 21:00
Location: 

The Buzzard Lecture Theatre. Evan Burge Building, Trinity College, Melbourne University Main Campus, Parkville.

Speakers:

• Paul Foxworthy: A vain attempt to rescue Australian democracy with a little JavaScript

• Andrew Pam: Holiday gift suggestions for Linux lovers

The Buzzard Lecture Theatre, Evan Burge Building, Trinity College Main Campus Parkville Melways Map: 2B C5

Notes: Trinity College's Main Campus is located off Royal Parade. The Evan Burge Building is located near the Tennis Courts. See our Map of Trinity College. Additional maps of Trinity and the surrounding area (including its relation to the city) can be found at http://www.trinity.unimelb.edu.au/about/location/map

Parking can be found along or near Royal Parade, Grattan Street, Swanston Street and College Crescent. Parking within Trinity College is unfortunately only available to staff.

For those coming via Public Transport, the number 19 tram (North Coburg - City) passes by the main entrance of Trinity College (Get off at Morrah St, Stop 12). This tram departs from the Elizabeth Street tram terminus (Flinders Street end) and goes past Melbourne Central Timetables can be found on-line at:

http://www.metlinkmelbourne.com.au/route/view/725

Before and/or after each meeting those who are interested are welcome to join other members for dinner. We are open to suggestions for a good place to eat near our venue. Maria's on Peel Street in North Melbourne is currently the most popular place to eat after meetings.

LUV would like to acknowledge Red Hat for their help in obtaining the Buzzard Lecture Theatre venue and VPAC for hosting, and BENK Open Systems for their financial support of the Beginners Workshops

Linux Users of Victoria Inc., is an incorporated association, registration number A0040056C.

December 2, 2014 - 19:00

read more

The Human Division







ISBN: 9780765369550

LibraryThing

I originally read this as a series of short stories released on the kindle, but the paperback collation of those has been out for a while and deserved a read. These stories are classic Scalzi, and read well. If you like the Old Man's War universe you will like this book. The chapters of the book are free standing because of how they were originally written, and that makes the book a bit disjointed. The cliff hanger at the end is also pretty annoying given the next book hasn't been released.



So, an interesting experiment that perhaps isn't perfect, but is well worth the read.



Tags for this post: book john_scalzi combat aliens engineered_human old_mans_war age colonization human_backup cranial_computer personal_ai

Related posts: The Last Colony ; Old Man's War ; The Ghost Brigades ; Old Man's War (2); The Ghost Brigades (2); Zoe's Tale
Comment Recommend a book

[life] Day 300: Kindergarten, startup stuff, errands

I started the day nice and early courtesy of the sun.

I finished off the unit of assessment that I should have finished last week, and get it into the mail. I made a start on the next unit, but was feeling a bit unmotivated, so I walked down to the post office to mail off the previous unit.

My current unit is all about the different styles of homes in Queensland since pre-Federation, and it's actually really interesting. I could spend a lot more time reading the course notes than I really should. It did cause me to look at the homes I walked pass with a new eye.

It was pretty hot again, and I didn't feel up for picking up Zoe from Kindergarten by bike, so I drove over.

I wanted to head out to the Brisbane City Council's regional business centre at Yeerongpilly to see if they had any plans for my apartment building. It turns out it was a bit of a wasted trip, because I could have requested the archive retrieval over the phone if the call centre person I'd spoken to had have known better. Zoe enjoyed collecting brochures from the counter anyway.

The return journey took us close enough to West End, that I decided to make a side trip over there to grab a few things from the food wholesaler I like over there. Zoe had a milkshake, so she was happy.

We got home from that trip and didn't have a lot of time left until Sarah arrived to pick up Zoe.

November 25, 2014

Speaker Feature: Donna Benjamin, Dave Chinner, Paul Mackerras

Donna Benjamin

Donna Benjamin

Drupal8 outta the box

3:40pm Thursday 15th January 2015

Donna Benjamin has a collection of brightly coloured open source hats.

She currently chairs the Drupal community working group, sits on the board of the Drupal Association, and works as community engagement director with PreviousNext. She's also been an advisor to councils of Linux Australia, and was conference director for LCA2008 in Melbourne. Donna has also served as President of Linux Users of Victoria, and as a Director of Open Source Industry Australia.

Donna Benjamin is also our Community Leadership Summit Organiser.

For more information on Donna and her presentation, see here. You can follow her as @kattekrab and don’t forget to mention #lca2015.



Dave Chinner

Dave Chinner

Programming Considered Harmful

4:35pm Thursday 15th January 2015

Dave is the current XFS maintainer. He is currently employeed by Red Hat and spends most of his time developing new filesystem and storage features. He has been a XFS developer since 2004, and worked on the linux kernel since 2005. He has worked on machines of all sizes - from 2000 CPU machines used in the HPC environment to tiny, highly networked embedded systems in the industrial control industry.

In his spare time, Dave builds and races cars and tries to teach his dogs not to bark at the postman....

For more information on Dave and his presentation, see here.



Paul Mackerras

Paul Mackerras

KVM on IBM POWER8 servers

1:20pm Wednesday 14th January 2015

Paul Mackerras works in IBM's Linux Technology Center, where he leads a group of people whose mission is to bring open-source virtualization to IBM's Power systems. Previously he was the Linux kernel maintainer for the PowerPC architecture. He is also the author of the "gitk" commit visualization tool and the maintainer of the PPP package.

For more information on Paul and his presentation, see here.

APM:Plane 3.2.0 released

The ardupilot development team is proud to announce the release of version 3.2.0 of APM:Plane. This is a major release with a lot of new features.



The changes span a lot of different areas of the code, but arguably the most important changes are:
  • automatic stall prevention code
  • PX4IO based RC override code on FMU failure
  • I2C crash bugfix
  • new autoland code from Michael Day
  • compass independent auto takeoff


I'll go into each of these changes in a bit more detail.



Automatic Stall Prevention



The automatic stall prevention code is code that uses the aerodynamic load factor (calculated from demanded bank angle) to adjust both the maximum roll angle and the minimum airspeed. You can enable/disable this code with the STALL_PREVENTION parameter which defaults to enabled.



When in stabilised manual throttle modes this option has the effect of limiting how much bank angle you can demand when close to the configured minimum airspeed (from ARSPD_FBW_MIN). That means when in FBWA mode if you try to turn hard while close to ARSPD_FBW_MIN it will limit the bank angle to an amount that will keep the speed above ARSPD_FBW_MIN times the aerodynamic load factor. It will always allow you at bank at least 25 degrees however, to ensure you keep some maneuverability if the airspeed estimate is incorrect.



When in auto-throttle modes (such as AUTO, RTL, CRUISE etc) it will additionally raise the minimum airspeed in proportion to the aerodynamic load factor. That means if a mission demands a sharp turn

at low speed then initially the turn will be less sharp, and the TECS controller will add power to bring the airspeed up to a level that can handle the demanded turn. After the turn is complete the minimum airspeed will drop back to the normal level.



This change won't completely eliminate stalls of course, but it should make them less likely if you properly configure ARSPD_FBW_MIN for your aircraft.



PX4IO based RC override code



This releases adds support for PX4IO based RC override. This is a safety feature where the stm32 IO co-processor on the PX4 and Pixhawk will give the pilot manual control if the main ArduPilot micro-controller fails (or the autopilot code crashes). This is particularly useful when testing new code that may not be stable.



As part of this new RC override support we also have a new OVERRIDE_CHAN parameter, which allows you to specify a RC input channel which can be used to test the RC override support. See the documentation on OVERRIDE_CHAN for details.



I2C bugfix



This release fixes another I2C bug in NuttX which could cause the Pixhawk to lock up under high I2C load with noise on I2C cables. This bug has caused at least two aircraft to crash, so it is an important fix. I hope this will be the last I2C crash bug we find in NuttX! An audit of the code was done to try to confirm that no more bugs of this type are present.



New Autoland code



This release incorporates some new autoland capabilities contributed by Michael Day. The key new feature is the ability to trigger an automatic landing when a RTL completes, which for the first time allows a user to setup their aircraft to land using only transmitter control.



The way it works is there is a new parameter RTL_AUTOLAND. If that is set to 1 and the aircraft reaches its target location in an RTL it will look for DO_LAND_START mission item in the mission. If that is found then the aircraft will switch to AUTO starting at that section of the mission. The user sets up their land mission commands starting with a DO_LAND_START mission item.



There is more to do in this autoland support. We have been discussing more advanced go-around capabilities and also better path planning for landing. The code in this release is an important first step though, and will be a good basis for future work.



Compass independent takeoff code



The auto-takeoff code has been changed to make it more independent of compass settings, allowing for reliable takeoff down a runway with poor compass offsets. The new takeoff code uses the gyroscope as the

primary heading control for the first part of the takeoff, until the aircraft gains enough speed for a GPS heading to be reliable.



Many thanks to all the contributors, especially:



  • Paul and Jon for EKF and TECS updates
  • Bret and Grant for stall prevention testing
  • Michael for all his autoland work
  • all the work on NavIO, PXF and Zynq by John, Victor, George and Siddarth
  • The PX4 team for all the PX4 updates
  • Flaperon updates from Kirill


More complete list of changes:



  • allow GCS to enable/disable PX4 safety switch
  • make auto-takeoff independent of compass errors
  • report gyro unhealthy if calibration failed
  • added support for MAV_CMD_DO_LAND_START
  • added RTL_AUTOLAND parameter
  • disable CLI by default in build
  • new InertialSensor implementation
  • added landing go around support
  • enable PX4 failsafe RC override
  • added OVERRIDE_CHAN parameter
  • changed default AUTOTUNE level to 6
  • changed default I value for roll/pitch controllers
  • added CAMERA_FEEDBACK mavlink messages
  • use airspeed temperature for baro calibration if possible
  • added STALL_PREVENTION parameter
  • fixed handling of TKOFF_THR_MAX parameter
  • added ARSPD_SKIP_CAL parameter
  • fixed flaperon trim handling (WARNING: may need to retrim flaperons)
  • EKF robustness improvements, especially for MAG handling
  • lots of HAL_Linux updates
  • support wider range of I2C Lidars
  • fixed fallback to DCM in AHRS
  • fixed I2C crash bug in NuttX
  • TECS prevent throttle undershoot after a climb
  • AP_Mount: added lead filter to improve servo gimbals
  • Zynq and NavIO updates
  • fixed preflight calibration to prevent losing 3D accel cal
  • perform a gyro calibration when doing 3D accel cal
  • added DO_CONTINUE_AND_CHANGE_ALT mission command
  • added support for DO_FENCE_ENABLE mission command
  • allow gyro calibration to take up to 30 seconds
  • improved health checks in the EKF for DCM fallback


Note: If you use flaperons you may need to re-trim them before you

fly due to the change in flaperon trim handling.



I hope that everyone enjoys flying this new APM:Plane release as much as we enjoyed producing it!



Happy flying!

OpenRadio Part 3 – Filters

Over the past week I’ve built my own OpenRadio prototype, using the construction notes Mark has put together as a guide.

To help others I measured a few DC voltages and recorded them. I found one small bug in my assembly: one of the flip-flop pins was not soldered correctly, leading to erratic signals. After that I set the LO to receive a 14 MHz signal and managed to receive a carrier from my FT-817, via about 60dB of in-line attenuation. At the moment I am using SpectraView running under Wine as the SDR software, however we really should get a Linux/Open Source SDR program running for the mini-conf. I only have a mono input sound card in my laptop so I’m getting a mirror image of the received spectrum. Still, good enough to get started.

I connected the radio to an external antenna and tuned to a local AM station on 1310 kHz. This sounded very strong but distorted. When I tuned to 7.150 MHz I could still hear AM radio signals, which suggests very strong local signals overloading the mixer. I tested this idea by inserting a 20dB attenuator in line with the antenna and sure enough the AM signal on 1310 kHz became clear and I could no longer hear AM stations on 7.150 MHz.

I could even see the AM signal on my oscilloscope – it measures 1Vrms (20mW) on the antenna terminals! That’s enough to light a LED (10mA at 2V).

However an attenuator is not ideal, so using the tables from my trusty copy of RF Circuit Design I built a simple High Pass Filter to attenuate broadcast signals by about 20dB, but pass other HF signals above 3 MHz. This consists of a 1nF capacitor and two 4.5uH inductors (21 turns on a 7mm diameter pencil) in a “Pi” arrangement. This worked well, the AM signals sound fine and no break through on other HF frequencies.

I also tested Mark’s 27 MHz Low Pass transmit filter, this cleaned up the PSK31 tx signal nicely, 2nd harmonic at least 30dB down with about 1Vrms into 50 ohms (20mW) transmit power. Here is a photo of my OpenRadio with both filters on the right. The larger coils at the top are part of the 3 element 3MHz high pass filter, which then connects to the 7 element 27MHz low pass filter.

Mark and I even had a OpenRadio to OpenRadio PSK31 QSO on the 40m Ham Band! I had about 40mW transmit power on 40m. This was actually NVIS propagation so 100km up and down to the ionosphere and 10km across Adelaide!

So our #2 prototype helps us confirm that the design is working. I’ve followed Mark’s construction notes and made some of my own, and obtained experience in setting up the Arduino and Spectraview software. The broadcast HPF design may be useful for others who experinece strong local interference.

Well done Mark on a fine job designing OpenRadio and writing the support Arduino software. He has put in a tremendous amount of work to develop and test the hardware, written a lot of software, and carefully documented everything on the OpenRadio Wiki. This is a great resource that will be useful to many others. Next step is the kit production. Right on schedule for linux.conf.au in January.

November 24, 2014

Building an arduino-based video game controller

I play a lot of Kerbal Space Program because sandbox games in space is pretty much the greatest idea ever. So in an attempt to enhance the game and build something pretty cool, I’ve spent the last several months working towards building a console to control the game and display telemetry.

My final design is going to be fairly large, but to start with, I wanted to knock up a few of the simpler panels. That gave me a chance to work out how to make the panel hardware, and get the basics sorted out for interfacing with the game through the KSPSerialIO plugin. It’s taken quite a few months on and off to get this far, but this week I finally got the first few panels finished and working.

ksp control interfaceBasically, you take an Arduino Mega2560, a Mux Shield, and a bunch of switches and knobs and buttons. And then you wire it all up and write some code to make it talk a simple serial protocol over USB. And then, honestly, you giggle gleefully while sliding a throttle lever up and down and watching your rocket change speed like magic.

Now that I’ve sorted out most of the major obstacles for this, I’ve started working on additional panels. There’s still a lot of important controls missing. I’ve got some ideas for translational RCS controls, in addition to the Logitech joystick I usually use. And I’m almost ready to get some PCBs manufactured for a number of seven segment LED displays. In the meantime, this is already pretty fun to mess around with.

I’ve got a few more pictures of the current setup in imgur. And, of course, everything is open source. My ksky repository has all of the source code, panel design files, and a bunch of notes on how it’s put together.

[life] Day 299: Kindergarten and a demo

We had another bad night's sleep last night, with Zoe waking up at 1:30am. Her bedroom was 27-28°C all night. I've got a pretty good amount of data on her sleep habits now, and it's pretty safe to say that if her room is over 25°C, she's going to wake up between 1:30am and 3am. Time to get some more quotes for air-conditioning I think.

Zoe did have a bit of a sleep in this morning, which allowed me to get ready for the day before she got up. Given I had a Thermomix demonstration to get to, that worked out well.

I half-packed the car for the demo and dropped Zoe to Kindergarten by car, and returned home to finish preparing and practice before I headed over.

I was fairly happy with my delivery, given it's been a little while since I've done one. My main goal today if not a sale was to get a booking for another demo, as I've been weak in that area, and I was successful in the latter, so that was good.

Timing worked out well that I got to Kindergarten right for pick up time. We drove home, and I unpacked the car and got changed into something cooler, and we headed out to try and get some more whole wheat grains from the Indian supermarket that Anshu had shown me. As luck would have it, they were out of stock, so it was a bit of a wasted trip.

We headed home and Zoe watched a bit of TV until Sarah picked her up.

Memorable Quotes - Part 4

A follow on from:


- Alan Shore: My, uh, best friend has Alzheimer's, in the, uh, very early stages, it hasn't... He is a grand lover of life, and will be for some time. I believe even when his mind starts to really go, he'll still fish he'll laugh and love, and as it progresses he'll still want to live because there will be value for him, in a friendship, in a cigar... The truth is I don't think he will ever come to me and say, this is the day I want to die, but the day is coming and he won't know it... This is perhaps the, the most insidious thing about Alzheimer's... but you see he trusts me to know when that day has arrive, he trusts me... to safe guard his dignity, his legacy, and self respect. He trusts me to prevent his end from becoming a mindless piece of mush and I will. It will be an unbearably painful... thing for me, but I will do it, because I love him. I will end his suffering, because it is the only decent humane and loving thing a person can do.

http://www.imdb.com/title/tt0993804/quotes

- "We are strategic but we stop at number crunching, we plan but we don't over manage, we inspire but we don't preach, we code but we're not monkeys."

http://www.seek.com.au/Job/calling-all-super-powered-geeks-to-enlist-in-the-fight-against-corporates/in/sydney-sydney/22545415 
- It was either Otto von Bismarck or Claud Cockburn who said, "Never believe anything until it has been officially denied." Whoever it was, and the internet seems a little confused on the matter, they were on to something.

http://www.smh.com.au/business/intelligent-investor/australias-most-overpaid-ceo-20130513-2jhmv.html 
- "Change is a big word that everyone is using. (United States President Barack) Obama uses it, but you have to actually feel it."

http://au.news.yahoo.com/thewest/a/-/world/17135873/adrian-cheng-updating-a-hong-kong-family-empire-for-a-changing-china/

- Sandschneider agrees that personal relations have an impact on political relations: "International politics is not a dehumanized process. It is about people coming together. And it is true that it is easier for two people who get along well to negotiate and solve problems than two people who can't stand each other."

http://www.dw.de/germany-is-first-on-lis-eu-list/a-16834332

- "Skeptics don't make history"

http://www.washingtonpost.com/world/africa/kerry-says-us-drone-program-strict-fair/2013/05/26/80058422-c615-11e2-9cd9-3b9a22a4000a_story.html?tid=pm_world_pop

- "Germany won," said Glasman at the debate. "We have a Champions League final between two supporter-owned and democratically governed football clubs. Tradition and the preservation of institutional virtue are a source of energy and modernisation precisely because change and continuity work together; a balance of power is the best system; a negotiated settlement is better than one that is imposed, the domination of any interest violates the demand of what is good; the discovery of the common good between forces that are estranged is the best good of all. It takes longer to get there but the benefits are more enduring."

http://www.guardian.co.uk/world/2013/jun/01/germany-champion-europe
- Secondly, for web site owners. Assume the entire world is out to get you. All of it; and everyone living there. It's easier that way! Do whatever you feel necessary to keep your name out of the press. Then do everything that isn't necessary, because it may-well prove to be necessary in the future. And if you're not sure what I mean, get advice, urgently.

http://www.itwire.com/business-it-news/security/58893-abc-web-site-hacked-by-opponent-to-geert-wilders
- In his seminal 1931 book, Equality, R H Tawney lamented that the public did not seem resentful of the rich so much as fascinated by their goings-on. Little has changed. For most Brits, stupendous wealth has always been something that is aspired to more than resented. The post-crash fuss about the 1 per cent often seemed to be a civil dispute between its members: well-heeled activists, journalists and union chiefs castigating those who nabbed the best tables in restaurants or pushed up prices of Tuscan villas. And as successive prime ministers have realised, no government anywhere has helped the low-paid by railing against high wages.



The rich, to adapt Jesus in St Matthew's Gospel, will always be with us; the 1 per cent are likely to pull ever further away. But this has its compensations. The lower-paid half of the British populace have never had to pay a smaller share of income tax than today, because the wealthy have never forked out more. And while there is not much David Cameron can do about the rich, there is still plenty he can do about the poor. He doesn't shout about it. But he has rightly concluded that this is where his attention is best focused.

http://www.telegraph.co.uk/finance/globalbusiness/10202546/Dont-blame-the-best-paid-1per-cent-theyre-worth-it.html
- "The problem is not ammunition, it's experience," one said, adding: "If we were fighting Americans we would all have been killed by now. They would have killed us with their drone without even needing to send a tank.



"The rebels are brave but they don't even know the difference between a Kalashnikov bullet and a sniper bullet. That weakens the morale of the men," he said.

http://zeenews.india.com/news/world/syria-iraq-yemen-and-afghan-jihadists-join-war-against-assad_801575.html
- Obama said that "at a time when anyone with a cellphone can spread offensive views around the world with the click of a button," the notion that governments can control the flow of information is obsolete.Obama said that "at a time when anyone with a cellphone can spread offensive views around the world with the click of a button," the notion that governments can control the flow of information is obsolete.

http://www.skynews.com.au/topstories/article.aspx?id=799117
- Only about 1 in 1,000 Web readers clicks on the average display ad. On Facebook, that number is closer to 1 in 2,000, according to Webtrends. Even ads sent by unsolicited postal mail generate a response rate that is many times higher, according to published industry numbers.

http://www.latimes.com/business/la-fi-facebook-display-ads-20120525,0,4871607.story

- Famous night owls include Winston Churchill, President Obama, Charles Darwin, James Joyce, Marcel Proust, Keith Richards and Elvis Presley. Famous early risers include Napoleon, Ernest Hemingway and George W. Bush.



Professor Jim Horne, of Loughborough University, said: "Evening types tend to be the more extrovert creative types, the poets, artists and inventors, while the morning types are the deducers, as often seen with civil servants and accountants.

http://www.theglobeandmail.com/life/the-hot-button/like-staying-up-late-you-may-be-narcissistic/article13495020/comments/
- Every gun that is made, every warship launched, every rocket fired signifies, in the final sense, a theft from those who hunger and are not fed, those who are cold and are not clothed.


This world in arms is not spending money alone. It is spending the sweat of its laborers, the genius of its scientists, the hopes of its children. The cost of one modern heavy bomber is this: a modern brick school in more than 30 cities. It is two electric power plants, each serving a town of 60,000 population. It is two fine, fully equipped hospitals. It is some fifty miles of concrete pavement. We pay for a single fighter with a half-million bushels of wheat. We pay for a single destroyer with new homes that could have housed more than 8,000 people. . . . This is not a way of life at all, in any true sense. Under the cloud of threatening war, it is humanity hanging from a cross of iron.[1][4]

http://en.wikipedia.org/wiki/Chance_for_Peace_speech

- Decades of reform. Globalisation, and the global financial crisis. The uncertainties of the post-September 11 world. Eric Knight: "Those circumstances are ripe for misinterpretation, for populist interpretation, interpretation that focuses on the surface of things and often misses the deeper logic of what's happening."

http://www.smh.com.au/opinion/political-news/history-repeats-20120504-1y4ki.html
- "Falling in love is very real, but I used to shake my head when people talked about soul mates, poor deluded individuals grasping at some supernatural ideal not intended for mortals but sounded pretty in a poetry book. Then, we met, and everything changed, the cynic has become the converted, the sceptic, an ardent zealot."
E.A. Bucchianeri, Brushstrokes of a Gadfly

http://www.goodreads.com/quotes/tag/falling-in-love

- "No one ever fell in love gracefully."
Connie Brockway, The Bridal Season

http://www.goodreads.com/quotes/tag/falling-in-love

- "Have you ever longed for someone so much, so deeply that you thought you would die? That your heart would just stop beating? I am longing now, but for whom I don't know. My whole body craves to be held. I am desperate to love and be loved. I want my mind to float into another's. I want to be set free from despair by the love I feel for another. I want to be physically part of someone else. I want to be joined. I want to be open and free to explore every part of them, as though I were exploring myself."
- "Martin's dream is a vision not yet to be realized, a dream yet unfilled, and we have much to do before we can celebrate the dream as reality, as the suppression of voting rights and horrific violence...has so painfully demonstrated."

http://online.wsj.com/article/SB10001424127887324591204579039772530945520.html

- Love is more easily experienced than defined. As a theological virtue, by which we love God above all things and our neighbours as ourselves for his sake, it seems remote until we encounter it enfleshed, so to say, in the life of another - in acts of kindness, generosity and self-sacrifice. Love's the one thing that can never hurt anyone, although it may cost dearly. The paradox of love is that it is supremely free yet attaches us with bonds stronger than death. It cannot be bought or sold; there is nothing it cannot face; love is life's greatest blessing.

http://www.theguardian.com/commentisfree/2012/dec/13/what-is-love-five-theories

Robust FreeDV Part 1

I’m working on increasing the robustness of FreeDV over HF radio channels, in particular compared to analog SSB.

Why HF Digital Voice so Hard

HF radio channels are bad news for digital data. Here is a plot of the Bit Error Rate (BER) versus Eb/No for two different modems (DQPSK and QPSK) and two different channels (AWGN and HF). Four curves in total, click for a larger version.

Think of Eb/No as the SNR of one bit. It turns out that for a given bit rate, SNR = Eb/No plus a fixed scaling factor. So if you raise SNR by 1 dB. Eb/No goes up by 1 dB. The “CCIR poor” HF channel model I used is from data extracted from the very handy PathSim channel simulator. An AWGN channel is typical for a line of sight VHF: just noise without frequency selective fading.

Curves for two types of modems are illustrated: Differential QPSK (DQPSK), and Coherent QPSK (QPSK). DQPSK is commonly used on HF as it greatly simplifies the demodulator design. However if it can be made to work, QPSK is better. Less power for a given BER.

A couple of things to note:

  1. You need a lot of Eb/No on HF to get a low bit error rate. This explains why reliable HF data needs lots of transmit power. Or you can use a very low bit rate, so each bit has more energy in it. This also makes Digital Voice (DV) on HF hard. For example the FreeDV 1600 mode needs a BER of 2% for an “armchair” copy. Using a 1600 bit/s (800 symbols/s) DQPSK modem that’s an Eb/No of 15dB or a SNR (3kHz noise bandwidth) of SNR = Eb/No – 10log10(3000/800) = 9.2dB.
  2. HF channels are much tougher than AWGN. Looking at the 2% BER line AWGN DQPSK only requires about 6dB, which is 9dB less than the HF fading channel (or 12.5% of the power).
  3. The slope of the HF curve is nearly flat. Adding power doesn’t make much difference to the BER. So you need to add a lot of power to significantly reduce BER. Curiously, it also tells us that the “digital cliff” is more like a lightly sloping hill. As we reduce power the BER doesn’t change much. This suggests that HF DV will gradually get less intelligible as we lower the SNR.
  4. As the HF curves are so flat, a useful approximation is: “Your bit error rate is 10%. The Universe doesn’t care how much power you have. Deal with it”.
  5. Small changes in the AWGN demodulator performance can have a huge effect on BER for HF channels. For example the difference between coherent and differential QPSK is 4-5dB, that’s like increasing power by a factor of 3! You really don’t want an inefficient demodulator on HF.

New FreeDV Mode Concept

I’ve learnt some lessons from thinking about analog SSB. At low SNRs, analog SSB still gets through, however the quality is pretty bad. Lots of noise, words lost in fades, and we tend to yell, repeat things, and use the phonetic alphabet. In other words, the “information rate” slows, there is delay, but we get the message through using “Human” error correction. Eventually.

The digital voice equivalent is a low bit rate speech codec. So in an inspired two hours I quickly hacked up a 450 bit/s Codec 2 mode. Here it is compared to the 1300 bit/s mode used for FreeDV 1600.

Original
1300 bit/s Codec 2
450 bit/s Codec 2

This is a good example of the 450 bit/s mode. It makes a bigger mess of other samples. But hey, it’s preliminary, not the best we can do at 450 bit/s. I was shooting for something right on the edge of intelligibility, as that’s where SSB is at low SNRs.

As the bit rate is so low, we have a lot of options. For a start we are 10log10(1600/450) = 5.5dB better off in SNR than the FreeDV 1600 mode. Secondly it frees up bandwidth to apply FEC. So I’m experimenting with a powerful LDPC code from the CML library suggested to me by Bill Cowley, VK5DSP. The Peak to Average Power Ratio (PAPR), or crest factor, is also reduced as we have less FDM carriers.

For this new mode I’m trying coherent QPSK rather than differential QPSK. This is unusual for FDM modems on HF, but has big gains as shown above. Coherent QPSK requires much less power than differential QPSK for the same bit error rate. It does require some overhead, in the form of “pilot symbols”. These are known symbols we transmit in order to estimate or probe the channel phase and amplitude.

I’m using a half rate LDPC code, so the bit rate over the channel is 900 bit/s. There are 9 carriers at a symbol rate of 62.5 baud, and every 5th symbol is a pilot. No high power BPSK pilot tones are required, the pilot symbols can be used instead to estimate the frequency offset and provide frame synchronisation.

OK, so that takes care of low SNR performance – i.e. getting poor quality, but intelligible speech through a HF channel.

Lets now try to extend that to obtain higher voice quality on high SNR channels:

  1. The uncoded error rate will be less than 1% so we disable the LDPC decoder. Now we don’t have to wait for the LDPC parity bits, therefore the decoding delay will be small (similar to FreeDV 1600). On poor channels we click on the “FEC” check box and the delay increases to about 1 second but the system works on low SNR channels. Remember with low SNR analog SSB you are already repeating yourself and using phonetics, so the effective delay is also in the order of seconds compared to an armchair SSB copy.
  2. We can send auxillary carriers to add to the 450 bit/s Codec 2 information and improve the speech quality. For example extra LSP vectors, or gain and pitch bits. If these carriers are 6dB lower than the core information, the total power will only increase by 10*log10(1+0.25)= 0.5dB. So if we get a few s-points above the system “floor” – quality will increase – just like SSB.

Status

For the past year I’ve had several attempts at an improved FreeDV mode, hitting several dead ends. “Research and Disappointment” at it’s finest. However it’s started coming together over the last few months.

A key assumption is that low quality at low SNR is OK. This assumption has yet to be tested in real time conversations. The other biggie is coherent demodulation, this works much better than differential PSK. However it’s unusual, and might break with very fast fading. We shall see.

My current ideas are complex and may be wrong. So I want the “minimum effort” path to test them. This still meant writing a bunch of high-level Octave simulations over the course of several months, each building on the next. For now I’m ignoring issues like delay, real time operation, and many other details. The focus is on getting a digital voice signal through poor HF channels. That’s the toughest problem we face. Everything else can be refined later.

To make the modem work on real channels I had to develop new frequency offset and coarse timing estimation (frame sync) code. Just recently I made it to the point where I have wave files that can be played over real HF channels, then processed with off-line Octave simulations.

Results

Thanks to Tony VK3JED, Mel K0PFX, Gerry N4DV, and Michael DL2FW for helping me collect off air samples. This is tricky, as there is no real time feedback. The guys would send me a sample, I would process it, then I would get back to them with feedback. I had to ask Mel and Gerry (located 800 miles apart) to reduce their tx power as I was getting zero bit errors all the time. Eventually they settled on a few watts of tx power, and pointing their beams in the wrong direction. That way I could actually see some bit errors and get a real feel for the “floor” in the new waveform.

Let work through the results for one example that had an average SNR of -5dB:

Off Air FreeDV modem signal
Reference (Error free) Codec 2 at 450 bit/s
-5dB Average SNR Decoded 450 bit/s Codec 2
SSB over same channel

The off air signal has a strong high frequency interfering SSB signal that makes our modem signal hard to hear, it’s lower down coming in and out of the noise. The demodulator filters take care of that OK. The modem signal decodes successfully about 50% of the time, there is a big chunk in the middle missing as it disappears into the noise. Not much I can do about that. The SSB signal is at about the same peak power. I can make out the phonetics and a few words in the SSB.

I’ve been using the FreeDV GUI program to visualise the off air signal:

You can see the spectrum shows zilch at the moment the screen shot was captured, our poor little modem signal has “submerged”! The waterfall below shows the signal over time. It’s not pretty.

The next few plots show the modem at work:

Note the diagonal lines in the “Estimated HF channel phase”. This indicates a small frequency offset. They take about 100 frames (2 seconds) to wrap around so that’s a 0.5Hz frequency offset. You can see the “channel amp” and “SNR est (dB)” diving in the middle of the sample, and the bit errors going crazy at the same time.

The FEC frames are 576 bits long. The FEC breaks down at about 10% errors or 60 bit errors in a single frame. You can see that quite clearly in the bit error plots. The “Coded Errors” (output from the FEC decoder) are zero until we hit about about 60 un-coded errors/frame.

Further Work and How You Can Help

Lots more to go however this is looking promising. The rest is engineering. I’d like some help with this, from people with skills like C programming, basic statistics (like understanding what variance is), and Octave.

Without any help, this is what my lonely future looks like for the next 6 months!

  1. Improve the speech quality of the 450 bit/s Codec 2 mode, e.g. better vector quantisation, adaptive equalisation and filtering of the input speech.
  2. Add auxiliary carriers to improve speech quality in high SNR channels, and heuristics to know when this information is safe to use.
  3. Refine the modem algorithms to reduce delay. Re factor Octave code. Port Octave code to C.
  4. Tune LDPC decoding.
  5. Experiment with clipping/compression to improve PAPR, and interleaving to improve performance in fast fades.
  6. Integrate into the FreeDV GUI program and the SM1000. For example will the LDPC decoder run on the STM32F4?
  7. FreeDV maintenance, re-factoring.

Some more blue sky ideas for further R&D:

  1. Given the relatively short block length, is an LDPC code the best choice?
  2. Investigate the possibility that 8PSK may perform close to QPSK on fading channels (unlike AWGN channels). This would have fewer carriers so better PAPR, so may out perform QPSK. Thanks John Gibbs NN7F for this idea.
  3. Investigate FDM using continuous phase modulation like GMSK that can use non-linear power amplification. This will use at least twice the bandwidth of QPSK, however given our low bit rate this is still quite feasible in a standard 2000 Hz SSB channel. This would be a mode that can drop “straight in” to FM VHF radios. Thanks again John for pointing this possibility out.
  4. Investigate FEC codes that can be configured to reduce PAPR, thanks Gregory for reminding me about this.

If you can’t code you can also donate to the this project via PayPal (which also allows credit card donations):

Donation in US$:

Or you can buy a SM1000 when they become available at the end of this year. Commercial sponsorship is very welcome but everything I write must be LGPL or equivalent.

I do this work full time and don’t have much other income right now. What did you spend on your last piece of radio gear? How does it compare to a project than will bring you a new, 21st century voice mode? Does it support free and open radio or were you paying license fees for the software in that radio?

BTW I also need a second hand ThinkPad X220/X230 laptop if anyone is feeling especially generous! They can be had on ebay.au for around AUD$400. Simulations are a bit slow on my 2008 vintage X200 model and I think the fan is dying!

November 23, 2014

Twitter posts: 2014-11-17 to 2014-11-23

Terry: Updated Top Shelf

The Kinect is now connected much closer to the tilt axis, giving a much better torque to hold ratio from the servo gearbox. I used some self tapping screws to attach the channel to the bottom of the Kinect. Probably not the cleanest solution but it appears to mount solidly and then you get to bolt that channel to the rest of the assembly. For a closer look the Logitech 1080 webcam is mounted offset from the Kinect. This should give an enjoyable time using the 1080 RGB data and combining the VGA depth mask from the Kinect into a point cloud.





The camera pan/tilt is now at the front of the top shelf and a robot arm is mounted at the back of the shelf. The temptation is high to move the arm onto a platform that is mounted using threaded rod to the back of Terry. All sorts of fun and games to be had with automated "pick up" and move tasks! Also handy for some folks who no longer enjoy having to pick items up from the ground. The camera pan/tilt can rotate around to see first hand what the arm is doing, so to speak.





The wheel assembly is one area that I'm fairly happy with. The yumo rotary encoder runs 1024 P/R and it is attached using an 8:1 down ratio to give an effective "ideal world" 13 bit precision. Yes, there are HAL effect ICs that give better precision, though they don't look as cool ;) The shaft of the motor is the axle for the wheel. It is handy that the shaft is not right in the centre of the motor because you can rotate the motor to move the wheel through an arc, and thus adjust the large alloy gear until it nicely mates with the brass gear on the rotary encoder.







Lower down near the wheels is a second distance sensor which is good for up to around 80cm distance. The scan rate is much slower than the Kinect however.





Things are getting very interesting now. A BeagleBone Black, many Atmel 328s on board, and an Intel j1900 motherboard to run the SLAM software.



Making laser-cut backlit control panels

Most of my current arduino projects have had pretty ad-hoc enclosures. You can go a long way with a Jiffy box and a Dremel. Then I bought an embossing label maker to add some text to my boxes (and, OK, everything else — when you have an embossing label maker everything starts to look like an unlabeled thing). My most recent work though has been a pure human interface device. There’s a lot of buttons and switches and displays, and one of my goals for it was to create an enclosure that looked absolutely stunning.

I’ve eventually settled on building backlit panels from laser-etched acrylic, based on a technique I picked up from the MyCockpit forum for simpit builders. Flight sim geek communities are a great resource for learning how to build nice control panels, who knew? I’ve been refining my process to get decent results with a single pass through the laser cutter in my local maker space.

Materials

  • Acrylic sheet. I use 3mm opal translucent sheet. A square metre cost me $80, and now I have more acrylic than I’ll ever need. At current estimates, including all the failed panels I’ve cut, a half metre is still very generous.
  • Spray paint. I’m using a matt grey primer that claimed to be suitable for plastics. It’s been working well so far.

It’ll also need very fine grit sandpaper and masking tape.

Prepare the acrylic

Freshly painted panels, ready to cut.

Freshly painted panels, ready to cut.

I cut my sheets in to 250mm square sections. For each section, remove the backing paper from one side and spend a minute or so sanding the face very fine wet and dry paper to give the paint a surface to adhere to. Then apply three coats of paint. At the end you’ll have finished panels ready to cut. And, if you’re like me, some freshly painted furniture to boot.

Design your panel

This part was pretty incredibly frustrating for me. I started out working with LibreCAD, a reasonably full-featured 2D CAD drawing program. That made drawing precise outlines and holes for cutting a breeze, but it’s not particularly good at working with text. I wanted real truetype fonts on my panels, and getting LibreCAD to import font faces in a form it can work with ended up beyond me.

My current workflow is to draw text that I want added in Inkscape. Then convert the text to paths, and export it as a DXF file. That file can then be imported to LibreCAD as a block and placed in my etching layer. The software driving my laser cutter doesn’t like the DXF generated by LibreCAD though, so there’s another step importing the final file in to Inkscape to collapse layers, remove dimensions and save a file that can be downloaded to the laser.

That… mostly works. Sometimes the text paths LibreCAD saves just don’t generate easily filled objects and the laser gets confused and it all goes pearshaped. Right now I’m still loading the text blocks in to LibreCAD but only using them as a visual guide. When doing final prep for cutting I still replace the text on the panel in Inkscape, to ensure a happy etching experience.

Cut the panel

Tuning etching settings for good clear lettering

Tuning etching settings for good clear lettering

I did a dummy cut with holes and a combination of angular and round lettering in all of the sizes I needed. I was using a couple of different sized fonts, and it took me a little while tweaking settings to get a result that looked sharp across the board.

When cutting panels, I order the job so that all of the engraving is first, and the cut for the outline is last. Even though the cutting bed is stationary, warps in the perspex can lead to the panel shifting slightly after the outline is cut.

I learned the hard way that getting excited and removing the paper from the back of the perspex at this point is not a great idea.

Final painting

The panel is finished, but now has raw edges that look ugly and leak light when it’s backlit. Apply masking tape to the front side, along the edges (leaving it overhang but not stuck to the side of the panel), and covering holes. Then place it face down and apply another couple of coats of paint along the edges.

I’m still working on getting this part right. Previous attempts without the masking tape led to paint bleeding under the edge, leading to visible paint drops or the newspaper I had under the panel sticking to the face. Initial tests with the tape look pretty good though.

Once the paint has dried, the backing paper for the panel can be removed and components mounted.

My most recent finished panel.

My most recent finished panel.

Next steps

I’m still working on the best way to backlight these panels. Simply lighting up the inside of the enclosure looks good, but seems a bit bland to my mind. I want to start experimenting with with individually lit panels, possibly by countersinking LEDs in to the back of the panel. Mostly because I’m keen on flickering panels, and changing panel backlight colour. But pretty pleased with the overall look so far.

 

You stay classy, Uber

You may have heard that Uber has been under a bit of fire lately for its desires to hire private investigators to dig up “dirt” on journalists who are critical of Uber. From using users’ ride data for party entertainment, putting the assistance dogs of blind passengers in the trunk, adding a surcharge to reduce the number of dodgy drivers, or even booking rides with competitors and then cancelling, or using the ride to try and convince the driver to change teams, it’s pretty clear that Uber is a pretty good example of how companies are inherently sociopathic.

However, most of those examples are internal stupidities that happened to be made public. It’s a very rare company that doesn’t do all sorts of shady things, on the assumption that the world will never find out about them. Uber goes quite a bit further, though, and is so out-of-touch with the world that it blogs about analysing people’s sexual activity for amusement.

You’ll note that if you follow the above link, it sends you to the Wayback Machine, and not Uber’s own site. That’s because the original page has recently turned into a 404. Why? Probably because someone at Uber realised that bragging about how Uber employees can amuse themselves by perving on your one night stands might not be a great idea. That still leaves the question open of what sort of a corporate culture makes anyone ever think that inspecting user data for amusement would be a good thing, let alone publicising it? It’s horrific.

Thankfully, despite Uber’s fairly transparent attempt at whitewashing (“clearwashing”?), the good ol’ Wayback Machine helps us to remember what really went on. It would be amusing if Uber tried to pressure the Internet Archive to remove their copies of this blog post (don’t bother, Uber; I’ve got a “Save As” button and I’m not afraid to use it).

In any event, I’ve never used Uber (not that I’ve got one-night stands to analyse, anyway), and I’ll certainly not be patronising them in the future. If you’re not keen on companies amusing themselves with your private data, I suggest you might consider doing the same.

November 22, 2014

[life] Day 296: The day of walking errands

We did a rather huge amount of pedestrian travel today.

I had the car booked in for a service, so after Sarah dropped Zoe off, and she'd watched a bit of TV, we drove over to Newstead to drop the car off.

I'd packed Zoe's scooter in the boot, and once we left the car dealership, we headed over to the Teneriffe cross-river ferry, which is currently conveniently depositing passengers at Hawthorne. Even more conveniently, the ferry was waiting for us as we arrived.

I'd booked haircuts for us at 10am, and we comfortably made it to the hairdresser with about 10 minutes to spare.

After that, it was time to head over to Tumble Tastics, which was quite close to the hairdresser's. We ended up getting there about 20 minutes early, but that was fine.

After Tumble Tastics, we headed home for lunch, and the car was ready to be picked up, so after a brief rest, we headed out again.

This time, Zoe said she wanted to walk, rather than ride the scooter, so we headed out on foot, reversing our trip.

We were in no particular hurry, so we stopped for a little play in a park over at Newstead that we'd discovered in the morning, and then picked up the car. It was a very hot day, so it was nice to get out of the heat.

On the way home, I discovered that the Hawthorne Markets were on. I had some paperwork to drop off to Zoe's school, so after I filled that out, we walked over to her school, dropped it off, and then walked back to the Hawthorne Markets.

I bumped into one of my fellow Thermomix Consultants, Katia, and got introduced to one of her friends, who it turns out, was at the very first trial Tumble Tastics class we went to. She also had a daughter named Zoe. So my Zoe knocked around with this Zoe and Katia's kids, and we grabbed some dinner there. It was a nice night out.

I love the feeling of community that I have now. I don't think I've had this feeling of being so well established in a place, within such a walking distance, ever before. I am truly grateful for living in such a wonderful neighbourhood and community.

A GnuCash Tutorial

Tutorial presentation of GnuCash given to the CPA Young Professionals group at Victoria University, 19th November, 2014

November 21, 2014

Craige McWhirter: An Unexpected Journey

Earlier this year I was braced for a hard and personally gruelling year. What I didn't expect however, was that after my return to Sydney that an old friend would reveal how she truly felt about me. It was a brave moment for her but fortunately for us both I'd harboured the same feelings toward her.

How was I to know,

That you would rise,

Like a burning angel in my eyes

As expected, this year has certainly lived up to and exceeded those difficult expectations to be undoubtedly the most challenging year of my life. However I've been fortunate to balance that by now having the most amazing woman by my side.

Fiona's love, support, advice and humour has been an unprecedented experience in my life. I've found a lover and a partner in crime with whom I've formed an indomitable team as we've had each others backs through some rather unbelievable trials.

Which brings me to Paris. We walked to Pont des Arts, the bridge across the Seine and added our padlock at the centre of the bridge, amongst the thousands of others and made a wish.

Then we kissed.

I asked Fiona what she wished for but was politely told it was a secret.

I said I would tell her what I wished for, then dropped to one knee and paused for long enough to read the unmistakeable expression of "What are you doing? Get up you idiot!" written across Fiona's face before I produced an engagement ring and asked Fiona to marry me.

Fiona's Engagement Ring

Fiona said "yes!".

Before too long,

We'll be together and no one will tear us apart

Before too long,

The words will be spoken I know all the action by heart

Earlier in the night I'd slipped an engagement pendant into Fiona's pocket which she discovered and put around my neck before we celebrated with a meal opposite Notre Dame cathedral.

Craige's engagement pendant

I still shake my head in disbelief at how two such independent people have found themselves in a place where they cannot imagine their life without the other. Yet that's where we are.

Our life going forward is going to complicated and challenging, however there will be an awful lot of love and we'll have each other's backs all the way.

Thank you Fiona, for bringing such love and light into my life.

I've found the one I've waited for

All this time I've loved you

And never known your face

All this time I've missed you

And searched this human race

Here is true peace

Here my heart knows calm

Safe in your soul

Bathed in your sighs

Want to stay right here

Until the end of time

Sometimes, dreams do come true.

[life] Day 295: A big long play date

I met Kelley at the first P&C meeting I went to, and she immediately took me under her wing, and later gave me a bit of a tour of the school, and some tips on Prep teachers and whatnot. I then proceeded to run into her nearly every time I went near the school.

She has a daughter, Chloe, starting Prep next year, and an older daughter in Year 3, and she's fairly well entrenched in the school community.

I thought it'd be good for Zoe to get to know Chloe a bit better, so she's one more person she knows at the start of school next year, so we had a play date at her house.

The girls seem to get along well, and Kelley's really nice. We have similar views in a lot of areas, and her husband works in IT security, so I think this could be the beginning of a beautiful friendship.

After lunch, due to the heat, we decided to bike down to the Colmslie Pool together. Kelley has a bike adapter trailer thing that couples a normal kid's bike to the back of hers, with the front wheel slightly elevated.

Zoe made me very proud at the pool, doing a kneeling dive into the water and swimming half the length of the indoor pool. Her swimming continues to progress in leaps and bounds.

We had a good time at the pool, and then biked back to school so Kelley could pick up her other daughter. We just hung out at the pool a bit early for swim class, and then biked home afterwards.

Sarah picked up Zoe, and then I headed out for the second Thermomix cooking class I've had to help out with. This one was a bit more fun for me because we had a great number of consultants on hand to share the workload, and I wasn't on washing up duties this time.

[life] Day 294: Babysitting play date, final Prep introductory day and an afternoon play date

Wednesday was yet another full day. It's no wonder I'm feeling so tired, and have a backlog of blogging.

Mel had asked me if I could look after Matthew and Olivia for a couple of hours in the morning. Matthew and Zoe get along fabulously, and the time worked well, so I was happy to help out.

Zoe seems to be going through a bit of a nightmare phase at the moment. I'm sure the heat isn't helping. Zoe woke up with a nightmare about Smudge dying at 2am. Her room was 27°C at the time. 2am seems to be the nightmare time. I got her resettled within about half an hour. I really think I'm going to have to look into air-conditioning her bedroom sooner rather than later.

So I was a bit of a zombie when Mel dropped the kids off at 9am. Fortunately Matthew and Zoe just went off and played together, and Olivia was happy to just hang out with me. She's such a sweet little 2 and a half year old. She kept calling me "Lucy's Dad" or "Sophie's Dad" or something not quite right. It was very cute.

Mel was going to stay for lunch, and I'd been feeling adventurous, and made some hamburger buns and hamburger patties throughout the morning, with everyone running amok around me.

I improvised a bit on the hamburger buns, using a mix of baker's flour and whole-wheat flour and buckwheat. The result still turned out quite satisfactory.

After lunch, Zoe and I headed over to school for the final Prep introductory afternoon. Zoe wanted to walk today. It was a "best of" day for the fine motor skills activities, and Zoe was rather chuffed to get picked as a leader for the gross motor skills activities.

One of the Prep teachers (the one I hope Zoe gets next year) who had remarked on Zoe's timidity on the first day remarked today about what a different girl she was now.

Walking home, there were a ton of ibis on the football field we walk past, so Zoe had a great time running across the field chasing them all. She's getting a lot better about walking longer distances now.

Eva and Layla came over for a play with Tanya in tow after school, and the girls had a fun afternoon. A massive storm rolled in, and so I went and picked up Anshu from the ferry terminal. Once the storm abated, Tanya left with the girls, and then Sarah arrived to pick up Zoe.

Anshu tagged along with me to the P&C meeting. Not the most fun "date night", but I was glad to have another opportunity to attend a P&C meeting before the end of the school year.

Playing with the network

I'm in the position of needing to improve my internet connectivity, so one of the first steps is to decouple all the things that provide the services I rely upon.



Stage one is to turn my modem into just an ADSL endpoint, removing any DHCP, NAT, and PPPoE termination from the device so that it has a single function.


Fortunately my nb604n ADSL modem has a nice easy-to-follow guide for taking it into bridge mode: http://support.netcommwireless.com/sm/videos/nb604n/nb604n-bridge-mode-setup-guide


Now onto greater things!


Craige McWhirter: Deleting Root Volumes Attached to Non-Existent Instances

Let's say you've got an OpenStack build you're getting ready to go live with. Assume also that you're performing some, ahem, robustness testing to see what breaks and prevent as many surprises as possible prior to going into production. OpenStack controller servers are being rebooted all over the shop and during this background chaos, punters are still trying to launch instances with vary degrees of success.

Once everything has settled down, you may find that some lucky punters have deleted the unsuccessful instances but the volumes have been left behind. This isn't initially obvious from the cinder CLI without cross checking with nova:

$ cinder list
+--------------------------------------+-----------+--------------+------+-------------+--
--------+--------------------------------------+
|                  ID                  |   Status  | Display Name | Size | Volume Type | B
ootable |             Attached to              |
+--------------------------------------+-----------+--------------+------+-------------+--
--------+--------------------------------------+
| 3e56985c-541c-4bdd-b437-16b3d96e9932 | in-use    |              |  3   |    block    |
 true   | 6e06aa0f-efa7-4730-86df-b32b47e53316 |
+--------------------------------------+-----------+--------------+------+-------------+--
--------+--------------------------------------+
$ nova show 6e06aa0f-efa7-4730-86df-b32b47e53316
ERROR (CommandError): No server with a name or ID of '6e06aa0f-efa7-4730-86df-b32b47e53316' exists.

It will manifest itself in Horizon like this:

Attached to None

Now trying to delete this volume is going to fail:

$ cinder delete 52aa706df17d-4599-948c-87ae46d945b2
Delete for volume 52aa706d-f17d-4599-948c-87ae46d945b2 failed: Invalid volume:
Volume status must be available or error, but current status is: creating (HTTP 400)
(Request-ID: req-f45671de-ed43-401c-b818-68e2a9e7d6cb)
ERROR: Unable to delete any of the specified volumes.

As will an attempt to detach it from the non-existent instance:

$ nova volume-detach 6e06aa0f-efa7-4730-86df-b32b47e53316 093f32f6-66ea-451b-bba6-7ea8604e02c6
ERROR (CommandError): No server with a name or ID of '6e06aa0f-efa7-4730-86df-b32b47e53316' exists.

and no, force-delete does not work either.

Here's my approach for resolving this problem:

SSH onto your MariaDB server for OpenStack and open MariaDB to the cinder database:

$ mysql cinder

Unset the attachment in the volumes table by repeating the below command for each volume that requires detaching from a non-existent instance:

MariaDB [cinder]> UPDATE volumes SET attach_status='detached', instance_uuid=NULL, \
attach_time=NULL, status="available" WHERE id='3e56985c-541c-4bdd-b437-16b3d96e9932';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

Back on your OpenStack client workstations you should now be able to delete the offending volumes:

$ cinder delete 3e56985c-541c-4bdd-b437-16b3d96e9932

Happy housekeeping :-)

November 20, 2014

linux.conf.au 2015 Diversity Fund Announcement

AUCKLAND, New Zealand – Friday 21st November 2014 – linux.conf.au 2015 Organisers are proud to announce our funding programme!



InternetNZ Diversity Programme

LCA 2015 and InternetNZ are proud to support diversity. The InternetNZ Diversity Programme is one of the many ways we ensure that LCA 2015 continues to be an open and welcoming conference for everyone. Together with InternetNZ this program has been created to assist under-represented delegates who contribute to the Open Source community but, without financial assistance, would not be able to attend LCA 2015.

For more information please see our funding registration page.



About linux.conf.au

linux.conf.au is one of the world's best conferences for free and open source software! The coming linux.conf.au; LCA 2015 will be held at the University of Auckland, New Zealand from Monday 12 January to Saturday 16 January 2015. LCA 2015 will be fun, informal and seriously technical, bringing together Free and Open Source developers, users and community champions from around the world. LCA 2015 is the third time linux.conf.au has been held in New Zealand. The first was in Dunedin in 2006 and the second was in Wellington in 2010.

For more information please visit our website

About Linux Australia

Linux Australia is the peak body for Linux User Groups (LUGs) around Australia, and as such represents approximately 5000 Australian Linux users and developers. Linux Australia facilitates the organisation of this international Free Software conference in a different Australasian city each year.

For more information see: http://www.linux.org.au/

Emperor Penguin Sponsors

LCA 2015 is proud to acknowledge the support of our Emperor Penguin Sponsors, Catalyst IT, HP and IBM, and our diversity sponsor Internet NZ.

For more information about our sponsors click below -

        

Multi-level prefix delegation is not a myth! I've seen it!

Unless you’ve been living under a firewalled rock, you know that IPv6 is coming. There’s also a good chance that you’ve heard that IPv6 doesn’t have NAT. Or, if you pay close attention to the minutiae of IPv6 development, you’ve heard that IPv6 does have NAT, but you don’t have to (and shouldn’t) use it.

So let’s say we’ll skip NAT for IPv6. Fair enough. However, let’s say you have this use case:

  1. A bunch of containers that need Internet access…

  2. That are running in a VM…

  3. On your laptop…

  4. Behind your home router!

For IPv4, you’d just layer on the NAT, right? While SIP and IPsec might have kittens trying to work through three layers of NAT, for most things it’ll Just Work.

In the Grand Future of IPv6, without NAT, how the hell do you make that happen? The answer is “Prefix Delegation”, which allows routers to “delegate” management of a chunk of address space to downstream routers, and allow those downstream routers to, in turn, delegate pieces of that chunk to downstream routers.

In the case of our not-so-hypothetical containers-in-VM-on-laptop-at-home scenario, it would look like this:

  1. My “border router” (a DNS-323 running Debian) asks my ISP for a delegated prefix, using DHCPv6. The ISP delegates a /561. One /64 out of that is allocated to the network directly attached to the internal interface, and the rest goes into “the pool”, as /60 blocks (so I’ve got 15 of them to delegate, if required).

  2. My laptop gets an address on the LAN between itself and the DNS-323 via stateless auto-addressing (“SLAAC”). It also uses DHCPv6 to request one of the /60 blocks from the DNS-323. The laptop puts one /64 from that block as the address space for the “virtual LAN” (actually a Linux bridge) that connects the laptop to all my VMs, and puts the other 15 /64 blocks into a pool for delegation.

  3. The VM that will be running the set of containers under test gets an address on the “all VMs virtual LAN” via SLAAC, and then requests a delegated /64 to use for the “all containers virtual LAN” (another bridge, this one running on the VM itself) that the containers will each connect to themselves.

Now, almost all of this Just Works. The current releases of ISC DHCP support prefix delegation just fine, and a bit of shell script plumbing between the client and server seals the deal – the client needs to rewrite the server’s config file to tell it the netblock from which it can delegate.

Except for one teensy, tiny problem – routing. When the DHCP server delegates a netblock to a particular machine, the routing table needs to get updated so that packets going to that netblock actually get sent to the machine the netblock was delegated to. Without that, traffic destined for the containers (or the VM) won’t actually make it to its destination, and a one-way Internet connection isn’t a whole lot of use.

I cannot understand why this problem hasn’t been tripped over before. It’s absolutely fundamental to the correct operation of the delegation system. Some people advocate running a dynamic routing protocol, but that’s a sledgehammer to crack a nut if ever I saw one.

Actually, I know this problem has been tripped over before, by OpenWrt. Their solution, however, was to use a PHP script to scan logfiles and add routes. Suffice it to say, that wasn’t an option I was keen on exploring.

Instead, I decided to patch ISC DHCP so that the server can run an external script to add the necessary routes, and perhaps modify firewall rules – and also to reverse the process when the delegation is released (or expired). If anyone else wants to play around with it, I’ve put it up on Github. I don’t make any promises that it’s the right way to do it, necessarily, but it works, and the script I’ve added in contrib/prefix-delegation-routing.rb shows how it can be used to good effect. By the way, if anyone knows how pull requests work over at ISC, drop me a line. From the look of their website, they don’t appear to accept (or at least encourage) external contributions.

So, that’s one small patch for DHCP, one giant leap for my home network.

  1. The standard recommendation is for ISPs to delegate each end-user customer a /48 (giving 65,536 /64 networks); my ISP is being a little conservative in “only” giving me 256 /64s. It works fine for my purposes, but if you’re an ISP getting set for deploying IPv6, make life easy on your customers and give them a /48.

A benefit of running an alternate init in Debian Jessie

If you’re someone who doesn’t like Debian’s policy of automatically starting on install (or its heinous cousin, the RUN or ENABLE variable in /etc/default/<service>), then running an init system other than systemd should work out nicely.

November 19, 2014

DrupalSouth - Call for sessions open!! (closes 30 Nov 2014)

DrupalSouth is the biggest Drupal gathering in the Antipodes.

We'll be at the Melbourne Convention and Exhibition Centre over three days in early March 2015. March 5-7 to be exact.

Find out more at the website

https://melbourne2015.drupal.org.au/

The call for sessions is open, and we're trying hard to get the word out wide and far, to whisper in new ears, and encourage people of all sorts to share their ideas for sessions so we can create a truly wonderful, inspiring, engaging and fun program for this conference!

For those who may not know, Drupal is an open source content management system. It's used by people and organisations all around the world, for all sorts of web sites. It's also being used as back end application framework for mobile apps! It's amazing what Drupal can do.

Drupal events are the heart and soul of the community that makes Drupal. Bringing people together drives the project forward, and forges friendships.

But we're also part of the wider web. So we want to hear from all sorts of web specialists, not just Drupalists.

Please, submit a session, or simply help us spread the word. The deadline is looming and won't be extended. Get that proposal in by 30 November 2014. https://melbourne2015.drupal.org.au/program/session-submission

Speaker Feature: Andrew McDonnell, Jim Cheetham

Andrew McDonnell

Andrew McDonnell

Reverse engineering embedded software using Radare2

1:20pm Thursday 15th January 2015

Andrew McDonnell is a professional software engineer with two decades experience, having spent many years before that hacking code after receiving a Commodore 64 for Christmas at age 12. He has significant experience programming in C++, Java and Python and a multitude of scripting languages. Outside of family and work he sometimes has time to play with his collection of 8-bit and PC/XT-vintage computers; computing and electronics has always been his passion. He intermittently maintains a blog at http://blog.oldcomputerjunk.net sometimes posting how he solved a problem in the hope it may be useful to someone else.

For more information on Andrew and his presentation, see here. You can follow him as @pastcompute and don’t forget to mention #lca2015.



Jim Cheetham

Jim Cheetham

OneRNG - An Open and Verifiable hardware random number generator

1:20pm Thursday 15th January 2015

Jim works in Information Security, and has a long background in Unix/Linux and Open Source/Free software systems.

For more information on Jim and his presentation, see here. You can follow him as @onerng and don’t forget to mention #lca2015.

Unquestionably bad

Question 5:

Consider the following 6 data structures:

  • Stack
  • Queue
  • Hash table
  • Doubly-linked list
  • Binary search tree
  • Directed acyclic graph

Using these as the subject matter, construct 6 really good puns.

 

Answers:

After receiving a range of questions from different sources, I was unsure which to answer first — I was stack as to where to begin. And so because this was the last question that I received, it became the first that I answered.

Don’t get me wrong — I did appreciate the question. The capacity of my gratitude is, theoretically, unbounded. Thanqueue.

We have a cuckoo aviary. I keyp a record of each birth in a hatch table.

I noticed that I was leaning to one side. I spoke to a physician about it — he told me I was overweight because I was eating too much bread. My list, it seems, is linked to my dough-belly.

On a school trip to a pickle factory, my daughter went missing. I was able to climb the brinery search tree and spot her, though it took longer than I had hoped due to my poor balance.

While out walking, I deflected a cyclist’s gaffe, knocking him aside as he rode the wrong way down a one-way street. I looked down my nose at him and gave a topological snort to help him on his way.

 


The reader may decide whether the answers satisfy the requirements of the question.

November 18, 2014

Speaker Feature: Katie McLaughlin, Andrew Bartlett

Katie McLaughlin

Katie McLaughlin

Before All Else, Be Graphed

3:40pm Wednesday 14th January 2015

Katie is a part of the Engineering team at Anchor Systems, working to improve *all* the things. She has a history of enterprise development and Windows system administration, but has been successfully converted to the ways of the penguin in recent years.

When she's not changing the world, she enjoys making tapestries, cooking, and yelling at JavaScript and it's attempts at global variables.

For more information on Katie and her presentation, see here. You can follow her as @glasnt and don’t forget to mention #lca2015.



Andrew Bartlett

Andrew Bartlett

Pushing users into the pit of success - stories from the Samba 3 -> Samba 4 transition

3:40pm Thursday 15th January 2015

Andrew Bartlett is a Samba Developer currently employed by Catalyst in Wellington, NZ. Andrew has been developing Samba since 2001, and has had a strong focus on the Active Directory DC project for the past decade or so. He is passionate about authentication systems and making Samba a great, interoperable alternative to the dominant implementation from Microsoft.

For more information on Andrew and his presentation, see here.

[life] Day 293: Kindergarten, Property Occupations Act Roadshow

Zoe woke up at some point in the night. I have a vague recollection of a conversation with her, and lacking the willpower to get out of bed to put her back to bed in her own bed. The next thing it was 5:30am and she was sleeping sideways in bed with me.

Despite all that, I felt more rested this morning, which was good. We managed to get going quite early as well, without really trying. I had to be out at the Sleeman Sports Complex at 9am for a roadshow by the REIQ about the new Property Occupations Act, which kicks in on December 1 to replace the current Property Agents and Motor Dealers Act.

It also rained this morning, which doubly made it necessary to go to Kindergarten by car. We were actually running so early that we got there before opening time, which I've only managed to do a few times all year.

I ended up getting to the Sleeman Sports Complex about 15 minutes early. It was fun playing "spot the real estate agent's car".

I didn't learn anything earthshattering in the briefing, but it was useful to get fully up to speed on the new legislation. I just hope that being half way through a course that has covered the old legislation isn't going to be a problem.

I got home from that with enough time to just chill out for a bit (I ended up doing a bit of tinkering) before it was time to pick up Zoe. The weather was still a bit questionable, so I picked her up in the car.

Zoe wanted to watch Megan's tennis lesson again, and I had to be at home for a 3pm video chat, so I left her with Jason and popped home.

After my video chat, I went around to Jason's and helped with a bit of painting before heading home to start on dinner.

I had enough for Jason, Megan and Megan's little sister, so they came over for dinner as well.

I got Zoe down to bed at the normal time, but her bedroom is ridiculously hot. I'm not terribly confident I won't get another uninterrupted night's sleep.