UDS1311

UDS 13.11 Summaries

App Development

  • Build materials for the App Dev Schools initiative: identified core content we want to cover and additional modules. We will put together presentations with speaker notes, but in a form which can be easily translated or re-used in other formats (ie: videos.)
  • Campaign to grow the number of tutorial videos: Agreed on a format for tutorial videos, the production process and which tutorial video we want to see first. This is going to be a community initiative, where we will put together a multitude of educational videos around app development.
  • Understand what practical desktop usability issues exist with the current SDK: Identified critical apps, which are available already to conduct desktop testing with. Also agreed on a set of core areas of testing and some already known bugs. We will summarise the findings and coordinate with Design and SDK teams to get to milestoned pieces of work.
  • Click Software Store Status and future development: Core pieces of work for 14.04: selling apps, ratings&reviews, reporting malicious apps, automated server-side reviews, honouring device capabilities. Also identified open questions and inter-team dependencies, which will be brought up on the mailing list.

  • Improving the App Development story: Major focus on improving HTML5 support to bring it on par with QML.  Provide a recommended way to build and include C++ plugins in a QML project, make it easy to do it this way.  Add more documentation around AppArmor permissions, which ones to use and when.  Adding developer feedback form to dev portal and Qt Creator, running a regular developer survey, and live, targetted user testing of the SDK tools and process.

  • Materials for porting apps: we will create a section on developer.ubuntu.com with general guidelines on how to port webapps, Cordova apps, iOS and Android apps to Ubuntu, with generic tables of equivalences for APIs from a given platform to Ubuntu.
  • Expanding the API website: adding user/developer contributed content, incorporating doc updates into upstream CI process, adding more docs
  • SDK for HTML5 app deverlopers: the two HTML5 templates will be merged into one that supports both Ubuntu components and Cordova API, Cordova API coverage will be expanded to include device sensors & platform services, will be updating to Cordova 3.3 which officially supports Ubuntu build targets upstream

  • Next Ubuntu App Showdown: Everybody was thrilled with the click package & upload process.  Planned to run in January, desire to have a separate category for games, lots of interest in tablet support and tablets as a prize.  Will be working with SDK developers to get new APIs available in time for use in the contest.

  • Review core apps process: Got great feedback from some of our core apps developers. Planning to have fewer IRC meetings, more hangouts, and better outward communication via mailing lists and regular blogging to get the word out about core app progress.
  • Core Apps Test Review: Identified tests that need to be fixed and how to fix them. Improving how we track test coverage to make sure we are testing every feature.  Will work to categories test failures to separate infrastructure bugs from application bugs.
  • Planning for core apps in the trusty cycle: Selected a subset of core apps to be focus of tablet UI for trusty, and some which will be left as phone/sidestage (unless someone steps up and actively wants to maintain the tablet UI for them). Selected one (Music) to be the pathfinder for tablet UI work, and got commitment from community developers to work on that this cycle. Plan to reach out to community designers to produce wireframes and UI/interaction mockups for tablet UI core apps.
  • Planning for the Reminders App (powered by Evernote): Planned for having a usable version of the Reminders App in time for MWC in February. Some documentation work was identified which needs to be done for the new C++ plugin used by the Reminders app to interface to the Evernote API. Some milestone and bug work identified to track outstanding work items. Basic app bootstrapped and work ongoing to build additional screens and then hook those up to backend.
  • Apps Performance: we are going to perform several analyses on app startup times and on slowdowns when multiple apps are open at the same time. We’re also going to act on mitigation the perception of performance: we’ll be providing a splash screen mechanism for apps to use when they are loading

  • Supporting touch apps on Ubuntu desktop: SDK Components will be individually evaluated and modified for better desktop (mouse/keyboard) use, starting with Toolbars & Tabs.  Will investigate supporting conditional layouts based on available input devices.  Will focus on full desktop convergence for one sample app to work out the whole story.

  • 14.04 Roadmap for System Apps: Significant feature enhancements and test coverage are planned for browser-app, telephony apps, contacts apps and OSK to finish the most important missing features from 13.10. Incremental improvements and increased tests coverage will be added to all other system apps.
  • Apps and easy data access:  Looking into ways to make it easier for developers to add OnlineAccounts/Auth for new webservices, looking into providing easier API access to a variety of webservices
  • Input method support in Ubuntu Keyboard:
  • Music app 14.04 development: Planned to crowdsource designs for convergence. Migrate to the new media scanner API. Look at adding music controls to the sound menu. Team will have regular Hangouts on air with community team.

Client

  • Make click apps runnable from the Unity7 dash: Because of security implications (and the risk of a bad reputation of the security story for click and the store), we want to make use of the Unity8 Desktop session, and the emulator to test apps, and place a security warning for apps running under unity7. Application developers should have an easy way via QtCreator to test their click apps under Unity7.

  • Settings panels for Ubuntu Touch: we are mostly going to iterate over the current version. The focus is on polish, enabling the settings that were disabled because they didn’t have working backend, and improved testing. The background and update panels should see a redesign and we are going to have a new panel for notifications.

  • User data encryption requirements and work for 14.04: Identified key requirements for encrypting user data on Touch. We want to have a secure multi-user design that allows data to be encrypted with per-user keys, support migration of non-encrypted data, and encourage strong login methods to keep data safe on mobile devices. Going forward, we’ll evaluate existing options, do benchmarking, decide on a technology and start the implementation.

  • Ubuntu Trust Store & Trusted Interactions: We identified two main use-cases (Online accounts and Location Service) that we will use to drive forward the trust-store design and the architecture of trusted prompt and interaction sessions. The latter feature not only applies to trusted helpers but also to the more general problem of securely integrating input methods with our security setup. The next steps are the creation of API proposals for the trust-store and trusted prompt sessions. Once those are done, we will start the implementation phases for the trust store and work with the Mir and Shell team to enable application embedding.

  • Assisted GPS with the Location Service: We clarified the main functionality that we need to add to the current location service implementation to enable assisted GPS. We roughly split up the work in (1.) enabling network-based positioning services to acquire early reference positions and (2.) to enable the existing GPS provider to talk to a SUPL server, further enhancing the time to first fix with the aforementioned reference location. This will require work on the hardware abstraction layer to identify and expose all required hooks to the GPS chipset. In addition, we need to enable providers to query wifi and cell id information.
  • Infographics for 14.04:
  • Review of default input method framework for 14.04 LTS: we plan to stay on ibus for the LTS, improving support for fcitx users where we can. We might switch after the LTS, needs to be discussed again next cycle. There is going to be a followup hangout in the next week to discuss details on the ibus support for the LTS.
  • CI Airline: we are going to improve our Continuous Integration story. This will take care of multiple core use case to be able to deliver even faster, in a more control and sane way, all the code that is moving and flowing to ubuntu that we develop upstream.
  • Re-enable sidestage for Unity8 on mir: we are having a great plan to be able to move Mir needs around the tablet story, being able to track multiple windows at one (main and side stage) as well as full screen transition state.
  • Unity8 shell discussion: followup discussion on the needs and what is going to be worked on for Unity8 to reach the tablet and get it straighter on the phone form factor. Side stage will be a key component for that in where you can run your phone application on the tablet. Unity8 will be available in an experimental session on the desktop (but probably with a phablet UI)
  • Status check on Qt 5: more coordination with the Kubuntu guys and wrapup in the cooperation with Debian. The health check is positive and a lot of patch are flowing upstreams. We’ll go and coordinate around Qt 5.2 in 14.04

  • Mediascanner roadmap: confinement is going to be added to the mediacanner. Upstream is going forward and trying to remove as many dependencies as possible like the grilo API. This is going to be replaced by a C++/Qt and QML APIs to be used by for instance music application developers
  • Online Accounts features for 14.04: a lot of discussion around the extensions planned for Online Accounts in 14.04. More trutest helper, support for application to request an account creation, more security with appamor confinement, working with click packages. There are some plans to expose APIs for QML & HTML5 developers.

  • Scopes for Unity 8: We have plans for getting an easy way for developers to create new scopes. Some plumbings work will happen on getting better browsing capabilities to refine searches, e.g. support of departments, embedded filters or links to relevant other scopes or results of other scopes.
  • Go for client side development: Discussion on how we can get go as a general language to develop client applications. Several issues were raised, but we’ll experiment on the QML bindings and trying to met the security requirements will happen this cycle.

  • Make click apps runnable on the desktop: Due to security concerns with X, the saner way will be to have a wrapper to be able to run click apps on non X-environment. The natural way to use them will be the experimental Unity 8 session which will be shipped with 14.04.
  • Design and implement a media service for Ubuntu: the media service wasn’t shipped in Touch v1.0 and we had to whitelist the mediaplayer application to run in the background. This is going to be reverted and use our new media service daemon. Some work on confiment as well is going to happen.

  • Webapps SRU process: the process for webapps SRU is going to be simpler using the fast track process. That way, we won’t have webapps broken for weeks when a web page changes.

  • Desktop Webapps for 14.04: We are going to have an independant specific chromeless window from the webapp. This will give us less regressions as we’ll have simplier firefox/chromium plugin to install a webapp and run the chromeless oxyde container, where we control the base environment in a very secure way.

Cloud & Server

  • Track 1 (Juju Ecosystem)
  • The Great Juju Charm Audit of 2014
  • Leverage new charm tools to create tests (Amulet stubs)
  • Ensure each charm has tests which Charm Testing will iterate over
  • Successfully Audited charms will be promoted into 14.04
  • Bundles as first class citizens in Juju
  • Core features for 14.04  - Manual provisioning, High Availability, API (security) scaling and stability improvements; continuing Juju GUI improvements.
  • destory service should also destroy the machine _after_ prompting user
  • Charm Schools -  2 per month from now on, weekly during April to get people acquainted with Juju
  • Docs! Ansible, Chef, Puppet, Salt, charm interfaces, bundles, and charm quality points
  • New releases of charm tools, charm helpers, and Amulet to help charm authors create, improve, and test charms.
  • Track 2 (Server)
  • MAAS: Maas team will focus on High Availability maas, UEFI support, Hardware enablement kernels, investigate maas inside LXC containers.
  • openstack: We39ll ship Openstack Icehouse on 14.04 and not in the cloud archive.  Users on 12.04 + cloud archive will have a supported upgrade path to 14.04.  We39ll have new charms added for Heat and Ceilometer.  We39ll review and include other openstack projects such as trove, savanah, and ironic.

How will we make all that stuff rock solid, you ask? we39ll improve our upgrade testing and stress testing.  We39ll investigate getting libvirt-lxc testing into openstack39s CI gate and also get non-voting comments for Ice House on Trusty during the development cycle.

  • LXC: lxc 1.0 will arrive in time for 14.04 complete with user namespaces which will be supported on 14.04 kernels.  Secure LXC containers Woot! WOOT!
  • Juju: For Juju we39ll land Juju 2.0 and in main no less, and compile it with gccgo.
  • Around the horn: Oracle MySQL 5.5 will remain in 14.04 with alternatives MariaDB and Percona coming to Ubuntu through debian.  We39ll ship the Firefly release of Ceph. . We39ll do a server seed review and trim the fat. This will mean leaner server and cloud images, and happier security team members.  For the cloud images, we39ll change the partition table to GPT to support images greater than 2  terabytes, and will generally focus on faster instance boot.
  • OpenStack - Icehouse!

  • Packaging
  • Trimming of hypervisor packaging
  • MIR for heat
  • Review/inclusion of trove, savannah and ironic
  • Removal of deprecated neutron plugins
  • Upstream gating for libvirt/LXC driver
  • QA
  • Upgrade and Stress testing
  • OpenStack-on-OpenStack testing

  • Deeper DEP-8
  • 12.04 -> 14.04 upgrade paths via Cloud Archive

  • Charms:
  • Heat and Ceilometer
  • Cinder - multi backend support using subordinates
  • Neutron - Modular Layer 2 Switch
  • Nova - VNC/Spice enablement, Cells
  • Active/Active RabbitMQ
  • Docs and Templates
  • Monitoring and Logging improvements
  • Juju for 14.04
  • 2.0 series release of Juju
  • Main inclusion for 14.04
  • gccgo for Go language support
  • dedicated mongodb package to allow for security vulnerability management
  • Cloud Images / Cloud-init
  • General improvement in boot speed
  • Trimming fat (smaller images)
  • gpt images
  • MAAS: HA Maas, UEFI support, hardware enablement kernels and lxc
  • LXC: LXC 1.0 will arrive with user namespaces enabled by default
  • MySQL
  • Oracle MySQL 5.5 to remain in main for 14.04, 5.5 support until 2018
  • Alternatives entering Ubuntu via Debian; MariaDB and Percona
  • Includes Percona Cluster for Active/Active
  • Ceph
  • Firefly release to ship with 14.04
  • Server Seed
  • Review and trim the fat for a lean, well supported 14.04!

Community

  • Ubuntu Women Trusty Goals: The UW team is going to organise another Career Days event during the cycle. community.u.c will also feature information about the team and interviews/stories are going to be posted more prominently on the team page. The team will also look into offering more mentoring activities.
  • Community IRC Workshops and Classrooms for Trusty: this cycle we want to offer Ubuntu Open Week, Ubuntu Developer Week, Ubuntu App Developer Week and Ubuntu User Days. Dates are going to be finalised in the next few days. We identified a number of teams, who we want to give sessions at the events.
  • LoCo Community involvement in App Development: we are going to identify a couple of LoCo teams which already have active app developers and work with them on pilot-testing our App Dev School materials. Further down the line we will work more closely with people who want to give more of these sessions. We will provide offline materials, speaker notes and instructions. The initial aim will be a full-day workshop with additional modules further down the line.

  • LoCo Portal promotion: we’ll update the LoCo portal’s home page with more dynamic content, including a feed of pictures from LoCo events around the globe. We’ll promote usage of the LoCo portal in social media and we’ll look into creating social media channels for the global LoCo community.

  • LoCo Projects: we will create a pool of projects, with defined goals and outcomes for LoCo teams to pick, to provide ways to get involved for those who want to start contributing to Ubuntu.

  • Community Council Meeting: Live hangout with the CC. Introduction of the new members. Talked about a discussion forum for community organisation - discourse was proposed. Discussed app development as a path towards Ubuntu membership - proposal is going to go out to the Membership Board soon.
  • Limiting Surveillance: a number of good points were discussed during the session: offer HTTPS for apt mirrors, use less browser plugins by default, trying to use more apparmor generally, options for a browser with more privacy, etc.
  • Miscellaneous:
  • We are going to work with the Phonedations team to have some more porting clinics again and help clean up the un-flipped ports.
  • Keeping an eye on how Google Hangouts evolves to see how our community can leverage it to help users

Core

  • Push notifications:
  • Next-generation continuous integration engine: gathered requirements around the new continuous integration engine the CI team is building. This will replace the system of landing asks for getting new features into Ubuntu.

Design

  • In this virtual UDS, we have a Design track. The main purpose of the Design track is for the designers at Canonical to share with the community the projects we have been working on. Here are the highlights:
  • Designing responsive Ubuntu sites: we just launched the alpha version of Ubuntu Resources and are looking for feedback on it. In this release we focused on small screens first, and on how we can make our Web Style Guide — which we will also be making responsive — more useful for those who need to build Ubuntu site: [c12 http://resources.ubuntu.com] and [c12 http://design.ubuntu.com/web-style-guide]

  • Convergence design and components: We will be designing selected apps in tablet first to see how our existing design patterns adapt to a different form factors, and what needs re-thinking
  • Juju GUI design evolution: We talked about how the Juju GUI designs evolved over the last year, and how user research informed alot of the decisions in the new designs.
  • Designing icons for Ubuntu: We presented on the icon project for Ubuntu Touch an Ubuntu Desktop and how it has progressed for different classifications of icons and apps.
  • We hope to be sharing some of the details for the UDS sessions on our Design blog, so please do check it out: [c12 design.canonical.com]

Quality

  • QA Community Workflows We have created a set of roles and activities to help define what we as a community do and how folks can get involved. In addition, we agreed that videos to accompany each of the defined activities would be useful -- keeping them short and simple.
  • Merging bugsquad and the community QA team Historically the bugsquad has been it’s own team. As part of the new roles and workflows we’ve defined for the team, we decided to merge the bugsquad and the quality team. We discussed logistics and decided to combine common things like the mailing lists and wiki, while leaving the independent bug control group alone for now. We also felt the need to start an informal mentor/expert group facilitate knowledge transfer between the two teams.

  • Quality community-run testing events This cycle we wanted to expand the possibilities of what a tester on the team could do. By encouraging community run testing events, we hope community members will be able to work together and have an even larger impact on problem areas that they are domain experts in. We agreed to investigate a mockup design based upon using the wiki to schedule and provide a basic workflow for these testing events.
  • Community exploratory testing As part of the trusty cycle we want to breed a culture of exploratory testing. We agreed to provide a better definition of exploratory testing as well as a basic methodology and tips and tricks for performing the testing. Discussions about how we could measure and coordinate the testing were mixed. Mockups based upon tools will be explored, with the leading thought of using the existing tracker (after making needed modifications to support the different workflow)
  • Startup Disk Creator redesign & renaming proposal The startup disk creator has some long standing bugs, and for the LTS there was some ideas on helping make installing ubuntu easier using this tool. Plans were made to review unetbootin, dd, and SDC to figure out the best approach and then seek to apply a new design and bring the UI forward to qt5 to future proof it.

  • Core Apps Test Review / Touch Core Apps testing needs We reviewed each of the core apps testsuites and talked about some of the pain points in regards to failures. In addition, each of the apps was reviewed and actions taken to fix or enhance tests. In some cases tests were missing for new features and were added as bugs. Overall we decided to eliminate points of failures (things like external networks, or long running tests that cover too many features in on test, etc) and ensure failing tests are fixed or disabled.
  • Autopilot planning for trusty We discussed those new features and pressing issues for autopilot. Namely the migration of autopilot to python3 and the high encouragement to also move tests to python3. Plans were made to start ensure the test runners will support python3 and to examine which tests fail to run under python3. In addition the vis tool was mentioned as needing some attention, along with support added for search.
  • Automated ubiquity testing with autopilot We are making the push to integrate our autopilot installer testing into the release process. Plans include running the existing tests until alpha 1 and then handing them over to the CI team to run on a regular basis as part of the pending/current gating. Results will also be sent to the tracker. Manual test results will continue to be an integral part of testing, with these results helping to do the heavy lifting and allow for deeper manual tests to occur.
  • One hundred papercuts for trusty The one hundred project is being refocused for the trusty cycle. It’s actively seeking out folks of all experience levels to help make ubuntu better, one papercut or “easy bug” at a time. Plans discussed included tweaking the documentation and keeping the existing workflow simple and easy to follow.

UDS/Summaries/UDS1311 (last edited 2015-11-10 20:41:32 by 1)