Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 44 additions & 0 deletions _episodes/0411/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
layout: default
date: 2025-07-30
number: 411
---

# Episode 411: Jul 30th, 2025

## Links
* [Watch this episode on Air Mozilla](https://mzl.la/joy-of-coding-2025-07-30)
* [Joplin Agenda](https://mikeconley.ca/joc/agendas/Episode-0411.html)

## Topics
* ![Alt text](https://mikeconley.ca/joc/agendas/images/62cb34e898154ae09e9cd1cee238632c "keanu code 411")
- https://www.keanu.codes/?code=411
- 411 - Length Required
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/411
* Fixing moz-cached-ohttp protocol handler for SVG images (which are actually documents!)
- OHTTP (ObliviousHTTP)
- https://www.ietf.org/rfc/rfc9458.html
- moz-cached-ohttp protocol that I added
- https://firefox-source-docs.mozilla.org/browser/components/mozcachedohttp/docs/index.html
- I'll explain the problem, maybe we can write at test case!
- https://bugzilla.mozilla.org/show_bug.cgi?id=1980239

* [Rate this episode](https://forms.gle/vX3p3D5dFuqz68KP9)

## Chat
* [Join us on Matrix!](https://matrix.to/#/!enWuAmKDOEEPYejXRk:mozilla.org?via=mozilla.org&via=raim.ist)

## Other
* [Felicia Bacon](https://www.youtube.com/channel/UCMtqVykGztIYmj7OpFf7oeQ/videos)
* [npb hacks](https://www.twitch.tv/BackToTheCode) on the SpiderMonkey JS engine
* [Compiler Compiler](https://www.twitch.tv/codehag) live stream
* Try out Mozilla [VPN](https://vpn.mozilla.org/)
* How mconley uses [Mercurial](https://mikeconley.github.io/documents/How_mconley_uses_Mercurial_for_Mozilla_code)
* [Fission](https://firefox-source-docs.mozilla.org/dom/dom/Fission.html) - Read more about it
* [mozconfigwrapper](https://github.com/ahal/mozconfigwrapper) - A Wrapper to keep different mozconfigs
* [MyQOnly](https://addons.mozilla.org/en-US/firefox/addon/myqonly/) Mikes Addon for showing how many reviews are in your review queue - [Source at Github](https://github.com/mikeconley/myqonly)
* [Mike's Firefox Color Theme](https://addons.mozilla.org/en-US/firefox/addon/electricbluegaloo/)
* Check if a service you are using, has been part of a breach via [Firefox Monitor](https://monitor.firefox.com/breaches)
* [Codetribute](https://codetribute.mozilla.org/) - Help contribute to Firefox, good mentored bugs for You.
- First, [Create](https://bugzilla.mozilla.org/createaccount.cgi) a Mozilla Bugzilla account.

54 changes: 54 additions & 0 deletions _episodes/0412/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
layout: default
date: 2025-08-06
number: 412
---

# Episode 412: Aug 6th, 2025

## Links
* [Watch this episode on Air Mozilla](https://mzl.la/joy-of-coding-2025-08-06)
* [Joplin Agenda](https://mikeconley.ca/joc/agendas/Episode-0412.html)

## Topics
* ![Alt text](https://mikeconley.ca/joc/agendas/images/77ceb7a8a5b144afb46a4c60bc4cbb11 "keanu code 412")
- https://www.keanu.codes/?code=412
- 412 - Precondition failed
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/410
* Update the episode guide
* A lot of permalinks are broken in the episode guide! Not all of them, but a lot of them.
* Shout-out to Canova, who streamed himself hacking on Firefox Profiler things: https://www.youtube.com/watch?v=mb-oFRnS0M4
* Advice / tips for people who want to start livehacking (Mozillians or otherwise)
- Practice. This takes muscle!
- See if you can do 1 hour, 1.5 hours, and see what it does to your voice. See if you can concentrate and actually do things. Watch the recording afterwards - were there big periods of silence where you were thinking in your head and not speaking?
- Do a pilot episode and don't make a big deal out of it.
- Hardware
- Get a good microphone. A Blue Yeti is a classic USB mic that podcasters use. I'm using a Rode NT-1 with a USB interface. Roland UA-25EX.
- Get a decent camera - I'm using an OBSBot Tiny.
- Use OBS and explore. OBS = Open Broadcaster Software
- Have a separate display for OBS.
- Turn off notifications on your software when streaming!
- Shut down non-necessary software that you don't streamed!
- Have a consistent schedule if you can
- Reduce how much overhead there is to produce an episode.
* Another moz-cached-ohttp image bug!

* [Rate this episode](https://forms.gle/YbnHW1iJbDdYp6Hz9)

## Chat
* [Join us on Matrix!](https://matrix.to/#/!enWuAmKDOEEPYejXRk:mozilla.org?via=mozilla.org&via=raim.ist)

## Other
* [Felicia Bacon](https://www.youtube.com/channel/UCMtqVykGztIYmj7OpFf7oeQ/videos)
* [npb hacks](https://www.twitch.tv/BackToTheCode) on the SpiderMonkey JS engine
* [Compiler Compiler](https://www.twitch.tv/codehag) live stream
* Try out Mozilla [VPN](https://vpn.mozilla.org/)
* How mconley uses [Mercurial](https://mikeconley.github.io/documents/How_mconley_uses_Mercurial_for_Mozilla_code)
* [Fission](https://firefox-source-docs.mozilla.org/dom/dom/Fission.html) - Read more about it
* [mozconfigwrapper](https://github.com/ahal/mozconfigwrapper) - A Wrapper to keep different mozconfigs
* [MyQOnly](https://addons.mozilla.org/en-US/firefox/addon/myqonly/) Mikes Addon for showing how many reviews are in your review queue - [Source at Github](https://github.com/mikeconley/myqonly)
* [Mike's Firefox Color Theme](https://addons.mozilla.org/en-US/firefox/addon/electricbluegaloo/)
* Check if a service you are using, has been part of a breach via [Firefox Monitor](https://monitor.firefox.com/breaches)
* [Codetribute](https://codetribute.mozilla.org/) - Help contribute to Firefox, good mentored bugs for You.
- First, [Create](https://bugzilla.mozilla.org/createaccount.cgi) a Mozilla Bugzilla account.

43 changes: 43 additions & 0 deletions _episodes/0413/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
layout: default
date: 2025-08-13
number: 413
---

# Episode 413: Aug 13th, 2025

## Links
* [Watch this episode on Air Mozilla](https://mzl.la/joy-of-coding-2025-08-13)
* [Joplin Agenda](https://mikeconley.ca/joc/agendas/Episode-0413.html)

## Topics
* ![Alt text](https://mikeconley.ca/joc/agendas/images/33432fe483234bb89ce1f0387f13e07d "keanu code 413")
- https://www.keanu.codes/?code=413
- 413 - Content too large
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/413
* Widget prefs for task list / timer:
- browser.newtabpage.activity-stream.widgets.system.enabled
- browser.newtabpage.activity-stream.widgets.system.focusTimer.enabled
- browser.newtabpage.activity-stream.widgets.system.lists.enabled
* Let's work on a utility for generating the JSON recipe, like this: { "addon_version": "143.0.20250805.140919", "xpi_download_path": "newtab-143.0.0-build1/newtab.xpi" }
- https://firefox-ci-tc.services.mozilla.com/tasks/groups/YuPgoiBfSy22-ayNWipNaw

* [Rate this episode](https://forms.gle/T1XfKRQTpPQpbmox5)

## Chat
* [Join us on Matrix!](https://matrix.to/#/!enWuAmKDOEEPYejXRk:mozilla.org?via=mozilla.org&via=raim.ist)

## Other
* [Felicia Bacon](https://www.youtube.com/channel/UCMtqVykGztIYmj7OpFf7oeQ/videos)
* [npb hacks](https://www.twitch.tv/BackToTheCode) on the SpiderMonkey JS engine
* [Compiler Compiler](https://www.twitch.tv/codehag) live stream
* Try out Mozilla [VPN](https://vpn.mozilla.org/)
* How mconley uses [Mercurial](https://mikeconley.github.io/documents/How_mconley_uses_Mercurial_for_Mozilla_code)
* [Fission](https://firefox-source-docs.mozilla.org/dom/dom/Fission.html) - Read more about it
* [mozconfigwrapper](https://github.com/ahal/mozconfigwrapper) - A Wrapper to keep different mozconfigs
* [MyQOnly](https://addons.mozilla.org/en-US/firefox/addon/myqonly/) Mikes Addon for showing how many reviews are in your review queue - [Source at Github](https://github.com/mikeconley/myqonly)
* [Mike's Firefox Color Theme](https://addons.mozilla.org/en-US/firefox/addon/electricbluegaloo/)
* Check if a service you are using, has been part of a breach via [Firefox Monitor](https://monitor.firefox.com/breaches)
* [Codetribute](https://codetribute.mozilla.org/) - Help contribute to Firefox, good mentored bugs for You.
- First, [Create](https://bugzilla.mozilla.org/createaccount.cgi) a Mozilla Bugzilla account.

66 changes: 66 additions & 0 deletions _episodes/0414/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
layout: default
date: 2025-08-20
number: 414
---

# Episode 414: Aug 20th, 2025

## Links
* [Watch this episode on Air Mozilla](https://mzl.la/joy-of-coding-2025-08-20)
* [Joplin Agenda](https://mikeconley.ca/joc/agendas/Episode-0414.html)

## Topics
* ![Alt text](https://mikeconley.ca/joc/agendas/images/23f4022ac0c84e4eb7903704898bcdf7 "keanu code 414")
- https://www.keanu.codes/?code=414
- 414 - URI Too Long
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/414
* New Tab trainhop readyness tool
- Overarching goal: a tool that can be used by an Eng, PM, TPM to assess the viability of the most recent revision (or a specific revision) of the newtab code in mozilla-central (or main) to train-hop to Beta and / or Release.
- Train-hop compatibility state from CI
- Displays train-hop compatibility meta bug stats, and reminds users when a compatibility shim can be removed.
- Localization state (are the strings displayed by default localized in all of the supported locales? If not, which locales are localized and which are not)?
- I want to know if the en-US newtab.ftl is different from the one included in the XPI, because this means that the localizations need to be updated before a train-hop can possibly proceed.
- Glean / Metrics state to see if runtime metrics or pings need to be generated.
- Existing experiments and rollouts on each channel, including existing train-hop jobs
- Version number of what's in main and display it
- Since right now we bump the version number manually, we should also check deployments to see if the major and minor version numbers match with a deployment, which indicates that a minor version bump is necessary.
- Nightly: 144.0.0
- Beta and Release: 144.0.20250820.0800
- Then bump Nightly to 144.1.0
- I want this to be a web-based tool that I can deploy on, say, GitHub pages. I want it to have no server component, I want it to be a normal webpage that uses JS to query Taskcluster and Firefox Nightly repository to produce its report. And then maybe cache the results locally (since once you've checked a particular revision, the results are not going to change).
- User story: Amy wants to know if the current codebase on the top of Firefox's main repository is ready for doing a train-hop. She loads the web-based tool, which automatically queries the most recent merge commit to main to assess its readyness. Amy gets an easy to read report which allows her to know if there's any work to do to make New Tab more ready to do a train-hop (for example, updating strings, regenerating runtime metrics, fixing train-hop compatibility problems, etc). She realizes that there is some work to do before New Tab can be train-hopped, so she goes and files some bugs to make that happen.
- TODO
- Query GitHub for the most recent revision SHA.
- http "https://api.github.com/repos/mozilla-firefox/firefox/commits?sha=main&perpage=1&page=1"
- Check to see if the Mercurial mapping is in the local cache.
- If not, ask [this tool](https://bugzilla.mozilla.org/show_bug.cgi?id=1963822#c3) for a mapping to the Mercurial SHA
- Use the Mercurial SHA and ask Taskcluster JS library for train-hop job status
- Hit https://treeherder.mozilla.org/api/project/mozilla-central/push/?full=true&count=10&revision=[Mercurial SHA] to get back job description
- Extract push id from description (it's the id value), and then request all jobs
- Query https://treeherder.mozilla.org/api/jobs/?pushid=[push id]&jobgroupsymbol=nt-trainhop
- That should give us the pass/fail on the trainhop jobs. Check for repeat platforms to detect intermittents.
- Get newtab.ftl last changed date from GitHub
- Get webext-glue/locales/en-US/newtab.ftl last changed date from GitHub
- Get locales-report.json from GitHub
- Use jq-web library (https://github.com/fiatjaf/jq-web) to query Experimenter for active deploys, rollouts and experiments.

* [Rate this episode](https://forms.gle/PAKbxoJrc85e5Zjq8)

## Chat
* [Join us on Matrix!](https://matrix.to/#/!enWuAmKDOEEPYejXRk:mozilla.org?via=mozilla.org&via=raim.ist)

## Other
* [Felicia Bacon](https://www.youtube.com/channel/UCMtqVykGztIYmj7OpFf7oeQ/videos)
* [npb hacks](https://www.twitch.tv/BackToTheCode) on the SpiderMonkey JS engine
* [Compiler Compiler](https://www.twitch.tv/codehag) live stream
* Try out Mozilla [VPN](https://vpn.mozilla.org/)
* How mconley uses [Mercurial](https://mikeconley.github.io/documents/How_mconley_uses_Mercurial_for_Mozilla_code)
* [Fission](https://firefox-source-docs.mozilla.org/dom/dom/Fission.html) - Read more about it
* [mozconfigwrapper](https://github.com/ahal/mozconfigwrapper) - A Wrapper to keep different mozconfigs
* [MyQOnly](https://addons.mozilla.org/en-US/firefox/addon/myqonly/) Mikes Addon for showing how many reviews are in your review queue - [Source at Github](https://github.com/mikeconley/myqonly)
* [Mike's Firefox Color Theme](https://addons.mozilla.org/en-US/firefox/addon/electricbluegaloo/)
* Check if a service you are using, has been part of a breach via [Firefox Monitor](https://monitor.firefox.com/breaches)
* [Codetribute](https://codetribute.mozilla.org/) - Help contribute to Firefox, good mentored bugs for You.
- First, [Create](https://bugzilla.mozilla.org/createaccount.cgi) a Mozilla Bugzilla account.

55 changes: 55 additions & 0 deletions _episodes/0415/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
---
layout: default
date: 2025-08-27
number: 415
---

# Episode 415: Aug 27th, 2025

## Links
* [Watch this episode on Air Mozilla](https://mzl.la/joy-of-coding-2025-08-27)
* [Joplin Agenda](https://mikeconley.ca/joc/agendas/Episode-0415.html)

## Topics
* ![Alt text](https://mikeconley.ca/joc/agendas/images/b08ff93f94c44aed9186a23c6cf575f9 "keanu code 415")
- https://www.keanu.codes/?code=415
- 415 - Unsupported Media Type
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/415
* Sections in the US!
* The widgets on Beta and Nightly
* Fairly gnarly toolbar bug - 142.0.1 went out today.
* Let's keep going with the tool we wrote! I made some changes. I've copied over the TODOs from last week.
* TODO:
- Query GitHub for the most recent revision SHA.
- http "https://api.github.com/repos/mozilla-firefox/firefox/commits?sha=main&perpage=1&page=1"
- Check to see if the Mercurial mapping is in the local cache.
- If not, ask [this tool](https://bugzilla.mozilla.org/show_bug.cgi?id=1963822#c3) for a mapping to the Mercurial SHA
- Use the Mercurial SHA and ask Taskcluster JS library for train-hop job status
- Hit https://treeherder.mozilla.org/api/project/mozilla-central/push/?full=true&count=10&revision=[Mercurial SHA] to get back job description
- Extract push id from description (it's the id value), and then request all jobs
- Query https://treeherder.mozilla.org/api/jobs/?pushid=[push id]&jobgroupsymbol=nt-trainhop
- That should give us the pass/fail on the trainhop jobs. Check for repeat platforms to detect intermittents.
- Get newtab.ftl last changed date from GitHub
- Get webext-glue/locales/en-US/newtab.ftl last changed date from GitHub
- Get locales-report.json from GitHub
- Use jq-web library (https://github.com/fiatjaf/jq-web) to query Experimenter for active deploys, rollouts and experiments.

* [Rate this episode](https://forms.gle/JPF5hBvf4xJbMUSz5)

## Chat
* [Join us on Matrix!](https://matrix.to/#/!enWuAmKDOEEPYejXRk:mozilla.org?via=mozilla.org&via=raim.ist)

## Other
* [Felicia Bacon](https://www.youtube.com/channel/UCMtqVykGztIYmj7OpFf7oeQ/videos)
* [npb hacks](https://www.twitch.tv/BackToTheCode) on the SpiderMonkey JS engine
* [Compiler Compiler](https://www.twitch.tv/codehag) live stream
* Try out Mozilla [VPN](https://vpn.mozilla.org/)
* How mconley uses [Mercurial](https://mikeconley.github.io/documents/How_mconley_uses_Mercurial_for_Mozilla_code)
* [Fission](https://firefox-source-docs.mozilla.org/dom/dom/Fission.html) - Read more about it
* [mozconfigwrapper](https://github.com/ahal/mozconfigwrapper) - A Wrapper to keep different mozconfigs
* [MyQOnly](https://addons.mozilla.org/en-US/firefox/addon/myqonly/) Mikes Addon for showing how many reviews are in your review queue - [Source at Github](https://github.com/mikeconley/myqonly)
* [Mike's Firefox Color Theme](https://addons.mozilla.org/en-US/firefox/addon/electricbluegaloo/)
* Check if a service you are using, has been part of a breach via [Firefox Monitor](https://monitor.firefox.com/breaches)
* [Codetribute](https://codetribute.mozilla.org/) - Help contribute to Firefox, good mentored bugs for You.
- First, [Create](https://bugzilla.mozilla.org/createaccount.cgi) a Mozilla Bugzilla account.

49 changes: 49 additions & 0 deletions _episodes/0416/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
layout: default
date: 2025-09-24
number: 416
---

# Episode 416: Sep 24th, 2025

## Links
* [Watch this episode on Air Mozilla](https://mzl.la/joy-of-coding-2025-09-24)
* [Joplin Agenda](https://mikeconley.ca/joc/agendas/Episode-0416.html)

## Topics
* ![Alt text](https://mikeconley.ca/joc/agendas/images/9c953d188c7f402086dc6c26a551d5b3 "keanu code 416")
- https://www.keanu.codes/?code=416
- 416 - Range Not Satisfiable
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/416
* TODO
- [x] Get rid of spurious semicolon
- [x] Test that jobs go red if there are more than 2 failures per job/platform pair and no passes
- [ ] Clean up the locales report
- [x] I want to not show rows if there are no missing or pending strings
- [x] Compute strings that are missing vs pending
- [x] I want each locale row to tell me how many are missing, and how many are pending
- [ ] If newtab.ftl in Nightly is newer, I want to link to its revision log
- [x] "Train-hopping is blocked." is too strong, it _might_ be blocked. It's up to us to decide.
- [x] When expanded, I want the list to be more readable and maybe to link out to Pontoon for the missing string
- [x] I want the list of missing / pending strings to be constrained and scrollable
- [ ] Use jq-web library (https://github.com/fiatjaf/jq-web) to query Experimenter for active deploys, rollouts and experiments.

* [Rate this episode](https://forms.gle/pfQKtJqBA81V4AMx5)

## Chat
* [Join us on Matrix!](https://matrix.to/#/!enWuAmKDOEEPYejXRk:mozilla.org?via=mozilla.org&via=raim.ist)

## Other
* [Felicia Bacon](https://www.youtube.com/channel/UCMtqVykGztIYmj7OpFf7oeQ/videos)
* [npb hacks](https://www.twitch.tv/BackToTheCode) on the SpiderMonkey JS engine
* [Compiler Compiler](https://www.twitch.tv/codehag) live stream
* Try out Mozilla [VPN](https://vpn.mozilla.org/)
* How mconley uses [Mercurial](https://mikeconley.github.io/documents/How_mconley_uses_Mercurial_for_Mozilla_code)
* [Fission](https://firefox-source-docs.mozilla.org/dom/dom/Fission.html) - Read more about it
* [mozconfigwrapper](https://github.com/ahal/mozconfigwrapper) - A Wrapper to keep different mozconfigs
* [MyQOnly](https://addons.mozilla.org/en-US/firefox/addon/myqonly/) Mikes Addon for showing how many reviews are in your review queue - [Source at Github](https://github.com/mikeconley/myqonly)
* [Mike's Firefox Color Theme](https://addons.mozilla.org/en-US/firefox/addon/electricbluegaloo/)
* Check if a service you are using, has been part of a breach via [Firefox Monitor](https://monitor.firefox.com/breaches)
* [Codetribute](https://codetribute.mozilla.org/) - Help contribute to Firefox, good mentored bugs for You.
- First, [Create](https://bugzilla.mozilla.org/createaccount.cgi) a Mozilla Bugzilla account.

Loading