ParticipationSystems/TuringDay
From MozillaWiki
Contents
- 1 Turing Day
- 2 Inventory of Turing Days
- 2.1 2016-11-25
- 2.2 2016-12-02
- 2.3 2017-01-13
- 2.4 2017-04-07
- 2.5 2017-04-21
- 2.6 2017-05-05
- 2.7 2017-05-19
- 2.8 2017-06-02
- 2.9 2017-06-23
- 2.10 2017-07-10
- 2.11 2017-07-24
- 2.12 2017-08-07
- 2.13 2017-08-21
- 2.14 2017-09-04
- 2.15 2017-09-18
- 2.16 2017-10-02
- 2.17 2017-10-16
- 2.18 2017-10-30
- 2.19 2017-11-13
- 2.20 2019-01-25
- 2.21 2019-02-08
Turing Day
In late November 2016 the Participation Systems team started a Small Uncontrolled Experiment: Turing Day
We aim to have a Turing day every second Friday Monday (day changed after the San Francisco All Hands in June 2017 because we think that will work better). During these days we:
- Sharpen the saw to increase efficiency and reduce maintenance effort
- Hack stuff, fail safely, learn new things, share insights
- Leverage the Internet we build
On Turing Day we try to be as distraction free as possible, so please apologize for delay on email and chat responses.
Inventory of Turing Days
2016-11-25
Session Proposals
- (Nemo) Implement OIDC in AWS lambda
- (Nemo) Prometheus time series and logs
- (Yousef, Nemo) FOSDEM infrastructure talk proposal/preparation
- (Tasos) Progressive web apps: add service workers to Moderator
- (Nikos) Bugzilla REST API fun: build a dashboard similar to Bugs Ahoi
- (Viorela, Yousef) Access emails via python for automated testing (reuse for SSL certificates)
- (Henrik) Beautify the TuringDay page
- (Henrik) 1-minute story on why Henrik refers to a particular person's microphone as "Heal the World mike"
What we did/learned/hacked
- (Henrik) Collapsing content on a Wiki page is not trivial. Failed miserably.
- (Henrik) Heal the World --> We Are The World ... Mission completed. Check out the background story to that "microphone laugh".
- (Nikos) Mentored bugs dashboard gets initial shape.
- (Nemo) Learned about AWS Lambda, AWS ALB and how restrictive AWS is :)
- (Nemo) Investigated how we can implement the authentication part of the automated tests (using auth0 API, by parsing emails, by automating the process with AWS Lambda + AWS SES)
- (Viorela) Imaplib (python library) seems to be a good option for accessing and getting email content. I created a python script that was able to access gmail and zoho accounts and get content from emails with different parameters.
- (Tasos) Played around with service workers. First take on caching assets for offline access. Next steps: Full offline access + sync functionality
ROTI
4.8
2016-12-02
Session Proposals
- (Nikos) Finalize Mentored Bugs dashboard UI and push it on Github pages
- (Tasos) Make moderator installable in a mobile device.
2017-01-13
Session Proposals
- (Henrik) Iterate the Google Data Studio ParSys Dashboard
- (Yousef) AWS per-tag billing metrics
- (Yousef) Per-app metrics with linkerd-viz
- (nemo) Try to build a load balancer (how hard could it be)
- (Viorela) Investigate and fix stale element reference exceptions caused by switching to latest Firefox driver version
- (Tasos) Continue work on service workers in moderator app.
What we did/learned/hacked
- (Henrik) Google Data Studio is still cool. Data source debugging sucks (especially if you are trying to identify a PEBCAK typo). The "share without requiring a login" function does not work. Curious to see if we get any feedback on the Discourse post.
PS: I also put together a quick Equal Rating Innovation Challenge Data Studio report. - (Viorela) New Firefox driver versions (>48) don't have support for implicit wait checks on click that causes another page load. Github issue were there are discussions regarding this topic: https://github.com/mozilla/geckodriver/issues/308. Bugzilla bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1309231
ROTI
Sorry, forgot to measure.
2017-04-07
Session Proposals
- (Henrik) Skipping Turing Day because of the upcoming PLR and a general mess in my inbox. Might take a hit to post/discuss something to #conferences on Mozilla's Slack later on.
- (Nikos) Learn about ReactJS
- (Viorela) Auth0 rules + session information
- (Nemo) KOPS + k8s cluster deployment
- (Tasos) Skipping this Turing Day.
- (Megan) Begin to learn Framer which can help improve UX/UI design output time & early stage demo capabilities.
What we did/learned/hacked
- (Henrik) I hate myself when I am too busy to improve.
- (Nikos) Impressed by ReactJS capabilities. Need more time to get more in-depth knowledge.
- (Megan) Was only able to spend 1.5hrs with Framer, tutorials I engaged with confirmed that this is worth investing future time to.
ROTI
1.75, overall today some of us were too busy to improve. :-(
2017-04-21
Session Proposals
- (Henrik) Out for the Ground Control Conference. Yay!
- (Megan) Will be doing intro work for my 8 week Codeacademy course, looking to fill gaps in my code knowledge with some focused learning. :)
- (Yousef) Add python-decouple in mozillians.org (and try not to break everything)
- (Yousef) Experiment with linkerd-tcp
- (Viorela) Take a look over the ISTQB documentation foundation level
- (Nemo) Kubernetes deployment + KOPS
- (Nikos) Check/Evaluate Frontend testing frameworks and tools
- (Leo) Write some automated tests for Discourse plugins, and learn how to integrate them with Jenkins (if I get that far!)
What we did/learned/hacked
- (Nikos) Most mozilla webdev projects have no frontend unit tests. Jasmine seems to be the best framework and currenty used at Bedrock together with Karma.
- (Yousef) Mozillians docker documentation is super helpful. python-decouple is super easy so far.
- (Nemo) Figured out how awesome KOPS is! Tried various different setup combinations (bastion node, private network, overlay network). Also learned about the different types of app notions k8s has. Good stuff!!
- (Viorela) Started with a sample test which didn't work so well (<50% pass rate), then went through almost half of the ISQTB documentation syllabus.
- (Leo) I now understand what acceptance, unit and integration tests are (and their differences), but don't understand why I can't get them running on my plugin (yet...)
- (Megan) Completed my course intro and am now set up for next weeks first full lesson (HTML basics refresh I believe). Also read through Henrik's downstream read (good one!).
- (Henrik) Ground Control Conference write-up.
ROTI
- 4.2
2017-05-05
Session Proposals
- (Henrik) Opting out because I am spending the day in the Berlin office to meet Developer Marketing and Arielle&George on CoSS. Hope to say hi to Nemo and other Mozillians!
- (Nikos) Dive into Jasmine for frontend testing
- (Viorela) Add & configure new job in parsys Jenkins for session testing tests
- (Megan) Spend a couple hours on my Codeacademy webdev course (CSS this week!).
- (Yousef) Jenkins libraries
Interesting Readings
What we did/learned/hacked
- (Yousef) https://github.com/flamingspaz/partinfra-jenkins-libs - A nicer way to do IRC messages, started working on a deployment library.
- (Nikos) Followed some online resources and courses on Jasmine and Karma. Started writing some tests using moderator as a testbed.
- (Megan) Fun times learning CSS selectors, specificity and things like style chaining. Note: Codeacademy gives much love to MDN in their courses/seminars. :)
ROTI
- (Nikos) 4
- (Megan) 5
2017-05-19
Session Proposals
- (Yousef, Nikos, Tasos, Nemo) Out for the Voxxed Days conference in Athens.
- (Viorela) Report which RPs - prod version - are using silent authentication or delegation endpoint
- (Henrik) Work on Open Innovation #culture-kaizen
- (Megan) Work through CSS display/positioning lessons of my Codecademy web dev class.
Interesting Readings
- (Megan) Looked into SVG optimizers today, found this article and this optimzer.
- (Megan) For those interested in Sketch and the latest tool updates in 44, this article was helpful and exciting. :)
What we did/learned/hacked
- (Henrik) Sent an email to the Open Innovation Management Team explaining how we do things at ParSys (Individual OKRs, public reporting on quarterly ParSys OKR, team experiments such as Failure Swapshop, Delegation Board, Culture Map). Let's see about the feedback.
- (Megan) Spent some time learning flexbox today (w00t!). This Codecademy course is really helping me to design more intentionally for output, love it. Also researched some new SVG optimzers (see above readings) and learned a bit about Sketch 44 updates. LOVE the internet!
- (Viorela) After going through each RP from the list, I realized that, besides testrp, all RPs that have LDAP login are using delegation endpoint. I also organized the list of RPs and identified the ones that are shown in both auth0 dev and prod. Mozilla has a total of 67 RPs in auth0 prod.
ROTI
- (Henrik) 4, feeling relieved that I finally took the time to write these things down.
- (Megan) 5, great mix of learning and output today. Plus a lunch bike ride in the sun. ^Henrik you had it right. ;)
2017-06-02
Session Proposals
- (Henrik) Try to attend an hour of Mozilla's Global Sprint in Munich
- (Yousef) Make a proper Jenkins build notification/Attend Global sprint in London
- (Nikos) Continue the Jasmine and Karma journey
- (Leo) Continue exploring automated tests in Discourse plugins
- (Tasos) Research on how to create dynamic forms though the admin interface in Mezzanine.
- (Megan) Spend a couple hours working on my front-end development course, I've fallen behind this week. :(
Interesting Readings
- (Henrik) Mary Meeker's Internet Trends 2017 report
- (Henrik) Dan North on Applying OKRs
- (Nikos) Resilient Web Design
What we did/learned/hacked
- (Leo) Tried running a quick rspec test I wrote for the discourse-mozilla-iam plugin, but it didn't run (let alone fail). Nuked my dev environment to try and get them working and ended up doing some pretty serious yak shaving in modifying Discourse's docker dev environment scripts to make handling multiple containers easier. Turns out the rspec tests weren't working because I wasn't setting the `RAILS_ENV=testing` environment variable. Set that, and then my tests wouldn't run for another, as-yet-unsolved reason. Still work to do next Turing Day, but I've learnt rather a lot about docker during this one.
- (Megan) This week my codecademy course was a bit duller than usual, mostly about debugging and design, it felt more 'review heavy' than 'new material heavy'. Positive-side: we are getting into animation/transitions though, so looking forward to continuing some learning there this weekend.
- (Henrik) Got caught up in my mailbox, not much Turing Day for me ...
ROTI
- (Leo) 5, tests still don't run, but learnt some things about docker, and made developing discourse on it a whole lot easier for me
- (Megan) 5, just as predicted. ;) Despite 'dullness' of material, happy to be moving forward on my front-end knowledge.
- (Henrik) 2, it was a fail. Did not attend the local Mozilla Code Sprint. :-( at least I read the OKR article and started with the Meeker report.
2017-06-23
Session shifted by one week from JUN 16 to JUN 23.
Session Proposals
- (Nemo) SSH connections backed by IAM (Write an app that generates short lived ssh keys after OIDC authentication. An idea we discussed with kang in this week's tech alignment.)
- (Henrik)
- Had a partial Turing Day on WED when meeting the Munich-based World Food Program Innovation Accelerator.
- Finally want to get the Contributor Research jupyter notebook to run.
Interesting Readings
- (Henrik) An overview of Service Design (on page 10) in Adaptive Path's Service Blueprinting document.
- (Henrik) Introducing the User Map
What we did/learned/hacked
- (Henrik) The WFP Innovation Accelerator rocks, see https://twitter.com/hmitsch/status/874938295016464385
- (Henrik) You need to trust a Jupyter Notebook and things will work like a charm.
ROTI
- (Henrik) 5, I am so glad I was able to meet Hila from WFP. Plus I got the Jupyter Notebook to work today.
2017-07-10
Session Proposals
- (Leo) Learning about Jenkins pipelines for test automation
- (Nikos) Explore Webpack front-end dependency bundler
- (Tasos) Read up on ECMAscript6 latest additions to JavaScript, maybe check out view.js
- (Arielle) Legitimately commit to professional development stuff, e.g. buy tickets, review bookmarks
- (Viorela) Organize first day after PTO (file expenses, understand what happened last week), research parallelize RP login tests, investigate why mozillians stage tests are failing at login
- (Nemo) Learning Rust (side project: proxy for VMs), write-up from Polyconf!!
- (Henrik) Investigate open ends for OKR process improvements (avoid to mix objectives with key results, avoid making on person's key results another person's objectives), see if there is a way to strip certain URL query parameters from Event Labels in Google Analytics
- (Yousef)
Interesting Readings
- (Nikos) Why We Love Vue.js
What we did/learned/hacked
- (Viorela) Managed to go through emails and complete trip report; Mozillians tests are failing at login because the email with the login link contains "https" in the title, and the tests are looking after the link that starts with "https" - this is currently fixed. Also, managed to get the RP tests run in parallel, but I got some failures when login with ldap and trying to enter passcode.
- (Nikos) Feeling more confident using Webpack for single page applications and frontend libraries management. Relevant blog post.
ROTI
- (Nikos) 5
- (Viorela) 5
- (Henrik) Failed in my Turing Ideas. Didn't get to it because of competing priorities. Better luck next time.
2017-07-24
Session Proposals
- (Henrik) Publish Discourse articles on our latest sprint review, the new quarterly OKRs, the implications of launching the SSO Dashboard to our communities
- (Viorela) Refresh python skills by taking advanced python tutorials and reading documentation.
- (Leo) Look at H1 2017 analytics post from Henrik on Discourse, continue learning about jenkins + pipeline + how to devops things, probably read some of codinghorror's blog (because it's always entertaining)
- (Megan) Catch up on Service Design specific reading, specifically techniques for SD Blueprints.
Interesting Readings
- (Henrik) Remote Starter Kit
- (Henrik) The Most Underrated Skill in Management (There are few management skills more powerful than the discipline of clearly articulating the problem you seek to solve before jumping into action.)
- (Henrik) IT July 2017 - Stategic Progam Review (see email from Henrik on FRI 21 JUL 2017)
- (Henrik) Deriving Mozilla contributor insights from web analytics. Comments welcome!
What we did/learned/hacked
- (Leo)
- Poked around in GA a lot, and posted about it
- Sort-of got a Jenkins pipeline running Discourse tests (although they failed due to some weird permissions things). Will probably need Yousef's help to go further
- Wound down at the end of the day reading quite a bit of blog.codinghorror.com, highlights including: Sucking Less Every Year Why I'm The Best Programmer In The World* Why Ruby But You Did Not Persuade Me
- As a result downloaded Letter from a Birmingham Jail and Why's (Poignant) Guide to Ruby to my Kobo to read at a later date.
- (Megan) I failed at catching up on any reading SD related. I in part blame (and thank!) Henrik for posting a more interesting read & toolkit, you distracted & saved my Turing Day!
- (Viorela) Went through python documentation from http://python-guide-pt-br.readthedocs.io/en/latest - that Nemo suggested - and https://www.learnpython.org.
ROTI
- (Leo) 5 - after all, I realised I'm the best programmer in the world
- (Megan) 5 - I still managed to participate -- even if it was a small amount -- and it was totally worth it! P.S. Leo was it the sunglasses that helped along your realization?
- (Viorela) 5 - The time spent on documentation was useful on refreshing and improving python knowledge.
2017-08-07
Session Proposals
- (Viorela) Create documentation for rp_login_tests repository (how to set up, run and write tests).
Interesting Readings
- [super-small effort] (Henrik) A refreshing refresher on S-Curves in technology innovation.
- [medium effort] (Henrik) Why every Product Manager should know Machine Learning.
- [large effort] (Henrik) On Machine Learning and Artificial Intelligence.
- [extra large effort] (Henrik) Andrew Ng's Coursera on Machine Learning.
What we did/learned/hacked
- (Viorela) I was able to write almost 50% of the documentation, still need to test it
ROTI
- (Viorela) 4 - I was hoping this will go faster
2017-08-21
Session Proposals
- (Nikos) CSS Flexbox advanced tips training and CSS Grid
- (Leo) Learn about (and implement) Python unit testing, and Python code style
- (Yousef) Add HTTP Observatory tests to pipeline
- (Viorela) Write and test documentation for login_tests repository
Interesting Readings
- (Nikos) Speed in Software Development
What we did/learned/hacked
- (Nikos) Feel more confident using Flexbox for layouts. Catch up with Grid too, although is not fully supported by everyone yet.
- (Leo) Had a great chat with Tasos about how best to add Discourse integration in Wagtail, Python unit testing and some general Django/Python philosophy - haven't ended up implementing any unit tests yet (with a bit of refactoring being the first step), so today hasn't been as Turingy as it might have been, but I'll end up implementing those sometime in the next sprint.
- (Yousef) Wrote a Jenkins lib class for interacting with the HTTP Observatory API
- (Viorela) Documentation is almost done, still need to add some information regarding passwordless login setup and open a pull request.
ROTI
- (Leo) 5 - feel a lot more confident about coding in Python
- (Viorela) 5
2017-09-04
Pre-Turing Day Brainstorm
- (Leo) Link Wunderlist and Geekbot using some exotic language (python?) to learn stuff about that language, and automate a very tedious task
- Also automatically include GitHub and Discourse activity?
Session Proposals
- (Nikos) CSS Testing, focusing more on regression testing
- (Viorela) - finish with documentation and open pull request; do some research about AWS CodePipeline and figure out how to integrate it with Jenkins
- (Henrik) Shifting Turing Day to Friday when I attend http://mtpcon.com in London
Interesting Readings
- (Nikos) A Nerd’s Guide to Color on the Web
- (Henrik) One Piece Flow vs. Mass Production Envelope Stuffing Lean Thinking Simulation
- (All) Foster intercultural understanding via knock-knock jokes
What we did/learned/hacked
- (Nikos) Experiment with BackstopJS. Seems mature enough for automated regression tests
- (Viorela) PR for documentation: https://github.com/mozilla-iam/rp_login_tests/pull/7. For AWS CodePipeline - Jenkins integration, it looks like AWS CodePipeline Plugin in Jenkins is a good option.
2017-09-18
Session Proposals
- (Nikos) Build some CSS regression tests for CoSS
- (Viorela) Update existing pull requests (on RPS_login_tests + cis_tests repos) and go through (bookmarked in my browser for later reading) python articles.
Interesting Readings
What we did/learned/hacked
2017-10-02
Session Proposals
- (Nikos) IE compatibility, low-bandwidth sites
- (Viorela) Hacktoberfest: Contribute to 4 open source projects and get a t-shirt
- (Henrik) Read Managing Our Hub Economy (see link below)
Interesting Readings
- HBR on Managing Our Hub Economy co-authored by Karim R. Lakhani
What we did/learned/hacked
ROTI
- 3, the HBR article is worth a read but is not life changing.
2017-10-16
Session Proposals
- (Nemo) Prepare major Django upgrade by reading through new features and upgrade tips
- (Henrik) Participating in the Conscious Chooser Behavior Research (field research) in Munich today and throughout the rest of the week. Awesome!
ROTI
2017-10-30
Session Proposals
- (Henrik) Did my Turing Day a couple of weeks ago when I joined the Audience Insights team for Conscious Choosers research in Munich.
Interesting Readings
What we did/learned/hacked
- (Henrik) Summary of Henrik's learning from Munich Conscious Choosers Research
ROTI
2017-11-13
Session Proposals
- (Nemo) Integration testing for mozilla-django-oidc using a headless browser + testing framework (probably slimer.js)
- (Viorela) Follow documentation from mana to get access to FF Test Engineering jenkins instance (check mozillians test run). Go through documentation from https://www.guru99.com/software-testing.html.
- (Nikos) Take a full css accessibility course and experiment with best practices.
ROTI
2019-01-25
Session Proposals
- Bootstrap and JavaScript lessons
- Rust hacking
- PersonAPI CLI client
- Explore SUMO's New Relic
ROTI
- Meh ... we need to get better with our TuringDays. :-)