Reminder - no plan survives breakfast.
- Feel free to send pull requests to the repo!
- Here’s a contributing guide!
- Here’s the guide for creating pull requests that smurfd used and recommends!
Today
Let's review a patch!
- https://phabricator.services.mozilla.com/D142898
Let's go through some needinfos!
Questions:
Hey, have i dreamt or have you said you use a site called Roll20? Seems as of late it is not working so good with Webcams and Firefox. Was thinking of filing a bug for it but not sure how to give a good bug report. I can see my camera, but my friends cant see my camera... and i cant see theirs if they use firefox. but if they use say Chrome i can see them but they cant see me until i switch to chrome? br smurfd
- It sounds like we're having trouble sending a feed... or, the correct camera device isn't being used.
- How to file a good bug for this:
- https://webcompat.com/
- Describe the steps to reproduce
in JoC 237 you reviewed a MSU Capstone patch for:
https://bugzil.la/1678390 - Prevent Picture-in-Picture windows from opening on top of one another
Bug patches subsequently failed to land and i thought it would be interesting to revisit, with an overview post-mortem of what can cause a submitted patch to fail autoland?
summary of patch behaviour from the episode:
start with pip window1 which has left-top xy coordinate
try to fit pip window2 to the left/right/above/below of window1
if there is enough room, then use this optimal side-by-side placement for window2.
if there is not enough room (e.g. window1 fills majority of screen), then the episode mentioned adding an xy offset to window2, so there is still a fix for the 100% overlap of current behaviour.
i assume like "cascade" i.e. https://www.tenforums.com/tutorials/78477-cascade-windows-windows-10-a.html
Hopefully you could either propose a fix to the patch, or alternatively add a comment to the bug indicating a likely method needed for it to be fixed by a future assignee?
Next week: Maybe back in the office to stream?!
Chat
- Join us in the Livehacking room on Mozilla’s Matrix instance! Here’s documentation on how to join. I’m only sorta monitoring the Twitch chat. A bot will try to bridge Matrix and Twitch (joc-bridgebot).
Links
- nbp hacks on the SpiderMonkey JS engine
- Alessandro Castellani has been streaming himself livehacking on Thunderbird
- emilio hacks on Firefox!
- Compiler Compiler - watch a Mozilla engineer hack on the SpiderMonkey JavaScript engine!
- How mconley uses Mercurial
- Fission - what is it, and how does it work?
- Andreas Kling hacks on a custom browser engine for a hand-rolled OS called SerenityOS
- The Joy of Coding: Community-Run Episode guide
- Feel free to send pull requests to the repo!
- Here’s the guide for creating pull requests that smurfd used and recommends!
- Check out Josh Marinacci hacking on Firefox Reality, our nascent VR browser!
- I've been mirroring the episodes to YouTube
- Code Therapy with Danny O’Brien
- Watch a developer put together a Windows game from scratch (no third-part engines) - really great explanations: https://handmadehero.org/
- /r/WatchPeopleCode for more livehacking!
Glossary
- BHR - “Background Hang Reporter”, a thing that records information about when Firefox performs poorly and sends it over Telemetry
- e10s ("ee ten ESS") - short for Electrolysis, which is the multi-process Firefox project
- CPOW ("ka-POW" or sometimes "SEE-pow") = Cross-Process Object Wrapper. See this blog post.
- Deserialize - "turn a serialized object back into the complex object”
- Serialize - "turn a complex object into something that can be represented as primitives, like strings, integers, etc
- Regression - something that made behaviour worse rather than better. Regress means to “go backward”, more or less.
- l10n - localization
- a11y - accessibility
- i18n - internationalization
- k8s - kubernetes
Feedback
- @mconley@mastodon.social on Mastodon
- @mike_conley on Twitter
- mconley in IRC on irc.mozilla.org
- mikeconley.ca/blog
- mconley at mozilla dot com