It is not uncommon for front-end designers (the polite phrase to use when people say what a website should look like and don't doing any coding themselves) ask for a search box or similar elements to be located outside the standard blocks in Drupal. Without some background knowledge, this can be somewhat frustrating.
Planet LCA2010
18 May 2012
Selena Deckelmann
Embedding and Checkmarkable: the Five Whys
17 May 2012
Robert O'Callahan
Accelerated Scrolling In Firefox: Past, Present And Future
Scrolling performance is always important and we've made some pretty huge strides since Firefox 4. It may be helpful for me to explain some of what's happened.
In Firefox 3.6 and earlier, we had some pretty complicated code to analyze every scroll operation and figure out if we could safely scroll by just blitting some region of the window to another place and repainting the rest of the affected area. (In the very old days this was done in nsViewManager; later it was done using frame display lists.) This was quite difficult to do; for example an HTML <textarea> has a solid white background behind the scrolled text, so to prove that you can just blit the text, you have to determine that there is a solid-color background underneath the entire scrolled area. But the real problem was that it would quite often fail and we'd end up repainting the entire scrolled area, or most of it. For example, a large position:fixed element would require us to repaint the area around it. A background-attachment:fixed background would require us to repaint the entire window. This was bad because it meant scrolling sometimes "fell off a performance cliff".
In Firefox 4 we overhauled scrolling to use the new layer system. The basic idea is very simple: while scrolling, you put the content that's moving into one set of layers, and the content that's not moving in other layers. To scroll, add a translation to the transform matrix for the moving layers, repaint any parts of layers that have scrolled into view, and recomposite the window. If we do that properly, we'll never have to fall back to the "repaint everything" path; scrolling will just "always be fast". It also integrates cleanly when scrolled content uses accelerated layers for <video> and <canvas> etc.
This being the Web, there are of course a lot of complications. Separating moving from non-moving content is not easy. The infamously complex CSS z-ordering rules mean that even when scrolling a single element, you can have moving content interleaved with non-moving content so that you have to have two or more layers for each.
When you place content in these separate layers, the layers can become difficult to render. In particular text using subpixel-antialiasing placed into a moving layer, where its background is not moving, needs to be stored with separate alpha channels for each color channel ("component alpha"). This is difficult to implement efficiently. With GPU-based compositing we use shader tricks, but with CPU compositing it would be too expensive so when we encounter this situation we back off and stop caching the text in a retained layer and just draw it every time we composite the window. However even with CPU compositing, we still win on a lot of pages that use position:fixed or background-attachment:fixed.
Another thing that makes layer-accelerated scrolling difficult is when scrolled content is subject to some effect from its ancestors. The most common difficult case is when an element combines non-'visible' 'overflow' with 'border-radius' and must clip its descendants to a rounded-corner rectangle. The best way to handle this is to add support to the layer system so a container layer can clip its descendants to the rounded-rectangle border-box of an element. Until recently we didn't have that, so scrolling inside such elements was forced to repaint everything, but Nick Cameron just landed a large project to add that capability to layers and to use it in all kinds of rendering situations, including when scrolling. That means in a scrolling element that's clipping to its border-radius, the scrolled content is rendered to retained layer buffer(s) as if there was no border-radius, and then we clip to the border-radius during compositing (very efficient with a GPU since we cache the border-radius shape in a mask texture). (Nick's project provides other benefits such as accelerated video and canvas inside containers clipping to their 'border-radius' without hitting nasty fallback paths.) Summary: in Firefox 15, scrolling inside an overflow:hidden/auto element with border-radius gets a lot faster.
There is of course more to do. There are still CSS and SVG container effects we don't handle: namely filters, masks, and clip-path. Masks and filters need more layer-system support (especially filters!). Once those are done, then at least with GPU acceleration enabled it will be very difficult to hit any slow "repaint everything" paths when scrolling. (Although it's already very rare to see scrolling content inside a clip-path, mask or filter.)
The other pending important scrolling improvement is asynchronous scrolling, i.e., the ability to trigger a smooth scroll and have it happen immediately at a constant frame rate without jerkiness, even if the thread running the Web content is blocked due to Javascript execution or whatever. We've already developed most of this for Mobile Firefox (and B2G), but it needs to be made to work on desktop as well, which is not trivial. It requires enabling asynchronous compositing on all our platforms, and teaching the compositor a bit about scrolling. Once that's done, because we're able to layer-ize scrolling in almost every situation, we'll be in extremely good shape.
14 May 2012
Robert O'Callahan
Sad And Pathetic Machines
On Saturday I visited a friend’s house to see if I could help them with slowness problems on their home computer. This was a six-year-old machine running XP with 448MB RAM. I observed that on startup Windows Update would run and while running, pretty much all the RAM in the system was consumed by Windows, wuauclnt.exe and svchost.exe (which assists Windows Update). During this time, starting Firefox or IE took minutes; the machine would thrash itself senseless. This state lasted for quite a long time, about half an hour, probably exacerbated by my attempts to get stuff done. Once it subsided, Firefox started quickly and ran well.
This is apparently a known problem and some kind of Microsoft regression.
Under these conditions, Firefox startup time and other metrics are bound to be awful.
Update I forgot to mention, but the Microsoft malware checker was also running at the same time as Windows Update and contributing significantly to resource usage. I guess it checks the downloaded and installed updates for malware...
Dave Airlie
ripping the X server a new driver API
[side note: When I started out on hotplug. one of my goals was to avoid changing the server API/ABI too much so I could continue side by side testing.]
how did I get to v3?
v0.1: was called dynerama it failed miserably and proved that using Xinerama as the plugging layer was a bad plan.
v1: was the first time I decided to use an impedance layer between some server objects and driver objects.
v2: was the a major rebase of v1.
v2 was trucking along nicely and I managed to get the design to the stage where PRIME offloading intel/nouveau worked, USB device hotplug with udl worked, and GPU switch worked between two drivers. However v2 duplicated a lot of code and invented a whole new set of API objects called DrvXRec, so DrvScreenRec, DrvPixmapRec, DrvGCRec etc, this lead me to looking at the pain of merging this into the drivers and the server, and my goals of avoiding changing the API/ABI was getting in my way.
So before starting v3 I decided to rework some of the server "APIs".
The X server has two main bodies of code, one called DIX, and one called DDX. The DIX (device independent X) code and the DDX (Device dependent X code). In the X.org tree the dix lives up in the top level dirs, and for X.org server the DDX lives in hw/xfree86. The main object with info about protocol screens and GPUs is called ScreenRec in the DDX and ScrnInfoRec in the DIX. These are stored in two arrays, screenInfo.screens in the DIX and xf86Screens in the DDX, when code wants to convert between these it can do one of a few things.
a) lookup by index, both structs have an index value, so to go from ScrnInfo to Screen you look at screenInfo.screens[scrninfo->scrnIndex] and other way is xf86Screens[screen->myNum]. This is like the I didn't try and make an API, I just exposed everything.
b) ScrnInfo has a ScreenPtr in it, so some code can do ScrnInfo->pScreen to get the pointer to the dix struct. But this pointer is initialised after a bunch of code is called, so you really can't guarantee this pointer is going to be useful for you.
c) XF86SCRNINFO uses the DIX private subsystem to lookup the Scrn in the Screen's privates. This is the least used and probably slowest method.
So also screenInfo.screens contains the protocol screens we exposed to the clients, so this array cannot really change or move around. So I'd like to add screeninfo.gpuscreens and xf86GPUScreens and not have drivers know which set of info they are working on, however (a) totally screws this idea, since the indices are always looked up directly in the global arrays.
Now lots of the Screen/ScrnInfo APIs exposed to the drivers pass an int index as the first parameter, the function in the driver then goes and looks up the global arrays.
So my first API changes introduce some standard conversion functions xf86ScreenToScrn and xf86ScrnToScreen, and converts a lot of the server to use those. Yay an API. The second set of changes then changes all of the index passing APIs to pass ScrnInfoPtr or ScreenPtr, so the drivers don't go poking into global arrays. Now this is a major API change, it will involve slightly messy code in drivers that want to work with both servers, but I can't see a nicer way to do it. I've done a compat header file that will hopefully allows to cover a lot of this stuff where we don't see it.
I've ono other API introduction on the list, Glyph Pictures are another global array indexed by screen index, I've gone and added an accessor function so that drivers don't use the index anymore to get at the array contents directly.
Once this stuff lands in the server, a team of people will go forward and port the drivers to the new APIs (who am I kidding).
Giuseppe Maxia
How to run a flawless technical demo
Why demos?
For as long as I can remember in my public speaking activities, I have always planned my presentations with some sort of live demo in it. I am always surprised when a conference venue asks me to provide my slides in advance, to be loaded in an anonymous computer with no chance of demos. I always turn down such offers, as I always want to provide a demo.
There have been times when technical or time constraints prevented me from demoing something, and in these cases I felt that the presentation was lacking a vital part. But I always try. I have even given demos during lightning talks, and those were the ones that made me feel really good.
I have given hundreds of presentations, and hundreds of demos, and as in every human activity, I have made plenty of mistakes. I believe I have learned some valuable lesson from my mistakes, and this article is my attempt at sharing the joy with wannabe presenters and also with presenters who want to embrace this method.
So, why having a (risky) live demo in your presentation? Here are some of the reasons that may also appeal to you.
Show trust in your product
You want to talk about your product. The audience assumes that you have confidence in whichever product you want to talk about. However, if you limit your presentation to showing slides, no matter how beautiful and dynamic they are, the audience will be left with the dormant impression that you were talking about something not really trustworthy, or even (gasp!) unreal. If your audience start thinking that you are dealing with vaporware, nothing can dispel that thought faster and more convincingly than a demo. If you trust your product, then you should demo it. If you don't include a demo because you are afraid that the demo would fail, then don't present the topic. It's as simple as that.
Improve the entertainment level of your presentation
A demo makes a presentation more lively. The audience sees that you abandon the comfortable protection of your slide deck, where you are totally in control, and you risk your hide with a live demo of something that (as any technological artifact) can fail and blow up on your face, burning your reputation and your ego at the same time. Entertainment in a presentation is very important. As Guy Kawasaki said [1], if you make your presentation full of important things, chances are that people will forget all of them because your presentation will be boring, but if your make your presentation entertaining, then you can easily sneak in some important stuff, and the audience will remember that.
increase your reputation as a guru
Including live demos in your presentation will make the audience think of you as some sort of guru, and your reputation will grow. Now, I don't do demos for this reason. As I said before, I like presenting technical things with live examples. And then I realized that people attending my presentations had a high opinion of me, because of my demos. If not your reputation, live demos will increase your self confidence, and sometimes they amount to the same thing.
Demos DOs and DON’Ts
Down to business. A demo is not a casual happening. A successful demo has a long story behind it.
When you are on stage with a demo, you are not a boring presenter. You are a magician pulling rabbits from a top hat. You are a gymnast showing your dexterity. You are the center of attention, and success is within your grasp.
All this comes at a price, though. Read on.
DO: Master the topic
First and foremost. You must be really comfortable with the topic being presented. If you aren’t, it shows, and the audience will feel your fear. Therefore, the first requirement for a good demo is that you really understand what you are doing, and why. Not only because you are unlikely to demo successfully something that you don’t fully understand, but also because you will fall at the first question from the audience. (Incidentally, if a presenter maneuvers the presentation to prevent questions, it may be a sign of lack of self confidence, or even downright ignorance.)
DO: make a plan of what you want to show
Knowing your stuff doesn’t mean that you can convey your enthusiasm for the product to the audience just by showing some random commands. You must decide beforehand what you want to demo, and design a set of steps to follow during the demo. Think of the reasons why you believe your product is wonderful, and try to define these reasons as a set of examples that will make the audience share your feelings.
DO: include in the demo your product’s best features
When you plan, you have to give the audience the amazing stuff. If your slides claim that your product can make men walk on water, you will have to bring an inflatable pool on stage, fill it with water, bare your feet, and take a stroll in front of everyone. That’s a bit extreme, as we are dealing with software here, and your claims are, hopefully, less daring, but you get the gist. If you claim features that could be compared to walking on water, be prepared to show the miracle.
Whatever it is that your product has promised, you must show it live. The audience won’t be satisfied by your demo of secondary marvelous features if you don’t show evidence of your primary goods. There are exceptions, of course. If your goods require 30 minutes of processing to show their full potential, you can’t show all of it live. But you may try to give a reduced demo of whatever can be achieved in the time allotted for your presentation. One thing that I often do is start the presentation with a short demo where I get the process started, inform the audience that this process will take 30 minutes, and then get on with the slide show. 30 minutes later, I resume the demo, explain what has happened in the meantime, and finally I show the magic part. This is simple, honest, and very effective.
DO: Practice
Your experience with the product is not enough to guarantee a good demo. You must make sure that:
- What you want to demo is actually feasible. If you promise something that your product can’t deliver, there is no amount of penance that can save your reputation;
- You know how to perform the tasks that you have planned;
- The tasks happen in a predictable way, so that you know that a given sequence of events will end up with the result that you want.
- There are no side effects determined by other tasks running in your computer (or computers) that will prevent a positive result.
This means that you will repeat the demo several times, until you are satisfied that nothing can surprise you, and everything goes as planned. This phase is very important for you, and also for your product. You are likely to find important bugs when getting ready for a demo. Two birds with a stone!
DO: Time it!
Your time for a demo is short. No matter how much you want to show your product live, you can’t go beyond the time allotted for the whole presentation. More realistically, your demo will last from 1/4 to 2/3 of the presentation, with 1/3 being the more common duration. Thus, you need to make sure that your demo doesn’t run out of time. Especially if your punch line is at the end of your demo, you won’t be able to show it if the attendees are rushing from your room to attend the next presentation.
Have a plan B
Despite your preparation, there are things that may happen that will keep you longer than expected at your demo, and you may find yourself short of time. Then you need to have an alternative demo plan, i.e. a shorter demo that you can show from that moment on instead of the original one. What this means is that you need to practice two plans. And maybe three. Such is life!
DO: Practice some more - Make sure your demo is visible
When you practice, you are looking at your computer and you may think that what you see is the same thing that your audience will see. Don’t make this assumption! When you are on stage, things are much different from what you see at home.
In person, in a large ballroom
When you are using a projector, or an external screen, you may have a different experience from what you had at home or at the office, with your dedicated 24in screen, where you did prepare a beautiful demo. If the projector has a maximum resolution of 1024x768 (which is quite common nowadays) or even 800x600, you must review your demo, and be ready to scale down your ambitions. What you need to do:
- find out in advance, days or weeks before the presentation, if possible, what kind of projector you will be dealing with, and try to test with the same resolution.
- When you are at the venue, test with the projector before the presentation, and make sure that your demo is visible from every seat in the room. Adjust your demo if needed.
- If there is no advance testing time allocated, grab an apple or a sandwich and do it at breakfast or lunch time. Skipping a meal is less important than risking your reputation.
Online, when giving a webinar
When you are presenting online, in addition to the resolution of the software delivering your webinar, there is also the possibility of more limitations or complex setups that will stand in the way of a successful demo. You will need to test the webinar software, possibly with two computers: one to deliver the demo, and one to check what another attendee would see. Don’t ever accept a denial along the lines of “we can’t do a dry run, but the software is a piece of cake, nothing can go wrong.” You know that everything can go wrong, so insist and make sure that you get testing time. Cancel the demo if you can’t get it.
DON’T: make mistakes
This seems an unnecessary recommendation. It goes together with Practice your demo. But we need to stress some points in the matter of mistakes. There are simple mistakes, like misspelling a command when you are typing (I do a lot of SEELCT instead of SELECT), but this kind of mistakes are not the ones that get you in trouble. They may even increase the audience awareness that they are witnessing a live event,
The mistakes you must avoid are the ones that make the demo fail; the ones that may show your lack of familiarity with the product (which won’t happen if you have been practicing). Therefore: focus on the task, and you will win.
There are, though, mistakes that you can include in your demo. If one of your product’s features is the ability to recover from mistakes, you can include such mistakes in your demo, provided that:
- You tell the audience beforehand that you are going to make a deliberate mistake, just to show how your product can save your butt. (You may also try the theatrical trick of making the error and then emphatically announce that you did that on purpose. The result really depends on how good your theatrics are.)
- You include this mistake in your demo plan, and you practice it as thoroughly as you did the rest.
DON’T: Run other applications in background during the demo
Depending on the product you are showing, there are many ways of spoiling the demo through applications that run when they should not. Let me give you a non-comprehensive list:
- A Skype balloon saying I miss you honey bunny will not improve your credibility;
- Twitter and Facebook notifications with more or less embarrassing remarks should be also avoided;
- Your computer starts a file reindex when you are showing a resource intensive task using three virtual machines, and performance drops to a crawl;
- The remote server that you are using for your demo goes down for maintenance;
- A planned backup starts in youd database server right when you need it to be responsive at its best;
- A daily test starts on your remote server, and removes your demo setup.
There are more, and more. If you can think of it, t may happen!
DON’T: Deviate from your well rehearsed script
Once you have defined a demo plan, stick to it. Make no exceptions. If you must make exceptions, you must plan for them as well. Therefore: make no exceptions. This recommendation closely resembles the next one.
DON’T: Make some brilliant improvements at the last minute
You are an expert in your field, and an expert of the product that you are presenting. You may also be one of the developers of that project. It is thus very natural and common that you think of improvements that will make your product behave much better. That’s good and commendable. But don’t make these changes on the build that you will use for the demo. NEVER. EVER.
I did it. A few times. And I regretted it. Every time.
If you make a change, then you must have time to test the whole demo from scratch, more than once, or else you must wait to apply your changes after the demo. Similarly, you may think of an improvement of the demo. If that implies deviating from the plan that you have tested, don’t do it, unless you have time to test the whole demo again with the change.
Summing up
Doing a live demo is a lot of work, and what you show on stage is only a tiny part of the work involved. But I can assure you that the thrill of having a flawless demo that amazes the audience is deeply fulfilling. I recommend it to all the public speakers.
Try it. And then you will be hooked. At my company, we all are.
-
I don’t remember where I read it, as I have read many books and articles by Guy Kawasaki, but I think it was in Reality Check. ↩
by Giuseppe Maxia (noreply@blogger.com) at 14 May 2012 11:42
Stewart Smith
Much LOL
At least here in Australia there is this drink called LOL. I saw much LOL on the shelves in the supermarket the other day. I’ve been trying to save this picture up to send to someone… but there hasn’t (yet) been the opportunity.
13 May 2012
Pia Waugh
Twitter Weekly Updates for 2012-05-13
- Aww, thx!
# - .@John_Hanna Hmmm, not really that I know of. Was international list. Most people in the industry are great, men & women alike. A few tools #
- .@williamparry don't hate, then the terrorists win
# - . @John_Hanna The argument devolves too quickly into one about free speech. I want to understand why anyone would think this way & address. #
- Wow, amazing that some ppl actually speak & think this way. A minority but a loud minority. http://t.co/nkBxqqKe #womenhaters #
- "i find out who I am when I'm climbing the mountains of mars" http://t.co/kEWY8Xze /cc @kelisha @swearyanthony #
- Check out these guys, they do "literal trailers" for movies.and games. Much lols. #ac3 For @swearyanthony http://t.co/KcT6ND2C #
- "If it bleeds we can kill it". So much lols. http://t.co/KG7vEY06 #
- Ohcrap, thx @Wittylama RT Klout http://t.co/lHJGzhPi #
- OK, I'm really at the end of my tether, anyone in the Canberra area able to loan me a fast laptop for a week or two? Just need web browsers. #
- Some #govhack media, thanks for the coverage
@jamie_kirk http://t.co/CqCOKYK6 & a kinda-shout-out from @stilgherrian http://t.co/nKnAQ85U # - HAH! Your mum must be proud
RT @FakePaulKeating: @piawaugh pfft. Lightweight. http://t.co/uaGZLifw "Facepalm central" # - MWAH hahaha! Thanks @akshatj_96 & @purserj for Klouchebag lulz. My score is 27, or 'mostly alright', hah! http://t.co/9WPFx619 #
- Wow, just joined @Klout. Fascinating! Wish it included Soundcloud
"According to @klout, my Klout score is 45." http://t.co/qtrphA1x # - An awesome song to start work to. Enjoy http://t.co/3TK8YN8s #music #
- "Where to ebooks go when you do?" Great article, tackles the major challenge of digital culture wrapped up in DRM http://t.co/fyu0i3pV #
- It's funny how we feel most safe in motion, but only when still are we able to really see what's around us. Kung Fu thought for the day. #fb #
- Dammit! RT @ACTwonkdrinks: Not enough interest for a Budget Edition of #actwonkdrinks Why kind of wonks are you lot? #fail #
- Have had to limit the size of Sydney #GovHack due to venue, so get in quick before we hit capacity! http://t.co/YS5Zwh26 28 seats left atm #
- Right, thanks all, looks like CC-BY is on individual #budget papers, but not on copyright page http://t.co/lqwgNZn0 Be good to fix that
# - What happened to the CC-BY for the Budget papers? http://t.co/9ZHNJThm That's quite unfortunate, seems a backwards step. #
- Went to write democracy and typo'd demoncracy. I think there's something in that for all of us. #
- Kudos to the Adobe http://t.co/EZzCyBnH tool. It''s a bit slow but works really nicely
# - I lie, it works in IE6 and IE9, but not well in IE8 and not at all in IE7. Wonderful. #
- Internet Explorer, the bane of web developers everywhere. How could it work in IE6, 7 & 9, but not 8. FFS. #backtodrawingboard #
- cool, done
# - Nice, now over 100 ppl registered for #govhack Hoping for 300 so go register (Sydney or Canberra). Will be awesome
http://t.co/aXgjAzLL # - . @gavintapp Shiny, but seriously, promoting a "developers" laptop and then saying "key tools and utilities (emacs, Vim, Chromium etc)"
# - Funny. I get so much spam on Google+. Facebook and Twitter are wonderful by comparison. #
- Wow, the @SensisAPI zombie app challenge is teh awesome! http://t.co/LjdrcZT8 #gov2au #
- Putting together a #GovHack team to compete 1-3 June? Check out some previous mashups/hacks on http://t.co/ab5WZIGh http://t.co/p04DDIz4 #
- Interesting RT @wtfsheep: @parisba I thought this was an awesome open data mashup: http://t.co/YWFaporR #CHI2012 #govhack #
- So, going to see Smashing Pumpkins and Tea Party in July, all I need is Tool, Kyuss, Stabbing Westward, NIN, Lamb and I'd be in heaven
# - I know, crazy hey, but I tweeted a new song of theirs earlier today which was surprisingly good. So am excited
# - WOW! I am now also going to Smashing Pumpkins with @alexmyoug, looks like July will be #relivemyyouth month!
SOOOOO EXCITED! #music # - Just received the Tea Party tickets in the post!!! Hey @alexmyoung, I can't wait! #
- Fascinating RT @OZloop: APS - The perfect storm. Cutbacks, culture and abuse http://t.co/ZKJitFQS #gov2au #opengov #innovationweek #govcamp #
- . @1159 Heh
Saw Tool in '97, still one of my favourite gigs ever. They covered Hurt too, double perfect!
# - "See my shadow changing, stretching up and over me. Soften this old armour, hoping I can clear the way". Tool is helping me work today
# - I love Linux. Some useful ffmpeg for converting and manipulating video/audio without having to open video editing suite http://t.co/uBGQ8dUn #
- Have you registered for #GovHack yet? Over $30k in prize funding for awesome apps, mashups & datavis, so come get some! http://t.co/aXgjAzLL #
- Wow. New Smashing Pumpkins, and surprisingly awesome. http://t.co/gHWBu29J #music #
Twitter Weekly Updates for 2012-05-13
- Aww, thx!
# - .@John_Hanna Hmmm, not really that I know of. Was international list. Most people in the industry are great, men & women alike. A few tools #
- .@williamparry don't hate, then the terrorists win
# - . @John_Hanna The argument devolves too quickly into one about free speech. I want to understand why anyone would think this way & address. #
- Wow, amazing that some ppl actually speak & think this way. A minority but a loud minority. http://t.co/nkBxqqKe #womenhaters #
- "i find out who I am when I'm climbing the mountains of mars" http://t.co/kEWY8Xze /cc @kelisha @swearyanthony #
- Check out these guys, they do "literal trailers" for movies.and games. Much lols. #ac3 For @swearyanthony http://t.co/KcT6ND2C #
- "If it bleeds we can kill it". So much lols. http://t.co/KG7vEY06 #
- Ohcrap, thx @Wittylama RT Klout http://t.co/lHJGzhPi #
- OK, I'm really at the end of my tether, anyone in the Canberra area able to loan me a fast laptop for a week or two? Just need web browsers. #
- Some #govhack media, thanks for the coverage
@jamie_kirk http://t.co/CqCOKYK6 & a kinda-shout-out from @stilgherrian http://t.co/nKnAQ85U # - HAH! Your mum must be proud
RT @FakePaulKeating: @piawaugh pfft. Lightweight. http://t.co/uaGZLifw "Facepalm central" # - MWAH hahaha! Thanks @akshatj_96 & @purserj for Klouchebag lulz. My score is 27, or 'mostly alright', hah! http://t.co/9WPFx619 #
- Wow, just joined @Klout. Fascinating! Wish it included Soundcloud
"According to @klout, my Klout score is 45." http://t.co/qtrphA1x # - An awesome song to start work to. Enjoy http://t.co/3TK8YN8s #music #
- "Where to ebooks go when you do?" Great article, tackles the major challenge of digital culture wrapped up in DRM http://t.co/fyu0i3pV #
- It's funny how we feel most safe in motion, but only when still are we able to really see what's around us. Kung Fu thought for the day. #fb #
- Dammit! RT @ACTwonkdrinks: Not enough interest for a Budget Edition of #actwonkdrinks Why kind of wonks are you lot? #fail #
- Have had to limit the size of Sydney #GovHack due to venue, so get in quick before we hit capacity! http://t.co/YS5Zwh26 28 seats left atm #
- Right, thanks all, looks like CC-BY is on individual #budget papers, but not on copyright page http://t.co/lqwgNZn0 Be good to fix that
# - What happened to the CC-BY for the Budget papers? http://t.co/9ZHNJThm That's quite unfortunate, seems a backwards step. #
- Went to write democracy and typo'd demoncracy. I think there's something in that for all of us. #
- Kudos to the Adobe http://t.co/EZzCyBnH tool. It''s a bit slow but works really nicely
# - I lie, it works in IE6 and IE9, but not well in IE8 and not at all in IE7. Wonderful. #
- Internet Explorer, the bane of web developers everywhere. How could it work in IE6, 7 & 9, but not 8. FFS. #backtodrawingboard #
- cool, done
# - Nice, now over 100 ppl registered for #govhack Hoping for 300 so go register (Sydney or Canberra). Will be awesome
http://t.co/aXgjAzLL # - . @gavintapp Shiny, but seriously, promoting a "developers" laptop and then saying "key tools and utilities (emacs, Vim, Chromium etc)"
# - Funny. I get so much spam on Google+. Facebook and Twitter are wonderful by comparison. #
- Wow, the @SensisAPI zombie app challenge is teh awesome! http://t.co/LjdrcZT8 #gov2au #
- Putting together a #GovHack team to compete 1-3 June? Check out some previous mashups/hacks on http://t.co/ab5WZIGh http://t.co/p04DDIz4 #
- Interesting RT @wtfsheep: @parisba I thought this was an awesome open data mashup: http://t.co/YWFaporR #CHI2012 #govhack #
- So, going to see Smashing Pumpkins and Tea Party in July, all I need is Tool, Kyuss, Stabbing Westward, NIN, Lamb and I'd be in heaven
# - I know, crazy hey, but I tweeted a new song of theirs earlier today which was surprisingly good. So am excited
# - WOW! I am now also going to Smashing Pumpkins with @alexmyoug, looks like July will be #relivemyyouth month!
SOOOOO EXCITED! #music # - Just received the Tea Party tickets in the post!!! Hey @alexmyoung, I can't wait! #
- Fascinating RT @OZloop: APS - The perfect storm. Cutbacks, culture and abuse http://t.co/ZKJitFQS #gov2au #opengov #innovationweek #govcamp #
- . @1159 Heh
Saw Tool in '97, still one of my favourite gigs ever. They covered Hurt too, double perfect!
# - "See my shadow changing, stretching up and over me. Soften this old armour, hoping I can clear the way". Tool is helping me work today
# - I love Linux. Some useful ffmpeg for converting and manipulating video/audio without having to open video editing suite http://t.co/uBGQ8dUn #
- Have you registered for #GovHack yet? Over $30k in prize funding for awesome apps, mashups & datavis, so come get some! http://t.co/aXgjAzLL #
- Wow. New Smashing Pumpkins, and surprisingly awesome. http://t.co/gHWBu29J #music #
12 May 2012
Selena Deckelmann
What I mean when I say I would like more women in the software industry
10 May 2012
Stewart Smith
Brew Dog Punk IPA
This is a delicious beer. The text on the side of the bottle is rather worth reading too. Basically, it has flavour. It’s not a “we’re going to hop your brains out” IPA, rather a “we’re making an IPA with flavour that’s very yummy”.
06 May 2012
Pia Waugh
Twitter Weekly Updates for 2012-05-06
- Have had lots of great feedback to my new remix, Purgatory. Check it out at http://t.co/iZZCcBxj
#music # - Yes, wishing I had my bike
RT @mpesce: Stunning Sydney sunshine. Almost makes you want to weep with joy. # - Photobooth snaps from Zoz & Faraj's wedding
With Sue & Sousan then Rabia. Congrats Zoz! #fb http://t.co/o2tcKCbs http://t.co/pxtvfrXg # - . @jaraparilla Troll is trollish
#govhack # - . @purserj Yeah, I understand that, but this comp will also fund some projects to go to completion
Details to come soon. It's pretty cool # - Hey @nerdgerl could you please spread the word about #govhack to the Girl Geek lists?
http://t.co/p04DDIz4 $30k in prizes up for grabs
# - . @jaraparilla Wow, with such well thought out ideas, I can imagine we'll see great things out of you on the weekend
#govhack # - . @stilgherrian PS - it is getting gov to collaborate with citizens. A first step, not the end point. So you coming crankypants
#govhack # - Zaap indeed
Coming? /cc @rachmatview @SensisAPI @link_digital # - . @mindsocket Yes! Do it!
Would be a great contribution and data vis competitor
/cc @eevblog @Heryerdeonline #govhack #3dprinting # - I hear you @stilgherrian, but so long as there is good thoughtful policy behind the open data sets, that shouldn't be a problem #govhack #
- . @blakkat some info on data sets on data page at http://t.co/GsshWqRK with more being announced in coming weeks
/cc @stevathon # - Listening to a talk by Radian6 put on by Salesforce about their tools for monitoring online chatter. Very interesting. #gov2au #
- Motorbike peeps, who's up for a run to Tidbindilla next weekend? 0900 Sat 13th for a nice ride out, coffee and return. Weather permitting
# - RT to #gov2au Details for #GovHack June 1-3 http://t.co/p04DDIz4 >$30k in prizes. #GovCamp June 5 http://t.co/RZZ6mZPH great speakers!
# - Check out details for #GovHack June 1-3 http://t.co/p04DDIz4 over $30k in prizes & #GovCamp June 5 http://t.co/RZZ6mZPH great speakers!
# - Gar, felt a bit better yesterday and much worse today. Will take a few hours to sleep and then try to get back into work. #cold #
- Latest song, really like this one
Am playing around with some vocal effects, would love feedback. Music by @mideion http://t.co/4TSLFZ5O # - Sigh, #GoT has *so* much tasty eye candy. Jon Snow, Jaqen, Gendry, Jorah. And in the past Eddard, Drogo. Now to find one IRL
# - Aww <blush> it's a team effort
MT @RewiredStateAU Very special thanks to @piawaugh, often the person at the end of the phone for #GovHack # - I <3 @anchorsystems, they are teh awesome! Best customer support EVA! #
- Interesting RT @AusGOAL: Open government platforms with usability problems - FierceGovernmentIT: http://t.co/bd75PGB3 #
- Kinda puts everything in perspective. http://t.co/Xum5Cc4H #
- Awesome, thx
@edhusicMP: Over 11,000 ppl have voted in poll about #FairIT4Oz - had your say? Scroll to end of story: http://t.co/OJpwZGjd # - Awesome RT @Rog42: #BlackDogRide you can see my write up of NSW ride here http://t.co/Q5Cc7sE7 in short Cold, then wet, then windy
# - Am playing with Dept Innovation's "Innovation diagnostic tool" http://t.co/T0LIH92R Is interesting
Useful in lead up to #innovationweek # - "i love my new ipad but, will it blend?" http://t.co/z0O78D9i for @JeromeGotangco to choose a new blender
#
04 May 2012
Stewart Smith
Orbital
Saturday night, went to see Orbital. Awesome. A two hour set of a whole bunch of fun and a crowd that was really into it. Luckily there was a mirror nearby to capture the stage and the crowd.
Emmanuele Bassi
Culling of the Fold
I’ve received a bunch of questions about the state of the perl-Clutter bindings in the past couple of years; I entertained a vain hope of returning to actively maintaining them, but the effort of actually maintaining the underlying C library left little to no time for bindings (just ask the pyclutter users).
luckily, the stellar work done by Torsten Schönfeld on Glib::Object::Introspection allowed me to jump start an introspection-based binding module for Clutter in about half an hour – including the time spent porting one of the examples in the C API reference to Perl.
perl-Clutter is in git.gnome.org, and it works pretty much like perl-Gtk3 — same Dist::Zilla based setup, same dependencies.
contributions are very much welcome — though I’ll try to reserve some spare time for going back to the same levels of compatibility as the old, static bindings. one area for new contributors is pure-Perl overrides to paper over the C API; another is writing Cogl bindings, possibly static ones like perl-Cairo, as the Cogl API is not very introspection-friendly.
Stewart Smith
Hargraves Hill Extra Special Bitter
I think this has to be one of my favourites. I don’t get to have it often, but it has such a wonderful flavour: strong, not overwhelming and a wonderful example of what an Extra Special Bitter should be. I know you can get it on tap at Mrs Parmas in Melbourne, although I swear I’ve found it at other places too – and anyone who doesn’t mind an ESB should certainly give this one a try.
Kiuchi Brewery’s Espresso Stout
My first beer from Japan! This pours nice and thick. This Espresso Stout is black like my heart and is thick like the phrase “Guinness is a meal” would lead you to believe (rather than the sad reality that is Guinness these days).
While I can’t really detect the espresso in the smell of this one (although once it warmed up a bit I could), I can in the taste. Halfway through a mouthful you’re certainly going “mmm… espresso-y”.
This was quite enjoyable. I’m not sure if I could drink more than one (I probably couldn’t), and it doesn’t match the whatever it was I had through a coffee bean filled Randy at Mountain Goat a while ago, but it’s certainly nice.
Yes folks, there can be good beer come out of Japan.
03 May 2012
Scott James Remnant
iOS App Design Notes
Since iOS apps are now worth a billion dollars, here’s a few design notes worth bearing in mind when writing your new app:
- Users love receiving push notifications, and love it when you take them to the appropriate page in your app, but they hate it if they see the notification there. Make sure that the page you show contains stale information and does not automatically update to show the notification they just tapped on.
- Increase the number of times users open your app by keeping them in a continual state of confusion as to whether they have any unread notifications. At no time should the notifications shown in the iOS Notification tray, the number of notifications shown in the app icon badge, the number of notifications in your app’s own button badge for notifications, or indeed the list of notifications in your app match.
- For additional bonus confusion, none of the above should match the set or number of notifications the user would see if they opened the notification list on a computer.
- Users love pulling down to refresh. Even if your app is only ever used in a “read new things” kind of mode, always force the user to pull down to refresh, never update for them.
- Your app is only ever going to be used online, on a super-fast internet connection. Never cache data between invocations. Always clear the screen when loading the new data, users love seeing a spinner and a “Loading” message when on a slow connection.
- If you build your app around WebView you may be forced to accept that there will be some caching, fight against it and avoid a consistent experience at all costs by never saving this cache between invocations. Since it’s almost random whether your app will remain in memory between uses, this means it will be almost random whether your user sees stale cached data (which you don’t auto-refresh, obviously) or a white loading screen while you pull all new data.
- Tap targets should be as small as possible, testing in the Simulator with your mouse proves that Apple’s 44px guideline is way too large!
- The app should regularly reflow its content so that tap targets move under the user’s finger between the time they start their finger moving and the time it reaches the screen.
- Using a WebView for your app is great, the lack of JIT and other performance improvements means you don’t need too many servers to serve content to your app. Users love it when shared photos show up as black boxes because the servers are too busy.
- Using a WebView also means you can continually adjust the layout of your page. For the ultimate rapid deployment, never cache resources such as CSS or images client-side. Users love that retro look and feel when your page renders without them on a slow connection.
- Your app probably has to let users post content too. Users are always on fast, reliable data networks. Don’t worry about handling error cases, timeouts, etc. it’s ok to just throw an error, and ideally throw away their post too. Never double-check whether the post succeeded, for that to happen and the response being lost is impossible.
- Whenever Apple release a new API feature, make sure you update your code to take advantage of it. Apple’s documentation can be kinda waffly though, don’t bother reading all of it, you never need to handle the edge cases like someone taking a phone call on their phone (who does that?) or receiving a notification while you’re dragging your neat side bar out. Users love it when that side bar sticks half way, it’s hilarious.
For a perfect score on all of the above tips, I highly recommend taking a look at Facebook’s iPhone app.
Sage Weil
Announcing the Ceph.com Refresh
Hello, everyone! I’m the new community guy for Ceph, and it’s my honor to announce the refresh of our website.
Today is a big day for all of us because Inktank has just launched. Inktank’s mission is to provide professional services and support for users of Ceph, but it goes a lot deeper; Inktank is dedicated to the success of the Ceph project and will ensure that it has the resources it needs to succeed.
I came to work at Inktank because we all believe in Ceph, we believe in the community process, and we have no interest in being a traditional software company hiding behind an open source marketing strategy. Ceph belongs to us all, and Inktank will earn its success through the quality of the service it provides.
The new Ceph.com site is a bit more modern, a lot more dynamic, and (hopefully) a bit easier to navigate.
It’s not perfect, but it gives us tons of room to grow. Very soon (within days), we’ll be releasing a major documentation rewrite to help new users get up to speed with Ceph. We’ve been looking into more advanced community metrics, project testing stats, and tighter integration between tools.
We’re just getting started! We’d love to hear from you. If you have any thoughts on the new site, let us know in the comments below.
Best,
Ross
Stewart Smith
Barons Black Wattle
In which I attempt to make beer photos more interesting by hipster-izing them as much as humanly possible without using Instagram.
This is Barons Black Wattle Original Ale. As far as anyone can work out, there isn’t much of this left. The Barons Brewing website is no more and it seems the company went away after not sticking to their core business – which was brewing beer.
It’s got Wattle in the name as the beer has roasted wattle seeds. The Wattle is an Australian native, that is – to me, this beer is distinctly Australian. It’s not a flavour you’d come up with elsewhere. While it is not my most favourite beer of all time, being something that you simply couldn’t really come up with anywhere else, I hold it in a special place.
Oh, and yes it is true that I’m attempting to bribe people at work (Percona) with offers of me sending them a bottle.
When we heard that the brewery was no more, we stockpiled. If you find any in a store, grab it – you probably won’t get another chance to try this brew.
It’s 5.8%, with a rich amber colour and a good rounding of malt flavours – you can certainly taste the Wattle and that’s what makes it distinctive. I’ve never found this a session beer, but I do enjoy a few of them.
02 May 2012
Stewart Smith
Harviestoun Old Engine Oil Porter
This beer heralds from a craft brewery in Scotland. At 6% and with good strong flavours, it’s strong all around. A good solid porter with (again, as the bottle says) notes of chocolate and coffee (both in smell and taste) and a bittersweet aftertaste that is just perfect on a cold evening like this.
01 May 2012
Stewart Smith
Murray’s Punch and Judy’s Ale
On the back it describes itself as a “New World Bitter” and the word bitter is certainly true – it’s not a floral hoppy flavour but rather a bitter that tastes like a bitter should. I could drink a few of these, although more than that could get overwhelming. Bottle conditioned, only 3.9% and quite pleasant.
30 April 2012
Sage Weil
v0.46 released
Another sprint, and v0.46 is ready. Big items in this release include:
- rbd: new caching mode (see below)
- rbd: trim/discard support
- cluster naming
- osd: new default locations (slimmer .conf files, see below)
- osd: various journal replay fixes for non-btrfs file systems
- log: async and multi-level logging (see below)
The biggest new item here is the new RBD (librbd) cache mode that Josh has been working on. This reuses a caching module that ceph-fuse and libcephfs have used for ages, so the cache portion of the code is well-tested, but the integration with librbd is new, and there are some (rare) failure cases that are not yet handled in this version. We recommend it for performance and failure testing at this stage, but not for production use just yet–wait for v0.47. librbd also got trim/discard support. Patches for wire it up to qemu are still working their way upstream (and won’t work for virtio until virtio gets discard support).
We’ve revamped some of the default locations for data directories and log files and incoporated a cluster name configurable. By default, the cluster name is ‘ceph’, and the config file is /etc/ceph/$cluster.conf (so ceph.conf is still the default). The $cluster substitution variable is used the other default locations, allowing the same host to contain daemons participating in different clusters. All data defaults to /var/lib/ceph/$type/$cluster-$id (e.g., /var/lib/ceph/osd/ceph-123 for osd_data), and logs go to /var/log/ceph/$cluster.$type.$id. You can, of course, still override these with your own locations as before.
There is also new logging code that allows the daemons to gather debug information at a different (higher) log level than what is actually written to the log (asynchronously). In the event of a crash (seg fault, failed assertion), the full log is dumped to the log for our reading pleasure. The general syntax looks like:
debug foo = 1/10
where ‘foo’ is the subsystem name (e.g., “osd”, “filestore”, etc.), the first number is the debug level that is written to the log, and the second number is the level that is gathered in memory (we keep many thousands of past entries around by default). The hope is that people can gather debug information in memory with a lower performance impact and avoid eating their disk space. We’ll need some more operational experience to find out how expensive that will really be.
You can get v0.46 from the usual locations:
- Git at git://github.com/ceph/ceph.git
- Tarball at http://ceph.newdream.net/download/ceph-0.46.tar.gz
- For Debian/Ubuntu packages, see http://ceph.newdream.net/docs/master/ops/install/mkcephfs/#installing-the-packages
Stewart Smith
Waiting…
If you’ve ever had the misfortune of breaking something that is part of yourself, you’ve probably spent a bunch of times in waiting rooms. Even though the waiting is annoying, when something isn’t going to immediately kill you, you can’t really get too frustrated at having to wait. Well, at least that’s my theory.
I’ve learned the lesson of bringing a tablet or laptop along for the up to an hour wait after the scheduled start of an appointment, although actually waiting in the consult room itself is a new one.
The exposed USB Ports to a computer that can access my medical records does raise a concern. I feel it sad that I now just assume that anybody who does want to read them could. I’ve started to think of possible ways to get anonymous health care. The doctor-patient confidentiality is something that is indispensable to a good health care system.
But here I am, waiting. Nothing interesting to note in this room with no windows (except that window into my medical records)
29 April 2012
Stewart Smith
More photos
I’ve decided to try and take more photos and publish more of them. This means I have to look around for opportunities, including capturing some daily life.
This morning I’m off for hopefully my last appointment at the Alfred after a bike accident about six or seven weeks ago (injury photos posted previously). So, it means taking the train as driving with a brace on my arm doesn’t excite me.
The train is late, the 9:08 in the other direction is even later (twenty minutes). I just missed the previous one, so there I am looking at the mind the gap paint.

Innis & Gunn Original
This was a really nice beer. Sweet with toffee and vanilla (a the bottle says) and you could even smell the oak
. This one was recommended by PatG, and I finally found it at Acland Cellars.

I have their rum cask one and a special Canada Day brew in the fridge.
Pia Waugh
Twitter Weekly Updates for 2012-04-29
- Turns out the Tea Party have a bunch of txt for pre-sale, so I'm in ! Am going with teh awesome @alexmyoung
http://t.co/NRp9JbIE YAY! # - Gar, no @blackdogride for me, had to pull out due to stupid circumstances. Was *really* looking fwd to it! Will make up for it next weekend! #
- YES! Will be logging on tomorrow to snag txts to Tea Party, who's with me?!? (Sydney Show) http://t.co/29Faqag9 #
- Getting ready for @blackdogride Canberra! Very excited
It's a beautiful day for some motorbike riding! #needcaffeine # - Just to ruin your afternoon productivity http://t.co/oxqi3ZYP "Dance magic dance!" #
- Reading Lawrence Review of Australian #geospatial capability & gov response. Interesting stuff! Vital for #gov2au http://t.co/v0WNJLF3 #
- Was there anything to it? RT @GeordieGuy: Meeting derailed while security guy goes on a five minute incomprehensible rant. ????? #
- Walking past a closing restaurant which has the Labyrinth soundtrack on. So awesome. #
- Hilarious. "President of the United Sates (sic) Barack Obama & Campbell High Students". No one else? OurCity mag
http://t.co/uTK7hkr2 # - Have officially shifted from NSW @blackdogride to ACT. Sorry to NSW friends, but excited about ACT ride!
http://t.co/dn2XpFo1 # - .@cgiffard maybe… next weekend, not this one? Who else would be up for a movie night to watch The Raid?
# - Tasking some time out from an intense day! Some Shank 2 to chill
Such a fun but simple game! # - Have been flat out all day today, between contract work and #govhack #govcamp preparation. Both launching Monday!
#gov2au Very excited! # - Thanks all, mystery solved
@timClicks: @nzfi @piawaugh feijoa, yum! see http://t.co/Rk0siHD1 # - It kills me to say but I may have to switch to ACT @blackdogride. Too many deadlines pressing in
@hollingsworth @moldor @MrsMoldor @Rog42 # - Does anyone know what this is? Fruit (?) tree where I live http://t.co/Xiz9W0qT #
- Really looking toward to @blackdogride this weekend, just me, the open road, and a few hundred other bikes
#shortholidayforagoodcause # - I know lots of you will know this, but handy way to get RSS from Twitter http://t.co/ZseB9Scw Just switch my username with yours
# - Hey guys, sry I've been flat out. @moldor could you dm me phone number to coord meet spots. I've a long way to come beforehand
/cc @Rog42 # - YES! RT
@kelisha: @piawaugh damn, now I'm going to have to watch it!! LOL # - Yes! RT @peenydeeny: @piawaugh the start of Wayne's World , with Bohemian Rhapsody is one of the best happytime moments in cinema
# - Totally!
RT @timl: There is so much awesome & references I'd not noticed before! Like this part, 2nd Mission Impossible reference so far! # - MWAH HAHAHA! Watching Wayne's World for the first time in years, had totally forgotten the Terminator cameo. "Have you seen this boy?" LOL! #
Twitter Weekly Updates for 2012-04-29
- Turns out the Tea Party have a bunch of txt for pre-sale, so I'm in ! Am going with teh awesome @alexmyoung
http://t.co/NRp9JbIE YAY! # - Gar, no @blackdogride for me, had to pull out due to stupid circumstances. Was *really* looking fwd to it! Will make up for it next weekend! #
- YES! Will be logging on tomorrow to snag txts to Tea Party, who's with me?!? (Sydney Show) http://t.co/29Faqag9 #
- Getting ready for @blackdogride Canberra! Very excited
It's a beautiful day for some motorbike riding! #needcaffeine # - Just to ruin your afternoon productivity http://t.co/oxqi3ZYP "Dance magic dance!" #
- Reading Lawrence Review of Australian #geospatial capability & gov response. Interesting stuff! Vital for #gov2au http://t.co/v0WNJLF3 #
- Was there anything to it? RT @GeordieGuy: Meeting derailed while security guy goes on a five minute incomprehensible rant. ????? #
- Walking past a closing restaurant which has the Labyrinth soundtrack on. So awesome. #
- Hilarious. "President of the United Sates (sic) Barack Obama & Campbell High Students". No one else? OurCity mag
http://t.co/uTK7hkr2 # - Have officially shifted from NSW @blackdogride to ACT. Sorry to NSW friends, but excited about ACT ride!
http://t.co/dn2XpFo1 # - .@cgiffard maybe… next weekend, not this one? Who else would be up for a movie night to watch The Raid?
# - Tasking some time out from an intense day! Some Shank 2 to chill
Such a fun but simple game! # - Have been flat out all day today, between contract work and #govhack #govcamp preparation. Both launching Monday!
#gov2au Very excited! # - Thanks all, mystery solved
@timClicks: @nzfi @piawaugh feijoa, yum! see http://t.co/Rk0siHD1 # - It kills me to say but I may have to switch to ACT @blackdogride. Too many deadlines pressing in
@hollingsworth @moldor @MrsMoldor @Rog42 # - Does anyone know what this is? Fruit (?) tree where I live http://t.co/Xiz9W0qT #
- Really looking toward to @blackdogride this weekend, just me, the open road, and a few hundred other bikes
#shortholidayforagoodcause # - I know lots of you will know this, but handy way to get RSS from Twitter http://t.co/ZseB9Scw Just switch my username with yours
# - Hey guys, sry I've been flat out. @moldor could you dm me phone number to coord meet spots. I've a long way to come beforehand
/cc @Rog42 # - YES! RT
@kelisha: @piawaugh damn, now I'm going to have to watch it!! LOL # - Yes! RT @peenydeeny: @piawaugh the start of Wayne's World , with Bohemian Rhapsody is one of the best happytime moments in cinema
# - Totally!
RT @timl: There is so much awesome & references I'd not noticed before! Like this part, 2nd Mission Impossible reference so far! # - MWAH HAHAHA! Watching Wayne's World for the first time in years, had totally forgotten the Terminator cameo. "Have you seen this boy?" LOL! #
27 April 2012
Julien Goodwin
Raspberry Pi debian notes


Here's a bunch of useful things that you probably want to do with the default Debian installation to make it more usable.
First, please don't give the foundation guys flack for any of these issues, a decent distro is hard, and I've paid hundreds of times more then this and gotten a horrific hack-job of (usually) debian (often with a kernel already years out of date, istead of one from this year). This really isn't too bad for a first go.
Security
If you're using the pi on a network, or in a public place there are a few things to consider, it's actually pretty good compared to most embedded images I've seen.
Regenerate SSH keys
The pi already has SSH keys on the image, this is a security issue as it makes you a very easy target for MITM attacks.
As root run:
rm /etc/ssh/ssh_host_*key dpkg-reconfigure openssh-server
Note this enables SSH server on boot, so disable it if you want, see the note below about NFS, just use "ssh" as the service. If you've used SSH before this you'll need to delete your existing entry on your client before SSH will let you connect due to the new keys.
Consider disabling NFS client (the sole open services by default)
Other then the ports being open this has no security implication, but it does save a lot of boot time.
update-rc.d portmap disable update-rc.d nfs-common disable
Delete the pi user
Or at least change its password. If you create another admin user consider removing pi from sudoers.
Minor bits
"root" has an invalid password (same as Mac OS, Ubuntu, etc.). The users "tli" and "pnd" exist in /etc/shadow with passwords (but not /etc/passwd). The user "suse" also has full root by sudo, but doesn't exist.
Keyboard layout
Most of us don't use UK keyboards, you can switch to your local layout by running "dpkg-reconfigure keyboard-configuration". you may want at least a qwerty (if not UK English) layout keyboard for this step, will be hard without one.
Time zone
I think the concept of a "British Summer" is an oxymoron so I want to change the timezone to something more relevant to me.
You can do that by running "dpkg-reconfigure tzset" (again, sudo for root if needed)
Console Blanking
If you're using a pi as a server you might want to disable console blanking so if you connect a monitor you don't need to hit a key to wake it up (which you might not be able to do if you've somehow crashed it).
To do this edit /etc/kbd/config and change BLANK_TIME to 0>.
Debian Mirror
You may wish to change to a local debian mirror by editing /etc/apt/sources.list and changing "uk" to the appropriate two letter code (debian mirror list), then as with all apt based systems, "apt-get update" to find new packages, apt-get dist-upgrade to upgrade to them (you should be careful what you install unless you've expanded the filesystem as there's not much free space).
I'd actually suggest the following as a good base debian apt set, these include security updates:
# Main, the core of debian deb http://ftp.us.debian.org/debian/ squeeze main contrib non-free #deb-src http://ftp.us.debian.org/debian/ squeeze main contrib non-free # Security updates deb http://security.debian.org/ squeeze/updates main contrib non-free #deb-src http://security.debian.org/ squeeze/updates main contrib non-free # Other important updates before point releases deb http://ftp.us.debian.org/debian/ squeeze-updates main contrib non-free #deb-src http://ftp.us.debian.org/debian/ squeeze-updates main contrib non-free
The commented out lines are for source packages, unless you plan to do debian package development on the board itself they're not worth it
Swap
You can (but probably shouldn't unless you like killing SD cards) enable swap by uncommenting the swap line in /etc/fstab and rebooting or running "swapon -a"
Expanding the filesystem to use all (or just more) of your SD card
*WARNING* This is only applicable to the 19/April/2012 Debian build, it's very easy to destroy data by doing this wrong.
I installed on an 8GB card (as it was all I had lying about) and wanted to use all the space available. If you're going to expand the filesystem I'd suggest doing it straight away so you won't feel bad if you stuff up and destroy the OS on the card.
All of this procedure needs to be run as root.
First, change the partition size:
fdisk /dev/mmcblk0
Inside fdisk use these commands:
- Type "p" and press enter, note the "Start" number of p2 (in this image, 1233)
- Delete the swap partition with "d" then "3"
- Delete the root partition with "d" then "2" Recreate the root partition with "n" then "2", then start cylinder (1233 for mine), then either press enter for all the card, or follow the instructions for otherwise (using anything less then the old End cylinder of p2 will break your system)</li>
- Verify things look ok by printing the table again ("p")
- If they're all good use "w" to finish.
Now reboot
Once the system is back to finish expansion run:
resize2fs /dev/root
(This took several minutes on my 8GB card)
You can verify the result with "df -h"
25 April 2012
Robert O'Callahan
Korea
A former colleague of mine from IBM is now a senior executive at Samsung and offered to have them sponsor me in a visit to Korea, to talk about mobile Web browsers and Tizen. I thought it would be interesting, and it was.
The main part of my time there was Monday, when I spent nearly all day giving presentations of my thoughts on various aspects of Mozilla's mission and work:
- Mozilla's mission in the mobile Web era --- mostly the same as my talk in Sydney last year.
- Architectural overviews of various Mozilla products.
- Overview of our layer compositor framework.
- A discussion of 2D drawing APIs, and why we're doing Azure.
- Parallelism in Web browsers: what we're doing and what else could be done.
- A retrospective on XUL and browser extensions, and my thoughts on the future.
- Mozilla's work on open Web apps and app stores.
- Security models for open Web apps.
- BrowserID (borrowed from Francois Marier).
- Rust, Servo, the need for a new browser engine and the extreme risks of building one.
Samsung's campus in Suwon is quite fabulous and their people were very good to me.
However, the most interesting part of my trip was Tuesday. I got up before 6am and made my way to Seoul to pick up a tour of the North Korean border area. This tour stopped at Imjingak park first, then Infiltration Tunnel #3. This is a tunnel North Korea dug under the border, later revealed by a defector --- one of four found so far, but up to twenty are speculated to exist. It's made for short, non-claustrophobic people. Walking 500m hunched over is no fun, but the place is amazing.
After the tunnel we visited Dorasan Station, just outside the DMZ. It's a very impressive and almost entirely symbolic train station --- there's nothing around it, it symbolizes the desire to keep the train line running north into a unified Korea. A passionate desire for unification among many South Koreans was evident. Our tour guides spoke forcefully about Korea's troubled history in the 20th century and their desire to see a unified and independent Korea reemerge. (Our first guide was quite frank about the atrocities of the Japanese colonial period, which was a bit awkward since there were a lot of Japanese tourists on our bus.)
They had a North Korean refugee with the tour to talk first-hand about the horrors of life in the North. I've read some of the stories of refugees and defectors, and those stories make me sad and angry, but actually meeting a refugee was mostly humbling. This was a middle-aged woman who'd escaped across a frozen river on the Chinese border in the middle of winter, and then for two years worked her way to South Korea through China, Laos, Vietnam and Cambodia, on the run from the authorities the whole time --- just a few years ago.
The best part of the tour was the Joint Security Area. That's the village right on the border where soldiers of both sides are stationed and where officials meet. There have been all kinds of crazy incidents there (check Wikipedia), and I find it incredible that they allow lots of tourists to visit it. You can stand close to the border and take pictures of the soldiers and buildings on the other side (but not the south side!). You can go right into the building where officials meet, where the border runs right through the table in the middle of the room, and even walk around the table to the North Korean side. (The North Koreans and South Koreans have a sort of protocol for taking exclusive access to the building for their tour groups.) While we were in there, there was a group of North Korean soldiers right outside the building windows, inexplicably taking photos of each other posing in front of the border. Towards the end some of them took photos of our group through the window, no more than an arm's length away.
There are all kinds of interesting facts associated with the DMZ and JSA, too many to go into here. I'll mention that the South Korean guards stationed at the JSA border are the best of the best --- must have a black belt in taekwondo or judo, university education, speak a foreign language, sufficiently handsome, sufficiently tall, parents not divorced, etc. While tour groups are present, they stand completely motionless and silent in carefully designed poses. Wearing dark sunglasses, in immaculate uniforms, they all look identical. Some people had their photos taken standing next to the guards in the meeting room (but not too close, we were repeatedly warned). It's surreal.
In fact the whole scene is surreal. I find it a little disturbing that the elite soldiers of perhaps the world's most repressive regime, and the contested border they guard, have been turned into a tourist attraction. I suppose we should hope it stays that way. At various points I prayed that before too long the border will be a relic, as is the Berlin Wall.
I got back to Seoul around a quarter past five, and learned something else about South Koreans: they work hard. Samsung had sent a car to take me back to their Suwon campus for a few more hours of meetings. It didn't bother me, since I wasn't going home to my family that night anyway, but a fair number of people were still working by 9pm, and I was told that most of them had arrived early that day. Impressive work ethic, and I suppose it's a partial explanation for South Korea's remarkable rise, but I think a bit unbalanced for healthy family life.
I really enjoyed my short visit. I found the country fascinating, and the people were very friendly and polite. I was surprised by the amount of English signage; even a little snack shop in Seoul had English I could point to to order. All the food was excellent --- now I finally have some idea of what real Korean food is like :-). I have to say though, that living there would not be attractive to me; the landscape is too relentlessly urban, and I cherish my New Zealand lifestyle.





24 April 2012
Scott James Remnant
Book Review: The Years of Rice and Salt
Enough people have recommended that I read Kim Stanley Robinson’s The Years of Rice and Salt that it’s surprising that it’s taken me as long as it has to finally get around to it.
This was my first of his books, I hadn’t read the Mars Trilogy, so as with any new author I wasn’t sure what to expect from it; especially since I’d been warned that in style it was fairly different from his other work, and that it also had slow parts that would take a bit of getting through.
All the reviews and recommendations were glowing though, praising the re-invention of a world without the influence of Christian Europe and the epic scope of the story across the ages.
Unfortunately mine isn’t. I can’t recall a novel that I’ve struggled through as much as this one. I kept at it hoping for a grand denouement that would explain the praise lavished on it, but that never happened. As ridiculous as it sounds, the book’s grand ending was a chapter explaining the style the book was written in, and the grand reveal was a cute schtick it had used throughout and that anyone with half a brain would have figured out within the first hundred pages.
Yes, the world building was clever and thorough; but I read a lot, especially Science-Fiction and Fantasy, and good world building is de rigour in the best works of those genres. A novel needs some other story or message beyond the world itself.
And if Kim Stanley Robinson had a point or message with this book, it was entirely lost on me. A novel set in a world without Western culture would provide ample opportunity to take a critical look at that culture, and say something about ourselves, but instead it ignores it and focuses itself on Islamic and Chinese culture and finds many faults therein.
A novel in which reincarnation plays such a significant part would provide ample opportunity to consider mortality, or the eternal struggle to better ourselves, but the book doesn’t go there either and instead if anything suggests futility as the central characters manage to be responsible for every significant scientific breakthrough throughout history without ever changing in themselves.
Maybe the central message was just supposed to be that all people and cultures are ultimately the same, that we all make the same mistakes and share the same victories, but even then it tries hard to avoid saying any such thing.
Honestly, as far as I could tell, the only significant point the author wanted to make was that San Francisco should have been built on the North side of the Golden Gate and not the South. He makes that point a lot!
★ ☆ ☆ ☆ ☆
Lev Lafayette
Automatically Tuned Linear Algebra (ATLAS) Installation
Automatically Tuned Linear Algebra provides C and Fortran77 interfaces to a BLAS implementation, as well as a few routines from LAPACK.
22 April 2012
Bob Brown
Dunedin area code to location list
When you know an area well you get to know the area code for local suburbs – e.g. Mosgiel people know that all other Mosgiel people (and some close neighbours) are “489″. I figured it shouldn’t be too hard to collect that data from online services and then do some analysis on it. Armed with PHP and jQuery (which I must commend for being super accommodating through this process) I present you with the results.
-------------------------------------------------------------------------- DUNEDIN PHONE NUMBER TO AREA LIST -------------------------------------------------------------------------- This list is based on a subset of 2,795 phone numbers Generated Mon, 23 Apr 2012 00:44:03 +1200 from public phone number lists. Compiled by bob@guru.net.nz, www.guru.net.nz. This list contains 28 phone suffixes and 96 distinct areas. Note: The % in the list is how many numbers in that area code are in the listed suburb (e.g. if 03-453 says Mornington 44% and Belleknowes 21% then that means that 44% of the 03-453 area numbers are Mornington based and 21% are Belleknowes based)
-------------------------------------------------------------------------- Prefix 03-453 (based on 139 numbers): Mornington: 44% Belleknowes: 21% Kenmure: 14% Maryhill: 11% Bradford: 6% Kaikorai Valley: 3% Balaclava: 2% Caversham: 1% Prefix 03-454 (based on 141 numbers): Andersons Bay: 36% Waverley: 34% Highcliff: 11% Vauxhall: 7% Ocean Grove: 5% Portobello: 3% Tainui: 3% Shiel Hill: 3% Bayfield: 2% Prefix 03-455 (based on 230 numbers): St Kilda: 30% South Dunedin: 25% Saint Clair: 14% Caversham: 13% Musselburgh: 10% Forbury: 4% Tainui: 3% Andersons Bay: 2% Maryhill: 1% The Glen: 1% Kenmure: 1% Clyde Hill: 1% St Clair: 1% Abbotsford: 1% Waverley: 1% Highcliff: 1% Prefix 03-456 (based on 67 numbers): South Dunedin: 26% St Kilda: 26% Caversham: 17% Saint Clair: 12% Musselburgh: 5% Portobello: 5% Tainui: 3% Andersons Bay: 3% Forbury: 3% Belleknowes: 2% Kenmure: 2% Prefix 03-464 (based on 47 numbers): Maori Hill: 43% Middlemarch: 24% Roslyn: 18% Wakari: 7% Kaikorai: 5% Highgate: 5% Balmacewen: 3% Prefix 03-465 (based on 32 numbers): Waikouaiti: 100% Prefix 03-466 (based on 30 numbers): Wakari: 27% Maori Hill: 27% Balmacewen: 10% Roslyn: 7% South Dunedin: 7% Andersons Bay: 7% Highgate: 7% Saint Clair: 4% Mornington: 4% Kaikorai: 4% Prefix 03-467 (based on 77 numbers): Maori Hill: 38% Glenleith: 21% Roslyn: 17% Woodhaugh: 8% Wakari: 7% Kaikorai: 4% Highgate: 3% Dunedin North: 3% Balmacewen: 2% Prefix 03-470 (based on 5 numbers): Liberton: 20% Kaikorai Valley: 20% Kenmure: 20% Roslyn: 20% Dunedin Central: 20% Prefix 03-471 (based on 31 numbers): Ravensbourne: 55% St Leonards: 26% Roslyn: 13% Mosgiel: 4% Maia: 4% Prefix 03-472 (based on 50 numbers): Port Chalmers: 80% Sawyers Bay: 12% Aramoana: 4% Roseneath: 4% Prefix 03-473 (based on 98 numbers): North East Valley: 38% Pine Hill: 18% Opoho: 14% Dalmore: 10% Normanby: 9% Liberton: 9% Dunedin North: 5% Mornington: 2% Dunedin Central: 2% Prefix 03-474 (based on 10 numbers): Roslyn: 30% Belleknowes: 30% Aramoana: 10% Pine Hill: 10% Green Island: 10% Dunedin Central: 10% Prefix 03-476 (based on 170 numbers): Brockville: 22% Halfway Bush: 21% Macandrew Bay: 19% Helensburgh: 13% Wakari: 12% Kaikorai: 9% Portobello: 3% Company Bay: 2% Roslyn: 2% Kaikorai Valley: 1% Kenmure: 1% Highcliff: 1% Prefix 03-477 (based on 46 numbers): Roslyn: 48% Belleknowes: 18% Dunedin North: 9% Dunedin Central: 5% Mosgiel: 5% Taieri Mouth: 5% Maori Hill: 3% Kaikorai Valley: 3% Highgate: 3% Company Bay: 3% Halfway Bush: 3% Kaikorai: 3% Prefix 03-478 (based on 36 numbers): Portobello: 53% Broad Bay: 31% Harwood: 12% Harington Point: 6% Prefix 03-479 (based on 8 numbers): Roslyn: 88% Mornington: 13% Prefix 03-481 (based on 34 numbers): Brighton: 68% Taieri Mouth: 21% Musselburgh: 3% Ocean View: 3% Saddle Hill: 3% Taieri Beach: 3% Prefix 03-482 (based on 29 numbers): Warrington: 32% Waitati: 32% Long Beach: 11% Doctors Point: 7% Pigeon Flat: 4% Waikouaiti: 4% Port Chalmers: 4% Osborne: 4% Mount Cargill: 4% Purakaunui: 4% Prefix 03-484 (based on 32 numbers): Mosgiel: 72% East Taieri: 13% North Taieri: 7% Wyllies Crossing: 7% Wingatui: 4% Prefix 03-486 (based on 20 numbers): Outram: 90% Maungatua: 5% Henley: 5% Prefix 03-487 (based on 101 numbers): Caversham: 29% Corstorphine: 23% Saint Clair: 22% Kew: 16% Concord: 9% Green Island: 2% Prefix 03-488 (based on 169 numbers): Green Island: 28% Fairfield: 25% Abbotsford: 20% Concord: 6% Brighton: 6% Waldronville: 5% Burnside: 3% Sunnyvale: 3% Kenmure: 3% Kaikorai Valley: 2% Mornington: 2% Mosgiel: 1% Prefix 03-489 (based on 312 numbers): Mosgiel: 85% East Taieri: 6% Wingatui: 2% Outram: 2% Allanton: 2% Saddle Hill: 1% Taieri Plains: 1% R D 1: 1% North Taieri: 1% Kinmont Park: 1% Chain Hills: 1% Wyllies Crossing: 1% Prefix 03-552 (based on 8 numbers): Dunedin Central: 38% Liberton: 13% Brockville: 13% North East Valley: 13% Waverley: 13% Normanby: 13% Prefix 03-742 (based on 2 numbers): Highcliff: 50% Portobello: 50% Prefix 03-949 (based on 4 numbers): St Kilda: 50% Dunedin Central: 50% Prefix 04-387 (based on 2 numbers): Melrose: 100%
Pia Waugh
Twitter Weekly Updates for 2012-04-22
- Heh, interesting RT @greenat16: Does God exist? 77.2% of the voters got it wrong http://t.co/LanNnhPO #
- So who else is stuck at Melbourne atm?
3 hours and counting, rearranging flights now. Fog fog fog. # - Interesting RT @mashable: Will This Open-Source Animated Film Change the Movie Industry Forever? http://t.co/x83abWdx #
- "Got a letter from a messenger, I read it when it came". Ah Tea Party, such a great start to the morning. #webdevel #
- Filling faster now. Hai
RT @Simbera: FWIW, I am at #wladd it's due to start and the place is less than half full # - . @woolfe Hah! I didn't say pure evil. I don't deal on extremes (or good/evil for that matter)
@wombat1974 @mikestuchbery # - . @wombat1974 the problem is where greed is systematic, eg,stockmarket. Individual greed rarely so destructive. /cc @mikestuchbery @woolfe #
- . @wombat1974 Hah, terminators eh? Where "babysitting" is quite literal? I think enlightened self interest is good
@mikestuchbery @woolfe # - Haaaa hahaha RT @peterbayley: @_Pandy @PETA @piawaugh #EFFOFF Smart Arse
# - . @kattekrab is truly one of my favourite ppl
Also, am working on migrating a Dreamweaver site to WordPress. My brain hurts. # - I for 1 welcome our new overlords MT @mikestuchbery: In short the sooner Earth is quarantined by biomechanical alien peacekeepers the better #
- .@VirginMobileAus Thanks heaps. I can't dial the 1300555100 number and was gobsmacked by the (obv auto) email response. Will DM now. #
- Really, REALLY cranky right now. #mobilecompaniesFAIL #
Twitter Weekly Updates for 2012-04-22
- Heh, interesting RT @greenat16: Does God exist? 77.2% of the voters got it wrong http://t.co/LanNnhPO #
- So who else is stuck at Melbourne atm?
3 hours and counting, rearranging flights now. Fog fog fog. # - Interesting RT @mashable: Will This Open-Source Animated Film Change the Movie Industry Forever? http://t.co/x83abWdx #
- "Got a letter from a messenger, I read it when it came". Ah Tea Party, such a great start to the morning. #webdevel #
- Filling faster now. Hai
RT @Simbera: FWIW, I am at #wladd it's due to start and the place is less than half full # - . @woolfe Hah! I didn't say pure evil. I don't deal on extremes (or good/evil for that matter)
@wombat1974 @mikestuchbery # - . @wombat1974 the problem is where greed is systematic, eg,stockmarket. Individual greed rarely so destructive. /cc @mikestuchbery @woolfe #
- . @wombat1974 Hah, terminators eh? Where "babysitting" is quite literal? I think enlightened self interest is good
@mikestuchbery @woolfe # - Haaaa hahaha RT @peterbayley: @_Pandy @PETA @piawaugh #EFFOFF Smart Arse
# - . @kattekrab is truly one of my favourite ppl
Also, am working on migrating a Dreamweaver site to WordPress. My brain hurts. # - I for 1 welcome our new overlords MT @mikestuchbery: In short the sooner Earth is quarantined by biomechanical alien peacekeepers the better #
- .@VirginMobileAus Thanks heaps. I can't dial the 1300555100 number and was gobsmacked by the (obv auto) email response. Will DM now. #
- Really, REALLY cranky right now. #mobilecompaniesFAIL #
20 April 2012
Selena Deckelmann
Desire paths, habits and the power of observation
19 April 2012
Giuseppe Maxia
A few hacks to simulate mysqldump --ignore-database
A few days ago, Ronald Bradford asked for a mysqldump –ignore-database option.
As a workaround, he proposes:mysqldump --databases `mysql --skip-column-names \
-e "SELECT GROUP_CONCAT(schema_name SEPARATOR ' ') \
FROM information_schema.schemata WHERE schema_name \
NOT IN ('mysql','performance_schema','information_schema');" \
>` >/mysql/backup/rds2.sql
It's a clever solution, but unfortunately it only works if you have a handful of schemas. If your databases happens to have several dozens (or hundreds or thousands) of schemas (which is where you need this option more), then the output will be truncated to the length of group_concat_max_len (by default, 1024.)
There are two alternative methods.
The all-shell method
This method lets shell commands filter the wanted databases. In its simplest way, it goes
DATABASE_LIST=$(mysql -NBe 'show schemas' | grep -wv 'mysql\|personnel\|buildings')
mysqldump --all-databases $DATABASE_LIST
Notice that, when you use --all-databases, information_schema and performance_schema are filtered off by default.
This method works, because the default length of the command line in Unix is much longer than group_concat_max_len:
$ getconf ARG_MAX
131072 # Linux
$ getconf ARG_MAX
262144 # Mac OSX
(in Windows it's much shorter: 8191, but since I haven't used Windows for ages, I don't really care).
A more elaborate method would require a scripting wrapper around the above instructions, but I think that as it is, it's simple enough to be remembered.
The options file method
If the length of all your database names combined is more than the maximum allowed by the shell, and all you want is filtering a few databases off a huge list, there is still hope.
Let's assume that you want to ignore mysql, personnel, and buildings from your backup.
echo '[mysqldump]' > mydump.cnf
mysql -NBe "select concat('ignore-table=', table_schema, '.', table_name) \
from information_schema.tables \
where table_schema in ('mysql', 'personnel', 'buildings')" \
>> mydump.cnf
Now the options file looks like this:
What we need to do is tell mysqldump to get its information from this options file, and it will duly skip all the tables that are listed in there.
[mysqldump]
ignore-table=mysql.db
ignore-table=mysql.host
ignore-table=mysql.user
[...]
There are two drawbacks with this approach:
mysqldump --defaults-file=./mydump.cnf -u $DBUSER -p$DBPWD --all-databases
- There will be a
DROP DATABASE IF EXISTSandCREATE DATABASEfor each of the excluded schemas, although no tables will be dumped. - This method only works with
--default-options-file. Theoretically, it should also work with--default-extra-file, but it doesn't. Therefore, if you are relying on an options file for connection parameters, they should be added to this file or listed in the command line.
by Giuseppe Maxia (noreply@blogger.com) at 19 April 2012 13:45
17 April 2012
Giuseppe Maxia
Some lessons from MySQL Conference 2012
The Percona Live MySQL Conference and Expo 2012 is over. Together with the SkySQL solutions day, it has kept me occupied for 4 full days, from early morning to late at night.
I have to say that I am pleased. The quality of the organization was very high, with a very good lineup of speakers and an excellent technical support.
As usual, I have learned a lot during this week, either directly, by attending talks, or indirectly, by meeting people who told me what was juicy at the talks that I had missed. And I have met new interesting people, and caught up with the people that I know already.
This conference was particularly intense also because I got myself involved in 5 talks, which was probably more than I should have. How did I end up with such a task? It's a long story.
It all started when the CfP opened. In the review committee, we all knew that Oracle was not eager to participate, but we hoped that it would change its mind and send someone in the end. So we planned ahead, and some of us proposed talks aimed at beginner and intermediate users, with topics that are usually best covered by the people who work at the MySQL team. I proposed Replication 101 and What's new in MySQL 5.5 and 5.6 replication, with the idea that I would hand them over to a couple of Oracle engineers, or have them as co-speakers. That, however, didn't happen. So I had to prepare and present these two talks, in addition to the one that I wanted to do on my own (Testing MySQL creatively in a sandbox).
That makes 3 talks. Then I got tasked with organizing the lightning Talks, which is not a big deal per se, but it adds to the global effort. 4 talks.
And finally, SkySQL organized another beautiful conference on Friday, and I got to present a fifth talk. I enjoyed every bit of them, but boy! the conference was intense!.I have learned not only from the talks that I have attended, but also from the preparation of my own talks. The biggest source of surprises was my talk about MySQL 5.6 replication. I was expecting a mature release, but I found a collection of features that don't play very well together, and can sometimes lead to an unstable server. Since I was trying to get my demos working, rather than isolating the bugs, I didn't submit any reports, but I will come back to that version and do a more thorough analysis as soon as I catch up with my day-by-day work.
Speaking about demos, it's quite common for me to include a demo in a technical talk. First, because getting a demo done will make me better acquainted with the features that I am presenting, and also because a presentation with a demo conveys the idea of a mature and reliable product (or the idea that I, as the speaker, know what I am talking about). Either way, I know prepare a demo for every talk where I have sufficient time to show one, and sometimes even for a lightning talk. So it was surprising to hear comments that praised my talks because they contain demos. Is this practice so unusual? I should start taking count of how often this is done.
My most satisfactory demo (and the one that almost got me in trouble) happened at the last talk, on Friday, when I had to show features from three different Tungsten topologies, using three separate remote clusters. For these demos to be successful, I needed good internet connection, a solid confidence in the product and the strength of its tests, and to remember the sequence of operations for each demo. To my surprise, everything went so smoothly, that someone in the audience thought that I was running a simulation in my laptop, instead of interacting with servers that were 10,000 Km away. So much for my rehearsals! I must remember to add at least a tiny mistake in an otherwise perfect sequence of tasks, to make the audience aware that I am playing live.
The slides for my presentations are available at Slideshare.
by Giuseppe Maxia (noreply@blogger.com) at 17 April 2012 00:15
16 April 2012
Selena Deckelmann
Wikipedia Edit-a-thon in Portland, April 21, 11-3pm, P-I-E
15 April 2012
Pia Waugh
Twitter Weekly Updates for 2012-04-15
- It's my own fault. I should have obviously provided more whiteboard
The 2.5 yr old got creative. #babysittinglessons http://t.co/bQ6YTikH # - . @MrsMoldor @moldor YAY!
I hope you can organise one, it'd be great to meet you both in meatspace ("IRL" is stupid, this *is* RL!) # - .@TimDLittle I don't think it is that simple. Brands simply aren't as manageable these days, better to have connected workforce /cc @donkey #
- Ben 10 is awesome, I completely understand it having a significant following
Spider Monkey! # - .@donkey I've heard of employers (in the US, of course) asking for all social media passwords as a condition of employment. #securitytheatre #
- Currently browsing the AGIMO Gov 2.0 Register, some interesting stuff http://t.co/d7k0Z4hs #gov2au #opengov #gov20 #
- We've got some initial info & regos open for #govhack #govcamp & #govjam in June. Details coming soon! http://t.co/QBUULzzN #gov2au #
- Ok, Canberra peeps, anyone got a responsible teenager who can babysit two lovey girls Friday night for some cash? Please DM me
# - .@nearyd I know guy who did martial choreography, inc dual pole for gandalf & dwarves axe styles. Exciting! He's an amazing dude
#hobbit # - I feel I should share for ppl considering attending Shen Yun, I found it pretty awful. I walked out. #justsayin #
- Just met dissatisfied girl working in a beauty salon. Through the conversation she is now super keen to do computer forensics. Awesome
# - Got a friend who is looking at ways to assess "openness" of technologies. I wrote this a few years ago, still useful
http://t.co/HuItxm4M # - Nah, that's just silly
sudo is enough kthxbai RT @Zemmiph0bia: True love is giving your partner root access # - Every country tries this at least once RT @rtaibah: Iran plans to unplug the Internet, launch its own "clean" alt http://t.co/lOEx8yEH #
- .@MrsMoldor Awww! Please come too! Would be awesome to meet you, and we could pay out on @moldor together
/cc @Rog42 @hollingsworth # - .@cgiffard @peter_tonoli @xtfer Heh, totally! I've taught loads of workshops to kids by cracking a computer open, it never fails to amuse
# - .@johnallsopp I wasn't allowed a gaming console in my house. <violins=tiny> /cc @_chesty_ @csimps0n @davidramli #
- .@peter_tonoli @cgiffard Heh
Well one floppy loaded the OS, and the other was for loading programs
# - .@cgiffard Hah!
I initially used a dual 5 1/4 inch disk drive computer, no hard disk, don't remember the CPU
# - .@csimps0n Pentium 4s! I remember when I realised 2 slots on front of my PC weren't enough to show a *3* digit CPU speed
/cc @davidramli # - .@Davidramli @csimps0n "vinyl, bah! I remember when we made punchcards by hand w rusty hole punchers by candlelight, a UPS to keep us warm!" #
- "I am alive" game review, fun, challenging, good story but finished in 6 hrs gameplay
# - Gar, tweet vs DM just bit me for the first time
#
11 April 2012
Selena Deckelmann
Who do you trust for business advice?
Sage Weil
Released v0.45
v0.45 is ready! Notable changes include:
- osd: large xattrs stored in leveldb, allowing XFS and ext4 to be used with radosgw
- osd: new heartbeat code (simpler, more robust)
- osd: fixed some glaring journal performance problems
- fixed encoding performance regression
- ceph: less noisy output by default
- msgr: code cleanups
- doc: misc cleanups
- qa: improved testing coverage
In short, some performance and bug fixes but no huge functionality. v0.46 will be a bit more exciting on that front.
You can get packages from the usual locations:
- Git at git://github.com/ceph/ceph.git
- Tarball at http://ceph.newdream.net/download/ceph-0.45.tar.gz
- For Debian/Ubuntu packages, see http://ceph.newdream.net/docs/master/ops/install/mkcephfs/#installing-the-packages
Jonathan Oxer
Walktime blog #25: The episode about nothing
I haven't had much walktime recently, so not many walktime blogs. However, I have been working on creating some videos for SuperHouseTV relating to home automation using Arduino and other Open Source hardware and software, so I'll start uploading those soon and updating the content on www.superhouse.tv. These video blogs will probably switch over to a personal account soon.
Also, my wife and daughter have been giving me a hard time about going around wearing a Freetronics shirt hoping someone will recognise it. So I'm upping the ante, and offering a prize: if a random person meets me in the street, recognises the Freetronics logo, and says hello, I'll give them a free LeoStick (Arduino-compatible board).
View or comment directly on YouTube: www.youtube.com/watch?v=MO9uRfvupoM
09 April 2012
Michael Kerrisk
TLPI third print run now available
by Michael Kerrisk (noreply@blogger.com) at 09 April 2012 10:38
08 April 2012
Robert O'Callahan
The Internet Experiment Has Failed
I'm worried about the Internet. Not about the usual Mozilla stuff, although there's a lot of challenges there too. I'm worried that the Internet, the way we use it, is bad for people; bad for individuals, and bad for society.
One reason is security. We do not have the technology to build systems with strong behavioral guarantees; there are always bugs, and always exploitable bugs. The contest between attack and defense is vastly asymmetric; defenders must get everything right, attackers only need to find a few mistakes. Yet we keep bringing more of our world online. Even keeping systems away from the Internet becomes infeasible as mobile Internet-connected devices become increasingly pervasive.
Another reason is our brains. It seems obvious to me that the Internet is a lousy medium for human interaction (beyond people you already know well). There are lots of negative effects at work, and better-informed people than I have much to say about them. "Filter bubbles" are one concern. The accessibility of support groups for every kind of dysfunction (e.g. pro-anorexia or racist groups) is another. My biggest worry is the lack of empathy we experience when interacting with others online. The online comments of almost any major public Web site are toxic, especially on controversies. I've behaved badly online in ways that I never would have in "real life". In the incoming direction, the core Mozilla community is great, but random abuse and conflict from the Internet takes its toll. There's a lot more to be said about what's going wrong, but suffice it to say I'm an optimist about different kinds of people being able to get along in real life; I'm a decided pessimist about them getting along online.
(Even while I'm writing this, Christian Heilmann has posted about problems on Twitter.)
Let's not even talk about privacy and oppressive actors.
I'm fed up with techno-optimists who claim the march of progress is inevitably beneficial and we're just having some teething problems. Techno-optimists had big dreams for the Internet; that it would bring people together (see people yell at each other on Twitter), that bad information would be cured by more good information (see filter bubbles), that all knowledge would be universally available (OK, they got something right; thanks for Wikipedia). Not good enough.
So what should we do? For security, we need to increase the distance between important systems and the Internet. We need to steer towards technologies with provable properties (and somehow escape our dependence on C/C++ code). But that's weak sauce and I don't see our way clear. Human factors will let us down and there are hard limits on technology.
The human interaction problem is even tougher. Maybe we can find technical solutions to reengaging empathy. Providing voice and video interaction everywhere might help; WebRTC could save the world! (Probably not, but we'll try.) Individuals can opt to reduce their online presence and refocus on offline relationships. To some extent that's what I try to do, and in a low-key way I'm discouraging my kids from being online and engaged with computers (mainly by giving them more interesting alternatives).
What about the mass of humanity? Do we just keep accelerating and hope everything works out? Do we form a neo-Luddite action group and sabotage the Internet? Do we figure out some alternative approaches to using the Internet that limit the damage? I wish I knew.
04 April 2012
Bede Mudge
Quoth the Rayven, "Nerf some more"!
by Bane Macarbe (noreply@blogger.com) at 04 April 2012 19:09
02 April 2012
Giuseppe Maxia
21st century presentation technology at Percona Live
After 15 years of slide show technology, I thought that we need to change the way we do presentations. And since I am advocating radical changes, I will eat my own dog food and be the first to present a MySQL session using 3D technology.
Since watching Avatar a few years ago, I thought that using this technology would make my presentations truly amazing. However, two years ago a 3d projector was prohibitively expensive. Now, instead, it is affordable, and fits in my briefcase!
What I needed, though, was a compelling reason for using 3d vs. traditional presentations. And I found it. As I have mentioned recently, I am working with the coolest replication technology on earth. Explaining this technology is often challenging. While regular replication is easy to represent in slides, star and fan-in topologies are hard to grasp for the average attendees. But with the help of 3d technology, the concept looks easy and reachable.
For this reason, I have convinced my company to invest a few thousand dollars in this technology and I am now ready to replace the regular projector in ballroom "C" with the new machine. Sure I will need to drill a few holes in the floor (BTW, thanks to the San Francisco MySQL User Group for lending me the tools), but the result will be fantastic!
I don't want to spoil the surprise, so no more details will be available until you see the result on Tutorial Day.
Now, let's talk about the logistics. In order to follow a 3d presentation, you need special glasses. Since this is a talk about open source stuff, it seems just right that I tell you How to Make Your Own 3D Glasses, so you won't have to buy them. If you are in a hurry, you can get the quick model (Make Your Own 3D Glasses in 10 Seconds).For those of you who want the enterprise edition, you can buy very fancy 3D glasses at a friendly price (just $14), following the QR link below.
by Giuseppe Maxia (noreply@blogger.com) at 02 April 2012 21:25
31 March 2012
Robert O'Callahan
Retrospective On Our Trip To Europe
When I'm traveling I try to avoid spending too much time moving from place to place. I want to spend enough time in each place I visit to get a feel for it. My goal for this trip was to get a bit of a feel for London, Paris, and rural villages in England and France. In England we chose Willersey in the Cotswolds, and in France we chose Lutzelbourg in Alsace (well, technically Lorraine).
It all went very well. We had only a few days of rain in more than three weeks, pretty good considering it was winter. It was good to alternate city with rural, because the days in the cities were hectic. In London I visited Imperial College for the ECOOP PC meeting, the Mozilla office, friends in Highgate, the Museum Of London, St Paul's, Westminster Abbey, the Monument, the Science Museum, the Victoria and Albert Museum, the Eye, and a lot more. In Paris, Notre Dame, the Eiffel Tower, Versailles, the Mozilla office, and the Arc de Triomphe. In the Cotswolds we explored Oxford and took a day trip to Warwick Castle, and otherwise rambled around the countryside, visiting the villages for Broadway, Snowshill, Stanton, Saintbury and thereabouts. From Lutzelbourg we walked to Pharlsbourg and Saverne, and took a train trip to Strasbourg.
Like most of our holidays there was a lot of walking and eating, hopefully waistline-neutral. We tried to eat local, of course, although it's not clear what that means in London. Food at inns in the Cotswolds was very good. We had a particularly memorable lunch at the Mount Inn in Stanton, in the middle of a long loop walk from Snowshill past Buckland and back; we were a bit tired and grumpy and the lunch cured everything. The Alsatian food was quite Germanic, unsurprisingly, and enormous.
It was the first time I have encountered really old cathedrals. I recalled the passage in The Mythical Man-Month where Fred Brooks points out the incredible self-discipline and humility required for a hundred-year building project; what it takes for generations of artisans to submit to the vision of an architect long gone. Those qualities are inspiring.
We attended an evensong service at St Paul's. It was a nice touch that they had separate seating for tourists and worshipers.
We attended an Anglican service at the parish church in Willersey. It's a great old church, dating back over eight hundred years. The congregation was mostly ancient too, and the sermon I felt was weak, but the people were most welcoming. We went to a French Catholic service in Lutzelbourg, which had much better demographics and was very lively. I couldn't understand a word of it but my translator said the sermon was informed and Biblical. Oddly though, when the service was over everyone left immediately with no fellowship.
Even where the people of God aren't doing well, I find it invigorating to see what he's done and is doing in different places and throughout history. Sometimes when I travel I'm lazy and don't bother going to the local churches on Sundays; that's a big mistake.
A great thing about Lutzelbourg and the Saverne area is the number of ruined castles. We explored the Château de Lutzelbourg just a short walk from the village, and Greifenstein near the road and canal to Saverne. Greifenstein has been abandoned for over five hundred years and looks exactly like I imagined a ruined castle should.
I'd certainly like to spend more time in Europe, but it also made me appreciate what we have here in Auckland, and it's good to be back.
Wakaraanga Creek
One of the things I love about Auckland is its diverse collection of parks and reserves. Since we moved back from New York (several years ago now!), on weekends we have regularly set out to explore unvisited green spots on the map. We're still finding great new places relatively close to home. This is due to many factors, including having so much coastline (Auckland straddles an isthmus), the many cones, lakes and other features of the Auckland volcanic field, and moderately enlightened urban planning.
Today we discovered the Rotary Walkway of the Wakaraanga Creek reserve at Farm Cove near Pakuranga. It's a paved path in coastal reserves along the Wakaraanga Creek and the Tamaki River. The weather was excellent, and the reserve and the estuary are delightful.
According to the local government's newsletter, the walkway around Orakei Basin has been refurbished, so that will be a good place to visit soon.
A couple of other tips: if you live in Auckland and haven't been to Rangitoto recently (or ever), or you visit Auckland, take the ferry to Rangitoto and make sure you visit the lava caves. It's an amazing place right on our doorstep. If you've done Rangitoto and the other popular Auckland spots, try Mangere Mountain. It's one of Auckland's best-kept secrets.
30 March 2012
Sridhar Dhanapalan
XO-AU OS 12.0 Release Candidate 2 released
Release Candidate 2 of the 2012 OLPC Australia operating system, XO-AU OS 12, has been released. We hope to make a final release in two weeks, in time for the start of term 2 of school in Queensland and Northern Territory.
To get started, visit our release notes page.
Installing the Release Candidate is no different from installing the XO-AU USB 3 stable release: extract the zip file to a USB stick and you’re ready to go.
The “What’s New” section outlines the changes in this release.
To provide feedback, please join our technical mailing list.
Following this, you can send your comments or ask questions on the list. The OLPC Australia Engineering team are active participants on this list, and we will reply. Remember, the better you can help us with quality information, the better we can make the product for you
28 March 2012
Sage Weil
v0.44.1 released
This point release has a few important fixes:
- osd: a few replay fixes for non-btrfs users
- librados: resend watch operations at appropriate times
- fix rpm builds
- fix libnss builds
It’s also worth mentioning (since several people have mentioned problems on the list) that you need to do
git submodule init git submodule update
from the source tree before you build for the first time to get the correct version of leveldb.
You can get this release from the usual places:
- Git at git://github.com/ceph/ceph.git
- Tarball at http://ceph.newdream.net/download/ceph-0.44.1.tar.gz
- For Debian/Ubuntu packages, see http://ceph.newdream.net/docs/master/ops/install/mkcephfs/#installing-the-packages
Our Week at World Hosting Days
After a long journey to Germany, the Ceph team were welcomed with open arms by the service provider community.
We met some wonderful people who had a lot of great opinions of Ceph and some that had just learned of the capabilities that Ceph has to offer.
Below you can see Jude and Dona taking the time to pose for a quick pic
We like to work hard here at Ceph – but some like to work harder than others as you can see below
26 March 2012
Paul McKenney
2012 LPC Call For Proposals
The best presentations are not about finished work, but rather problems, proposals, or proof-of-concept solutions that require face-to-face discussions and debate among people from different areas of the Linux plumbing. Ideally, the best presentations are also working sessions that result in patches to various portions of Linux's plumbing that make the Linux world a better place for its developers and (most important) its users.
A proposal should be short: just a couple of paragraphs describing the topic, why it is important, and what parts of the plumbing it touches.
Proposals are due at 11:59PM Pacific Time on Tuesday, May 1st, 2012. Authors will be notified by Tuesday May 15th, 2012. We look forward to seeing your proposal, and to seeing you in San Diego!
SUBMITTING A PROPOSAL
We are using the Launchpad infrastructure this year, but it is still easy to submit a proposal. Go to this URL, which will take you to an account-creation page. However, if Launchpad doesn't know you, in which case please create a new Launchpad account so that it does know you. Once you have a Launchpad account, the above URL will take you to the "Register a new blueprint" page.
Once you get to the "Register a new blueprint" page:
- In the "Project" field, enter "lpc".
- In the "Name" field, put a short identifier for your talk. Please do -not- put your own name, as Launchpad already knows who you are.
For refereed-track presentations:
- In the "Name" field, enter a short name for your presentation starting with "lpc2012-ref-" for refereed-track presentations (for example, "lpc2012-ref-Grand-Unified-FOSS-Project").
For microconference presentations:
- In the "Name" field, enter the code shown on that microconference's wiki. For a few examples:
- Containers microconference: “lpc2012-cont-”
- Real-time microconference: “lpc2012-rt-”
- Scaling microconference: “lpc2012-scale-”
- Virtualization microconference: “lpc2012-virt-”
- Containers microconference: “lpc2012-cont-”
- In the "Name" field, enter a short name for your presentation starting with "lpc2012-ref-" for refereed-track presentations (for example, "lpc2012-ref-Grand-Unified-FOSS-Project").
- Your abstract, which should be short (a couple of paragraphs), but should clearly describe the problem, the affected areas of the Linux plumbing, and the intended audience.
- A one-paragraph bio, describing your experience.
Then click the "Register Blueprint" button to submit your proposal! You will automatically be recorded as the person submitting the proposal.
If you have any difficulty submitting your abstract, please email the details to contact@linuxplumbersconf.org.
Jonathan Oxer
Walktime Blog #24: Storing parts for electronic projects
After 25+ years of dreaming about my ultimate home workshop, it's all starting to come together. Part of it is setting up adequate storage for all the little bits and pieces that are necessary in a typical electronics lab.
So when I heard that Element14 had a special on parts drawers, I put together a spreadsheet to figure out how many parts I needed to store and ordered in the necessary number of drawers. This video shows how I mounted them on a wall.
View or comment directly on YouTube: www.youtube.com/watch?v=pYwj-mqlYto
23 March 2012
Giuseppe Maxia
April talks at Percona and SkySQL events
The second week of April will be quite a busy one
Tuesday, April 10
April 10th is Tutorial day at the Percona Live MySQL Conference and Expo.
On that day, I will present a classic: MySQL Replication 101. This is a topic traditionally presented by a MySQL engineer. However, since Oracle seems not to be eager to send anyone to the conference, I volunteered to the task, and I have let everyone know that, if Oracle change its mind and sends some engineers at the conference, I will happily have one of my former colleagues from the replication team as co-speaker.
Wednesday, April 11
The conference will be in full swing when the regular sessions (and the keynotes!) start. From my side, it is noteworthy the talk about Continuent crown jewels, which I have mentioned recently.
- Edward Archibald : Building a multi-master, multi-region database infrastructure in Amazon EC2
- Robert Hodges: Be a Data Management Hero with Good Backups!
- Jeff Mace : Build simple and complex replication clusters with Tungsten Replicator
- Giuseppe Maxia: What's new in MySQL 5.5 and 5.6 Replication (another talk where an Oracle engineer co-speaker is welcome!)
Unfortunately, at the same time, there will be a talk that I will miss, but I would love to see:
After my own talk, I will instead go to see- Tim Callaghan: Creating a benchmark infrastructure that just works
Thursday, April 12
We will start with two interesting keynotes:
- Mårten Mickos: Making LAMP a Cloud
- Mark Callaghen: What Comes Next
- Marco Tusa: Oracle to MySQL migration
- Giuseppe Maxia: Testing MySQL creatively in a sandbox
- Robert Hodges and Stephane Giron: Testing MySQL creatively in a sandbox Boost Your Replication Throughput with Parallel Apply, Prefetch, and Batching
Friday, April 13th
This day brings us the MySQL Solutions day sponsored and organized by SkySQL. I will be on stage with Robert Hodges to talk and demo some of the solutions offered by Continuent.by Giuseppe Maxia (noreply@blogger.com) at 23 March 2012 01:05
22 March 2012
Giuseppe Maxia
Lightning Talks at Percona Live MySQL Conference and Expo 2012
Several months ago I suggested having lightning talks at Percona Live MySQL Conference and Expo 2012, and I also offered to help.
Then I forgot about that for a while, until I saw the announcement that there was a call for Lightning Talks. Great! I submitted two proposals, and asked my colleagues to do the same, and also encouraged many good speakers I know to submit something.
The deadline for lightning talks submission passed, and I was told that my offer to help had been accepted, and I was in charge of lightning talks! OK. I would have preferred being told before the CfP, but an offer to help is an offer to help, and thus I went through the motions of evaluating the talks, sending notices to the winners, consoling the losers, and giving hope to the few brave ones who will replace the winners if they don't show up.
The talks that you will see at the conference are in the Lightning Talks page.
Lightning talks are fun and instructional micro events. Their official purpose is to give the audience a chance to learn something in a very limited amount of time. The real purpose is for the speaker to be as entertaining and memorable as possible within the allocated time.
Here are the official rules:
- All slides will be loaded into a single computer, to minimize delays between talks
- All speakers will meet 15 minutes before the start, and be given the presentation order. Missing speakers will be replaced by reserve speakers
- The speaker will have 5 minutes to deliver the talk.
- When one minute is left, there will be a light sound to remind of the remaining time.
- When 10 seconds are left, most likely the audience will start chanting the countdown.
- when the time is finished, the speaker must leave the place to the next one.
For this to be real fun, there must be some cooperation from the audience. Rule #5 is often a spontaneous behavior from the crowd. It's very effective to make the speaker hurry up and close.
If rule #6 were to be enforced in style, there would be a tele-transporter that is triggered at the last second, and the too-slow speaker is instantly moved to the parking lot. My contact at the Star Trek labs tells me that the appliance is not available yet. We'll see if there is an app for that …
by Giuseppe Maxia (noreply@blogger.com) at 22 March 2012 11:22
21 March 2012
Sage Weil
v0.44 released
v0.44 is ready! Changes since v0.43 include:
- osd: key/value objects (objects are now blobs, key/value bundles, and xattrs)
- osd: cleaned up PG state, stats
- osd: fixed transaction replay on non-btrfs after ill-timed failures
- osd: several recovery fixes
- radosgw: improved PUT performance
- radosgw: improved list objects performance, filtering
- radosgw: manifests for large objects
- radosgw: Swift/S3 ACL interoperability (last set ACL type wins)
- librados: new key/value object API
- Ubuntu 12.04 precise packages
The exciting part of this release is that the key/value “object map” work has been merged, along with radosgw changes to take advantage of the new API. This allows you to use a key/value interface to manage many small records in a single object, in addition of the regular object data and attributes. Keys in the same object are stored together on disk–just like object data would be–so there are locality advantages to putting related keys in the same object. However, there are no limits on how many keys per object beyond concerns about load and space balancing (all keys in an object are stored together on the same set of Ceph OSDs). This provides an interesting alternative to conventional distributed key/value stores like Cassandra that distribute all keys in a single namespace across all nodes. For example, radosgw now uses the new object map API to manage the index object for each bucket.
For v0.45, we’re continuing work on RBD caching, performance and bug fixes, and working around xattr size limitations in ext3/4.
You can get v0.44 from the usual locations:
- Git at git://github.com/ceph/ceph.git
- Tarball at http://ceph.newdream.net/download/ceph-0.44.tar.gz
- For Debian/Ubuntu packages, see http://ceph.newdream.net/docs/master/ops/install/mkcephfs/#installing-the-packages
Jonathan Harker
Citing Fez repository documents in Moodle
Today I wrote a text filter for Moodle 2.2 which will help Moodle teachers and admins cite documents from a Fez digital repository. Fez is a digital repository written by University of Queensland library staff for the university’s digital assets and for use as an open access research repository.
The best fit in Moodle for a digital repository such as Fez would be through a repository plugin, but the Moodle repository API assumes that you only want either a file, or a URL. I think there’s room for the API to be able to return a snippet of HTML as well – of an appropriately formatted link to the document in question. For instance, it would not be enough to simply present a URL, such as
it would instead be really nice to be able to have the repository plugin return a <div> element, with a formatted citation, such as:
Taylor, William (2005) (FAB_15_2_095) Lest We Forget: the Shrine of Remembrance, its redevelopment and the heritage of dissent. Fabrications : The Journal of the Society of Architectural Historians, Australia and New Zealand, 15 2: 95-112.
This would also apply to other repositories – it would be nice if the Flickr, Picasa and YouTube repository plugins could return a thumbnail of the image or video instead of just the URL. Until that happy day arrives however, we can use a filter instead. After installing the filter, we tell it which Moodle content formats we would like it to parse, and the base URL for our Fez repository:
Then, in our content, we insert a search term or a Fez document PID into a placeholder using double curlies, e.g.
Which when we save, and have the Fez filter enabled, will produce a nicely presented citation:
It would not be very difficult to convert this into a repository plugin that simply returns the URL to the document, or to extend or clone this filter to talk to other digital repositories, such as EPrints, DSpace or Fedora.
TODO: add a setting to control how many search results you want to display.
20 March 2012
Simon Horman
Perdition 1.19-rc5 Released
I have released version 1.19-rc5 of Perdition. The key changes are:
- ldap: fix segmentation fault in dbserver_get2()
- Manage-sieve: Fix handling of plain login which would segmentation fault in some cases
- Manage-sieve: Fix handling of long authentication hashes
- Enhance --bind_address option parsing to handle IPv6 addresses
- Fix 8/4byte integer type miss-matches which may lead to undefined behaviour
The code and related libraries are available as tarballs
here.
More information is available in the announcement email.
More information about perdition here.














