Matt Brubeck: Planet Matt

Bookmarks: Recursive Drawing

Posted in Bookmarks on May 14, 2012 11:37 PM

"an exploration of user interface ideas towards the development of a spatially-oriented programming environment." In the same spirit as Bret Victor's "Inventing on Principle" talk. Easy direct manipulation of fractal drawings.

Bookmarks: Vi Hart

Posted in Bookmarks on April 19, 2012 12:25 AM

"Doodling in math class" and other fantastic videos/art/teachings.

Bookmarks: Nurturing a girl scientist | Geek Feminism Blog

Posted in Bookmarks on April 19, 2012 12:23 AM

Call for suggestions from a non-scientist parent; see the comments for answers.

Bookmarks: Playfic

Posted in Bookmarks on February 17, 2012 01:00 AM

"the first online community that lets you write, remix, share, and play interactive, text-based games with the world"

Bookmarks: Physicists Seek To Lose The Lecture As Teaching Tool

Posted in Bookmarks on January 02, 2012 09:59 AM

"'Students have to be active in developing their knowledge,' he says. 'They can't passively assimilate it.' This is something many people have known intuitively for a long time — the physicists just came up with the hard data. Their work, along with research by cognitive scientists, provides a compelling case against lecturing"

Journal: Pre School

Posted in Journal on January 02, 2012 09:25 AM (comments)

As we start to think about school choice, I find it helpful to remind myself that (a) decisions we make now can still be changed later, and (b) real learning is not confined to or limited by the classroom.

Bookmarks: What If Middle-Class Jobs Disappear?

Posted in Bookmarks on January 02, 2012 09:12 AM

"These trends serve to limit the availability of well-defined jobs. If a job can be characterized by a precise set of instructions, then that job is a candidate to be automated or outsourced to modestly educated workers in developing countries."

Bookmarks: something went wrong

Posted in Bookmarks on December 09, 2011 08:33 AM

Bookmarks: Regular Expression Matching Can Be Simple And Fast

Posted in Bookmarks on December 07, 2011 08:59 PM

Bookmarks: The Kid Should See This.

Posted in Bookmarks on November 16, 2011 05:14 AM

"There's just so much science, nature, music, arts, technology, storytelling and assorted good stuff out there that my kids (and maybe your kids) haven't seen. It's most likely not stuff that was made for them... But we don't underestimate kids around here."

Bookmarks: MAKE | A Curriculum of Toys

Posted in Bookmarks on November 11, 2011 11:09 PM

"What are the fundamental things kids should know to help them understand and enjoy the complex physical world we live in, to modify or repair it in the future, to succeed as adults? How do we enable kids to be masters of their destiny? Can we do it with nothing but good toys and experiences?"

Journal: Some people say the sky is just the sky

Posted in Journal on November 07, 2011 06:42 AM (comments)

Eleanor enjoys seeing the moon (a rare treat for a girl in cloudy Seattle, with an early bedtime to boot), so when I glimpsed a third-quarter moon through the skylight last night, I pointed it out to her, then pointed our telescope through the skylight for a better view. I had trouble explaining what craters were, so I grabbed a nearby tablet (since I started doing mobile development, they are lying around everywhere) and showed her some pictures from the lunar surface. She was disappointed the mountains weren't like the ones in Wallace and Gromit.

Next she wanted to see stars, so we went out on the back deck with a warm blanket. The moon and the city lights and the house blocked out a lot, but we did see a number of stars, plus Jupiter rising in the east. (Seeing Jupiter's Galilean moons through the scope was especially interesting to me because I'm in the middle of Galileo's Dream by Kim Stanley Robinson, which is set partly during the life of Galileo Galilei and partly on the moons themselves.) We stayed up past Eleanor's bed time, and I tried to answer her questions about planets and moons and stars and scientists. We used Google Sky Map to identify some of the things we'd seen outside.

Being around a five-year-old makes me remember how intense feelings and experiences were at that age. It's a lot of pressure for a parent, because every offer you make, or wish that you fulfill or deny, can lead to either thrills of pleasure or depths of disappointment. I don't have the energy to keep up with even half of what Eleanor wants to do, so I just work at finding enough I can manage. Yesterday she got to spend several hours playing with her best friend from last year's preschool class, which was perfect, Those two girls could keep up with each other so much better than I could hope to. Socializing is also hard work for Eleanor, though, and today she didn't seem to mind having a boring day at home.

Journal: Rewrite

Posted in Journal on November 07, 2011 05:36 AM (comments)

At work we're in the process of rewriting Firefox for Android to replace most of our JavaScript/XUL front-end code with new code using Android's Java frameworks. This is looking like a very good move technically, but on a personal level it sort of cast me adrift. I've been working on the XUL front-end code for almost two years, and suddenly everything I've done or was about to do is living in a codebase that's soon to be abandoned.

Most of the team has jumped straight into the new front-end code, but I've had trouble doing that, partly because I had some loose ends to wrap up in the old code so we can ship the next few updates, and also because I was tired out from our last big project and didn't have the energy to jump right into another one. So I spent a couple weeks doing simple janitorial work like bug-fixing and sheriffing. This gave me some extra mental energy for my free-time projects like the AI class, and learning enough LLVM to contribute some patches to the Rust programming language.

I'm glad that I've learned to recognize swings in my productivity cycle. Instead of denial and procrastination during the low-motivation periods, now I try to accept them and use them to regroup. I think my anti-burnout strategy worked this time, since I now have some ideas of new projects I'm excited to try in the new codebase. If I'm lucky, that means I'm back on the upward swing of a new cycle.

Bookmarks: The Architecture of Open Source Applications: LLVM

Posted in Bookmarks on November 04, 2011 04:35 AM

Very nice introduction to what LLVM does and how it works.

Bookmarks: Lauren Ipsum

Posted in Bookmarks on October 27, 2011 04:44 AM

A children's book about computer science.

Bookmarks: Rich Hickey: Simple Made Easy

Posted in Bookmarks on October 25, 2011 04:10 AM

Rich Hickey explains why "simple" is important and "easy" is not; what the difference is; and the ways he has learned to make software simple.

Weblog: Android app permissions and Firefox Beta

Posted in Weblog on October 11, 2011 05:00 PM

As a non-profit organization, Mozilla has a strong commitment to personal privacy and empowerment. But after we released the last update to Firefox Beta for Android, many people started asking us why Firefox needed access to their phone numbers.

Firefox does not access users’ phone numbers, but it was clear that we needed to address this concern. Where did these questions come from? Here’s the first thing users saw when installing or updating Firefox Beta in the Android Market:

“Firefox Beta permissions: Storage, Phone calls, Network   communication, Your location”

The “Phone Calls” permission was added in the last update to Firefox Beta (but has been since been removed, as I’ll explain below). When users installed that update and tapped on “Phone calls” for more information, they saw this:

“Read phone state and identity: Allows the application to access   the phone features of the device. An application with this permission can   determine the phone number and serial number of this phone, whether a call   is active, the number that call is connected to and the like.”

Why did Firefox Beta ask for this permission? Firefox did not ever access phone numbers, serial numbers, or phone calls. But it did have code to detect the type of network connection: 2G, 3G, 4G, Wi-Fi, and so on. Firefox or add-ons could use this code to change settings automatically based on network type, for example to use less data on mobile networks.

Unfortunately, this required permission to READ_PHONE_STATE, which also grants access to very sensitive data. We knew this would worry some users, so we immediately started working on explaining how and why Firefox uses various permissions. We now have this information on our support site and will link to it from our Android Market page.

But the reaction to the new permission in Firefox Beta was so strong that we decided to remove that permission completely, along with the code that used it. Now when you go to the Android Market to install Firefox Beta, it will no longer ask to read “phone state and identity.”

Thoughts on Android Permissions

Permissions on Android and similar platforms are not perfect, but they do give users some useful tools to protect themselves. When an app requests only minimal permissions, users know it can do only limited damage if it is buggy or malicious. Recent versions of Android also have well-written explanations of each permission to help users make decisions.

But when an app requests lots of permissions, users have a tough choice. They can grant the permissions, or not use the app at all. This is especially bad for permissions like READ_PHONE_STATE that are needed for some reasonable features but also provide access to sensitive data. Eventually, most people probably get used to granting whatever permissions are requested, especially for apps like Facebook and Netflix that provide unique access to popular services.

Making permissions finer-grained might help (for example, separating “Read phone number” from “Read connection type”), but would also mean longer lists of permissions. That could make users even less likely to read and understand them. Explanations from developers can also help, but only if users trust them to tell the truth. Allowing users to grant or deny individual permissions (perhaps only at the time the app needs them) might help too, or it might just train users to always grant permissions so that apps will stop nagging them.

Aside from these overall design issues, there are also bugs in the developer documentation, and a bug that causes old permissions to stick around even after updating to a new version that doesn’t need them. These little bugs make it harder for developers to do the right thing. Some researchers at UC Berkeley have analyzed the Android source code to produce tools and documentation that fill in some of the gaps for developers.

The good news is that some users are paying attention, and those users make things better for everyone by pressuring developers (like us!) to remove invasive permissions. If you’re one of the Firefox fans who wrote to us about the new permissions in Firefox Beta, thank you! We appreciate it.

Bookmarks: Wood Tape

Posted in Bookmarks on August 05, 2011 08:20 PM

This story convinced me to remind my own four-year-old about the wooden table she'd been wanting to build and paint, but that I hadn't got around to helping with.

Photos: Seattle in the sun and rain

Posted in Photos on July 27, 2011 11:06 PM (comments)

Seattle in the sun and rain

Photos: Ponies

Posted in Photos on July 27, 2011 11:06 PM (comments)

Ponies

Captive Chincoteague ponies outside the Refuge Inn on Chincoteague island.

Bookmarks: How I Learned To Play Guitar

Posted in Bookmarks on July 26, 2011 06:10 PM

"The lessons confused me, because though I enjoyed making progress, I didn’t see myself heading to that place of performing folk songs on the back porch, and I was completely unaware that there might be multiple valid approaches to an instrument. I just knew that what I was experiencing was not what I had envisioned."

Bookmarks: Lisa Bloom: How to Talk to Little Girls

Posted in Bookmarks on July 15, 2011 11:56 PM

"I always bite my tongue when I meet little girls, restraining myself from my first impulse, which is to tell them how darn cute/ pretty/ beautiful/ well-dressed/ well-manicured/ well-coiffed they are."

Journal: Meet the authors

Posted in Journal on June 28, 2011 03:56 AM (comments)

A few months ago we stayed at a small bed-and-breakfast while visiting family in Portland, Oregon. Two of our fellow guests were a couple with their own self-published comic book imprint. I had fun talking to them about their work, especially since I've been enjoying DMZ which is very similar to their latest title American Terrorist. (As a bonus, our kids are the same ages and managed to entertain each other nicely for part of our trip.) If you want to check out their work, you get the first issue for free as a PDF or from WOWIO or Comixology. The other issues are $1 each.

In other "self-published books by people I'm vaguely acquainted with" news, David D. Friedman (known to many of you as "[info]patrissimo's dad") has published his second fantasy novel for the Kindle, and his medieval cookbook through Amazon's print-on-demand service. I've read and enjoyed both of his novels and several of his economics books; I haven't looked at the cookbook yet. (He also wrote a bit about the writing process and about self-publishing, if you want the behind-the-scenes view.)

Bookmarks: http://www.ipuz.org/

Posted in Bookmarks on April 14, 2011 09:25 PM

An extensible JSON standard for representing crosswords and other puzzles.

Bookmarks: Android Developers Blog: Android Browser User-Agent Issues

Posted in Bookmarks on April 12, 2011 10:06 PM

"This posting describes some issues when browsing websites with mobile variants using large-form-factor Android devices."