February 2012
7 posts
4 tags
Add-on Builder 1.0 →
Add-on Builder, the product I’ve been working on for the past year, has just hit 1.0 It’s a web-based IDE that let’s people create add-ons for Firefox using JavaScript and HTML.
7 tags
The Shipyard Mindset
I’ve been working quite a bit on this little JavaScript MVC framework called Shipyard. Those who know me may recall that I used to write a lot about MooTools, and may wonder why I’ve moved off it and am writing my own framework instead. I figured I’d take the time to explain why I felt the need existed for Shipyard, and the goals it tries to accomplish:
Being truly modular
...
5 tags
Facebook Mobile is Boring →
Dan Frommer points out the issue with Facebook Mobile:
The more immediate problem, I’d say, is that Facebook’s mobile product is rather boring today.
Many claim that it’s terrible because it’s a WebView. That’s non-sense. Twitter is native, and just as boring, UX-wise. People could do some really fun, interactive stuff with JavaScript and transitions. Why don’t they?
4 tags
What Are PCs? →
As Shawn Blanc puts it:
When they say the iPad is not a PC what they mean is: there’s no way I would or could give up my PC and use an iPad instead.
Some people seem to think that tablets are not PCs. They aren’t desktop computers, that’s true. But these new devices, tablets and especially smartphones, are more personal than my desktop is. My phone is the most personal computer...
4 tags
Users Are Not Worried about iOS Restrictions →
Alex Knight:
Apple simply can’t make enough of them as we speak to even fulfill demand. So how is it that anyone can believe more users are going to care about the platform’s restrictions?
It seems true that most people don’t care that much about the restrictions. I’d say its similar to how many people don’t care about the privacy issues with our browsing the internet. Go...
5 tags
Chrome for Android →
Exciting news for Android. It’s always been a wonder why the stock Browser wasn’t Chrome, and now it is. And it really rocks. The tab interface is fun to use.
However, since it uses an updated version of the webkit rendering engine, it should need to load that library upon initialization. The standard engine is always in memory, something that’s held back Firefox for Android....
2 tags
The Invisible Hand of Super Metroid →
Hugo Bille’s analysis of how Super Metroid guides a player while the player feels they are discovering things in the chaos on their own:
Watching him, a complete newcomer to the genre, still find his way around Zebes in pretty much the same way I’d do, almost never once getting lost or stuck for any considerable amount of time, made me question how that could be.
January 2012
8 posts
1 tag
A Broadcasting Network →
Dieter Bohn, over at The Verge, describing Twitter’s evolution:
The recent redesign of the Twitter web pages and its official Twitter apps that shuffled Direct Messages off to a corner is essentially a side effect of this basic attitude: Twitter isn’t a messaging company, it’s a broadcasting (social) network.
The thing is, I’ve only ever seen it as a broadcasting...
4 tags
A new direction for web applications →
As I said last night, I don’t see how nodejs is the solution, by itself, for a web application that talks to many services. I’d still say that MVC is the best solution we have seen so far. Python has great support for long-running async tasks, talking to various databases, and the like.
That said, I love my JavaScript. Here’s where I see nodejs being a win: writing JavaScript...
6 tags
Cross Device Jabbering
People love to talk to each other. Especially when they’re friends. People do so every day across SMS, Facebook, and GTalk. It would be better for everyone if companies worked together to let everyone communicate with their friends in an easier fashion. It’d be easier than you might think.
GTalk comes as part of Google’s suite of apps by default on Android phones, so everyone...
4 tags
AMD is Not the Answer →
Tom Dale, reiterating why AMD is the wrong solution for JavaScript applications:
In my opinion, having to write this out for every file sucks.
And:
If build tools are required anyway, a much simpler solution should fit most developers’ needs.
The end.
2 tags
Antitrust+? →
MG Siegler, regarding Google’s comments that other social networks haven’t shared their data for indexing:
Those other companies can argue that it’s not in their best business interest to open that data. In effect, Google would be forcing them to hurt their business if they were to open the data up.
So, essentially, the “other companies”, such as Twitter and...
2 tags
Personalizing Search →
Personally, this really excites me. Google has always been useful for un-biased information, but when you wanted to know if a movie was good, or where to eat, you got a bunch of strangers opinions. We all know a friend’s opinion trumps 1,000 strangers.
I hope it will eventually be like this: I want some some good Mexican. Oh look, John and Kevin both recommend La Cantina.1
The...
5 tags
Samsung Will Not Upgrade Galaxy S Phones →
Samsung, regarding upgrading the Galaxy S software to Android 4:
A full update to Android 4.0 Ice Cream Sandwich for the GALAXY Tab(7-inch) and GALAXY S is not practicable due to hardware limitations.
This, as the Nexus S (which is the same internal hardware) is running Android 4 right now.
If an OEM were to release less phones a year, but provide excellent support for them for more than...
2 tags
Dreamweaver was attempting to be helpful, but the moment it reformatted my code,...
– Michael Lopp
December 2011
5 posts
4 tags
Few outside the technological field even knew his name, yet his work has...
– Gene Yuh on the death of Dennis Ritchie.
5 tags
Or: Competition is Good →
John Gruber on the threat of Google:
A different perspective would be that Google is the bigger threat, and that using Apple products is a way to better protect our privacy and personal information.
This was in response to Dave Winer suggesting why he uses Android:
If there is no alternative to iOS then Apple will have exclusive control over what makes it to market. That is a future...
3 tags
The Old Republic →
Star Wars: The Old Republic launches next week, and I’ve long looked forward to this game. I know what I’ll be doing as the year ends.
5 tags
Ghostery →
I was slowly working on an add-on to block social buttons on websites, but I recently just found Ghostery. They have an extension for Chrome and Firefox, and it rocks.
4 tags
Widgets the Right Way →
A lot of sites are using widgets more, be it for ads, or these terrible social buttons that have emerged. Besides not wanting to spend time downloading the social buttons that I won’t use, what I hate the most is that they all have this in common: If they lag, they stall the rest of the page.
That’s because they document.write their contents into the page, which prevents all further...
5 tags
Asynchronous UIs →
A great post by Alex McCaw, creator of the Spine MVC JavaScript1 framework, about how front-end developers do Ajax interactions wrong. Users shouldn’t be stopped because we’re waiting on the server to respond. The interface should respond immediately, and a background sync action should be kicked off.
I’ve been thinking about this for the past year, and wanted to reflect these...
November 2011
6 posts
5 tags
Past Month of Shipyard
Last month I got to start working on Shipyard almost full-time, as I need it to make Add-on Builder work by the end of the quarter. I’m not ready to call Shipyard 1.0 until I’m confident with the API for Models, Controllers, and Views. Models are largely done, Views need some work, and Controllers need a start. Besides that, though, what has happened to Shipyard in the past month?
...
7 tags
The difference between Chrome and Firefox →
When people ask me why they should use Chrome or Firefox, I tell them that feature-wise they’re pretty competitive. This sums up the difference greatly:
This is a Google product and it has to benefit Google. It isn’t merely about making the web better, it is also about promoting Google products and giving them an advantage over competing services. […] Even if it requires violating...
3 tags
Galaxy Nexus on The Verge →
Joshua Topolsky about Ice Cream Sandwich:
I want to note that moving around all of these screens is buttery smooth. There’s no lag, no stutter. Animations are fluid, and everything feels cohesive and solid. It’s like Ice Cream Sandwich is more “there” than previous versions of Android.
I’m very excited for this new version. However, as neat as the Galaxy Nexus...
5 tags
var that = this
I used to think say you should use that in the question “What variable should I name this for closures?” This was because self is already a variable that points to window. However, I’ve since revised my opinion on what is a good variable name in this case.
I now find that and self to be too vague.
Instead, I think the variable should be named after the Class that you are...
4 tags
Programming on an iPad →
This is truly fascinating. With the use of vim, screen, and a Linode server, Mark O’Conner was able to switch entirely to using an iPad for work.
With a Galaxy Tab 10.1 and my own virtual server, I’m tempted to snag a keyboard and try this myself.
October 2011
6 posts
1 tag
Android Orphans →
Michael Degusta, on a truly sad fact about Android:
In other words, Apple’s way of getting you to buy a new phone is to make you really happy with your current one, whereas apparently Android phone makers think they can get you to buy a new phone by making you really unhappy with your current one.
It’s not Android’s fault, but it still affects 99% of all Android consumers, and...
4 tags
Stellar Impact →
I tweeted this previously, but I’ve enjoyed it so much, I feel I must link it here: Stellar Impact.
It’s DotA with space ships, but more importantly, you fly and steer a ship manually (lookout for asteroids), and manually aim your turrets. Oh, the tactics…
5 tags
JavaScript Module Syntaxes →
Excellent analysis of current module patterns by fellow MooTooler Sebastian Markbåge.
His conclusions match mine, and I used them in Shipyard profusely.
In a production environment, you will always want to minify and concatenate your scripts. Since there is always a “build” step, all syntaxes are equal in production.
In development, what matters most is a syntax that gets out of...
1 tag
Getting Stuck →
So very true:
A programmer’s greatest enemy isn’t the tools or the boss or the artists or the design or the legacy code or the third party code or the API or the OS. A programmer’s greatest enemy is getting stuck.
I love my job, but being stuck is excruciatingly depressing. Besides not feeling productive, you worry that your workmates will call you out for sucking.
3 tags
The iPad Needs Competition
Apple fans unanimously believe that tablet makers should stop trying to compete with the iPad. They think that instead, tablets should try to fill other purposes, like the Kindle Fire does.
This is a terrible idea.
It would be similar to saying that no one should compete with Porsches, because they already make great cars. There are lots of people who want a quality car that isn’t a...
4 tags
Who said Android apps can’t look good? →
It kills me that companies who bothered to make a decent iOS app can’t be bothered to make their Android app look good as well.
It’s a common misunderstanding that Android apps are harder to program than iOS.
The real reason Android Apps historically haven’t looked good is because people haven’t put in the same care in building those apps.
September 2011
4 posts
5 tags
Amazon Silk →
The browser that comes in the new Kindle Fire sounds potentially interesting:
The “split browser” notion is that Amazon will use its EC2 back end to pre-cache user web browsing, using its fat back-end pipes to grab all the web content at once so the lightweight Fire-based browser has to only download one simple stream from Amazon’s servers.
However, this raises privacy concerns, indeed:
...
6 tags
What is Shipyard? →
This week, at our Mozilla All Hands, I shared some slides about Shipyard, a JavaScript MVC framework that is making it’s way into Add-on Builder. It’s not finished, but since I shared it there, it felt appropriate to share what there currently is here.
Summary
An application framework that covers all the common things any JavaScript application would need to deal with: interacting...
3 tags
WorkFlowy →
I just found this app, and the concept is pretty cool. Essentially, it’s a gigantic outline tool. As you indent sublists, you can focus on just that list, and then make another sublist, and focus in more.
1 tag
if this then that →
If you haven’t seen already, ifttt is a nifty web service that lets you listen to actions that might happen on certains websites, and react to them with some other action.
4 tags
Github Flow →
We use the git flow model on FlightDeck, and while it works quite well for our structured releases, I do love the methodology shared by the Github team. I’d like to use Pull Requests a bit more, at the least. Having master always be stable sounds nice as well.
August 2011
8 posts
3 tags
Redesigning the Browser Window →
Henrik Eneroth shows his ideas of how the browser UI could look, now that we all have widescreens. It’s beautiful.
I personally love how the “Tab Groups” work, and think Firefox could at least follow suit with regards to remembering my groups, dangit! With Firefox, I only ever set up some groups if I know I will be leaving Firefox open for a week or so. Otherwise, whatever.
4 tags
If Facebook Bought WebOS
I wanted to weigh in on HP giving up on webOS. First, when HP bought Palm webOS, it’s plan to be able to make it’s very own, unique set of products (phones, tablets, and desktops) all running the same OS, it sounded really appealing. Not that I think it’s necessarily the wrong move, but it is too bad they are giving up.
On to webOS’ future. I definitely could see Facebook...
3 tags
Google and Motorola →
I’m sure you’ve seen else where that Google has bought Motorola. While people are busy talking about the boring patent portfolio that Google gains, I’m more interested in this part by Larry Page:
Motorola’s total commitment to Android in mobile devices is one of many reasons that there is a natural fit between our two companies. Together, we will create amazing user...
4 tags
Web Intents →
Web Intents are a seriously cool and useful idea. Android already has Intents, and I love them. It let’s applications that know nothing about each other be able to interact. The Google Chrome team and Mozilla are both hard at work making this a reality.
6 tags
Good Things Come to Those Who Ask
Maybe you’ve heard the saying “good things come to those who wait.” That’s all well and good, but I’d like to take some time point out that good things also come to those who look for them.
I changed jobs at the beginning of this year, and several people I know were curious as to how I managed it. It’s because I asked. I sought. For months.1
In and Out
Most...
2 tags
Bored People Quit →
I found myself nodding the entire time I read this essay from Michael Lopp. It’s filled with truth. An excellent point that I just have to share:
“Exploration is hard to justify because it’s hard to measure. When exploration is complete, you often have nothing to hold up to your project manager to explain or justify the expenditure of time. Here’s what you tell them, “My job isn’t just...
3 tags
An iOS Developer Takes on Android →
An unbiased look at programming for Android, after having programmed for iOS. He gave it a good go, and realized that it’s terribleness has been exaggerated.1
About Eclipse:
You’re going to just hate Eclipse. You’re going to hate it with the heat of a thousand suns. […] The upside is, after acclimating to Eclipse, you’ll enjoy some seriously amazing, productivity-boosting code...
July 2011
9 posts
3 tags
In the case of the Kindle app, you might be able to argue that its Android...
– Dan Frommer, “Here’s how Apple is forcing a worse user experience on its customers”
3 tags
Page Speed Service →
Page Speed Service fetches content from your servers, rewrites your pages by applying web performance best practices and serves them to end users via Google’s servers across the globe.
In some ways kind of creepy, but if genuine, it makes a lot of sense. They can automate compressing assets, gzipping content, and using a CDN. This simple plug-n-play could decrease page loads for a site...
1 tag
Google+ Feedback
I’ve been enjoying Google+, for the most part. I would love to just drop Twitter and Facebook, since it feels like the proper merging of the two. Besides that most of my friends aren’t using it, given some time, I’m sure more will. In the meantime, I’m using it more along the Twitter approach than the Facebook approach1.
To that effect, there are some things that if...
1 tag
Google+ Wants Real Names →
Dave Winer’s take:
There’s a very simple business reason why Google cares if they have your real name. It means it’s possible to cross-relate your account with your buying behavior with their partners, who might be banks, retailers, supermarkets, hospitals, airlines. To connect with your use of cell phones that might be running their mobile operating system. To provide...
2 tags
Android Market Refresh →
Finally, a design for the Market that I think looks great. Reminds me of Gingerbread’s theme.
4 tags
BrowserID →
Dan Mills:
With BrowserID, there is a better way to sign in. BrowserID implements the /verified email protocol/, which offers a streamlined user experience. A user can prove their ownership of an email address with fewer confirmation messages and without site-specific passwords.
I’m all in favor of having less passwords. Plus, this also means if the site gets hacked, they don’t...