1. Parental Controls and Metered Data hackfest
London, UK, 2019-03-18 to 2019-03-21
Primary contact: Philip Withnall <philip@tecnocode.co.uk>
Secondary contact: Rob McQueen <ramcq@gnome.org>
1.1. Relevant GNOME team
gnome-software, gnome-shell, flatpak, gnome-control-center developers; designers
1.2. Description
A hackfest to plan integration of parental controls and metered data features into the wider desktop.
Parental controls and metered data are two separate features, but it seems that they involve a lot of the same people upstream. gnome- software/flatpak/gnome-shell are touched quite a lot by both features.
Parental controls is the ability to prevent installation of apps which are too violent (or intense in other ways) for non-administrator accounts; and to set filters on which installed apps an account may run. Parents would set an account up for their child with such restrictions.
Metered data is the ability to set a policy for when ‘large’ downloads can happen, according to your internet capacity restrictions and a timing schedule. Phase 2 of it is planned to monitor the bandwidth usage of apps for reporting in the system monitor. Phase 3 could apply per-app limits. See https://tecnocode.co.uk/2018/07/13/guadec-2018-thoughts/.
Since there are a few questions about the UX to work out for both features, we’re targetting 3.34 with them. It’s a bit late for 3.32 now.
1.2.1. Agenda, goals
Plan how to integrate Endless’ current parental controls functionality into GNOME for 3.34
- Evaluate existing parental controls functionality from a UX design perspective and iterate on it
- Develop a roadmap for further integration and development of parental controls for 3.34+
Plan how to integrate Endless’ current metered data functionality into GNOME for 3.34
- Evaluate existing metered data functionality from a UX design perspective and iterate on it
- Develop a roadmap for further integration of metered data for 3.34+
- Develop a roadmap for further feature development of metered data, including limiting app bandwidth and collecting per-app statistics
1.2.1.1. Some things to think about before the hackfest
At a higher level, paging back in the design work which has already been done on parental controls and metered data would be useful. A few things I can think of in particular:
- When working on our metered data implementation for OS updates, we did some Shell integration which added an ‘Automatic Updates’ toggle to the settings drop-down. However, we aren’t very satisfied with how this, plus some popup notifications, conveys to the user the status of updates. Are updates available? If so, are they being downloaded, or are they deliberately not because the user’s connection is metered?
- The language around ‘metered data’ and ‘automatic updates’ is something I’ve found a bit tricky. I know what it means, but do users?
- We went with a principle of always allowing explicit user action to override the system’s metered data policy. For example, if an automatic update is held back because the user is on a metered connection, but then they explicitly press the ‘Update’ button, the update should be downloaded regardless. One question which the user is probably going to be asking is “how much will this update cost me if I do it now?”, which is something we don’t currently convey to them. Similarly, when installing a new flatpak app, if the user is given the estimated download cost, they can make a more informed decision about whether to force the download now, or later.
- There were designs for per-app network statics collection and metering being implemented in the new Usage app. How do we tie in to that?
- Regarding parental controls, I think there are fewer issues. One thing which some Endlessers have pointed out is that it’s hard to get a grasp on how different parental controls levels affect what’s visible. i.e. If I limit my child to PEGI 7 vs PEGI 12, what apps does that restrict them from running?
elementary have a different parental controls implementation from Endless, which Adam has documented here, which is worth a read: https://docs.google.com/document/d/1rc3qEdwZfktWg443C78Mc1fdzuTTZ4PncQ-OlzUDrm0/edit?usp=sharing
- Particularly, where in g-c-c is it best for this stuff to live? elementary have a separate panel; Endless has added it to the existing user accounts panel.
- How do we want parental controls to interact with administrator/non-administrator accounts? Currently it’s ignored for administrator accounts.
- Relatedly, do we want to change the gnome-initial-setup experience so it can create non-administrator accounts? For example, to set up a computer with one account for parents, and one for children?
Some screenshots of Endless’ current parental controls and metered data functionality: https://cloud.gnome.org/s/EAHzDL7Gc24abTk
And the initial design documents and wireframes: https://cloud.gnome.org/s/NG3kDm4QC8Zafj9
Regarding testing, there shouldn’t be a need to get a mobile broadband dongle, since you can mark arbitrary NetworkManager connections as metered by ticking the ‘Restrict background data usage’ tickbox in the connection’s properties in the control centre.
1.2.2. Venue
Red Hat London offices, Peninsular House, 30–36 Monument Street, London
https://www.openstreetmap.org/way/142658148
Nearest tube station: Monument (https://www.openstreetmap.org/relation/7673050)
If you’re coming on the Tube, you’re heading to the Monument (the big marble tower). When you pop out the subterranean walkways, it’s a two minute walk.
When you arrive, go up to the 1st floor reception and get a “building pass” from the receptionist. Then go to the 4th floor and go through to the reception area -- if you get stuck in the glass doors ping/ring me and I’ll let you in if the receptionist is somewhere else. As you go through the glass doors, please sign in with the receptionist and then look forwards and diagonal right. The meeting room is the one labelled Leadenhall (Monday–Wednesday) or Spitalfields (Thursday) and just come in and say hello.
The office will be open from 07:00 to 19:00, and the meeting room is booked all day on Monday to Wednesday. It’s booked from 09:00 on Thursday.
1.2.3. Code of Conduct
As for all GNOME-related events, the GNOME Events Code of Conduct and CodeOfConduct/PhotographyPolicy apply.
Any violations of either should be submitted to the event organizers (see above) or the GNOME Code of Conduct Committee
1.2.4. Timeline
- 2019-03-18, morning: Parental controls work
2019-03-18, afternoon (16:30ish onwards): remote discussion with Adam Bieńkowski about elementary OS’ parental controls, either a video call or on IRC
- 2019-03-19: Parental controls work
2019-03-19 at 18:30: GNOME London beers
- 2019-03-20: Metered data work
2019-03-20, evening: hackfest dinner at The Folly, 41 Gracechurch Street; at 19:30
- 2019-03-21: Metered data work
1.2.5. Sponsors
- Venue: Red Hat
- Dinner on Wednesday night: Endless
1.3. Attendees
Name |
Relevant contribution/aim |
Arrives on |
Departs on |
Staying at |
Robert McQueen |
Upstream all the things; Board director; Endless PHB |
TBC |
TBC |
TBC |
Philip Withnall |
Upstream parental controls and metered data developer; Endless developer |
2019-03-18, 07:58 at EUS |
2019-03-21, 20:30 at EUS |
Dover Castle Hostel, 6a Great Dover Street |
Richard Hughes |
GNOME Software Maintainer, OARS initiator; Red Hat employee |
Lives Here |
Lives Here |
Home, ~1h away |
Kalev Lember |
GNOME Software Maintainer; Red Hat employee |
2019-03-18 |
2019-03-22 |
Richard's place |
Georges Stavracas |
GNOME Shell and GNOME Settings developer; Endless developer |
2019-03-16 |
2019-03-22 |
Ibis Hotel @ Earls Court |
Iain Lane |
Canonical/Ubuntu desktop team; Debian developer; GNOME contributor |
2019-03-17 |
2019-03-21 (evening, STP) |
citizenM Tower of London Hotel, 40 Trinity Square, London EC3N 4DJ |
Florian Müllner |
GNOME Shell developer; RH |
2019-03-17 |
2019-03-22 |
Travelodge @ Bethnal Green |
Nick Richards |
Product for Parental Controls and Metered Data when at Endless; Lucid |
Lives In London |
Lives in London |
Home |
Endless desktop team lead |
Lives In London, days TBC |
Home |
||
Designer working across the desktop, mostly interested in metered data |
2019-03-17, 21:22 |
2019-03-20, 19:01 |
Travelodge @ Bethnal Green |
|
Parental Controls & Digital Wellbeing, elementary OS UX architect, GNOME design contributor |
2019-03-17, 12:15 |
2019-03-21, 10:15 |
36 Great St Helen's |
|
Offer font/text/typography UI feedback/input, on Mon & Wed |
Lives Here |
Lives Here |
Top Secret Base |
Officially the room we have booked only has room for 10 people. We could potentially squeeze a few more in, but we should check about this.
1.4. Costs
- Venue: Sponsored by Red Hat
1.5. How to get there
If you are new in London and don’t have a contactless credit/debit card with no overseas transaction fees, it’s extremely recommended to go into one of the Underground stations and get yourself an Oyster card. You’ll pay a lot less on buses and underground. Don’t get the Visitor Oyster card, as you lose a £5 deposit on it.
Contactless credit/debit cards get the same travel prices as Oyster cards, but your card provider might charge overseas transaction fees.
See https://www.londontoolkit.com/briefing/travelcard_oyster.htm.
The quickest way to move around the city is the Underground, also known as "The Tube". Red buses are also fairly easy to catch and can take you anywhere.
If you have a smartphone and a data connection it's highly recommended to download the CityMapper app; it'll help you get anywhere you need to go, and warn you about eventual issues on the way.
1.5.1. From Europe
- Fly to any of the London airports
- Eurostar train to London St. Pancras then tube (Northern Line heading towards Bank station) to Monument station
1.5.2. From faraway places
- Fly to any of the London airports
1.6. Accommodation
Suggested hotels:
Travelodge London City — twin rooms available for £120 per night (you need to check the box for a wheelchair accessible room to get a twin bed)
Ibis New Styles near South Kensington, small room but good enough and 20 mins from RH office — twin rooms available for £116
Ibis at Earls Court, same as above but slightly cheaper, close to the tube.
hub Tower Bridge — twin rooms for around £140 per night
Point A Hotel Shoreditch — have rooms from around £135 a night, including twins (also have locations at Kings Cross and Liverpool Street)
Available couches:
- None yet
1.7. Food
There are a variety of cafes/restaurants/fast food places centred around Monument station.
More places to eat are available at Leadenhall Market, which is a short walk north from the office.
1.8. Previous discussions, organization threads, drafts, relevant links, etc
- Tentative initial discussions on IRC and in private mail thread
1.9. Reports
Parental controls & metered data hackfest: days 1 & 2 by Iain Lane
Parental controls hackfest by Philip Withnall
Metered data hackfest by Philip Withnall
Parental Controls and Metered Data Hackfest, by CassidyBlaede
Parental controls & metered data hackfest: days 3 & 4 by Iain Lane
Restricting users by Georges Basile Stavracas Neto