Schalk Neethling: Resolving Error: pg_config executable not found on Mac |
http://schalk-neethling.co.za/2015/01/resolving-error-pg_config-executable-not-found-on-mac/
|
Mozilla Release Management Team: Firefox 36 beta1 to beta2 |
Beta 2 is a busy beta release. First, because of an holiday in the US, the go to build has been delayed by a day (Tuesday instead of Monday). Second, a lot of fixes for MSE landed.
Extension | Occurrences |
cpp | 80 |
h | 51 |
js | 37 |
ini | 21 |
xml | 15 |
html | 8 |
java | 6 |
list | 4 |
css | 4 |
jsm | 3 |
xul | 2 |
sjs | 2 |
nsi | 2 |
xhtml | 1 |
webidl | 1 |
nsh | 1 |
jsx | 1 |
json | 1 |
in | 1 |
cc | 1 |
Module | Occurrences |
dom | 105 |
browser | 36 |
toolkit | 19 |
mobile | 16 |
media | 13 |
layout | 12 |
netwerk | 11 |
testing | 10 |
security | 8 |
js | 5 |
uriloader | 2 |
gfx | 2 |
xpcom | 1 |
image | 1 |
editor | 1 |
List of changesets:
Armen Zambrano Gasparnian | Bug 1064002 - Fix removal of --log-raw from xpcshell. r=chmanchester. a=testing - 93587eeda731 |
Karl Tomlinson | Bug 1108838 - Move stalled/progress timing from MediaDecoder to HTMLMediaElement. r=cpearce, a=sledru - 15e3be526862 |
Karl Tomlinson | Bug 1108838 - Dispatch "stalled" even when no bytes have been received. r=cpearce, a=sledru - b07f9144d190 |
Jeff Muizelaar | Bug 1090518 - Fix crash during webgl-depth-texture.html conformance test. r=jrmuizel, a=sledru - 36535f9806e6 |
Jan-Ivar Bruaroey | Bug 1098314 - Ignore and warn on turns: and stuns: urls until we support TURN/STUN TLS. r=bwc, a=sledru - 3b4908a629e8 |
Brad Lassey | Bug 1112345 - Tab streaming should scroll stream with layers and not offsets. r=snorp, a=sledru - 3956d52ad3f0 |
Karl Tomlinson | Bug 975782 - Bring media resource loads out of background while they delay the load event. r=cpearce, a=sledru - cdd335426a39 |
Karl Tomlinson | Bug 975782 - Stop delaying the load event when media fetch has stalled. r=cpearce, f=kinetik, a=sledru - 3abc61cb0abd |
Dave Townsend | Bug 1102050 - Set consumeoutsideclicks="false" whenever the popup is opened. r=felipe, a=sledru - a33308dd5af8 |
Brad Lassey | Bug 1115802 - Scrolling no longer working when tab mirroring from fennec. r=snorp, a=sledru - f6d5f2303fea |
Karl Tomlinson | Bug 1116676 - Ensure that AddRemoveSelfReference() is called on networkState changes. r=roc, a=sledru - ad2cfe2a92a5 |
Karl Tomlinson | Bug 1114885 - Allow media elements to be GC'd when their MediaSource is unreferenced. r=roc, a=sledru - 44e174f9d843 |
Dave Townsend | Bug 1094312 - Properly destroy browsers when switching between remote and non-remove pages and override the default destroy method in remote-browser.xml. r=mconley, a=sledru - 08f30b223076 |
Dave Townsend | Bug 1094312 - Fix browser_bug553455.js to handle the cases where the progress notification is hidden before it has fully appeared. r=Gijs, a=sledru - fc494bb31bec |
Dave Townsend | Bug 1094312 - Fix browser_bug553455.js:test_cancel_restart by pausing the download for long enough for the progress notification to show reliably. r=Gijs, a=sledru - b71146fc0e37 |
Margaret Leibovic | Bug 1107925 - Don't launch fennec on search redirects. r=bnicholson, a=sledru - 6796cf5b59b1 |
Mark Hammond | Bug 1116404 - Better timeout semantics for search service geoip lookups. r=felipe, a=sledru - 06bb4d89e2bf |
Magnus Melin | Bug 1043310 - AutoCompletion doesn't take capitalization from address book entry, can leave angle brackets characters >> in field, when loosing focus by clicking outside (not enter/tab). r=mak, a=sledru - 1d406b3f20db |
Matt Woodrow | Bug 1116626 - Null check mDecoder in AutoNotifyDecoded since it might have been shutdown already. r=karlt, a=sledru - e076d58d5b10 |
Matt Woodrow | Bug 1116284 - Don't run MP4Reader::Update after we've shut the reader down. r=cpearce, a=sledru - 2fd2c6de0a87 |
Bobby Holley | Bug 1119456 - Make MP4Demuxer's blocking reads non-blocking and hoist blocking into callers with a hacky retry strategy. r=k17e, a=sledru - fa0128cdef95 |
Bobby Holley | Bug 1119456 - Work around the fact that media cache does not quite guarantee the property we want. r=roc, a=sledru - 18f7174682d3 |
Andrea Marchesini | Bug 1113062 - Part 1: PIFileImpl and FileImpl merged. r=smaug, a=sledru - 23f5b373f676 |
Andrea Marchesini | Bug 1113062 - Part 2: ArchiveReaderZipFile non-CCed. r=smaug, a=sledru - f203230f49f4 |
Andrea Marchesini | Bug 1113062 - IndexedDB FileSnapshot not CCed. r=janv, a=sledru - 962ac9efa80c |
Matt Woodrow | Bug 1105066 - Make SeekPromise return the time we actually seeked to. r=kentuckyfriedtakahe, a=sledru - e16f64387888 |
Matt Woodrow | Bug 1105066 - Chain seeks in MediaSourceReader so that we seek audio to the same time as video. r=kentuckyfriedtakahe, a=sledru - 154dac808616 |
Anthony Jones | Bug 1105066 - Seek after switching reader. r=mattwoodrow, a=sledru - a0ffac1b2851 |
Matt Woodrow | Bug 1119033 - Don't try to evict when we don't have any initialized decoders. r=ajones, a=sledru - a78eb4dd84f0 |
Kai-Zhen Li | Bug 1119691 - Fix build bustage in dom/media/mediasource/MediaSource.cpp. r=bz, a=sledru - 7edfdc36c3cf |
Bobby Holley | Bug 1120014 - Initialize MediaSourceReader::mLast{Audio,Video}Time to 0 rather than -1. r=rillian, a=sledru - 201fee3158c1 |
Bobby Holley | Bug 1120017 - Make the DispatchDecodeTasksIfNeeded path handle DECODER_STATE_DECODING_FIRSTFRAME. r=cpearce, a=sledru - aa8cdb057186 |
Bobby Holley | Bug 1120023 - Clean up semantics of SourceBufferResource reading. r=cpearce, a=sledru - 60f6890d84cf |
Bobby Holley | Bug 1120023 - Fix some bugs in MockMediaResource. r=cpearce, a=sledru - e5cc2f8f3f7e |
Bobby Holley | Bug 1120023 - Switch SourceBufferResource::Read{,At} back to blocking. r=cpearce, a=sledru - 423cb20b5f43 |
D~ao Gottwald | Bug 1115307 - Search bar alignment fixes and cleanup. r=florian, a=sledru - c7e58ab0e1f6 |
Dave Townsend | Bug 1119450 - Clicks on the search go button shouldn't open the search popup. r=felipe, a=sledru - 17b6018c53f0 |
David Keeler | Bug 1065909 - Canonicalize hostnames in nsSiteSecurityService and PublicKeyPinningService. r=mmc, a=sledru - 82cce51fb174 |
Abdelrhman Ahmed | Bug 1102961 - Cannot navigate AMO without closing the Options window. r=florian, a=sledru - 5ac62d0df17e |
JW Wang | Bug 1115505 - Keep decoding to ensure the stream is initialized in the decode-to-stream case. r=roc, a=sledru - 4d3d7478ffa4 |
Olli Pettay | Bug 1108721 - HTMLMediaElement.textTracks needs to be nullable in Gecko for now. r=peterv, a=sledru - 5fba52895751 |
Bobby Holley | Bug 1120629 - Cache data directly on MP4Stream rather than relying on the media cache. r=roc, a=sledru - f7bd9ae15c9e |
Julian Seward | Bug 1119803 - Uninitialised value use in StopPrerollingVideo. r=bobbyholley, a=sledru - 0a648dfd0459 |
Andrea Marchesini | Bug 1111971 - A better life-time management of aListener and aContext in WebSocketChannel. r=smaug, a=abillings - 19e248751a1c |
Ryan VanderMeulen | Backed out changeset e91fcba59c18 (Bug 1119941) because we don't want to ship int in 36b1. a=sledru - 1d99e9a39847 |
Ryan VanderMeulen | Bug 1088708 - Disable testOSLocale on Android x86 for permafailing. r=gbrown, a=test-only - 483bad7e5e88 |
Ryan VanderMeulen | No bug - Adjust some Android reftest expectations now that they're passing again. r=gbrown, a=test-only - 454907933777 |
Mark Banner | Bug 1119765 - Joining and Leaving a Loop room quickly can leave the room as full. Ensure we send the leave notification if we've already sent the join. r=mikedeboer,a=sylvestre - 9b99fc7b7c20 |
Sotaro Ikeda | Bug 1112410 - Handle set dormant during seeking r=cpearce a=sledru - 5d185a7d03b5 |
Mike Conley | Bug 1117936 - If print preview throws in browser-content.js, make sure printUtils.js can handle the error. r=Mossop, a=sledru - 2fd253435fe4 |
Dave Townsend | Bug 1118135 - Clicking the magnifying glass while the suggestions are open should close the popup and not re-open it. r=felipe, a=sledru - ee9df2674663 |
Chris Pearce | Bug 1112445 - Ignore the audio stream when determining whether we should skip-t-o-next-keyframe for async readers. r=mattwoodrow, a=sledru - f82a118e1064 |
Steve Fink | Bug 1117768 - Fix assertion in AutoStopVerifyingBarriers and add tests. r=terrence, a=sledru - 53ae5eeb6147 |
Matt Woodrow | Bug 1121661 - Null check mDemuxer in MP4Reader::ResetDecoder since we might not have created one yet. r=bholley, a=sledru - 28900712c87f |
Chris Pearce | Bug 1112822 - Don't allow MP4Reader to decode if someone shut it down. r=mattwoodrow, a=sledru - c8031be76a86 |
Ryan VanderMeulen | Backed out changeset 53ae5eeb6147 (Bug 1117768) for bustage. - 96d0d77a3462 |
Martyn Haigh | Bug 1117130 - URL bar border slightly covered by fading edge of title. r=mfinkle, a=sledru - ca609e2e5bea |
JW Wang | Bug 1112588 - Ignore 'stalled' events because the progress timer could time out before receiving any HTTP notifications on slow machines like B2G emulator. r=cpearce, a=test-only - d185df72bd0e |
Ryan VanderMeulen | Bug 1111137 - Disable test_user_agent_overrides.html on Android due to frequent failures. a=test-only - cd07ffdd30c5 |
Steve Fink | Bug 1111330 - GetBacktrace needs to be able to free the results buffer. r=njn, a=lsblakk - f154bf489b34 |
Robert Strong | Bug 1120673 - Verify Firewall service is running before adding Firewall exceptions - Fx 35 installer crashes on XP x86 SP3 at the end (creating shortcuts) if the xp firewall service is stopped. r=bbondy, a=sledru - bc2de4c07f1b |
Nicolas B. Pierron | Bug 1118911 - GetPcScript should care about bailout frames. r=jandem, a=sledru - 66f61f3f9664 |
Bobby Holley | Bug 1121841 - Clear the failed read after checking it. r=jya, a=sledru - 0f43b4df53bb |
Bobby Holley | Bug 1121248 - Stop logging unimplemented methods in SourceBufferResource. r=mattwoodrow, a=sledru - b8922f819a88 |
Michael Comella | Bug 1106935 - Part 1: Replace old tablet pngs with null XML resources. r=mhaigh, a=sledru - 0b7d9ce1cdc7 |
Ehsan Akhgari | Bug 1113121 - Null check the parent node in nsHTMLEditRules::JoinNodesSmart() before passing it to MoveNode; r=roc a=sylvestre - 64d25509541e |
Jean-Yves Avenard | Bug 1121757: Prevent out of bound memory access should AVC data be invalid. r=kinetik a=sledru - 84bf56da4a55 |
Jean-Yves Avenard | Bug 1121342: Re-Request audio or video to decode first frame after a failed attempt. r=cpearce a=sledru - 7a8d1dd9fff3 |
Jean-Yves Avenard | Bug 1121342: Re-search for Moof if an initial attempt to find it failed. r=kentuckyfriedtakahe a=sledru - dfbca180664d |
John Daggett | Bug 1118981 - initialize mSkipDrawing correctly for already loading fonts. r=jfkthame, a=sylvestre - beb62e1ad523 |
Mike Hommey | Bug 1110760 - Followup to avoid build failure with Windows SDK v7.0 and v7.0A. r=gps a=lsblakk - fe217a0d2e9a |
Paul Kerr [:pkerr] | Bug 1028869 - Part 1: Add ping and ack operations to PushHandler. r=standard8, a=sledru - fc47c7a95f85 |
Paul Kerr [:pkerr] | Bug 1028869 - Part 2: xpcshell test updated with ping/restore. r=standard8, a=sledru - b653be6b040a |
Gijs Kruitbosch | Bug 1079355 - indexedDB pref should only apply for content pages, not chrome ones, r=bent,a=sylvestre - 97b34f0b9946 |
Jean-Yves Avenard | Bug 1118123: Update mediasource duration following sourcebuffer::appendBuffer. r=cajbir a=sledru - 9a4a8602e6f4 |
Jean-Yves Avenard | Bug 1118123: Mochitest to verify proper sourcebuffer behavior. r=cajbir a=sledru - 61e917f920c9 |
Jean-Yves Avenard | Bug 1118123: Update mediasource web platforms tests now passing. r=karlt a=sledru - 7cd63f89473b |
Jean-Yves Avenard | Bug 1119119: Do not abort when calling appendBuffer with no data. r=cajbir a=sledru - 4fe580b632e5 |
Jean-Yves Avenard | Bug 1119119: Update web-platform-tests expected data. r=karlt a=sledru - a1a315b3ff6b |
Jean-Yves Avenard | Bug 1120084: Implement MSE's AppendErrorAlgorithm. r=cajbir a=sledru - da605a71901e |
Jean-Yves Avenard | Bug 1120086: Re-open SourceBuffer after call to appendBuffer if in ended state. r=cajbir a=sledru - 7dd701f60492 |
Ben Hearsum | Bug 1120420: switch in-tree update server/certs to aus4.mozilla.org. r=rstrong, a=lmandel - 59702337a220 |
Kartikaya Gupta | Bug 1107009. r=BenWa, a=sledru - 8d886705af93 |
Kartikaya Gupta | Bug 1122408 - Fix potential deadlock codepath. r=BenWa, a=sledru - e6df6527d52e |
Phil Ringnalda | Bug 786938 - Disable test_handlerApps.xhtml on OS X. a=test-only - d1b7588f273b |
Jan de Mooij | Bug 1115844 - Fix Baseline to emit a nop for JSOP_DEBUGLEAVEBLOCK to temporarily work around a pc lookup bug. r=shu, a=sledru - 54a53a093110 |
Andreas Pehrson | Bug 1113600 - Part 1. Send stream data right away after adding an output stream. r=roc, a=sledru - 73c3918b169f |
Andreas Pehrson | Bug 1113600 - Part 2. Handle setting a MediaStream sync point mid-playback. r=roc, a=sledru - e30a4672f03f |
Andreas Pehrson | Bug 1113600 - Part 3. Add mochitest for capturing media mid-playback. r=roc, a=sledru - c17e1f237ff0 |
Andreas Pehrson | Bug 1113600 - Part 4. Handle switching directly from audio clock to stream clock. r=roc, a=sledru - b269b8f5102c |
Gian-Carlo Pascutto | Bug 1119852 - Don't forget to update _requestedCapability in Windows camera driver. r=jesup, a=sledru - ee09df3331d0 |
Paul Kerr [:pkerr] | Bug 1108028 - Replace pushURL registered with LoopServer whenever PushServer does a re-assignment. r=dmose, a=sledru - be5eee20bba5 |
Daniel Holbert | Bug 1110950 - Trigger a reflow (as well as a repaint) for changes to 'object-fit' and 'object-position', so subdocuments can be repositioned/resized. r=roc, a=sledru - 2b2b697613eb |
Chris Double | Bug 1055904 - Improve MSE eviction calculation. r=jya, a=sledru - 595835cd60a0 |
Martyn Haigh | Bug 1111598 - [Tablet] Make action bar background color consistent with the new tablet tab strip background. r=mcomella, a=sledru - 3e58a43384cd |
Tim Taubert | Bug 950399 - SessionStore shouldn't forget domain cookies. r=yoric, a=sledru - 91f8d6ca5030 |
Tim Taubert | Bug 950399 - Tests for domain cookies. r=yoric, a=sledru - 670d3f856665 |
Jean-Yves Avenard | Bug 1120075 - Use Movie Extend Header's duration as fallback when available. r=kentuckyfriedtakahe, a=sledru - 18ade4ad787e |
Jean-Yves Avenard | Bug 1119757 - Allow seeking on media with infinite duration. r=cpearce, a=sledru - b0c42a7f0dc7 |
Jean-Yves Avenard | Bug 1119757 - MSE: handle duration of 0 in metadata as infinity. r=mattwoodrow, a=sledru - 3e5d8c21f3a2 |
Jean-Yves Avenard | Bug 1120079 - Do not call Range Removal algorithm after endOfStream. r=cajbir, a=sledru - 2a36e0243edd |
Jean-Yves Avenard | Bug 1120282 - Do not fire durationchange during call to ReadMetadata. r=mattwoodrow, a=sledru - 9bb138f23d58 |
Dragana Damjanovic | Bug 1108971 - Fix parameter in call GetAddrInfo. r=sworkman, a=sledru - 2dbbd7362502 |
Sotaro Ikeda | Bug 1110343 - Suppress redundant loadedmetadata event when dormant exit. r=cpearce, a=sledru - fae52bd681e0 |
Sotaro Ikeda | Bug 1108728 - Remove dormant related state from MediaDecoder. r=cpearce, a=sledru - 9ad34e90e339 |
Bobby Holley | Bug 1121692 - Remove unnecessary arguments to ::Seek. r=mattwoodrow, sr=cpearce, a=sledru - d7e079df1b3d |
Bobby Holley | Bug 1121692 - Stop honoring aEndTime in MediaSourceReader::Seek. r=mattwoodrow, a=sledru - 67f6899c6221 |
Bobby Holley | Bug 1121692 - Fix potential race condition with mWaitingForSeekData. r=mattwoodrow, a=sledru - 871ab0d29bb8 |
Bobby Holley | Bug 1121692 - Clean up semantics around m{Audio,Video}IsSeeking. r=mattwoodrow, a=sledru - 35f5cf685186 |
Bobby Holley | Bug 1121692 - Move the interesting seek state logic into DecodeSeek. r=mattwoodrow, r=cpearce, a=sledru - 3e1dd9e96598 |
Bobby Holley | Bug 1121692 - Make seeks cancelable. r=cpearce, r=mattwoodrow, a=sledru - 2195dc79a65f |
Bobby Holley | Bug 1121692 - Handle mid-seek Request{Audio,Video}Data calls. r=cpearce, a=sledru - 4f059ea15ecf |
Bobby Holley | Bug 1121692 - Tests. r=mattwoodrow, r=cpearce, a=sledru - 56744595737c |
Michael Comella | Bug 1116912 - Don't hide the dynamic toolbar when it was originally shown but a tab was selected. r=wesj, a=sledru - 55bd32c43abd |
Valentin Gosu | Bug 1121826 - Backout cc192030c28f - brackets shouldn't be automatically escaped in the Query. r=mcmanus, a=sledru - 12bda229bf83 |
Nicholas Nethercote | Bug 1122322 - Fix crash in worker memory reporter. r=bent, a=sledru - c5dfa7d081f4 |
Ryan VanderMeulen | Bug 1055904 - Fix non-unified bustage in TrackBuffer.cpp. a=bustage - c703f90c5b80 |
Patrick McManus | Bug 1121706 - Don't offer h2 in alpn if w/out mandatory suite. r=hurley, a=sledru - 131919c0babd |
Barbara Guida | Bug 1122586 - Unbreak build on platforms missing std::llabs since Bug 1073716. r=dholbert, a=sledru - 506cfb41b8f3 |
Jean-Yves Avenard | Bug 1121876 - Treat negative WMF's output sample timestamp as zero. r=cpearce, a=sledru - e017341d2486 |
Jean-Yves Avenard | Bug 1121876 - Configure WMF decoder to output PCM 16. r=cpearce, a=sledru - cd88be2b57ac |
Robert Longson | Bug 1119698 - Ensure image elements take pointer-events into account. r=jwatt, a=sledru - 94e7cb795a05 |
Chris Pearce | Bug 1123498 - Make MP4Reader skip-to-next-keyframe less aggressively. r=mattwoodrow, a=sledru - cee6bfbbecd7 |
Jean-Yves Avenard | Bug 1123507 - Prevent out of bound memory access. r=edwin, a=sledru - 8691f7169392 |
Geoff Brown | Bug 1105388 - Avoid robocop shutdown crashes with longer wait. r=mfinkle, a=test-only - ea7deca21c27 |
Anthony Jones | Bug 1116056 - Change MOZ_ASSERT() to NS_WARNING() in Box::Read(). r=jya, a=sledru - 54386fba64a7 |
Jean-Yves Avenard | Bug 1116056 - Ensure all atoms read are valid. r=mattwoodrow, a=sledru - 1f392909ff1f |
Xidorn Quan | Bug 1121350 - Fix extra space on right from whitespace. r=roc, a=sledru - 598cd9c2e480 |
Kartikaya Gupta | Bug 1120252 - Avoid trying to get the APZCTreeManager if APZ isn't enabled. r=mattwoodrow, a=bustage - 1b21115851ef |
http://release.mozilla.org/statistics/36/2015/01/22/fx-36-b1-to-b2.html
|
Advancing Content: Request for Innovation: Content and Ad Tech |
We founded the Content Services group at Mozilla in order to build user-first content experiences and services within the Firefox browser that:
We have delivered Tiles in Firefox and have successfully tested some content partnerships. Our next objectives are:
That’s why in the next few days we will be contacting a number of content and advertising tech companies, both large and small, to discuss an RFI (“Request for Innovation” – a partnership proposal) for providing more automation and scale in our offering. Scale allows us to deliver content to our users across the globe so we keep the experience for users fresh and current. Automation allows us to do this on a scale that’s significant. We have to engage with the industry’s state-of-the-art. That means working programmatically (and this can be a very complex space to operate in). We know that there are many people in ad tech who welcome our involvement – many have already joined the project.
One of Mozilla’s distinct qualities is its ability to bring in champions for our cause, from advocating for open standards to sharing the vision of an open mobile ecosystem, we are at our best when we focus on our own competence and bring others into our community.
This will not be business as usual. We have a very clear sense of who we would and would not partner with, and any relationship we enter into has to support our values. And while there may be some areas for discussion we will not partner with organizations who blatantly disrespect the user.
We are explicit about this in the RFI: we want to work with partners who align with the Mozilla mission and our user-centric ethos to change and evolve the industry through this engagement. As talked about in previous posts on this blog, we’re looking for support amongst our three core principles:
Our team is working hard to deliver against these promises to our users:
We’ve launched the early version of our platform in the Firefox anniversary release (33.1), last November and we’ve been learning and tweaking it since. 2015 is a big year for us to scale and build better experiences and we’re looking forward to sharing these with you.
Feel free to reach out to us (contentservices@mozilla.com) or join our interest list.
https://blog.mozilla.org/advancingcontent/2015/01/22/request-for-innovation/
|
Christian Heilmann: Browsers, Services and the OS – oh my… |
Yesterday’s two hour Windows 10 briefing by Microsoft had some very interesting things in it (The Verge did a great job live blogging it). I was waiting for lots of information about the new browser, code name Spartan, but most was about Windows 10 itself. This is, of course, understandable and shows that I care about browsers maybe too much. There was interesting information about Windows 10 being a free upgrade, Cortana integration on all platforms, streaming games from xbox to Windows and vice versa. The big wow factor at the end of the brief was HoloLens, which makes interactivity like Iron Man had in his lab not that far-fetched any longer.
For me, however, the whole thing was a bit of an epiphany about browsers. I’ve always seen browsers as my main playground and got frustrated by lack of standards support across them. I got annoyed by users not upgrading to new ones or companies making that hard. And I was disappointed by developers having their pet browsers to support and demand people to use the same. What I missed out on was how amazing browsers themselves have become as tools for end users.
For end users the browser is just another app. The web is not the thing alongside your computing interaction any longer, it is just a part of it. Just because I spend most of my day in the browser doesn’t make it the most important thing. In esssence, the interaction of the web and the hardware you have is what is the really interesting part.
A lot of innovation I have seen over the years that was controversial at that time or even highly improbable is now in phones and computers we use every day. And we don’t really appreciate it. Google Now, Siri and now Microsoft’s Cortana integration into the whole system is amazingly useful. Yes, it is also a bit creepy and there should be more granular insight into what gets crawled and what isn’t. But all in all isn’t it incredible that computers tell us about upcoming flights, traffic problems and remind us about things we didn’t even explicitly set as a reminder?
The short, 8 minute Spartan demo in the briefing showed some incredible functionality:
Frankly, not all of that is new, but I have never used these features. I was too bogged down into what browsers can not do instead of checking what is already possible for normal users.
I’ve mentioned this a few times in talks lately: a lot of the innovation of add-ons, apps and products is merging with our platforms. Where in the past it was a sensible idea to build a weather app and expect people to go there or even pay for it, we get this kind of functionality with our platforms. This is great for end users, but it means we have to be up to speed what user interfaces of the platforms look like these days instead of assuming we need to invent all the time.
Looking at this functionality made me remember a lot of things promised in the past but never really used (at least by me or my surroundings):
MSSmartTagsPreventParsing
to disallow this. The annotation feature of Spartan now is this on steroids. Thirdvoice (wayback machine archive) was a browser add-on that did the same, but got creepy very quickly by offering you things to buy. Weirdly enough Awesome Screenshot, an annotation plug-in also now gets very creepy by offering you price comparisons for your online shopping. This shows that a functionality like that doesn’t seem to be viable as a stand-alone business model, but very much makes sense as a feature of the platform.[Live Clipboard…] allows the copy and pasting of data, including dynamic, updating data, across and between web applications and desktop applications.The big thing about this was that it would have been an industrial size use case for Microformats and could have given that idea the boost it needed. However, despite me pestering Chris Wilson of – then – Microsoft at @media AJAX 2006 about it, this never took off. Until now, it seems – except that the clippings aren’t live.
This year will be very exciting. Not only does HTML5 and JavaScript get new features all the time. It seems to me that browsers become much, much smoother at integrating into our daily lives. This spells doom for a lot of apps. Why use an app when the functionality is already available with a simple click or voice command?
Of course, there are still many issues to fix, mainly offline and slow connection use cases. Privacy and security is another problem. Convenient as it is, there should be some way to know what is listening in on me right now and where the data goes. But, I for one am very interested about the current integration of services into the browser and the browser into the OS.
http://christianheilmann.com/2015/01/22/browsers-services-and-the-os-oh-my/
|
Henrik Skupin: Firefox Automation report – week 49/50 2014 |
In this post you can find an overview about the work happened in the Firefox Automation team during week 49 and 50.
During the first week of December the all-hands work week happened in Portland. Those were some great and inspiring days, full of talks, discussions, and conversations about various things. Given that I do not see my colleagues that often in real life, I have taken this opportunity to talk to everyone who is partly or fully involved in projects of our automation team. There are various big goals in front of us, so clearing questions and finding the next steps to tackle ongoing problems was really important. Finally we came out with a long list of todo items and more clarity about so far unclear tasks.
In week 50 we got some updates landed for Mozmill CI. Given a regression from the blacklist landing, our l10n tests haven’t been executed for any locale of the Firefox Developer Edition. Since the fix landed, we have seen problems with access keys in nearly each locale for a new test, which covers the context menu of web content.
Also we would like to welcome Barbara Miller in our team. She joined us as an intern via the FOSS outreach program as driven by Gnome. She will be with us until March and will mainly work on testdaybot and the conversion of Mozmill tests to Marionette. The latter project is called m21s and details can be found on its project page. Soon I will post more details about it.
For more granular updates of each individual team member please visit our weekly team etherpad for week 49 and week 50.
If you are interested in further details and discussions you might also want to have a look at the meeting agenda, the video recording, and notes from the Firefox Automation meeting of week 48. Due to the Mozilla all-hands workweek there was no meeting in week 49.
http://www.hskupin.info/2015/01/22/firefox-automation-report-week-49-50-2014/
|
Mike Hommey: Fx0 |
Two weeks ago, I went to a local au shop to get a hand on the Fx0, KDDI’s LG-manufactured Firefox OS phone that was released in Japan for Christmas in a few flagship shops and on the web, and on January 6 everywhere else in Japan.
They had it on display, like any other phone.
But they didn’t have any stock, so I couldn’t bring one home, but ordered one.
Fast forward two days ago, the shop called to say they received it, and I went yesterday to get it.
Since the phone is not sold without a carrier subscription, the shop staff does the unboxing for you, to place the SIM card in the phone. But let’s pretend that didn’t happen.
The Fx0 comes in a gold box with a gold Firefox logo, wrapped in a white box with the characters “Fx0'' embossed.
Opening the gold box, unsurprisingly, reveals the gold transparent phone.
Reading articles about this phone, opinions are divided about its look. I’m on the side that thinks it looks awesome, especially in the back. I does look bulky, probably because of its rather sharp edges, but it’s not much larger than a Nexus 4. Nor is it much thicker.
One side has “au” embossed, and the other has “Fx0''.
One downside of the transparent theme is that it limited the types of materials that could be used, so it sadly feels plastic to the touch. At least that’s why I think it is this way.
At the bottom of its front, a single “home” button, showing the Firefox logo.
Well, it was already on when I first got my hands on it, but in our pretense of unboxing, let’s say it was not, and that I turned it on for the first time (which, in some sense, is true). This is what it looks like when it boots:
After unlocking, the home screen appears.
I’ll be trying to use it as my main (smart)phone, and see how that goes. I’ll also test some of its KDDI specific features. Blog posts will come along. Stay tuned.
|
Kim Moir: Reminder: Releng 2015 submissions due Friday, January 23 |
![]() |
Il Duomo di Firenze by ©eddi_07, Creative Commons by-nc-sa 2.0 |
http://relengofthenerds.blogspot.com/2015/01/reminder-releng-2015-submissions-due.html
|
Ian Bicking: A Product Journal: The Technology Demo |
I’m going to try to journal the process of a new product that I’m developing in Mozilla Cloud Services. My previous and first post was Conception.
As I finished my last post I had a product idea built around a strategy (growth through social tools and sharing) and a technology (freezing or copying the markup). But that’s not a concise product definition centered around user value. It’s not even trying. The result is a technology demo, not a product.
In my defense I’m searching for some product, I don’t know what it is, and I don’t know if it exists. I have to push this past a technology demo, but if I have to start with a technology demo then so it goes.
I’ve found a couple specific experiences that help me adapt the product:
I demo the product and I sense an excitement for something I didn’t expect. For example, a view that I thought was just a logical necessity might be what most appeals to someone else. To do this I have to show the tool to people, and it has to include things that I think are somewhat superfluous. And I have to be actively reading the person viewing the demo to sense their excitement.
Remind myself continuously of the strategy. It also helps when I remind other people, even if they don’t need reminding – it centers the discussion and my thinking around the goal. In this case there’s a lot of personal productivity use cases for the technology, and it’s easy to drift in that direction. It’s easy because the technology facilitates those use cases. And while it’s cool to make something widely useful, that won’t make this tool work the way I want as a product, or work for Mozilla. (And because I plan to build this on Mozilla’s dime it better work for Mozilla! But that’s a discussion for another post.)
I’ll poorly paraphrase something I’m sure someone can source in the comments: a product that people love is one that makes those people feel great about themselves. In this case, makes them feel like a journalist and not just a crank, or makes them feel like they are successfully posing as a professional, or makes them feel like what they are doing is appreciated by other people, or makes them feel like an efficient organizer. In the product design you can exult the product, try to impress people, try to attract compliments on your own prowess, but love comes when a person is impressed with themselves when they use your product. This advice helps keep me from valuing cleverness.
A common way to pull people out of technology-focused thinking is to ask “what problem does this solve?” While I appreciate this question more than I used to, it still makes me bristle. Why must everything be focused on problems? Why not opportunities! Why? An answer: problems are cases where a person has already articulated a tension and an openness to resolution. You have a customer in waiting. But must we confine ourselves to the partially formed conventional wisdom that makes something a “problem”? (One fair answer to this question is: yes. I remain open to other answers.) Maybe a more positive alternative to “what problem does this solve?” is “what does this let people do that they couldn’t do before?”
What I’m certain of is that you should constantly remember the people using your tool will care most about their interests, goals, and perspective; and will not care much about the interests, goals, or perspective of the tool maker.
So what should this tool do? If not technology, what defines it? A pithy byline might be share better. I don’t like pithy, but maybe a whole bag of pithy:
No… quantity doesn’t equal quantity I suppose. Another attempt:
When you share, you are a publisher. Your medium is the IM text input, or the Facebook status update, or the email composition window. It seems casual, it seems pithy, but that individual publishing is what the web is built on. I respect everyone as a publisher, every medium as worthy of improvement, and this project will respect your efforts. We will try to make a tool that can make every instance just a little bit better, simple when all you need is simple, polished if you want. We will defer your decisions because you should decide in context, not make decisions in the order that makes our work easier; we will be transparent to you, your audience, and your source; respect for the reader is part of our brand promise, and that adds to the quality of your shares; we believe content is a message, a relationship between you and your audience, and there is no universally appropriate representation; we believe there is order and structure in information, but only when that information is put to use; we believe our beliefs are always provisional and tomorrow it is our prerogative to rebelieve whatever we want most.
Who is we? Just me. A pretentiously royal we. It can’t stay that way for long though. More on that soon…
http://www.ianbicking.org/blog/2015/01/product-journal-tech-demo.html
|
Gervase Markham: “Interactive” Posters |
I saw this on a First Capital Connect train here in the UK. What could possibly go wrong?
Ignoring the horrible marketing-speak “Engage with this poster” header, several things can go wrong. I didn’t have NFC, so I couldn’t try that out. But scanning the QR code took me to http://kbhengage.zpt.im/u/aCq58 which, at the time, was advertising for… Just Eat. Not villaplus.com. Oops.
Similarly, texting “11518” to 78400 produced:
Thanks for your txt, please tap the link: http://kbhengage.zpt.im/u/b6q58 Std. msg&data rates may apply Txt STOP to end Txt HELP for help
which also produced content which did not match the displayed poster.
So clearly, the first risk is that the electronic interactive bits are not part of the posters themselves, and so the posters can be changed without the interactive parts being updated to match.
But also, there’s the secondary risk of QR codes – they are opaque to humans. Someone can easily make a sticker and paste a new QR code on top of the existing one, and no-one would see anything immediately amiss. But when you tried to “engage with this poster”, it would then take you to a website of the attacker’s choice.
http://feedproxy.google.com/~r/HackingForChrist/~3/Cgd6wITXWDU/
|
Mozilla Fundraising: Should we use the Mozilla or Firefox logo on our donation form? |
https://fundraising.mozilla.org/should-we-use-the-mozilla-or-firefox-logo-on-our-donation-form/
|
Pete Moore: Weekly review 2015-01-21 |
This week I’ve started work on the Go port of the taskcluster client: https://github.com/petemoore/taskcluster-client-go.
This week I learned about AMQP, go routines and channels, Hawk authentication, TaskCluster architecture, and started using some go libraries.
Other activities:
|
Bogomil Shopov: Why is Bulgaria Web Summit 2015 so different from any other event? |
When I talk to sponsors and even to friends about the Summit, they always ask me what makes our event different.
So here’s the secret:
We started this event 11 years ago (under a different name) as an effort to create something amazing and affordable for IT guys in Bulgaria. At the same time we never compromise with quality. The main purpose of the event is for our attendees to learn new things, which they can apply in their work on the very next day and to return the “investment” they have made in the conference.
In most of the conferences I’ve been in Europe, well-trained company folks talk about their success at Fakebook or Playpal and how to clone it to your company – This doesn’t work and you will not see it at our event and in the same time you have to spend tons of money just to listen to the guy.
In the most conferences I’ve been in Europe, well-respected gurus talk about some programming art – they do that all the time, they just talk, they don’t code anymore – You will not see this at our event – We invite only professionals and they share their experience with you and on the next day, they will not depart for another event, but they will go back to do the thing they do the best.
We have had amazing speakers over the years. Some of them became friends of the event and they can come again and again, even without paying them a dime. We build relationships with our speakers, because we are Balkan people and this is what we do.
Many people still remember Monty’s Black Vodka, Richard Stallman‘s socks and many other stories that must be kept secret :)
We do have the best audience ever! I mean it. We have people that haven’t missed an event since 2004. They are honest and if you screw up they will tell you and they will give you kudos if you do something amazing. In most of the years, the tickets are sold months before the event, even without a schedule and even without the speakers yet known, because we proved the event is good.
We have people who met at our event and got married, we have people who met at our event and started business together, we have companies that hired great professionals because of our events; we have kicked off many careers by showing the people great technologies and ways to use them.
Of course it’s not all about money. We do need them to make the event great, but our main goal is not to make money out of it. As you can see the entrance fee is low – for the same event in Europe (same speakers) you would have to pay 5-10 times more. We realize that we live in a different country and the conditions are different, but we are trying to find a way to keep the fee low and at the same time to still keep up the quality of the talks and emotions. We can achieve this only thanks to our sponsors. Thank you, dear sponsors!
We do experiment a lot. We are trying to make a stress-free event, full of nice surprises, parties and interesting topics.
We are not one of those conferences where you get tons of coffee in the breaks (sometime we even don’t have breaks, nor coffee for that matter, just beer!) and a schedule 3 months in advance or you can sit and pretend you are listening, because someone paid you the fee. With us you are a part of the event all the time: we have games, hackathons and other stuff you can take part in. We give you the bread and butter, use your mind to make a sandwich. :)
We failed many times at many tasks, but we are learning and improving. We are not a professional team doing this for the money. We are doing this for fun and to help our great and amazing community. We count on volunteers. Thank you, dear volunteers!
We are one of the few events that don’t have history of the event on their website. Duh! We do believe that if you visit us once (because a friend told you about us) you don’t need a silly website to convince you again to come :) We do not spend (a lot of) money on marketing or professional services. We count on word of mouth and you. Thank you!
http://talkweb.eu/why-is-bulgaria-web-summit-2015-so-different-from-any-other-event/
|
Gervase Markham: Your Top 50 DOS Problems Solved |
I was clearing out some cupboards at our family home when I came across a copy of “Your Top 50 DOS Problems Solved”, a booklet published free with “PC Answers” magazine in 1992 – 23 years ago. PC Answers has sadly not survived, closing in 2010, and its domain is now a linkfarm. However, the sort of problems people had in those days make fascinating reading.
Now I’ve finished blogging quotes from “Producing Open Source Software” (the updated version of which has, sadly, yet to hit our shelves), I think I’ll blog through these on an occasional basis. Expect the first one soon.
http://feedproxy.google.com/~r/HackingForChrist/~3/WATuaHSxb1Q/
|
Andreas Gal: WebVR is coming to Firefox Nightly |
In 2014 Mozilla started working on adding VR capabilities to the Web. Our VR team proposed a number of new Web APIs and made an experimental VR build of Firefox available that supports rendering VR content using the Web to Oculus Rift headsets.
Consumer VR products are still in a nascent state, but clearly there is great promise for this technology. We have enough confidence in the new APIs we have proposed that we are today taking the step of integrating them into our regular nightly Firefox builds. Head over to MozVR for all the details, and if you own an Oculus Rift headset or mobile VR-capable hardware we support, give it a spin!
http://andreasgal.com/2015/01/20/webvr-is-coming-to-firefox-nightly/
|
Matt Thompson: What we’re working on this Heartbeat |
Transparency. Agililty. Radical participation. That’s how we want to work on Webmaker this year. We’ve got a long way to go, but we’re building concrete improvements and momentum — every two weeks.
We work mostly in two-week sprints or “Heartbeats.” Here’s the priorities we’ve set together for the current Heartbeat ending January 30.
Questions? Want to get involved? Ask questions in any of the tickets linked below, say hello in #webmaker IRC, or get in touch with @OpenMatt.
See it all (always up to date): http://build.webmaker.org/now
Or see the work broken down by:
|
Gervase Markham: Credit as Currency |
Credit is the primary currency of the free software world. Whatever people may say about their motivations for participating in a project, I don’t know any developers who would be happy doing all their work anonymously, or under someone else’s name. There are tangible reasons for this: one’s reputation in a project roughly governs how much influence one has, and participation in an open source project can also indirectly have monetary value, because some employers now look for it on resum'es. There are also intangible reasons, perhaps even more powerful: people simply want to be appreciated, and instinctively look for signs that their work was recognized by others. The promise of credit is therefore one of best motivators the project has. When small contributions are acknowledged, people come back to do more.
— Karl Fogel, Producing Open Source Software
http://feedproxy.google.com/~r/HackingForChrist/~3/zlsfBQcAHBM/
|
Christian Heilmann: Be my eyes, my brain, my second pair of eyes… |
(cross published on Medium, in case you want to comment on paragraphs).
In the last few days, the “Be My Eyes” App made quite a splash. And with good reason, as it is a wonderful idea.
The app plans to connect non-sighted people with sighted ones when they are stuck with a certain task. You ask for a pair of eyes, you connect over a smart phone, video the problem you have and get a volunteer human to help you out with a video call. Literally you offer to be the eyes for another person.
This is not that new, for example there were services that allow for annotation of inaccessible web content (WebVisum, IBM’s (now defunct) social accessibility project) before. But, be my eyes is very pretty and makes it much easier to take part and help people.
Right now the app is iOS only, which is annoying. Whilst the accessibility features of iOS used to be exceptional it seems to be losing in quality with iOS8. Of course, the other issue is the price. Shiny Apple things are expensive, Android devices and computers with built-in cameras less so. The source code of be my eyes is on GitHub which is a great start. We might be able to see versions of it on Android and WebRTC driven versions for the web and mobile soon.
As with any product of this ilk, concerns and criticism happen quickly:
I don’t see why this app could not become more than it is now. We all could need a second pair of eyes from time to time. For example:
Some of those have great potential for monetisation, others were done before and died quickly (the local experts one was a product I was involved in at Yahoo called Yocal, which never saw the light of day and could have been foursquare years before foursquare).
Again, this would be nothing new: expert peer to peer systems have come and gone before. When I worked on Yahoo Answers there were discussions to allow for video upload for questions and answers. A prospect that scared the hell out of me seeing that “is my penis big enough” was one of the most asked questions in the Yahoo Answers Men’s health section (and any other, to be fair).
The defunct Google Answers had the idea to pay experts to answer your questions quickly and efficiently. Newer services like LiveNinja and AirPair do this with video chats (and Google, of course may want Hangouts to be a player in that space).
The issues that all of these services face is quality control and safety. Sooner or later any of the original attempts at this failed because of these. Skype services to pay for audio or video advice very quickly became camsex hangouts or phonesex alternatives. This even happens in the offline world – my sister used to run a call centre and they found out that one of their employees offered her phonesex services to eligible men on the line. Yikes.
Another issue is retain-ability and re-use. It is not fun to try to find a certain part of a video without a timed transcript. This can be automated to a degree – YouTube’s subtitling is a good start – but that brings up the question who else reads the private coaching session you had?
If anything, the user interface and interaction pattern of Be my Eyes is excellent, and the availability of video phones and chat abilities like WebRTC make it possible to have more of these services soon.
In the coding world, real live interaction is simple these days. JSFiddle’s collaboration button allows you to code together, JSBin allows people to watch you while you code and Mozilla’s together.js allows you to turn any web page into a live audio and video chat with multiple cursors.
We use Google Docs collaboratively, we probably have some live chat going with our colleagues. The technology is there. Firefox now has a built-in peer to peer chat system called Hello. Wouldn’t it be cool to have an API for that to embed it in your products?
The thing that might kill those is hype and inflated demands. Yahoo Answers was an excellent idea to let the human voice and communication patterns prevail over algorithmic results. It failed when all that it was measured against was the amount of users and interactions in the database. This is when the quality was thrown out the window and How is babby formed got through without a blip on the QA radar.
Let’s hope that Be my Eyes will survive the first spike of attention and get some support of people who are OK with a small amount of users who thoroughly want to help each other. I’d like to see that.
http://christianheilmann.com/2015/01/19/be-my-eyes-my-brain-my-second-pair-of-eyes/
|
Andrea Marchesini: RequestSync API |
Last week a new API just for B2G certified apps is landed in mozilla-central: RequestSync API. The basic purpose of this API is to allow apps to schedule tasks, while also letting the user decide when these tasks have to be executed.
Consider the following example: your mail app wants to synchronize your mailbox regularly.
Here is what it does:
navigator.sync.register('mail-synchronizer',
{ minInterval: 120 /* 2 minutes */,
oneShot: false,
data: { accountID: 123 },
wifiOnly: true,
wakeUpPage: location.href }).then(
function() {
console.log("mail-synchronizer task has been registered");
},
function() {
console.log("Something bad happened.");
});
Through this process, the app has registered a new task, called ‘mail-synchronizer’. It will be scheduled every 2 minutes if the device is connected to the wifi. As you can see, the second parameter of the register method is a configuration object. Here are some more details:
minInterval is the number of seconds between 1 execution of the task and the next. This is not entirely precise, but it’s an indication for the RequestSyncService. It can happen that the device may be busy doing something, and this task may be postponed for a while.
oneShot: boolean. If we want just 1 execution of the task, we should set it to “true”.
data: this can be anything. It’s something useful for the app.
wifiOnly: by default it is true and it informs the RequestSyncService about the fact that this task must be executed only if we are using a wifi connection.
wakeUpPage: this is the page that will be activated when the task is about to be executed.
Register() method returns a Promise object and if called more than once, the app overwrites the previous task configuration.
In the navigator.sync object there are other methods: unregister(), registrations() and registration(), but we can skip them for now.
When the task is executed, the wakeUpPage is activated and it receives a message in this way:
navigator.mozSetMessageHandler('request-sync', function(e) {
...
});
the message contains this attributes:
task - the task name. In our example this will be ‘mail-synchronizer’.
data - what we sent in the registration: { accountID: 123 }.
lastSync - This is a DOMTimeStamp containing the date/time of the last execution of this task.
minInterval, oneShot, wifiOnly, wakeUpPage - these attributes will be the same as what we set during the registration.
Now, back to our example, the synchronization of the mailbox may take a while. In order to help RequestSyncService to schedule tasks correctly, and to keep the device alive for the all operation (we internally use a CPU wakelock) the mail app may do an operation like this:
navigator.mozSetMessageHandler('request-sync', function(e) {
// The synchornization of the mailbox will take a while.
// Let's set a promise object and resolve/reject it when needed.
navigator.mozSetMessageHandlerPromise(new Promise(function(resolve, reject) {
do_the_magic_synchronization(resolve, reject);
}));
});
Setting a message handler promise, we know that the device will be kept alive until the promise is not resolved or rejected. Furthermore, no other tasks will be executed in the meantime (this is not properly correct, because if the promise takes more than a few minutes to be resolved/rejected, RequestSyncService will continue scheduling other tasks).
As far as the settings app is concerned, the RequestSync API has also a manager of tasks available only for certified apps with a particular permission, but reality just the settings app will have this permission.
Using the requestSync API, the settings app is able to do:
navigator.syncManager.registrations().then(
function(results) {
...
}
);
In this piece of code, results is an array of RequestSyncTask objects. Each object is an active task with attributes such as lastSync, wakeUpPage, oneShot, minInterval, wifiOnly, data, and task, the name. From this object the settings-app can change the policy to this task:
for (var i = 0; i < results.length; ++i) {
if (results[i].task == 'mail-synchronizer' &&
results[i].app.manifestURL == 'http://the/mail/app/manifest.url') {
results[i].setPolicy('disabled');
}
}
setPolicy receives 2 parameters, the second one is optional:
state, this is the new state of the task. It can be enabled, disabled or wifiOnly.
overwrittenMinInterval: a new minInterval value.
This is all. Any feedback is welcome!
|
Axel Hecht: On the process to code |
gps blogs a bunch about his vision on how coding on Firefox should evolve. Sadly there’s a bunch of process debt in commenting, so I’ll put my comments in a medium where I already have an account.
A lot of his thinking is based on Code First. There’s an earlier post with that title, but with less content on it, IMHO.
In summary, code first capitalizes on the fact that any change to software involves code and therefore puts code front and center in the change process.
I strongly disagree.
Code is really just one artifact of many of creating and maintaining a software product.
Or, as Shane blogged,
First rate hackers need process too
Bugzilla is much more than a review tool, it’s a store of good and bad ideas. It’s where we document which of our ideas are bad, or just not good enough. It’s where we build out our shared understanding of where we are, and where we want to be.
I understand how gps might come to his conclusions. Mostly because I find myself in a bucket that might be like his. Where your process is really just documenting that you agree with yourself, and that you’re going forward with it. And then that you did. Yeah, that’s tedious and boring. Which is why I took my hat as module owner more often lately, and landed changes without a bug, and with rs=foopy
. Old guard.
Without applying my basic disagreement to several paragraphs over several posts, some random notes on a few of gps’ thinking and posts:
I agree that we need to do something about reviews. splinter’s better than plain text, but not quite there. Github PRs feel pretty horrible at least in the way we use them for gaia. As soon as things get slightly interesting, no status in either the PR nor bugzilla makes any sense anymore. I’m curious on MozReview/reviewboard, though the process to get things hooked up there is steep. I’ll give it a few more tries for the few things I do on Firefox, and improvements on code and docs. The one time I used it, I felt very new.
Much of the list gps has on process debt are things he cares about, and very few other people. In particular newcomers won’t even know to bother, unless they happen to across that post by accident. The other questions are not process debt, but good things to learn, and to learn early.
https://blog.mozilla.org/axel/2015/01/19/on-the-process-to-code/
|