Very High Activity
I Use This!


Analyzed 8 days ago. based on code collected about 1 month ago.
Posted almost 2 years ago by Benjamin Kerensa
Give by Time Green (CC-BY-SA) The year is coming to an end and I would encourage you all to consider making a tax-deductible donation (If you live in the U.S.) to one of the following great non-profits: Mozilla The Mozilla Foundation is a non-profit ... [More] organization that promotes openness, innovation and participation on the Internet. We promote the values of an open Internet to the broader world. Mozilla is best known for the Firefox browser, but we advance our mission through other software projects, grants and engagement and education efforts. EFF The Electronic Frontier Foundation is the leading nonprofit organization defending civil liberties in the digital world. Founded in 1990, EFF champions user privacy, free expression, and innovation through impact litigation, policy analysis, grassroots activism, and technology development. ACLU The ACLU is our nation’s guardian of liberty, working daily in courts, legislatures and communities to defend and preserve the individual rights and liberties that the Constitution and laws of the United States guarantee everyone in this country. Wikimedia Foundation The Wikimedia Foundation, Inc. is a nonprofit charitable organization dedicated to encouraging the growth, development and distribution of free, multilingual, educational content, and to providing the full content of these wiki-based projects to the public free of charge. The Wikimedia Foundation operates some of the largest collaboratively edited reference projects in the world, including Wikipedia, a top-ten internet property. Feeding America Feeding America is committed to helping people in need, but we can’t do it without you. If you believe that no one should go hungry in America, take the pledge to help solve hunger. Action Against Hunger ACF International, a global humanitarian organization committed to ending world hunger, works to save the lives of malnourished children while providing communities with access to safe water and sustainable solutions to hunger. These six non-profits are just one of many causes to support but these ones specifically are playing a pivotal role in protecting the internet, protecting liberties, educating people around the globe or helping reduce hunger. Even if you cannot support one of these causes, consider giving this post a share to add visibility to your friends and family and help support these causes in the new year!   [Less]
Posted almost 2 years ago by (Erik Vold)
This is a follow-up post to my What is the Jetpack/Add-on SDK post, in which I wish to discuss the ways Jetpack/Add-on SDK is currently being used (that I know about). Firefox DevTools The first obvious place to mention is Firefox DevTools, not ... [More] long after the Add-on SDK team was merged with the Firefox DevTools team, Dave Camp began a process of molding the Firefox DevTools code to use CommonJS module structure supported by the Jetpack SDK loader. Additionally new DevTools features have been prototyped with CFX/JPM (the SDK’s associated CLIs) such as the Valence (aka Firefox Tools Adapter) (source code), Firebug Next (source code), and the WebIDE (source code). Firefox OS Simulator The Firefox OS Simulator (source code) was built using the Jetpack/Add-on SDK, one core feature it utilized was the subprocess module (now called child_process for NodeJS parity) it even used third party modules to add UI like toolbar buttons, and menuitems. Finally it used the SDK test framework. Click here to find the Firefox OS Simulator on AMO Firefox Testpilot Firefox Test Pilot is an opt-in program by feedback on things like features is collected. With Testpilot Firefox can experiment with new features (alone or in an A/B scenario), to see if and how they are used, how much they are used, and to determine whether or not they need more work. You can explore the experiments here Australis Australis was the UI redesign project codename for Firefox, it was prototyped with the Jetpack SDK, the source code is here New Tab Tiles The new tab page, which uses tiles, some of which are ads, that was also prototyped with the Jetpack/Add-on SDK the source code is here Mozilla Labs Lightbeam (aka Collusion) Before the Mozilla Labs project ended parts of the team used the Jetpack/Add-on SDK to develop ideas for Firefox, one highlight was Lightbeam (formerly known as Collusion) (source code) which was the topic of a TED talk which currently has been viewed more than 1.5 million times. Click here to find Lightbeam on AMO Prospector There was also a sub project of MozLabs called Prospector which also used the Jetpack/Add-on SDK to build feature prototypes such as: about:trackers about:profile Recall Monkey Tab Focus Snaporama Site Suggest Click here for the full AMO list Old School Add-ons Scriptish which is a fork of Greasemonkey which uses the Jetpack/Add-on SDK loader even though it is still technically an old school add-on. A few old school add-ons are using the dev tools loader, Firebug 2. New School Add-ons Mozilla Add-ons Add-on Compatibility Reporter (with more than 100k users) Firefox Personalization Study Github Tweaks for Bugzilla which helps a number of Firefox OS, Jetpack/Add-on SDK, and other Mozilla engineers to do their jobs efficiently. Github List Bugzilla Bugs helps Mozilla developers on Github work more efficiently by adding even more Github tweaks to Github. BugzillaJS which also helps Mozilla developers work more efficiently. Mozilla Reps Companion which was built to help Mozilla Reps make monthly reports. Heartbleed which informs Firefox users when they use is vulnerable to the Heartbleed attack. Community Add-ons Finally I’d like to mention some of the add-ons that were developed outside of Mozilla, which was one of the primary goals that lead to the project’s conception. This are some of my favorites: Ghostly (with more than 1.2 million users) 1Password (not on AMO, it ships with 1Password, number of users is unknown to me) Reddit Enhancement Suite (with more than 225k users) DuckDuckGo Plus (with more than 200k users) Soundcloud Downloader (with more than 85k users) NO Google Analytics (with more than 35k users) Click here to see the full AMO list Note: user counts were taken on Oct 15th 2014 and the numbers will obviously change over time Addons.Mozilla.Org (AMO) It should be no surprise that there is a fast track on AMO for extensions built with the Add-on SDK, this is because there is less code to review, and the reviews are generally easier. This is good news for the Mozilla community in three ways, the first is that there are more people developing add-ons, secondly the review times are shorter than they would be otherwise, and last of all (but not least) reviewing add-ons is easier, which results in more reviewers. Summary There are many ways in which the Jetpack/Add-on SDK is being used in, adds value to, and is an essential part of the Mozilla mission and community, which are not obvious. Furthermore all of these use cases now depend on the Jetpack/Add-on SDK and all have to be factored in to the team’s decision making, because bugs come from all of these important sources. So the team can no longer merely focus on new school add-on metrics imho. Next I want to describe areas the project could work on in the future. Related Links What is the Jetpack/Add-on SDK? A Blockbuster Firefox Part 2 - Your Brain On The Web A Blockbuster Firefox JPM Beta Jetpack in the Future My DevTools Work Week Hack [Less]
Posted almost 2 years ago
Portland. The three words that come to mind are overwhelmed, cold, and exhilarating. Getting there was a right pain, I’d have to admit. Though, flying around the US the weekend after Black Friday isn’t the best idea anyway. According to my rough ... [More] calculations, it took about 25 hours from take off in Delhi to wheels down in Portland. That’s a heck a lot of time on planes and at airports. But hey, I’ve been doing this for weeks in a row at this point. At the airport, I ran into people holding up the Mozilla board. As I waited for the shuttle, I was very happy to run into Luke, from the MDN team. We met at the summit and he was a familiar face. We were chatting all the way to the hotel about civic hacking. This work week is the most exciting Mozilla event that I’ve attended. I’m finally getting to meet a lot of people I know and renewing friendships from the last few events. I started contributing to Mozilla by contributing to the Webdev team. My secret plan at this work week was to meet all the folks from the old Webdev team in person. I’ve known them for more than 3 years and never quite managed to meet everyone in person. After a quick shower, I decided to step out to the Mozilla PDX. According to Google Maps, it was a quick walk away and I was trying not to sleep all day despite my body trying to convince me it was a good idea. At the office, I met Fred’s team and we sat around talking for a while. It was good to meet Christie again too! That’s when a wave of exhaustion hit. I didn’t see it coming. Suddenly, I felt sluggish and a warm bed seemed very tempting. I quickly retired to bed after lunch with Jen, Sole, and Matt. When I got down after the nap, there was a small group headed to the opening event. This was good, because I got very confused with Google Maps (paper maps were much more helpful). Whoa, people overload. I walked around a few rounds meeting lots of people. It was fun running into a lot of people from IRC in the flesh. I enjoyed meeting the folks from the Auckland office (I often back them out :P). And I finally met Laura and her team. For change, I’m visiting bkero’s town this time instead of him visiting mine ;) The rest of the evening is a bit of a blur. Eventually, I was exhausted and walked back to the hotel for a good night’s sleep before the fun really started! [Less]
Posted almost 2 years ago
A few weeks ago we had the Mozilla Mozlanida meet up in Portland. I had a few things on my agenda going into that meeting. My biggest was to critically examine the project my team and I have been working on for almost two years. That project is ... [More] Marketplace Payments, which we provide through the Firefox Marketplace for developers. We don't limit what kind of payment system you use in Web Apps, unlike Google or Apple. In Mozlandia, I was arguing (along with some colleagues) that there really is little point in working on this much anymore. There are many reasons for this, but here's the high level: Providing a payments service that competes against every other web based payment service in existence is outside of our core goals We can't actually compete against every other web based payment service without significant investment Developer uptake doesn't support further investment in the project. There was mostly agreement on this, so we've agreed to complete our existing work on it and then leave it as it is for a while. We'll watch the metrics, see what happens and make some decisions based on the that. But really the details of this are not that important. What I believe is really, really important is the ability to critically examine your job and projects and examine their worth. What normally happens is that you get a group of people and tell them to work on project X. They will iterate through features and complete features. And repeat and keep going. And if you don't stop at some point and critically examine what is going on, it will keep repeating. People will find new features, new enhancements, new areas to add to the project. Just as they have been trained to do so. And the project will keep growing. That's a perfectly normal thing for a team to do. It's harder to call a project done, the features complete and realize that there might be an end. Normally that happens externally. Sometimes its done a positive way, sometimes it's done negatively. In the latter people get upset and recriminations and accusations fly. It's not a fun time. But being able to step aside and declare the project done internally can be hard for one main reason: people fear for their job. That's what some people said to me in Mozlandia "Andy you've just talked yourself out of a job" or "You've just thrown yourself under a bus". Maybe, but so be it. I have no fear that there's important stuff to be doing at Mozilla and that my awesome team will have plenty to do. Right, next project. Update: Marketplace Payments are still there and we are completing the last projects we have for them. But we aren't going to be doing development beyond that on them for a while. Let's see what the data shows. [Less]
Posted almost 2 years ago
Earlier this week, BitTorrent, Inc. announced Project Maelstrom. The idea is to apply the bittorrent technologies and approaches to more of the web. Note: if you can’t read the text in the image, it says: “This is a webpage powered by 397 people ... [More] + You. Not a central server.” So. Much. Win. The blog post announcing the project doesn’t have lots of details, but a follow-up PC World article includes an interview with a couple of the people behind it. I think the key thing comes in this response from product manager Rob Velasquez: We support normal web browsing via HTTP/S. We only add the additional support of being able to browse the distributed web via torrents This excites me for a couple of reasons. First, I’ve thought on-and-off for years about how to build a website that’s untakedownable. I’ve explored DNS based on the technology powering Bitcoin, experimented with the PirateBay’s now-defunct blogging platform Baywords, and explored the dark underbelly of the web with sites available only through Tor. Second, Vinay Gupta and I almost managed to get a project off the ground called Firecloud. This would have used a combination of interesting technologies such as WebRTC, HTML5 local storage and DHT to provide distributed website hosting through a Firefox add-on. I really, really hope that BitTorrent turn this into a reality. I’d love to be able to host my website as a torrent. :-D Update: People pay more attention to products than technologies, but I’d love to see Webtorrent get more love/attention/exposure. Comments? Questions Email me: [Less]
Posted almost 2 years ago by Andrea Wood
There are a lot of ways that fundraising at Mozilla is very different than the fundraising I’ve done at other non-profit organizations. One of the most striking differences is how our Privacy Principles guide our donor experience, our fundraising systems, … Continue reading
Posted almost 2 years ago by Kazé
Following yesterday’s post about using “npm install -g” without root privileges, here are the Python and Ruby counterparts for your beloved OSX or Linux box. By default, pip install and gem install try to install stuff in /usr/, which requires root ... [More] privileges. Hence, most users will “naturally” do a sudo to perform the install — which is, in my opinion at least, a very bad idea (do you really want to give root privileges to packages that haven’t been reviewed?). Fortunately, there’s more than the default setting. Python: pip install --user With Python 2.6 and later you can avoid “sudoing” your pip install by using the --user argument (thanks @cmdevienne for the tip!). Let’s test this with html-linter: $ pip install --user html-linter By default on Linux and OSX (non-framework builds) this will install your package into ~/.local, which is just fine for me. All executables are in ~/.local/bin/, which is included in my $PATH, and all Python libraries are in ~/.local/lib/python2.7/. The world couldn’t be any better. You can specify a custom destination by setting the PYTHONUSERBASE environment variable: $ export PYTHONUSERBASE=/myappenv $ pip install --user html-linter Of course, you’ll have to add that to your $PATH to make it work. You can add the following lines to your ~/.profile like that: export PYTHONUSERBASE=/myappenv PATH="$PYTHONUSERBASE/bin:${PATH}" The only downside (compared to npm) is that you’ll have to remember to use the --user argument when installing Python packages. If there’s a way to make it the default mode, please let me know. EDIT: a good workaround is to define a custom pip function in your ~/.bash_aliases (or bashrc, zshrc, whatever), as suggested in comment #1. Ruby: gem install --user-install gem’s --user-install argument is quite similar. One good thing is that you can easily make it the default mode: $ echo "gem: --user-install" >> ~/.gemrc Now let’s try that with the most valuable gem I know: $ gem install vimgolf Fetching: vimgolf-0.4.6.gem (100%) WARNING: You don't have /home/kaze/.gem/ruby/1.8/bin in your PATH, gem executables will not run. As you can see, gem installs everything in ~/.gem by default; unfortunately, the file structure does not allow to put executables in the same ~/.local/bin/ directory. Never mind, we’ll add those ~/.gem/ruby/*/bin/ directories to the $PATH manually by adding these lines to the ~/.profile: for dir in $HOME/.gem/ruby/*; do [ -d "$dir/bin" ] && PATH="${dir}/bin:${PATH}" done Source your ~/.profile, you’re done. [Less]
Posted almost 2 years ago by elvis314
For the last year, I have been focused on ensuring we look at the alerts generated by Talos.  For the last 6 months I have also looked a bit more carefully at the uplifts we do every 6 weeks.  In fact we wouldn’t generate alerts when we uplifted to ... [More] beta because we didn’t run enough tests to verify a sustained regression in a given time window. Lets look at data, specifically the volume of alerts: Trend of improvements/regressions from Firefox 31 to 36 as we uplift to Aurora this is a stacked graph, you can interpret it as Firefox 32 had a lot of improvements and Firefox 33 had a lot of regressions.  I think what is more interesting is how many performance regressions are fixed or added when we go from Aurora to Beta.  There is minimal data available for Beta.  This next image will compare alert volume for the same release on Aurora then on Beta: Side by side stacked bars for the regressions going into Aurora and then going onto Beta. One way to interpret this above graph is to see that we fixed a lot of regressions on Aurora while Firefox 33 was on there, but for Firefox 34, we introduced a lot of regressions. The above data is just my interpretation of this, Here are links to a more fine grained view on the data: Aurora 31 Aurora 32 Aurora 33, Beta 33 Aurora 34, Beta 34 Aurora 35, Beta 35 Aurora 36 As always, if you have questions, concerns, praise, or other great ideas- feel free to chat via this blog or via irc (:jmaher). [Less]
Posted almost 2 years ago by Ruben Martin [:Nukeador]
Last Thursday we had our regular weekly call about the Reps program, where we talk about what’s going on in the program and what Reps have been doing during the last week. Summary FOSDEM update. Portland Work Week. ReMo/Mozillians websites testing. ... [More] End of year receipts campaign. Remo challenges. Stumbling in a box events. Reps Monthly newsletter. Detailed notes AirMozilla video Don’t forget to comment about this call on Discourse and we hope to see you next week! [Less]
Posted almost 2 years ago by Blair McBride
Things I’ve been saying for a long time: I need to blog more. I haven’t been very good at achieving that. So, recently I was at UX Design Day – a one-day conference focused on UX and design. It’s the only conference of it’s kind in NZ, and it started ... [More] here in Dunedin. Working remotely and not really part of the design community, I don’t often get a chance to sit down and talk UX/design in-person with people. This year the conference was back in Dunedin, so I jumped at the chance to attend. I was impressed by the diverse turnout this year. Interaction design, visual design, content strategy, marketing, education, user research, and software development were all represented. I had tried to drum up support from the local developer community to attend, and that seemed to have worked well. Too often do I see developers ignoring UX/design issues – either being very dismissive, or claiming it’s another person’s job; so this felt like a good sign. Alone those lines, one of the things that stuck with me was the talk around not having UX teams separate from everything else. The largest example talked about was UX and content strategy, but I think it applies equally to software development teams too. Having these two groups work closely together, not segregated, helps bring so much context to both teams. The other important take-away for me was the importance of not accepting crap. That is, experiences or systems that are, intentionally or not, lacking in design forethought and therefore lead to an unnecessarily difficult experiences, or a design that by default leads to harm. The primary concrete example here was physical safety in various workplaces, where people were put at needless risk due to the lack of safety by default design. I think this is a very relevant point for those of us building software, given that we so often experience design in software that feels broken, but too often don’t do anything constructive to help fix it. Obligatory wall of Post-It notes On the whole, I enjoyed the conference. However, since the talks covered such a wide corpus, I feel it didn’t provide enough time for any one area. Diversity is an asset, but I would have liked time for more in-depth explorations of topics. [Less]