Nine days ago, I made an off-hand remark in #content that I might be able to get the geolocation service working in Fennectrolysis by the end of the day if my plans worked out. I also remember referring to the process as “not a big deal.” Since that moment, I have put in a significant amount of work (at least several hours every day), and learned:

  • My estimating skills are severely underdeveloped
  • How to make use of the cycle collector
  • How weak references work
  • Best practices for XPCOM reference counting
  • There’s a confusing thing called nsIClassInfo which I should learn more about, but I know enough to force it to do my bidding for now
  • How non-modal prompts work
  • The meaning of obscure GCC linker errors like “undefined reference to vtable”
  • How to implement an XPCOM object in Javascript
  • Implementing XPCOM objects in Javascript frequently results in much more pleasant code than C++

Having said all that, yesterday I got the Fennec geolocation permission prompt to appear when triggered by a content page, and the proper callback was called when I allowed or canceled the request, so I’m confident that I can have a patch up for review by the end of the holiday weekend. Of course, given my track record, that means it might be up by the end of the week.

4 Responses to “Knowledge++”

  1. […] This post was mentioned on Twitter by Deb Richardson and topsy_top20k, Planet Repeater. Planet Repeater said: Planet Mozilla Interns: Josh Matthews: Knowledge++ […]

  2. If it’s any consolation, no-one else’s estimating skills are much better.

  3. For nsIClassInfo, check out this article I wrote a few years ago:

  4. Consistency is the last refuge of the unimaginative.

Leave a Reply