Planet Linux Australia
Tutorial presentation of GnuCash given to the CPA Young Professionals group at Victoria University, 19th November, 2014
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.
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 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.
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.
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.
Andrew Pollock: [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.
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.
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!
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:
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 :-)
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.
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 websiteAbout 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 -
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:
A bunch of containers that need Internet access…
That are running in a VM…
On your laptop…
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:
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).
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.
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.
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. ↩
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.
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
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
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.
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.
Consider the following 6 data structures:
- Hash table
- Doubly-linked list
- Binary search tree
- Directed acyclic graph
Using these as the subject matter, construct 6 really good puns.
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.
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.
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.
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.
My ageing Motorola Milestone finally received a kick to the bucket last week when my shiny new Nexus 5 phone arrived.
Though fantastic by 2009 standards, the Milestone could only officially run Android 2.2, and 2.3 with the help of an unofficial CyanogenMod port. Having been end-of-lifed for some time now, and barely being able to render a complex web page without running out of memory, it was time for me to move on.
I was adamant that I would only buy a Nexus phone. Vendors that ship OEM customisations to the Android image are the spawn of the devil, and I wasn’t interested in buying a device that would be abandoned after the next model came out. After all, I’m not a gadget person. This is a big deal for me, and I hope this phone lasts me four years, just like my Milestone did.
Can I just say how fantastic the hardware is. The case is much more aesthetically pleasing than most of the Android phones I’ve had the (dis)pleasure of trying out, the screen is beautiful, and the software keyboard is smooth, accurate, and responsive.
On the screen. I think five inches is the maximum size I can cope with. I must say, being a person with small hands, I am not a large screen person. I can only just reach the opposite X axis with my thumb, and I need to reposition my hand (or use a second hand) to reach the opposite X and Y points. So yes, that’s why I didn’t get a Nexus 6.
On the software, I am thoroughly impressed by Android 4.4. Thoroughly. Google have done just about everything right. Nearly anything bad I have ever said about Android in the past either doesn’t apply to Android 4.4, or only applies to customised OEM builds.
Everything I would have wanted to root my phone to do previously is totally unnecessary.
Out of the box, FLAC audio and IPsec Xauth VPNs (main mode only, not aggressive mode) are supported. Just by installing an app, I can get my strongSwan IKEv2 VPN working.
Interestingly enough, this phone constantly bombards me with security warnings as a result of the fact that I have installed my own certificate authorities. I think this is an interesting development, and is probably a proactive stance against the possibilities that ISPs and/or governments may encourage you to allow them to perform SSL man-in-the-middle attacks on your connection in future for tracking and advertising purposes.
Hopefully warnings appearing on users’ phones worded such as “your network may be monitored” is enough to scare off those who may have such evil intentions.
The phone is amazingly responsive. Not only that, it multitasks with ease, and the user interface is smooth.
One minor criticism is that Google Maps appears to be capped at around 15 frames per second. This is odd, as similar apps such as Google Earth run at a much more pleasing framerate.
It is probably an unfair comparison, as the Nexus 5 is so much higher specced, but overall I am finding the device much faster and more responsive (and therefore I’m more likely to grab it and use it for quick tasks) than my iPhone 4S.
Ever since the release of iOS 7, my iPhone has been frustratingly slow and unstable. Sadly, apps crashing due to low memory conditions are an almost daily occurrence.
It is unclear to me whether this is a deliberate decision by Apple in order to make their later model iPhones look better, but I find it fascinating that I find my Nexus 5 being more pleasurable to use than my iPhone 4S. Something I would not have thought possible a fortnight ago.
I’m so impressed by Android 4.4 that I’m almost dreading the impending 5.0 upgrade in the fear that Google will “do an iOS 7″ — i.e. make the device significantly less useful by making it slower and less stable.
11:35am Wednesday 14th January 2015
Marc has been using linux since 0.99pl15f (slackware 1.1.2, 1994), both as a sysadmin and userland contributor. He has worked for various tech companies in the Silicon Valley, including Network Appliance, SGI, VA Linux, Sourceforge.net, and now Google since 2002, both a server sysadmin and software engineer.
He has done hacking in various areas like mail with exim, mailman, SpamAssassin and SA-Exim, as well as maintained various linux distributions at Google and elsewhere, and given talks about some of those projects, and others at linux conferences since 2001 (LCA, OLS, Linuxcon, Usenix/LISA).
For more information on Marc's presentation, see here.
Jussi Pakkanen Making build systems not suck
2:15pm Thursday 15th January 2015
Jussi got his doctoral degree in computer science in 2006. Since then he has worked in various problem fields including mail sorting. He is currently employed by Canonical where he has worked on various parts of Ubuntu desktop and phone. In his free time he dabbles with drawing, creating computer games, photography and whatever else might catch his fancy.
I felt pretty exhausted this morning. In fact, I felt exhausted before I flew to Sydney for the weekend. It hasn't gotten any better.
I managed to get on an earlier (by an hour) flight back, which gave me a comfortable amount of time to unpack, put away the laundry and generally tidy up before picking up Zoe from Kindergarten.
After I picked her up, we popped over to the supermarket to do some grocery shopping and escape the heat, before heading home.
I had a crack at making sushi for dinner tonight. It turned out so-so. I'll tweak it a bit more next time.
Zoe seemed pretty worn out by bedtime too, and went to bed easily. I'm looking forward to a long night's sleep.
11:35am Wednesday 14th January 2015
Paul is an open source developer and trainer. He is a committer to the Apache OFBiz project and also currently serves as a director of Open Source Industry Australia. He is very pleased at this, his eighth LCA, to have finally done something just possibly cool enough to talk about.
Away from work, Paul tries to get away to his bush block in eastern Victoria, and to teach agile techniques to Ilke the German Shepherd.
Keith Packard Putting the Polish on Glamor
10:40am Wednesday 14th January 2015
Keith Packard has been developing open source software since 1986, focusing on the X Window System since 1987, designing and implementing large parts of the current implementation. He is currently a Principal Engineer with Intel's Open Source Technology Center. Keith received a Usenix Lifetime Achievement award in 1999, an O'Reilly Open Source award in 2011, sits on the X.org foundation board and is a member of the Debian Technical Committee.
For more information on Keith and his presentations, see here.
- Why Citi Got Rid of Assigned Desks http://t.co/5lnLLjfJ9K 19:32:01, 2014-11-16
- RT @annazivarts: Brilliant visual of how much public space we cede to cars http://t.co/2fE0GNWlwK ht @mikefarrell 13:19:01, 2014-11-16
- Abbott’s idea of a shirtfront involves a smile and an #MH17 congratulatory handshake http://t.co/0TRXJ3VECX #auspol http://t.co/pZBj06FYCK 11:20:07, 2014-11-16
- Abbott claims terra nullius: describes Sydney as ‘nothing but bush’ before First Fleet arrived in 1788 http://t.co/jBaTU72poa #auspol 09:42:00, 2014-11-16
- FBI’s most-wanted cybercriminal used cat’s name as password
- Australian Navy Struggling To Tow Back Russian Warships http://t.co/CMDcd91nbj #satire #auspol 17:27:02, 2014-11-15
- ‘Weird’: Abbott’s opening #G20 address under fire
- FIFA’s own ethics investigator disputes report conclusions
- Rio Tinto CEO lauds US-China climate deal, calls for Australia to catch up
- How a dictator created the national dish of Australia http://t.co/VfZFqJeM9u 11:20:05, 2014-11-13
- Pollution killed 1.2 million Chinese people in one year alone while Abbott says coal is “good for humanity“
- RT @auxesis: “It’s not a promotion — it’s a career change”. Some thoughts for new or aspiring engineering managers http://t.co/ttNCkWTWVX 09:42:03, 2014-11-12
- The changing laws of the jungle and your career http://t.co/kfwfUCJQik 05:57:59, 2014-11-12
- I’m declaring my online independence today. Join me! #ChooseIndependent with Firefox. http://t.co/PnYiAYnpei 05:01:17, 2014-11-11
- I’m against secret companies being used to smuggle stolen money for the corrupt. #G20, it’s time to #UnmaskTheCorrupt http://t.co/0gc8CuxXeq 21:01:18, 2014-11-10
- The world is moving on #climatechange … 39 countries are putting a price on carbon http://t.co/zA0xf7gIAr 13:19:09, 2014-11-10
- When We Don’t Like the Solution, We Deny the Problem: study http://t.co/AjOpe2QQqT 11:20:07, 2014-11-10
- 343 Australian & foreign companies have used tax havens in recent years to dramatically cut their tax bills http://t.co/LeP6gYKUDj #auspol 09:42:04, 2014-11-10
I don't read a lot of non-fiction, but I decided to finally read this book having had it sit on the shelf for a few years. I'm glad I read it, but as someone who regularly eats in the US I am not sure if I should be glad or freaked out. The book is an interesting study in how industrialization without proper quality controls can have some pretty terrible side effects. I'm glad to live in a jurisdiction where we actively test for food quality and safety.
The book is a good read, and I'd recommend it to people without weak stomaches.
Tags for this post: book eric_schlosser food quality meat fast industrialized
Related posts: Dinner; Dishwasher Trout; Yum; 14 November 2003; Food recommendation; Generally poor audio quality on pod casts? Comment Recommend a book