Devrel/Hacks

From MozillaWiki
Jump to: navigation, search

Info about the Hacks blog and how you can participate.

Mozilla Hacks is a pragmatic blog for people who make the Web. We also cover Firefox development and web platform development with a perspective for people who make websites (or web apps, or web services). It is managed by the Developer Relations team.

Writers' Guidelines

  • Workflow and review process for Hacks posts:
    • If you have a timely and pragmatic technical topic of interest (Firefox, Mozilla, the web platform, JavaScript) to Hacks' primary audience of web developers, designers, and people who make the web, we'd love to hear from you. Please contact Havi Hoffman and/or Jason Weathersby by email, IRC, Slack.
    • Workflow: Please share your first draft in a Gdoc, and help us identify key stakeholders/approvers/review who will need to review and share feedback. Once all comments are in the Gdoc and have been resolved, the post author will add the draft directly to wordpress. We'll establish a publication date, share with all relevant social channels, and prior to publication we'll do a final copyedit and link check in the wordpress post.

We typically publish once or twice weekly on Tues - Thur, 8am pdt.


  • Code syntax for Hacks posts:
    • We're now using the wp-highlight.js plugin for code syntax highlighting/display.
    • It autodetects a wide variety of programming languages
    • Format: <pre><code class="js">keep on rocking the free web foo</code></pre>
  • Links: We like links!
    • We like them best in the body of the article, rather than served as relative links with a separate Reference or Footnotes section at the bottom
    • Please use the target="_blank" argument in your URL call. In the WP-editor you can "Open link in a new window/tab" when you use the "Insert/edit link" UI.
    • Look for places to link to relevant technical content from Mozilla Developer Network (e.g. articles about new features, functions, or APIs) or Wikipedia (esp for technical acronyms). Don't assume your readers know where to look.
  • Length: Most Hacks articles fall in the range of 800-1500 words. Some run longer, but if they run much longer we'll encourage you to write a series rather than a single post.
  • Images and video
    • Author bio image: You can connect a gravatar.com image with the email address listed in Wordpress to display an author photo or image alongside your bio.
    • Upload via "Add media" link in Wordpress. WP will host your image. Use the upload link to embed video also.
  • Markdown
    • We also have a NEW plugin that automagically converts Markdown to HTML. You should be able to write in MD and save draft.
  • Ideas (Please add yours below)

Suggested Posts (this section is OUT OF DATE, pls ping/email havi if you have suggestions... )

Article Idea Status Product Areas Links Notes
RequestSync API [ON TRACK] Firefox OS bug 1018320 No MDN docs yet, shipping in FxOS 2.2 likely. Baku was fine with re-publishing his post on Hacks. Dietrich connected Baku (Andrea M) to Havi. Post on hold until the API is shipping.
Web Bluetooth API v2 [ON TRACK] Firefox OS / IoT bug 1005848, wiki Notable change is Bluetooth LE. Dietrich contacted Ben Tian about it, most of the APIs are privileged (yay!) but not shipping until FxOS v3 (boo). Contacts: Ben Tian, Jocelyn Liu, Shawn Huang, Jamin Liu, Bruce Sun, Will Wang.
Bluetooth Data Channels [ON TRACK] Firefox OS / IoT Article on BT-as-transport-layer for mesh and disconnected msging. Dietrich contacted Ben Tian.
Gallery Scrollview Architecture [ON TRACK] Firefox OS Something iOS/Android do well, but SUPER hard to do well on Web. See Roc's post. Dietrich asked DJF, cc'd Andew Sliwinski. If DJF can't do it, maybe a MoFo article about how WebMaker solved it?
Inter App Communication API [ON TRACK] Firefox OS bug 876397 Used for media-on-lockscreen in Gaia, maybe certified only. Need to figure out priv'd uplift plan. Dietrich will ask Gaia team.
JPM [ON TRACK] Firefox, Android New Jetpack + Node.js tool to replace CFX. Dietrich asked Erik Vold, who's shooting for 2/15. UPDATE: Will likely go out as a series, later Feb/March (Havi)
System Message API [ON TRACK] Firefox OS MDN docs Not sure what the right content or person is.
FxOS Media Remote Controls [ON TRACK] Firefox OS src Dietrich asked Jim Porter and Dominic Kuo.
Presentation API [ON TRACK] Firefox OS, IoT bug 1080474 Device discovery and display! Dietrich asked Gina Yeh and Shih-Chiang Chien, but they say it's not ready to write about yet.
Gaia Web Component Migration [ON TRACK] Firefox OS Gaia team members migrating from Building Blocks to web components. Wins, hurdles, lessons learned. Large project web component patterns. Wilson Page is interested, but is slammed right now. We should figure out when those APIs are getting enabled by default (behind a pref right now), and coordinate publishing with that.
Service Worker Delta Encoding [ON TRACK] Firefox, Firefox OS, Android Ben Kelly, in progress.
Shumway [ON TRACK] Moz Research Michael Bebenita, Chris Peterson & team (Havi, Jason met with Chris Peterson and Michael, Jason will author when we receive some materials from team)
Web Animations API [ON TRACK] Firefox, Firefox OS, Android polyfill Dietrich reached out to Rachel Nabors. No movement, so talking to Brian Birtles, the author of the Gecko impementation.
RTL in Web Apps [ON TRACK] Firefox, Firefox OS, Android Dietrich reached out to Gaia team implementing RTL in 2.2, have some names, will narrow down. Ahmed Nefzaoui, Mozilla Tech Speaker/Phoxygen is working on this in Q3.
Mulet [ON TRACK] Firefox OS, DevTools Desktop dev environment for developing Gaia. Dietrich reached out to Ochameau.
Word Prediction for Bengali [ON TRACK] Firefox OS Article about implementing a learning algorithm for languages where a static word list can't be used. Could cover how the keyboard and prediction APIs work, how to implement prediction for a new language, and the challenges of doing so for Bengali. Dietrich will reach out to Rabimba and Tim Chien.
CSS Filters [ON TRACK] CSS blog post As of Fx35, no longer need SVG to do filters. Robert Longson blogged briefly about it (see link to left), but would be good to have a comprehensive post showing off filters without SVG. Should contact Robert, or see if someone who did the MDN content might want to write.
J2ME.js [ON TRACK] Firefox OS, Android? Dietrich reached out to Myk Melez, and he's talking with team about topics. Launch/and publicity delayed till post-MWC per PR.
Croma app [ON TRACK] Firefox OS Numix Project's Android app, ported to Firefox OS. It's beautiful. I asked them to write a post about how they ported and implemented. They responded on twitter affirmatively, waiting to hear back on email. They threatened to use disco and cheesiness in their post, which meets our technical requirements and editorial standards.
Gaia apps with WebIDE [ON TRACK] Firefox OS, mobile web in Nightly right now, Sole needs to test this and establish how it works. It would be great to publish it even with a huge "WARNING THIS IS A LANDMINE" sign, so the team gets feedback and the feature is more tested
Web VR [ON TRACK] Firefox Dietrich talked with Josh C. about content ideas, as well as co-publishing (since they have mozvr.com blog). They've got a few content ideas lined up, and I have more, so there's a whole series in the making here. @ncasenmare can tell their dev workflow story, re-ping after GDC is over. NOTE: IIRC Potch is doing some posts on this?
Lang Packs [ON TRACK] Firefox OS Havi saw video screencast demo from Stas - lands in 2.2, Havi will contact Stas & crew for timing
Web-RTC story of Grouphone [ON TRACK] Firefox OS / Web-RTC Kaustav Das Modak will author a story about their implementation of a group audio calling app, with info on development and debugging, wins and challenges. ETA ~April 2015.
NFC API for Priv'd apps [ON TRACK] Firefox OS NFC APIs are now available to privileged apps. Yoshi Huang (Taipei) is updating all MDN docs. Once that's complete, we can write something. If someone from that team doesn't volunteer, Dietrich can write it up.
Offline Metrics [ON TRACK] Offline Web / Analytics The Webmaker team have implemented a way to keep a queue of offline events so you can send them to GA when you're finally online. Adam Lofting will ping sole when they're ready to talk about the separate library they're extracting
Measuring React events [ON TRACK] Fast web / Analytics The Webmaker team are working on tracking React events - Adam Lofting will ping sole when they're ready to talk about the separate library they're extracting
srcset and <picture> [ON TRACK] Web / HTML Article on using srcset with <img> and <picture>, and how and when to use <picture>. Needs author?
Channel Messaging API [ON TRACK] Web / HTML bug 952139 Introduction. Difference from Broadcast Channel. When to use which. https://developer.mozilla.org/en-US/docs/Web/API/Channel_Messaging_API. Not enabled by default on Nightly yet.

Completed Posts

Article Idea Status Product Areas Links Notes
FxOS App Startup Performance [DONE] Firefox OS, mobile web Dietrich reached out to Eli Perlman, who's writing tools and best practices for this. He agreed and gave an ETA of sometime Q1. Q2 post on Raptor!
Battery API new spec [DONE] Web / HTML bug 1050749 Article about the new spec in coordination w/ Firefox implementation by franciov (Francesco Iovine)
Payments API [DONE] Firefox OS, Firefox (now) bug 1133963, bug 1134481, bug 1034326 Kumar did an intro, but we need to push on it's story. How have people actually used it? Testimonial stories from devs who've implemented would be dope. (Havi: UPDATE: Fxpay updates from Kumar - published April 21) https://hacks.mozilla.org/2015/04/easier-in-app-payments-with-fxpay/
Power-positive Patterns [DONE] Firefox OS Portland State University student project exploring JavaScript APIs for accessing the network in a condition-aware and battery-aware way. Dietrich mentoring. ETA mid-March. Published April 20. https://hacks.mozilla.org/2015/04/network-activity-and-battery-drain-in-mobile-web-apps/
WebRTC in Firefox 38: Multistream and renegotiation [DONE] WebRTC Maire Reavy & team (Nils Ohlmeier, Byron Campen) Published March 25.
Fetch API Introduction [DONE] Firefox, Firefox OS, Android bug 1039846 Nikhil Marathe agreed to write. Scheduled for 3/10
CSS Counter Style Level 3 [DONE] CSS http://dev.w3.org/csswg/css-counter-styles-3/ MDN contributor Saurabh Nair aka jsx, scheduled 2/11
FxOS Web Server [DONE] Firefox OS https://github.com/justindarc/fxos-web-server Justin Darcangelo IRC: justindarc (Havi in touch, scheduled 2/9)
Canvas updates [DONE] Canvas API Florian Scholz from MDN (Havi will contact)
Broadcast Channel API [DONE] Firefox OS bug 966439 Havi: Jweathersby has a draft - week of 2/2
Project Silk [DONE] Firefox OS (and more?) Mason Chang blogged, and reposting to Hacks!
Functional JavaScript [DONE] JavaScript; programming language This is an article post on MozTPE's blog, which introduces the language feature in functional programming flavor, and shows how much nice tricks JavaScript could play with. I've modified and translated it in English, with lots of additional information & links. (Greg Weng) This note left by Greg, Dietrich introduced to Havi to get this rolling.
Node Firefox OS [DONE] Firefox OS Sole: published 2/5