Canonical Voices

facundo

Como loco con las películas


Gran cantidad de películas vistas, principalmente porque tuve un par de viajes en el medio (y en uno en particular, tanto en la ida como en el regreso, tenía enchufe en el asiento, así que pude ver varias pelis sin preocuparme de la duración de la batería de la laptop).

Y también porque vi varias en casa. Como contrapartida, vengo atrasado con las series... pero bueno :)

  • A Good Day to Die Hard: -0. Algunos momentos de humor. No mucho más, demasiado repetido todo.
  • Branded: -0. Demasiado volada. Tiene una idea interesante, y una historia, pero no se llevan bien del todo.
  • Dark Shadows: -0. Una gran colección de actores para una historia que ni fú ni fá.
  • Emergo: -0. Tiene algunas cosas muy interesantes, pero todo ese tipo de películas donde tenés una imagen quieta durante un minuto y de repente se mueve o pasa algo, me aburren profundamente.
  • Extraterrestre: -0. Algunos momentos tiene, y la historia de la película no está mal, es una mirada nueva. Pero en general me aburrió :/
  • Hit and Run: -0. Una comedia romanticona más, principalmente de persecuciones y disparos. Berreta, pero con sus momentos de humor.
  • Into the Mind: +0. La historia no vale demasiado... pero la fotografía es absolutamente genial.
  • Intruders: +0. No es la gran cosa a nivel de terror, pero tiene giros interesantes, y me mantuvo atrapado hasta el final.
  • Iron Man 3: +0. Un poco más de lo mismo, pero dentro de eso, la película está bien, y es un correcto cierre a la historia.
  • Meeting Evil: -1. Dos escenas. O tres. Nada más.
  • Metegol: +1. La historia está buena, y la animación es inmejorable, muy buena peli.
  • Muppets Most Wanted: +0. Es *obviamente* para chicos... pero es linda.
  • Oblivion: +0. Una buena película de ciencia ficción y acción. Podría ser mejor con alguna que otra mejor actuación, si fuese menos previsible, y sin un par de errores conceptuales en la historia. Pero zafa, cumple.
  • One for the Money: +0. Comedia romántica con algo de acción... muy muy liviana, pero divertida.
  • Savages: +0. La historia no es la gran cosa, pero muy bien contada! Buenas actuaciones, buena fotografía, buena dirección.
  • Side Effects: -0. Un poco lenta, algo predecible, y con un final bleh. Tiene sus momentos interesantes y algunos giros, pero no alcanza.
  • Side by Side: +1. Muy buena película que muestra la evolución en la tecnología del cine. Muy bien armada la película, maravillosamente contada.
  • Skyfall: +0. Es una buena película de James Bond (con floja participación de chicas Bond, sin embargo). Si te gusta, bien, sino a otra cosa.
  • The Adjustment Bureau: +1. Muy buena historia, muy bien explicado lo que tiene sentido explicar (dejando afuera lo que no tiene sentido, claro), muy interesante todo el concepto.
  • The Amazing Spider-Man: +0. La peli está buena, pero está muy pegada al original, con lo cual es como ver un remake de la película de hace sólo ~10 años, y eso le resta muchísimo.
  • The Bourne Legacy: -0. Una peli de persecuciones. No vale la pena. Sí, tiene algo alrededor, pero nada nuevo contra las Bournes anteriores. En resumen... te entretiene, pero no vale la pena.
  • The Call: +0. La peli no está mal, las actuaciones muy buenas y la historia.... bien hasta el final. O sea, hasta cuatro minutos antes del final :/
  • The Debt: -0. La historia tiene un trasfondo interesante... pero me aburrió demasiado.
  • The Last Stand: -0. "Hagamos una con Arnold, que está viejo, repitiendo clichés; pongamos a una parejita linda como ayudantes, y algunos actores buenos para que le den estructura". La peli es de esas que los malos, los buenos y los buenos están todo el tiempo disparando para ver quien la tiene más larga.
  • The Paperboy: -0. La historia está buena... demasiado sórdida, quizás, sin mucho sentido; es como una pequeña imagen de algo que no llegó a crecer, se nota que le falta profundidad en muchos aspectos (al final te enterás que es basada en una novela, eso lo explica).
  • Total Recall: -0. No me gustó... por lo fantasioso. O sea, si va a ser una película de ciencia ficción, todo bien, pero que sea más o menos en serio. Si van a agarrar un libro de Philip K. Dick y lo van a llevar a la pantalla estilo Underworld, no da...


De este lado, también un montonazo de películas nuevas! Parece que se pusieron las pilas con temas interesantes. Ojo, también hay algunas que son viejas y me las recomendaron hace poco.

Una novedad es que empecé a incluir de qué va la peli (argumento, fecha, género, actores, director), lo que puede servirle a alguien para a priori descartarla o decidir de buscar más info. Obviamente, no los escribo yo, sino que los estoy sacando de IMDB; sí, ya sé, está en inglés... pero es mejor que nada.

  • 7 cajas (2012; Action, Thriller) It's Friday night in Asunción, Paraguay and the temperature is sweltering. Víctor, a 17-year-old wheelbarrow delivery boy, dreams of becoming famous and covets a fancy cellular phone in the infamous Mercado 4. He's offered a chance to deliver seven boxes with unknown contents in exchange for a quick US$100. But what sounds like an easy job soon gets complicated. Something in the boxes is highly coveted and Víctor and his pursuers quickly find themselves caught up in a crime they know nothing about. [D: Juan Carlos Maneglia, Tana Schembori; A: Celso Franco, Víctor Sosa, Lali Gonzalez]
  • All Is Lost (2013; Action, Adventure, Drama) Deep into a solo voyage in the Indian Ocean, an unnamed man (Redford) wakes to find his 39-foot yacht taking on water after a collision with a shipping container left floating on the high seas. With his navigation equipment and radio disabled, the man sails unknowingly into the path of a violent storm. Despite his success in patching the breached hull, his mariner's intuition and a strength that belies his age, the man barely survives the tempest. Using only a sextant and nautical maps to chart his progress, he is forced to rely on ocean currents to carry him into a shipping lane in hopes of hailing a passing vessel. But with the sun unrelenting, sharks circling and his meager supplies dwindling, the ever-resourceful sailor soon finds himself staring his mortality in the face. [D: J.C. Chandor; A: Robert Redford]
  • Autómata (2014; Sci-Fi, Thriller) Jacq Vaucan is an insurance agent of ROC robotics corporation who investigates cases of robots violating their primary protocols against harming humans. What he discovers will have profound consequences for the future of humanity. [D: Gabe Ibáñez; A: Antonio Banderas, Birgitte Hjort Sørensen, Melanie Griffith]
  • Camp X-Ray (2014; Drama) A young soldier escapes her suffocating small town by joining the military, only to find that she isn't going for a tour of duty in Iraq as she hoped. Instead, she's sent to Guantanamo. Met with hatred and abuse from the men in her charge, she forges an odd friendship with a young man who has been imprisoned at Gitmo for eight years. [D: Peter Sattler; A: Nawal Bengholam, Peyman Moaadi, Lane Garrison]
  • El Ardor (2014; Drama, Western) A mysterious man emerges from the Argentinean rainforest to rescue the kidnapped daughter of a poor farmer after mercenaries murder her father and take over his property. [D: Pablo Fendrik; A: Gael García Bernal, Alice Braga, Claudio Tolcachir]
  • Focus (2015; Comedy, Crime, Drama, Romance) A veteran grifter takes a young, attractive woman under his wing, but things get complicated when they become romantically involved. [D: Glenn Ficarra, John Requa; A: Margot Robbie, Will Smith, Rodrigo Santoro]
  • Interstellar (2014; Adventure, Sci-Fi) In the near future Earth has been devastated by drought and famine, causing a scarcity in food and extreme changes in climate. When humanity is facing extinction, a mysterious rip in the space-time continuum is discovered, giving mankind the opportunity to widen their lifespan. A group of explorers must travel beyond our solar system in search of a planet that can sustain life. The crew of the Endurance are required to think bigger and go further than any human in history as they embark on an interstellar voyage, into the unknown. Coop, the pilot of the Endurance, must decide between seeing his children again and the future of the human race. [D: Christopher Nolan; A: Ellen Burstyn, Matthew McConaughey, Mackenzie Foy]
  • The Hunger Games (2012; Sci-Fi) In a dystopian future, the totalitarian nation of Panem is divided between 12 districts and the Capitol. Each year two young representatives from each district are selected by lottery to participate in The Hunger Games. Part entertainment, part brutal retribution for a past rebellion, the televised games are broadcast throughout Panem. The 24 participants are forced to eliminate their competitors while the citizens of Panem are required to watch. When 16-year-old Katniss's young sister, Prim, is selected as District 12's female representative, Katniss volunteers to take her place. She and her male counterpart, Peeta, are pitted against bigger, stronger representatives, some of whom have trained for this their whole lives. [D: Gary Ross; A: Stanley Tucci, Wes Bentley, Jennifer Lawrence]
  • La Vénus à la fourrure (2013; Drama) An actress attempts to convince a director how she's perfect for a role in his upcoming production. [D: Roman Polanski; A: Emmanuelle Seigner, Mathieu Amalric]
  • Laggies (2014; Comedy, Romance) In the throes of a quarter-life crisis, Megan panics when her boyfriend proposes, then, taking an opportunity to escape for a week, hides out in the home of her new friend, 16-year-old Annika, who lives with her world-weary single dad. [D: Lynn Shelton; A: Keira Knightley, Chloë Grace Moretz, Sam Rockwell]
  • Mad Max: Fury Road (2015; Action, Adventure, Thriller) An apocalyptic story set in the furthest reaches of our planet, in a stark desert landscape where humanity is broken, and almost everyone is crazed fighting for the necessities of life. Within this world exist two rebels on the run who just might be able to restore order. There's Max, a man of action and a man of few words, who seeks peace of mind following the loss of his wife and child in the aftermath of the chaos. And Furiosa, a woman of action and a woman who believes her path to survival may be achieved if she can make it across the desert back to her childhood homeland. [D: George Miller; A: Tom Hardy, Charlize Theron, Nicholas Hoult]
  • Mortdecai (2015; Action, Comedy) Juggling some angry Russians, the British Mi5, his impossibly leggy wife and an international terrorist, debonair art dealer and part time rogue Charlie Mortdecai must traverse the globe armed only with his good looks and special charm in a race to recover a stolen painting rumored to contain the code to a lost bank account filled with Nazi gold. [D: David Koepp; A: Johnny Depp, Olivia Munn, Aubrey Plaza]
  • Primer (2004; Drama, Thriller, Sci-Fi) At night and on weekends, four men in a suburban garage have built a cottage industry of error-checking devices. But, they know that there is something more. There is some idea, some mechanism, some accidental side effect that is standing between them and a pure leap of innovation. And so, through trial and error they are building the device that is missing most. However, two of these men find the device and immediately realize that it is too valuable to market. The limit of their trust in each other is strained when they are faced with the question, If you always want what you can't have, what do you want when you can have anything? [D: Shane Carruth; A: Shane Carruth, David Sullivan, Casey Gooden]
  • Relatos salvajes (2014; Comedy, Drama, Thriller) A story about love deception, the return of the past, a tragedy, or even the violence contained in an everyday detail, appear themselves to push them towards the abyss, into the undeniable pleasure of losing control. [D: Damián Szifrón; A: Liliana Ackerman, Luis Manuel Altamirano García, Alejandro Angelini]
  • Stealing Beauty (1996; Drama, Romance) After her mother commits suicide, nineteen year old Lucy Harmon travels to Italy to have her picture painted. However, she has other reasons for wanting to go. She wants to renew her acquaintance with Nicolo Donati, a young boy with whom she fell in love on her last visit four years ago. She also is trying tosolve the riddle left in a diary written by her dead mother, Sara. [D: Bernardo Bertolucci; A: Carlo Cecchi, Sinéad Cusack, Joseph Fiennes]
  • The Hobbit: The Battle of the Five Armies (2014; Adventure, Fantasy) Bilbo and Company are forced to be embraced in a war against an armed flock of combatants and the terrifying Smaug from acquiring a kingdom of treasure and obliterating all of Middle-Earth. [D: Peter Jackson; A: Benedict Cumberbatch, Luke Evans, Evangeline Lilly]
  • The Imitation Game (2014; Biography, Drama, Thriller, War) Based on the real life story of legendary cryptanalyst Alan Turing, the film portrays the nail-biting race against time by Turing and his brilliant team of code-breakers at Britain's top-secret Government Code and Cypher School at Bletchley Park, during the darkest days of World War II. [D: Morten Tyldum; A: Benedict Cumberbatch, Keira Knightley, Matthew Goode]
  • The Maze Runner (2014; Action, Mystery, Sci-Fi, Thriller) Thomas wakes up in an elevator, remembering nothing but his own name. He emerges into a world of about 60 teen boys who have learned to survive in a completely enclosed environment, subsisting on their own agriculture and supplies. A new boy arrives every 30 days. The original group has been in "The Glade" for two years, trying to find a way to escape through the Maze that surrounds their living space. They have begun to give up hope. Then a comatose girl arrives with a strange note, and their world begins to change. There are some great, fast-paced action scenes, particularly those involving the nightmarish Grievers who plague the boys. [D: Wes Ball; A: Dylan O'Brien, Aml Ameen, Ki Hong Lee]
  • The Scribbler (2014; Thriller) THE SCRIBBLER follows Suki (Katie Cassidy), a young woman confronting her destructive mental illness using "The Siamese Burn," an experimental machine designed to eliminate multiple personalities. The closer Suki comes to being "cured," she's haunted by a thought - what if the last unwanted identity turns out to be her? [D: John Suits; A: Katie Cassidy, Garret Dillahunt, Michelle Trachtenberg]
  • The Book of Life (2014; Animation, Adventure, Comedy, Family, Fantasy, Romance) From producer Guillermo del Toro and director Jorge Gutierrez comes an animated comedy with a unique visual style. THE BOOK OF LIFE is the journey of Manolo, a young man who is torn between fulfilling the expectations of his family and following his heart. Before choosing which path to follow, he embarks on an incredible adventure that spans three fantastical worlds where he must face his greatest fears. Rich with a fresh take on pop music favorites, THE BOOK OF LIFE encourages us to celebrate the past while looking forward to the future. [D: Jorge R. Gutierrez; A: Diego Luna, Zoe Saldana, Channing Tatum]
  • The Judge (2014; Drama) Hank Palmer is a successful defense attorney in Chicago, who is getting a divorce. When His brother calls with the news that their mother has died, Hank returns to his childhood home to attend the funeral. Despite the brittle bond between Hank and the Judge, Hank must come to his fathers aid and defend him in court. Here, Hank discovers the truth behind the case, which binds together the dysfunctional family and reveals the struggles and secrecy of the family. [D: David Dobkin; A: Robert Downey Jr., Robert Duvall, Vera Farmiga]
  • The November Man (2014; Action, Crime, Thriller) Peter Devereaux is a former CIA agent who is asked by the man he worked for that their person who in Russia who is presently close to a man running for President, who is believed to have committed crimes during the Chechen war, can give them the name of someone who can prove it. His friend says that she will only come to him. So he goes and she gets the info and tries to get out but the man finds out and tries to get her. Peter arrives and gets her but as they are getting away they're shot at. She is killed but tells Peter the name before she dies. Peter kills the men who attacked them but when he sees the leader, Mason, a man he trained, he realizes the CIA is involved. He tries to find the person and the only person who might know where she is, is Alice Fournier, the social worker who helped her when she came to the West. A CIA bigwig comes and orders that Devereaux be taken out and wants Mason to take care of it. An assassin whom the Presidential candidate sent to make sure no one wrecks his chances of becoming President. Devereaux finds Alice and tries to protect while trying to find the girl. [D: Roger Donaldson; A: Pierce Brosnan, Luke Bracey, Olga Kurylenko]
  • Tomorrowland (2015; Mystery, Sci-Fi) Bound by a shared destiny, a bright, optimistic teen bursting with scientific curiosity and a former boy-genius inventor jaded by disillusionment embark on a danger-filled mission to unearth the secrets of an enigmatic place somewhere in time and space that exists in their collective memory as "Tomorrowland." [D: Brad Bird; A: Britt Robertson, George Clooney, Judy Greer]
  • Under the Skin (2013; Drama, Sci-Fi, Thriller) A female drives a van through the roads and streets of Scotland seducing lonely men. [D: Jonathan Glazer; A: Scarlett Johansson, Jeremy McWilliams, Lynsey Taylor Mackay]


Finalmente, el conteo de pendientes por fecha:

(Ene-2009)    1   1
(May-2009)    5
(Oct-2009)   14
(Mar-2010)   18  16   4
(Sep-2010)   18  18  18   9   2   1
(Dic-2010)   13  12  12  12   5   1
(Abr-2011)   23  23  23  23  22  17   4
(Ago-2011)   12  11  11  11  11  11  11   4
(Ene-2012)   21  21  18  17  17  17  17  11   3
(Jul-2012)       15  15  15  15  15  15  14  11
(Nov-2012)           12  12  11  11  11  11  11   6
(Feb-2013)               19  19  16  15  14  14   9
(Jun-2013)                   19  18  16  15  15  15
(Sep-2013)                       18  18  18  18  17
(Dic-2013)                           14  14  12  12
(Abr-2014)                                9   9   8
(Jul-2014)                                   10  10
(Nov-2014)                                       24
Total:      125 117 113 118 121 125 121 110 103 101

Read more
David Planella

Over a week ago, we announced the Ubuntu Scope Showdown: a competition to write a scope for Ubuntu on phones in 5 weeks and win exciting prizes.

Scopes are Ubuntu’s innovative take at revolutionizing the content and services experience. For users, they provide quick and intuitive access to content without the need of loading an app. For developers and operators, scopes provide an easy path to surface their content and customize the UX in a way that is very flexible and integrated.

After the initial contest kickoff, we’ve already had a number of participants blogging, sharing updates and teasers about their work. Here’s a peek at some of their progress.

A variety of scopes

In the words of Robert Schroll, of Beru fame, e-mail apps are just passé. So much that he decided to explore an interesting concept: reading your e-mail with a scope. With a nice extra touch: Ubuntu Online accounts integration.

 Because e-mail apps are so 90s - the Gmail scope


Because e-mail apps are so 90s – the Gmail scope

After listening to one of Daniel Holbach’s mixes, Bogdan Cuza thought they alone deserve a scope, and so the Mixcloud scope was born. The rest, as they say, is history.

Can't get enough of those Balkan Beats - the Mixcloud scope

Can’t get enough of those Balkan Beats – the Mixcloud scope

You don’t know where to eat tonight? No worries, Sam Segers has you covered. Check out his Google places scope to easily find somewhere new to go.

Your cooking skills not up to your date's expectations? The Google places scope comes to the rescue

Your cooking skills not up to your date’s expectations? The Google places scope comes to the rescue

Developer Dan has a treat for all of us movie lovers: the Cinema scope. Features categories and departments, with settings, TV series and genres coming up soon! Check out the details on his blog.

Helping Ubuntu users see what stuff dreams are made of since 2014 - the Cinema scope

Helping Ubuntu users watch stuff dreams are made of since 2014 – the Cinema scope

Riccardo Padovani is bringing the dark horse -or well, duck?- of search engines into Ubuntu. Armed with the DuckDuckGo scope, get results like a pro with “real privacy, smarter search and less clutter”.

Duck is the new black - the DuckDuckGo scope

Duck is the new black – the DuckDuckGo scope

A wishlist of scopes

As Alan Pope and Michael Hall, I do have my wishlist of scopes for content that I’d like to have accessible at a flick of the finger on my phone. Maybe someone of you can make our day?

  • 8tracks scope: I love music, and I love mixes. 8tracks is a music streaming service to listen to the mixes their community members create and to get creative submitting mixes. As an avid mixer and listener, I’d be using this all of the time, especially if it came with Online Accounts integration that showed me content relevant to my interests.
  • Ask Ubuntu scope: the biggest Ubuntu Q&A site. I regularly check the ‘application-development‘ tag there to see any new questions and if I can help a fellow Ubuntu developer (and you should too). It’d be absolutely awesome to get those updates easily on my phone screen, with settings to filter on tags and the ability to upvote/downvote questions and answers.

Not sure what to write a scope for yet? Well, check out the ideas over at the Showdown reddit, or let your imagination run wild with a comprehensive list of APIs to get more inspiration!

A prize for your scopes

It’s not too late to enter the Showdown, you too can write a scope and win prizes! Here are some tips to get started:

Looking forward to seeing the next batch of scopes participants come up with!

The post The Ubuntu Scope Showdown – progress showcase appeared first on David Planella.

Read more
David Planella

More content coming up for app and scope developers targeting Ubuntu on devices: this time around Online Accounts!

Learn the concepts on how to write account providers for online services using the Ubuntu Online Accounts API (UOA), and let the API take care of all the complexity and security for you, so that you can concentrate on your code.

Go to the Online Accounts Developer Guide >

Read more
Daniel Holbach

Ubuntu Online Summit: 12-14 November

Yet another Ubuntu Online Summit (UOS) is ahead of us. It’s going to happen from 12-14 November. Participation is open to everyone, so to attend simply:

If you still need to get a session on the schedule to discuss a topic related to your field, create the session soon!

What I love about the Ubuntu Online Summit is that people get together, invite some fresh sets of eyes and brains and figure out together where Ubuntu is going. The sessions are also not too long (1h), so you are forced to come conclusions (and work items!) quickly.

Sessions I’m particularly looking forward to are:

  • 12 Nov
    • 15 UTC – Community Roundtable
    • 15 UTC – Testing Unity 8 Desktop
    • 16 UTC – App/Scope development training events
    • 18 UTC – Community events in Vivid cycle
    • 19 UTC – More appdev/scope code examples
  • 13 Nov
    • 16 UTC – Community Council Feedback
    • 16 UTC – Porting Apps To Ubuntu
    • 18 UTC – Ubuntu Women Vivid Goals
    • 19 UTC – Ubuntu Community Q&A
  • 14 Nov
    • 14 UTC – Transparency and participation
    • 15 UTC – Promoting the Ubuntu phone in LoCos
    • 16 UTC – LoCo Team Activity Review
    • 18 UTC – Ubuntu Touch Component Store

Please note: session times might still be changed, so keep an eye on the schedule. (Also: there’s lots more good stuff!)

Looking forward to seeing you all there! :-D

Read more
Dustin Kirkland

Earlier this week, here in Paris, at the OpenStack Design Summit, Mark Shuttleworth and Canonical introduced our vision and proof of concept for LXD.

You can find the official blog post on Canonical Insights, and a short video introduction on Youtube (by yours truly).

Our Canonical colleague Stephane Graber posted a bit more technical design detail here on the lxc-devel mailing list, which was picked up by HackerNews.  And LWN published a story yesterday covering another Canonical colleague of ours, Serge Hallyn, and his work on Cgroups and CGManager, all of which feeds into LXD.  As it happens, Stephane and Serge are upstream co-maintainers of Linux Containers.  Tycho Andersen, another colleague of ours, has been working on CRIU, which was the heart of his amazing demo this week, live migrating a container running the cult classic 1st person shooter, Doom! between two containers, back and forth.


Moreover, we've answered a few journalists' questions for excellent articles on ZDnet and SynergyMX.  Predictably, El Reg is skeptical (which isn't necessarily a bad thing).  But unfortunately, The Var Guy doesn't quite understand the technology (and unfortunately uses this article to conflate LXD with other random Canonical/Ubuntu complaints).

In any case, here's a bit more about LXD, in my own words...

Our primary design goal with LXD, is to extend containers into process based systems that behave like virtual machines.

We love KVM for its total machine abstraction, as a full virtualization hypervisor.  Moreover, we love what Docker does for application level development, confinement, packaging, and distribution.

But as an operating system and Linux distribution, our customers are, in fact, asking us for complete operating systems that boot and function within a Linux Container's execution space, natively.

Linux Containers are essential to our reference architecture of OpenStack, where we co-locate multiple services on each host.  Nearly every host is a Nova compute node, as well as a Ceph storage node, and also run a couple of units of "OpenStack overhead", such as MySQL, RabbitMQ, MongoDB, etc.  Rather than running each of those services all on the same physical system, we actually put each of them in their own container, with their own IP address, namespace, cgroup, etc.  This gives us tremendous flexibility, in the orchestration of those services.  We're able to move (migrate, even live migrate) those services from one host to another.  With that, it becomes possible to "evacuate" a given host, by moving each contained set of services elsewhere, perhaps a larger or smaller system, and then shut down the unit (perhaps to replace a hard drive or memory, or repurpose it entirely).

Containers also enable us to similarly confine services on virtual machines themselves!  Let that sink in for a second...  A contained workload is able, then, to move from one virtual machine to another, to a bare metal system.  Even from one public cloud provider, to another public or private cloud!

The last two paragraphs capture a few best practices that what we've learned over the last few years implementing OpenStack for some of the largest telcos and financial services companies in the world.  What we're hearing from Internet service and cloud providers is not too dissimilar...  These customers have their own customers who want cloud instances that perform at bare metal equivalence.  They also want to maximize the utilization of their server hardware, sometimes by more densely packing workloads on given systems.

As such, LXD is then a convergence of several different customer requirements, and our experience deploying some massively complex, scalable workloads (a la OpenStack, Hadoop, and others) in enterprises. 

The rapid evolution of a few key technologies under and around LXC have recently made this dream possible.  Namely: User namespaces, Cgroups, SECCOMP, AppArmorCRIU, as well as the library abstraction that our external tools use to manage these containers as systems.

LXD is a new "hypervisor" in that it provides (REST) APIs that can manage Linux Containers.  This is a step function beyond where we've been to date: able to start and stop containers with local commands and, to a limited extent, libvirt, but not much more.  "Booting" a system, in a container, running an init system, bringing up network devices (without nasty hacks in the container's root filesystem), etc. was challenging, but we've worked our way all of these, and Ubuntu boots unmodified in Linux Containers today.

Moreover, LXD is a whole new semantic for turning any machine -- Intel, AMD, ARM, POWER, physical, or even a virtual machine (e.g. your cloud instances) -- into a system that can host and manage and start and stop and import and export and migrate multiple collections of services bundled within containers.

I've received a number of questions about the "hardware assisted" containerization slide in my deck.  We're under confidentiality agreements with vendors as to the details and timelines for these features.

What (I think) I can say, is that there are hardware vendors who are rapidly extending some of the key features that have made cloud computing and virtualization practical, toward the exciting new world of Linux Containers.  Perhaps you might read a bit about CPU VT extensions, No Execute Bits, and similar hardware security technologies.  Use your imagination a bit, and you can probably converge on a few key concepts that will significantly extend the usefulness of Linux Containers.

As soon as such hardware technology is enabled in Linux, you have our commitment that Ubuntu will bring those features to end users faster than anyone else!

If you want to play with it today, you can certainly see the primitives within Ubuntu's LXC.  Launch Ubuntu containers within LXC and you'll start to get the general, low level idea.  If you want to view it from one layer above, give our new nova-compute-flex (flex was the code name, before it was released as LXD), a try.  It's publicly available as a tech preview in Ubuntu OpenStack Juno (authored by Chuck Short, Scott Moser, and James Page).  Here, you can launch OpenStack instances as LXC containers (rather than KVM virtual machines), as "general purpose" system instances.

Finally, perhaps lost in all of the activity here, is a couple of things we're doing different for the LXD project.  We at Canonical have taken our share of criticism over the years about choice of code hosting (our own Bazaar and Launchpad.net), our preferred free software licence (GPLv3/AGPLv3), and our contributor license agreement (Canonical CLA).   [For the record: I love bzr/Launchpad, prefer GPL/AGPL, and am mostly ambivalent on the CLA; but I won't argue those points here.]
  1. This is a public, community project under LinuxContainers.org
  2. The code and design documents are hosted on Github
  3. Under an Apache License
  4. Without requiring signatures of the Canonical CLA
These have been very deliberate, conscious decisions, lobbied for and won by our engineers leading the project, in the interest of collaborating and garnering the participation of communities that have traditionally shunned Canonical-led projects, raising the above objections.  I, for one, am eager to see contribution and collaboration that too often, we don't see.

Cheers!
:-Dustin

Read more
Michael Hall

A couple of weeks ago we announced the start of a contest to write new Unity Scopes. These are the Dash plugins that let you search for different kinds of content from different sources. Last week Alan Pope posted his Scopes Wishlist detailing the ones he would like to see. And while I think they’re all great ideas, they didn’t particularly resonate with my personal use cases. So I’ve decided to put together a wishlist of my own:

Ubuntu Community

I’ve started on one of these in the past, more to test-drive the Scope API and documentation (both of which have changed somewhat since then), but our community has a rather large amount of content available via open APIs or feeds, that could be combined into making one really great scope. My attempt used the LoCo Team Portal API, but there is also the Planet Ubuntu RSS feed (also feeds from a number of other websites), iCal feeds from Summit, a Google calendar for UbuntuOnAir, etc. There’s a lot of community data out there just waiting to be surfaced to Ubuntu users.

Open States

My friend Paul Tagliamante works for the Sunlight Foundation, which provides access to a huge amount of local law and political data (open culture + government, how cool is that?), including the Open States website which provides more local information for those of us in the USA. Now only could a scope use these APIs to make it easy for us citizens to keep up with that’s going on in our governments, it’s a great candidate to use the Location information to default you to local data no matter where you are.

Desktop

This really only has a purpose on Unity 8 on the desktop, and even then only for a short term until a normal desktop is implemented. But for now it would be a nice way to view your desktop files and such. I think that a Scope’s categories and departments might provide a unique opportunity to re-think how we use the desktop too, with the different files organized by type, sorted by date, and displayed in a way that suits it’s content.

There’s potential here to do some really interesting things, I’m just not sure what they are. If one of you intrepid developers has some good ideas, though, give it a shot.

Comics

Let’s be honest, I love web comics, you love web comics, we all love web comic. Wouldn’t it be super awesome if you got the newest, best webcomics on your Dash? Think about it, get your XKCD, SMBC or The Oatmeal delivered every day. Okay, it might be a productivity killer, but still, I’d install it.

Read more
Colin Ian King

Before I started some analysis on benchmarking various popular file systems on Linux I was recommended to read "Systems Performance: Enterprise  and the Cloud" by Brendan Gregg.

In today's modern server and cloud based systems the multi-layered complexity can make it hard to pin point performance issues and bottlenecks. This book is packed full useful analysis techniques covering tracing, kernel internals, tools and benchmarking.

Critical to getting a well balanced and tuned system are all the different components, and the book has chapters covering CPU optimisation (cores, threading, caching and internconnects),  memory optimisation (virtual memory, paging, swapping, allocators, busses),  file system I/O, storage, networking (protcols, sockets, physical connections) and typical issues facing cloud computing.

The book is full of very useful examples and practical instructions on how to drill down and discover performance issues in a system and also includes some real-world case studies too.

It has helped me become even more focused on how to analyse performance issues and consider how to do deep system instrumentation to be able to understand where any why performance regressions occur.

All-in-all, a most systematic and well written book that I'd recommend to anyone running large complex servers and cloud computing environments.






Read more
Michael Hall

Next week we will be kicking off the November 2014 Ubuntu Online Summit where people from the Ubuntu community and Canonical will be hosting live video sessions talking about what is being worked on, what is currently available, and what the future holds across all of the Ubuntu ecosystem.

uos_scheduleWe are in the process of recruiting sessions and filling out the Summit Schedule for this event, which should be finalized at the start of next week. You can register that you are attending on the Summit website, where you can also mark specific sessions that you are interested in and get a personalized view of your schedule (and an available iCal feed too!) UOS is designed for participation, not just consumption. Every session will have active IRC channel that goes along with it where you can speak directly to the people on video. For discussion sessions, you’re encouraged to join the video yourself when you want to join the conversation.

Moreover, we want you to host sessions! Anybody who has an idea for a good topic for conversation, presentation, or planning and is willing to host the video (meaning you need to run a Google On-Air Hangout) can propose a session. You don’t need to be a Canonical employee, project leader, or even an Ubuntu member to run a session, all you need is a topic and a willingness to be the person to drive it. And don’t worry, we have track leads who have volunteered to help you get it setup.

These sessions will be split into tracks, so you can follow along with the topics that interest you. Or you can jump from track to track to see what everybody else in the community is doing. And if you want to host a session yourself, you can contact any one of the friendly Track Leads, who will help you get it registered and on the schedule.

Ubuntu Development

Those who have participated in the Ubuntu Developer Summit (UDS) in the past will find the same kind of platform-focused topics and discussions in the Ubuntu Development track. This track covers everything from the kernel to packaging, desktops and all of the Ubuntu flavors.

The track leads are: Will CookeŁukasz ZemczakSteve LangasekAntonio Rosales, and Rohan Garg

App & Scope Development

For developers who are targeting the Ubuntu platform, for both apps and Unity scopes, we will be featuring a number of presentations on the current state of the tools, APIs and documentation, as well as gathering feedback from those who have been using them to help us improve upon them in Ubuntu 15.04. You will also see a lot of planning for the Ubuntu Core Apps, and some showcases of other apps or technologies that developers are creating.

The track leads are: Tim PeetersMichael HallAlan Pope, and Nekhelesh Ramananthan

Cloud & DevOps

Going beyond the core and client side, Ubuntu is making a lot of waves in the cloud and server market these days, and there’s no better place to learn about what we’re building (and help us build it) that the Cloud & Devops track. Whether you want to roll out your own OpenStack cloud, or make your web service easy to deploy and scale out, you will find topics here that interest you.

The track leads are: Antonio RosalesMarco CeppiPatricia Gaughen, and José Antonio Rey

Community

The Ubuntu Online Summit is itself a community coordinated event, and we’ve got a track dedicated to helping us improve and grow the whole community. You can use this to showcase the amazing work that your team has been doing, or plan out new events and projects for the coming cycle. The Community Team from canonical will be there, as well as members of the various councils, flavors and boards that provide governance for the Ubuntu project.

The track leads are: David PlanellaDaniel HolbachSvetlana Belkin, and José Antonio Rey

Users

And of course we can’t forget about our millions or users, we have a whole track setup just to provide them with resources and presentations that will help them make the most out Ubuntu. If you have been working on a project for Ubuntu, you should think about hosting a session on this track to show it off. We’ll also be hosting several feedback session to hear directly from users about what works, what doesn’t, and how we can improve.

The track leads are: Nicholas SkaggsElfy, and Scarlett Clark

Read more
Rupinder Mann

The Ubuntu scopes contest has kicked off and we’re getting you geared up on how to develop scopes with on air workshops. We’re now bringing you another opportunity to share your views on Ubuntu development by entering the latest Developer Economics Survey.

Our friends at Vision Mobile are aiming the latest survey at mobile and IoT developers. We’d like to invite you to take part in this 10-minute survey and contribute your thoughts on Ubuntu development.

The key findings from the survey will become available as a free research report in February 2015.  Enter the survey now and you’ll also have the chance to win some great prizes, including an iPhone 6, an Oculus Rift DevKit, and a Samsung Gear Smartwatch! Don’t miss out, complete the 10-minute survey now!

Read more
Dustin Kirkland

Say it with me, out loud.  Lex.  See.  Lex-see.  LXC.

Now, change the "see" to a "dee".  Lex.  Dee.  Lex-dee.  LXD.

Easy!

Earlier this week, here in Paris, at the OpenStack Design Summit, Mark Shuttleworth and Canonical introduced our vision and proof of concept for LXD.

You can find the official blog post on Canonical Insights, and a short video introduction on Youtube (by yours truly).

Our Canonical colleague Stephane Graber posted a bit more technical design detail here on the lxc-devel mailing list, which was picked up by HackerNews.  And LWN published a story yesterday covering another Canonical colleague of ours, Serge Hallyn, and his work on Cgroups and CGManager, all of which feeds into LXD.  As it happens, Stephane and Serge are upstream co-maintainers of Linux Containers.  Tycho Andersen, another colleague of ours, has been working on CRIU, which was the heart of his amazing demo this week, live migrating a container running the cult classic 1st person shooter, Doom! between two containers, back and forth.



Moreover, we've answered a few journalists' questions for excellent articles on ZDnet and SynergyMX.  Predictably, El Reg is skeptical (which isn't necessarily a bad thing).  But unfortunately, The Var Guy doesn't quite understand the technology (and unfortunately uses this article to conflate LXD with other random Canonical/Ubuntu complaints).

In any case, here's a bit more about LXD, in my own words...

Our primary design goal with LXD, is to extend containers into process based systems that behave like virtual machines.

We love KVM for its total machine abstraction, as a full virtualization hypervisor.  Moreover, we love what Docker does for application level development, confinement, packaging, and distribution.

But as an operating system and Linux distribution, our customers are, in fact, asking us for complete operating systems that boot and function within a Linux Container's execution space, natively.

Linux Containers are essential to our reference architecture of OpenStack, where we co-locate multiple services on each host.  Nearly every host is a Nova compute node, as well as a Ceph storage node, and also run a couple of units of "OpenStack overhead", such as MySQL, RabbitMQ, MongoDB, etc.  Rather than running each of those services all on the same physical system, we actually put each of them in their own container, with their own IP address, namespace, cgroup, etc.  This gives us tremendous flexibility, in the orchestration of those services.  We're able to move (migrate, even live migrate) those services from one host to another.  With that, it becomes possible to "evacuate" a given host, by moving each contained set of services elsewhere, perhaps a larger or smaller system, and then shut down the unit (perhaps to replace a hard drive or memory, or repurpose it entirely).

Containers also enable us to similarly confine services on virtual machines themselves!  Let that sink in for a second...  A contained workload is able, then, to move from one virtual machine to another, to a bare metal system.  Even from one public cloud provider, to another public or private cloud!

The last two paragraphs capture a few best practices that what we've learned over the last few years implementing OpenStack for some of the largest telcos and financial services companies in the world.  What we're hearing from Internet service and cloud providers is not too dissimilar...  These customers have their own customers who want cloud instances that perform at bare metal equivalence.  They also want to maximize the utilization of their server hardware, sometimes by more densely packing workloads on given systems.

As such, LXD is then a convergence of several different customer requirements, and our experience deploying some massively complex, scalable workloads (a la OpenStack, Hadoop, and others) in enterprises. 

The rapid evolution of a few key technologies under and around LXC have recently made this dream possible.  Namely: User namespaces, Cgroups, SECCOMP, AppArmorCRIU, as well as the library abstraction that our external tools use to manage these containers as systems.

LXD is a new "hypervisor" in that it provides (REST) APIs that can manage Linux Containers.  This is a step function beyond where we've been to date: able to start and stop containers with local commands and, to a limited extent, libvirt, but not much more.  "Booting" a system, in a container, running an init system, bringing up network devices (without nasty hacks in the container's root filesystem), etc. was challenging, but we've worked our way all of these, and Ubuntu boots unmodified in Linux Containers today.

Moreover, LXD is a whole new semantic for turning any machine -- Intel, AMD, ARM, POWER, physical, or even a virtual machine (e.g. your cloud instances) -- into a system that can host and manage and start and stop and import and export and migrate multiple collections of services bundled within containers.

I've received a number of questions about the "hardware assisted" containerization slide in my deck.  We're under confidentiality agreements with vendors as to the details and timelines for these features.

What (I think) I can say, is that there are hardware vendors who are rapidly extending some of the key features that have made cloud computing and virtualization practical, toward the exciting new world of Linux Containers.  Perhaps you might read a bit about CPU VT extensions, No Execute Bits, and similar hardware security technologies.  Use your imagination a bit, and you can probably converge on a few key concepts that will significantly extend the usefulness of Linux Containers.

As soon as such hardware technology is enabled in Linux, you have our commitment that Ubuntu will bring those features to end users faster than anyone else!

If you want to play with it today, you can certainly see the primitives within Ubuntu's LXC.  Launch Ubuntu containers within LXC and you'll start to get the general, low level idea.  If you want to view it from one layer above, give our new nova-compute-flex (flex was the code name, before it was released as LXD), a try.  It's publicly available as a tech preview in Ubuntu OpenStack Juno (authored by Chuck Short, Scott Moser, and James Page).  Here, you can launch OpenStack instances as LXC containers (rather than KVM virtual machines), as "general purpose" system instances.

Finally, perhaps lost in all of the activity here, is a couple of things we're doing different for the LXD project.  We at Canonical have taken our share of criticism over the years about choice of code hosting (our own Bazaar and Launchpad.net), our preferred free software licence (GPLv3/AGPLv3), and our contributor license agreement (Canonical CLA).   [For the record: I love bzr/Launchpad, prefer GPL/AGPL, and am mostly ambivalent on the CLA; but I won't argue those points here.]
  1. This is a public, community project under LinuxContainers.org
  2. The code and design documents are hosted on Github
  3. Under an Apache License
  4. Without requiring signatures of the Canonical CLA
These have been very deliberate, conscious decisions, lobbied for and won by our engineers leading the project, in the interest of collaborating and garnering the participation of communities that have traditionally shunned Canonical-led projects, raising the above objections.  I, for one, am eager to see contribution and collaboration that too often, we don't see.

Cheers!
:-Dustin

Read more
beuno

As the pieces start to come together and we get closer to converging mobile and desktop in Ubuntu, Click packages running on the desktop start to feel like they will be a reality soon (Unity 8 brings us Click packages). I think it's actually very exciting, and I thought I'd talk a bit about why that is.

First off: security. The Ubuntu Security team have done some pretty mind-blowing work to ensure Click packages are confined in a safe, reliable but still flexible manner. Jamie has explained how and why in a very eloquent manner. This will only push further an OS that is already well known and respected for being a safe place to do computing for all levels of computer skills.
My second favorite thing: simplification for app developers. When we started sketching out how Clicks would work, there was a very sharp focus on enabling app developers to have more freedom to build and maintain their apps, while still making it very easy to build a package. Clicks, by design, can't express any external dependencies other than a base system (called a "framework"). That means that if your app depends on a fancy library that isn't shipped by default, you just bundle it into the Click package and you're set. You get to update it whenever it suits you as a developer, and have predictability over how it will run on a user's computer (or device!). That opens up the possibility of shipping newer versions of a library, or just sticking with one that works for you. We exchange that freedom for some minor theoretical memory usage increases and extra disk space (if 2 apps end up including the same library), but with today's computing power and disk space cost, it seems like a small price to pay to empower application developers.
Building on top of my first 2 favorite things comes the third: updating apps outside of the Ubuntu release cycle and gaining control as an app developer. Because Click packages are safer than traditional packaging systems, and dependencies are more self-contained, app developers can ship their apps directly to Ubuntu users via the software store without the need for specialized reviewers to review them first. It's also simpler to carry support for previous base systems (frameworks) in newer versions of Ubuntu, allowing app developers to ship the same version of their app to both Ubuntu users on the cutting edge of an Ubuntu development release, as well as the previous LTS from a year ago. There have been many cases over the years where this was an obvious problem, OwnCloud being the latest example of the tension that arises from the current approach where app developers don't have control over what gets shipped.
I have many more favorite things about Clicks, some more are:
- You can create "fat" packages where the same binary supports multiple architectures
- Updated between versions is transactional so you never end up with a botched app update. No more holding your breath while an update installs, hoping your power doesn't drop mid-way
- Multi-user environments can have different versions of the same app without any problems
- Because Clicks are so easy to introspect and verify their proper confinement, the process for verifying them has been easy to automate enabling the store to process new applications within minutes (if not seconds!) and make them available to users immediately

The future of Ubuntu is exciting and it has a scent of a new revolution.

Read more
David Planella

.tg {border-collapse:collapse;border-spacing:0;border-color:#ccc;margin:20px auto;width:680px !important;} .tg td{font-size:14px;padding:10px 5px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;border-color:#ccc;color:#333;background-color:#fff;} .tg th{font-size:14px;font-weight:normal;padding:10px 5px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;border-color:#ccc;color:#333;background-color:#f0f0f0;} .tg .tg-4eph{background-color:#f9f9f9}

image-phone-naturallyneat-medium

Hot on the heels of the Ubuntu Scopes Showdown start, we’re thrilled to announce the Scopes Workshops sessions to get developers kickstarted and ask all of their questions!

Scopes workshops: learn and ask your questions

In order to support participants of the Scope Showdown, we’re organizing a series of workshops around different topics on writing scopes. These will be 1 hour hands-on sessions where the presenter will be demonstrating the topic live on video, with real code and using the Ubuntu SDK.

These are also meant to be interactive, so during and after the session the presenter will be answering the questions posted in real time by developers on the chat widget on Ubuntu on air. Here’s the schedule for the workshops:

Workshop Time Presenter
Setting up your scopes development environment Thursday, 6th Nov at 16:00UTC David Planella
Introduction to scopes development Thursday, 6th Nov at 17:00UTC David Callé
Adding location support to your scope Thursday, 6th Nov at 18:00UTC Kyle Nitzsche

In a nutshell:

  • WHAT: Scopes workshops
  • WHEN: Thursday, 6th November, starting at 16:00 UTC
  • WHERE: On Ubuntu on air

More on scopes at the Ubuntu Online Summit

Next week another key event in the Ubuntu world is coming: the Ubuntu Online Summit (UOS): 3 days of discussions, workshops and presentations about the upcoming work and plans for the next Ubuntu release.

As part of UOS, we’ll be running another set of workshops, so stay tuned for the schedule to learn more about scopes. Register to attend UOS >

Looking forward to seeing the scopes everyone comes up with!

Read more
David Callé

Ubuntu has a solid location stack, allowing users to select which applications have access to the device location. This also applies to scopes and is very easy to add to your code.

In this short tutorial, you are going to learn how to bring location awareness to your scope.

Read…

scope-blue1scope-blue0

Read more
Nicholas Skaggs

Ubuntu Online Summit: Vivid Edition

Ubuntu Online Summit is once again upon us. This is a community event by and for the community. It's all encompassing and intends to cover a wide range of topics. You don't need to be a developer, project lead, member of a team, or even a member of ubuntu to join and participate. The only requirement is your passion for ubuntu and desire to discuss about it's future with others.

The dates are set as November 12-November 14th from 1400 UTC to 2000 UTC. I am once again privileged to be a track lead for the users track. In my opinion, this is the best track as it's the one the largest number of us within the community can easily feel a part of (just don't like Michael, David, Daniel or Alan know I said that). Do you use ubuntu? Awesome, this is the track for you.

What I'm asking for is sessions. Have an idea for a session? Please propose it! Everything you need to know about participating can be found here. If you've attended things like ubuntu open week or a classroom session in the past, all of those types of sessions are welcome and encouraged.

"The focus of the Users track is to highlight ways to get the most out of Ubuntu, on your laptop, your phone or your server. From detailed how-to sessions, to tips and tricks, and more, this track can provide something for everybody, regardless of skill level."

Regardless of your desire to contribute a session, I would encourage everyone to take a look at the schedule as it evolves and considering joining in sessions they find interesting. In addition, it's not yet too late to offer up ideas for sessions (though I would encourage you to find a way to host the session).

Ready to propose a session? Checkout this page and feel free to ping me or any track lead for help. Don't forget to register to attend and check out the currently scheduled sessions!

Read more
Joseph Salisbury

Meeting Minutes

IRC Log of the meeting.

Meeting minutes.

Agenda

20141104 Meeting Agenda


Release Metrics and Incoming Bugs

Release metrics and incoming bug data can be reviewed at the following link:

  • http://people.canonical.com/~kernel/reports/kt-meeting.txt


Status: Vivid Development Kernel

The master-next branch of our Vivid kernel has bee rebased to the
lastest v3.18-rc3 upstream kernel. We have still witheld uploading to
the archive until we’ve progressed to a later -rc candidate.
—–
Important upcoming dates:
The Vivid ReleaseSchedule has not yet been posted.


Status: CVE’s

The current CVE status can be reviewed at the following link:

http://people.canonical.com/~kernel/cve/pkg/ALL-linux.html


Status: Stable, Security, and Bugfix Kernel Updates – Utopic/Trusty/Precise/Lucid

Status for the main kernels, until today (Nov. 04):

  • Lucid – Verification & Testing
  • Precise – Holding (waiting on upstream CVE fixes)
  • Trusty – Verification & Testing
  • Utopic – Prep

    Current opened tracking bugs details:

  • http://kernel.ubuntu.com/sru/kernel-sru-workflow.html

    For SRUs, SRU report is a good source of information:

  • http://kernel.ubuntu.com/sru/sru-report.html

    Schedule:

    cycle: 31-Oct through 22-Nov
    ====================================================================
    31-Oct Last day for kernel commits for this cycle
    02-Nov – 08-Nov Kernel prep week.
    09-Nov – 15-Nov Bug verification & Regression testing.
    16-Nov – 22-Nov Regression testing & Release to -updates.


Open Discussion or Questions? Raise your hand to be recognized

No open discussion.

Read more
Nicholas Skaggs

Autopilot Feature Primer

Autopilot celebrated it's 2 year anniversary as an independent project this summer. During that time it has developed into a useful tool for testing application UI's for gtk and qt toolkits. Support has also been extended to MIR as well as phablet devices.

With this in mind, I thought it would be useful to bring attention to some new and under-used features of autopilot, along with providing a brief explanation of some companion tools you might find useful. Thus I present to you, an autopilot primer. Let's talk through some new features shall we?

Python3 Support
Autopilot started as a python2 tool but has since migrated to python3 and you should too! For now the entire source tree remains python2 compatible, but you really should migrate your tests to python3. You'll notice the autopilot3 binary in newer releases which should be used to run autopilot with python3.

Scenario Support
Scenarios are a wonderful way to keep your tests simple and easy to read while allowing you to test with many different inputs. In short, you might need to test several edge cases as part of your acceptance testing. This is most easily accomplished by keeping the test itself generic and utilizing a scenario to vary your inputs. You can check out more information on scenarios specific to autopilot in the autopilot documentation.

Screenshots / Video
Autopilot allows you to get a video recording of a test failure. To make sure autopilot records failures, install recordmydesktop and pass the -r argument to your autopilot3 run command. However, at the moment this requires X so for now it doesn't work with the MIR backend (which things like the ubuntu phone utilize). Fortunately a screenshot at the point of failure when combined with the log is generally sufficient to solving your issue. Getting those screenshots brings us to subunit support.

Subunit Support
By default autopilot generates the test output and logs straight to your console in a text format. However autopilot also supports outputting to xml and subunit. Subunit support is what I would like to highlight for a few reasons. When you set the output format as subunit, you get a few niceties. One of which is an easier to grok format for tools, and the other is screenshots of the application when failures occur. To get a subunit stream, pass the -f subunit argument to your autopilot3 run command. You will want to also pass -O with a filename to save the output to a file as the subunit stream contains binary data.

Test Result Viewer
So, with this subunit test results file, how can you enjoy all of it's goodness? Enter trv, a simple python ui that will let organize the test run in an easy to view manner, including screenshots. The tool is the creation of Thomi Richards who describes it as a quick hack (:p), and has a youtube video demonstrating it's use. It's perfect for viewing the subunit stream and visualizing your test results. For now, it's not packaged but can be easily obtained via launchpad. Grab it with bzr branch lp:trv.

autopilot3 vis
The vis tool allows you to visually interact with the introspection tree after launching an application using autopilot launch. What this means is you can visualize the application in the same way autopilot does at runtime, with live tree updates. It lets you see what autopilot sees, allowing you to interactively build your testcase.

I'll refer you the official tutorial for more information, as well as a youtube video by yours truly. It's from a livestream, but covers what you need to know. autopilot3 vis also contains a search box, and a highlight tool which didn't exist in the orignal version, so it's even nicer now than before. Give it a whirl!

autopilot3-sandbox-run
I talked about this utility when I covered the test runners for autopilot. Still I would be remiss if I didn't mention it again. Everything I said in the test runners for autopilot post still applies, so go have a quick read about how to use the tool if you need more information. This tool enables you to easily run autopilot tests on the desktop in a nested xserver. What that means to you as a test author is that you can run tests without giving up your desktop session. No more waiting for autopilot to hand back control of your mouse after a test. If you are writing tests, you should be using this tool along with autopilot vis mentioned above during your test writing process.

Per test timeout
Although we all only write "good tests", sometimes you may find your test misbehaves. When this happens the test may even not exit cleanly or get stuck in a loop. The result is autopilot and the system under test to wait forever for the test to finish. To prevent a rouge test from killing a test suite run, autopilot is introducing support for per-test timeouts. This has landed in vivid; you'll need version 1.5.0+15.04.20141031-0ubuntu1 or later. To use the feature, add the --test-timeout argument to autopilot run and give is a timeout in seconds.

In conclusion
Autopilot has gotten many new features along the way, and these are but a few of the most recent and important ones. I hope this helps you take another look at what autopilot might be able to help you test. Happy Testing!

Read more
Steph Wilson

We sat down with some of Ubuntu’s unsung Community heroes at the recent Devices Sprint in Washington D.C.

Riccardo and Filippo are two young and passionate developers who have adapted their own software to benefit the whole of the Ubuntu Community. We spoke about how and why they contribute to Ubuntu, and what motivates them to keep giving.

The Community hard at work

(Community gathering at the Sprint)

Riccardo Padovani 

Italian Community site:

http://ubuntu.it/

Personal blog:

http://blog.rpadovani.com/

So Riccardo, how did you get involved in Ubuntu?

I started 3 years ago with the Italian Ubuntu Community as they were looking for someone who could manage the website. I was young and wanted to learn about computer science, so I started for myself. While I was contributing I started to understand what was behind the Ubuntu project and their philosophy, and I thought this was a great project for software. So then I started to do stuff for Ubuntu Touch, where I made new friends and at the same time improved my English and computer science skills.

How does working in the Italian Ubuntu Community fit into your lifestyle?

I’m at University, so in the evenings instead of watching television I open my notebook and do some coding. For me it’s very fun. It’s not something I do because someone is telling me to, I do it for me. I prefer writing code than watching TV haha.

What kind of things have you contributed to Ubuntu so far?

Last year I was mainly working on the Reminder App, but now more recently I’ve started to contribute towards the Web Browser. As I use Ubuntu as my main phone I love seeing the improvements in the software I use everyday, as I know I can do something to improve it. People will benefit when the phone is released, more so on the Italian Community Site for example: when there’s something wrong and someone reports it to me, loads of people can see my work and I can fix it. It’s awesome, as I am getting better experience at the same time.

How did you start to contribute to the Community? How does it work?

I started to use Ubuntu in 2008, but before 2012 I did nothing until I found a project I wanted to get involved with. I think for every project and Community you need to find something you love and want to improve. Opening a new bug when something is wrong is the first step to contributing to an Ubuntu project.

First you find out how the Community works and then you begin to know who you can speak to, which then graduates into a natural evolution.

Does your Community regularly meet-up?

It depends on the team, as some teams are split and do different things. Every 6 months we have a meeting where we can have a beer and socialise. The rest of the year we try to do public hangouts, and then private hangouts on what we’re doing in the next month or so.

Do you find these sprints helpful?

I think during this sprint it takes more energy to do code, because I’m busier talking to people and learning new things. For the people who can or have taught me something I can meet them and say thank you in person, it is nice.

Filippo Scognamiglio

Personal blog:

http://swordfishslabs.wordpress.com/

Hey Filippo, so tell me how did you get involved with Ubuntu?

I started with some gaming applications where I first made MineSweeper. MineSweeper is not in the Ubuntu Store at the moment due to some technicalities and design issues, but it’s all working and should be implemented soon. I also made another game called Ubuntu Netwalk where you connect sources of energy to destinations and then rotate the pieces to solve the puzzle.

I started a new project that was completely unrelated to Ubuntu, which was a terminal emulator. A terminal emulator is a program that emulates a video terminal within some other display architecture.

I published a video of my work and no one cared at the start, but then a few months after I made another video and everyone loses their mind! I was really busy answering emails and questions about it. Then David Planella (Ubuntu Community Team Manager) approached me and asked me to import the terminal to the Ubuntu Touch, as the engine was the same, and so that’s where my Ubuntu story really began.

So, what’s your background?

I am currently studying Computer Engineering at University back in Italy.

Being part of a Community, what does it mean?

I wasn’t part of the Community before doing something relevant, then I got a part after I was approached. Usually people first start with commenting on the forums or fixing bugs, where you begin to build a presence in the Community. For me it was just like falling from the sky, now I want to be more involved in the Community. I never knew all these guys, today I only knew Riccardo, Alan Pope (Engineering Manager) and David Planella through email exchange, that’s it!

How’s the Sprint going for you? 

The Sprint itself is a nice opportunity to see the USA as it is my first time here. For me it is a great opportunity to finally meet the people I have been working with remotely and say thanks. I find it hard when I work from home as you’re on your own, but now I’m here at the sprint I can go grab people and interact more.

When I compare myself to my schoolmates who aren’t involved in Ubuntu or other projects, I can see the benefits it will give me in my career after university.

What motivates you? 

I get motivated by the people I can learn from. In Ubuntu I’m involved with people who are much more experienced than me, so they can teach me new things and I can produce at the same time. Learning from others on your own project or part of Ubuntu is not possible with closed source projects, because with closed source you can have an opinion on what’s good or not. They can’t tell you should do this, they simply have an external point of view.

Another good thing about open source is that you can do a lot more things with less effort. My terminal was taken from another terminal, if it wasn’t open source I would have had to write the terminal from the engine to the user interface. I drew influenced from other engines that have been made and then adapted it to my needs, of which those people who made that engine probably took it from someone else – that’s the beauty of open source.

I am happy if my project goes on and influences something/someone else, and they can take my software and adapt it to their own needs.

(From left to right: Riccardo, Andrew, Filippo and Victor)

(Community meal out)

Read more
Ben Howard

We are pleased to announce that Ubuntu 12.04 LTS, 14.04 LTS, and 14.10 are now in beta on Google Compute Engine [1, 2, 3].

These images support both the traditional user-data as well the Google Compute Engine startup scripts. We have included the Google Cloud SDK, pre-installed as well. Users coming from other Clouds can expect to have the same great experience as on other clouds, while enjoying the features of Google Compute Engine.

From an engineering perspective, a lot of us are excited to see this launch. While we don't expect too many rough edges, it is a beta, so feedback is welcome. Please file bugs or join us in #ubuntu-server on Freenode to report any issues (ping me, utlemming, rcj or Odd_Bloke).

Finally, I wanted to thank those that have helped on this project. Launching a cloud is not an easy engineering task. You have have build infrastructure to support the new cloud, create tooling to build and publish, write QA stacks, and do packaging work. All of this spans multiple teams and disciplines. The support from Google and Canonical's Foundations and Kernel teams have been instrumental in this launch, as well the engineers on the Certified Public Cloud team.

Getting the Google Cloud SDK:

As part of the launch, Canonical and Google have been working together on packaging a version of the Google Cloud SDK. At this time, we are unable to bring it into the main archives. However, you can find it in our partner archive.

To install it run the following:

  • echo "deb http://archive.canonical.com/ubuntu $(lsb_release -c -s) partner" | sudo tee /etc/apt/sources.list.d/partner.list
  • sudo apt-get update
  • sudo apt-get -y install google-cloud-sdk


Then follow the instruction for using the Cloud SDK at [4]


[1] https://cloud.google.com/compute/docs/operating-systems#ubuntu
[2] http://googlecloudplatform.blogspot.co.uk/2014/11/curated-ubuntu-images-now-available-on.html
[3] http://insights.ubuntu.com/2014/11/03/certified-ubuntu-images-available-on-google-cloud-platform/
[4] https://cloud.google.com/sdk/gcloud/

Read more

I was just having a discussion with my friends about If I Were You adding an extra pre-roll advertisement to their latest podcast, and it inspired me to write about my moral opinion of advertising in general.

Selling consumers

By choosing to add an advertisement to a magazine article, TV show or podcast, the content creator is choosing to sell a portion of their audience's attention. The audience has devoted their time to watch the actual content, but they are instead subjected to watching an advertisement for a random product.

Now you could argue that everyone who watches any media with ads knows that this is the deal. They are choosing to watch the show, knowing it is ad-supported, so they should be allowed to make that choice. Where's the harm?

My problem with it is the insidious effect that it has on that audience, and society at large. The advertising space is up for sale, often simply to the highest bidder. That means that whoever is willing to pay the most gets to subtly manipulate that audience. Are all those audience members aware that that's what they're signing up for? And even if they are, what about the wider effect on society?

Advertising contributes hugely to obesity, the most serious health problem facing western nations, eating disorders and other psychological problems.

Societal capture

While it is true (and a great thing) that we are all becoming wiser to the tricks of advertisers, adverts still carry a huge amount of power. We all know that campaign finance for US election races basically decides the outcome. If you can spend billions on your campaign adverts, you will almost certainly win.

While possibly not quite as harmful as campaign adverts, I believe the same theory applies to advertising at large. The biggest companies can afford to buy more of these random advertising slots than anyone else, and it has a huge effect on society. Is there anyone who hasn't heard of Coke or McDonalds? How many women don't feel a constant pressure to look slim and beautiful? And this advertising also helps the massive corporations keep their monopolies.

Society is genuinely shaped by the media, and the media is made up of a huge amount of advertisements. This means that the corporations with the most money get to shape society in a way that suits them. And that model for society is always based on bigger profits for those companies, not the interests of society.

If there were fewer media spots up for sale, I believe the whole of society would benefit immesurably.

Advertising is a major culprit in runaway climate change

The biggest and most obvious problem is that advertising, beyond a shadow of a doubt, fuels consumerism and therefore over-consumption. And this consumerism is terribly bad for the climate - the number one danger facing humanity. We are at a point where developed nations are producing emissions at a catastrophic rate. And there's no one culprit - our societies are simply structured to be wasteful. We consume more food than we need, and buy a lot more than we consume. We all fly all over the planet all the time. We buy new clothes, and throw out old ones, far more often than we need to.

And all of this is because big corporations, who are solely interested in us continuing to consume in ever greater quantities, get to be constantly manipulating everyone within society with their money through paid advertisments.

Financing without ads

The problem is, so many free services that we currently enjoy would simply not exist without ads. Most of the digital services we rely on are entirely ad-sponsored (Facebook, Google and Bing's myriad services, Twitter, Youtube). To be fair, Google have worked to make ads a bit less intrusive, and I do think that's a good thing, but it's not like the corporate influence on society seems to have reduced at all since 1998.

If advertising were somehow less profitable, or just too morally odious to justify, then these digital services would have to be based on considerably different profit models, and they may well not exist at all. The obvious alternate model is to simply charge directly for these services, but only a tiny fraction of the people who use these services today would have signed up to pay even a small amount for them. I can't pretend this isn't a difficult problem.

I would genuinely like to see more companies try different profit models. For example, Github provide a full free service for open-source work, but charge for privacy, Humble Bundle let you "pay what you like" for content, and Wikipedia are financed purely through donations.

I also believe that if more companies were more honest and open with their finances, the fans would be more happy to help out by paying donations or subscriptions.

Ethical advertising

Okay, let's be honest, advertising isn't going anywhere. But I still hope that we can try to limit the damage by requiring content creators to be more ethical with their advertising.

I think any advert on any website, TV show, magazine article or whatever should be considered an endorsement. Any criticisms leveled against the advert or the company that made the advert should also be applied to the organisation that chose to give the advertisement air-time. This does happen to some extent (e.g. the This World advert in the Guardian), but I think it should happen more. This would hopefully force organisations to take more ethical responsibility over who they sell advertising space to, which would do a world of good.

It would also be nice if content-creators were choosing adverts, rather than the media company that distributes the content - e.g. adverts in the breaks in the middle of TV shows should be chosen by the TV show authors. This would mean that the fans of the show would at least be watching adverts that the creator chose.

Installing Ad-Block

Some think it's un-ethical to install Ad-Block, as then you are potentially depriving the good content-creators of their revenue.

Given my ethical position on ads, I disagree with this. I think that one of the ways people can help to shape society for the better is to deliberately (and hopefully, vocally) reject things they find obnoxious. Therefore, the very existence of Ad-Block, and the number of people who have installed it, are a statement in opposition to ad-based financing models. And I hope that it might have some small effect in discouraging organisations from choosing to go that way.

Read more
UbuntuTouch

如果你还没有安装好你的环境的话,请参考"Ubuntu SDK 安装"章节来安装好自己的SDK环境。这篇文章的主要目的是为了检查我们所安装的环境是否正确以确保我们所安装的环境是正确的。建议大家观看视频“如何使用Ubuntu SDK”来对本章节有更进一步的认识。

1)  创建一个简单的QML应用
  • 启动Ubuntu SDK
  • 选中菜单"File" ==> "New File or Project"
  • 选中"App with Simple UI"


  • 选中"Choose",然后选择所需要创建的项目的名字接路经,如下:

\



在创建的时候,一定要输入正确的“Maintainer”的格式,否则在以后编译的时候会有问题。
  • 然后接受默认的设置,就可以完成一个简单的QML应该。如下:


打开manifiest.json文件,检查framework的确保设置为“ubuntu-sdk-14.10”。这是目前手机及模拟器支持的framework。如果手机或者自己的emulator不支持我们所选择的framework,我们的应用将无法进行安装。我们可以通过如下的方式来检查我们的手机或模拟器(在模拟器运行起来的情况下)所支持的framework:




2)在Desktop上面运行

我们这时可以选择在IDE左下角的绿色的三角按钮或同时按下Ctrl + R。这样我们就可以在默认的情况下在Desktop下运行该应用。如果我们能够看见如下的画面,说明我们的安装是没有问题的。



3)在模拟器上运行应用

为了能够在模拟器上运行我们的应用,我们可以按如下的操作进行:
  • 启动Ubuntu SDK
  • 选择IDE左侧的"Devices",并同时选中我们已经创建的模拟器(我先前已经创建好myinstance)。同时点击图中的绿色的按钮以启动模拟器。


  • 回到我们先前的界面,如果在创建项目时没有选择emulator Kit的话,我们可以通过如下的方式来再添加:

  • 同时我们设置选好运行时的emulator Kit

  • 使用快捷键Ctrl + R 或点击屏幕左下的三角型的运行按钮。 这样我们就可以看到如下的画面:



如果我们看见这样的画面,我们可以认为我们的模拟器环境是没有问题的。我们可以接下来让这个应用在手机中运行。

3)在手机中运行

为了在手机中运行该应用,我们首先得把自己的手机连接到自己的开发电脑。首先我们必须打开手机中的“开发者模式“。具体步骤可以参照我的另外一篇文章:怎么在Ubuntu手机中打开开发者模式

我们可以通过如下的步骤:
  • 启动Ubuntu SDK
  • 点击IDE 左侧的"Devices",并同时点击"Ubuntu Device" (这是一个默认的名字,该名字可以修改)这时我们在Qt Creator IDE中可以看到如下的界面
  • 点击"AutoCreate"按钮,安装Device Kits。这个过程可能需要一些时间,需要耐心等待
  • 保持"Ubuntu Device"为当前选定的设备



  • 回到项目页面。如果先前在创建应用时没有选择手机的Kit,我们可以通过如下的方式加入

  • 同时选择运行时的Kit

  • 直接使用快捷键Ctrl + R或按下屏幕左下方的运行按钮(绿色的三角按钮)。这样就可以在手机上看到该应用的运行情况。


  • 按下”Application Ouput“窗口中的红色正方形按钮,将会终止应用在手机上的运行:



4)创建一个"App with QML extension Library" 应用

现在我们来创建一个带有QML extension Libray的应用,并运行它:







我们选择默认的设置,直至到如下的界面:



记得选中"Ubuntu Device (GCC armhf-ubuntu-sdk-14.10-utopic)",这样是为了可以在以后在手机上面直接运行。如果在创建的时候没有选上,可以在主界面中,选中"Projects",并选中”Add Kit".



为了使得该应用在模拟器中运行:
  • 点击"Devices", 然后点击自己先前创建的模拟器(对我的情况是myinstance)
  • 点击模拟器中绿色的按钮以启动模拟器
  • 如果"Device Kits"没有被添加,点击"AutoCreate"按钮进行安装。期间如果没有安装相应的chroot,系统会提示你安装相应的chroot。如果是这样的话,安装的过程可能需要一定的时间,请耐心等待



  • 等"Device Kits"安装完后,就是如下的画面:


  • 回到"Projects"界面,点击"Add Kit"。选中刚刚创建的"myinstance (GCC i386-ubuntu-sdk-14.10-utopic)" (这个名字可能会和你自己选择的名字不同)
  • 选择IDE左下角的桌面图标,然后选择不同的架构进行运行即可。对模拟器架构来说,选择”myinstance (GCC i386-ubuntu-sdk-14.10-utopic)"。这样就可以使得应用在模拟器中运行了

5)怎么import一个项目并运行它

我们知道,目前我们的SDK支持两种的项目文件:
  • 具有.qmlproject后缀的项目文件,比如“Flickr.qmlproject”。这种情况针对的是项目没有C++代码的纯QML/Javascript项目。目前在SDK中,”App with Simple UI“及”App with tabbed UI"都是这类的项目
  • 具有“CMakeLists.txt”的项目文件。这类项目通常是有C++代码的项目
无论对哪种项目来说,我们只需要打开项目的项目文件即可import整个项目。具体操作如下:



我们也可以直接使用热键Ctrl +O




一旦项目被import进来后,我们就可以直接按我们先前将的方法在不同的架构下运行我们的应用了。如果有的架构没有被加入,我们可以使用如下的方法加入:





一旦选择好我们的架构,可以按下IDE左下角的绿色按钮或热键Ctrl + R。



6)编译并运行我们的Core Apps

如果大家对Ubuntu OS的Core Apps感兴趣的话,可以参考文章“如何编译并安装Ubuntu OS Core Apps”进行编译及运行。

总结,在这编文章中,我们介绍了怎么创建一个最基本的应用及怎么在不同的框架中运行该应用。通过这样的实践,我们可以检验我们的安装环境是否正确,同时也达到熟悉整个的运行环境的目的。在下一个章节中,我们将介绍怎么生成一个click安装包,并如何安装它到手机中。如果开发者想把自己的应用部署到手机上,请阅读文章“怎么安装Ubuntu应用到Device中”。


作者:UbuntuTouch 发表于2014-8-6 9:47:52 原文链接
阅读:238 评论:0 查看评论

Read more