Archive for the ‘Web’ Category

This has annoyed me all day. First they renew the “economic agreement” with Mozilla until 2011, and now they’re going to release their own browser. What?

Don’t they have shareholders who have a big stake ($463 right now) to gratify? That’s like Microsoft hiring Linus Torvalds to work on the Linux kernel. How do you get away with something like that? Is Google so rich that it is paying people to compete with it?

Actually, that last one is kind of funny.

This makes so little sense to me that I have to think of outrageous reasons for the announcement :

  1. Starting with the least outrageous reason : Google is actually trying to expand competition in the web browser/mobile space. Though, I thought that IE/Opera/Firefox/Safari was a good mix. This isn’t gas stations we’re talking about. Competition for browser market share extends far beyond these four browsers.
  2. They legalized mind altering drugs in Mountain View. (Mythical mushrooms in the Escape menu, Hippie crack at Slice)
  3. They’re sending Mozilla a second hint that they want Mozilla to drop Gecko
  4. Judging by some of the screenshots, this is another way to get more Google traffic. But come on? Your own browser?

Comments, additional conspiracies welcome.

I rarely bookmark any webpages I visit. The awesomebar has cleverly replaced the traditional paradigm of what bookmarks were. If I need anything, the awesomebar handles it. HOWEVER, one thing that it doesn’t do is remind me. The only time I use bookmarks is when I know I’ll never visit the site unless something reminds me to visit. For example, I just made a comment on a blog, and I want to see other comments or if the blogger replied to me. This particular blog doesn’t email me when people reply. It does have an RSS feed for comments, but nothing I want to go through the trouble of having to subscribe to it. So I choose to check manually. I would never remember to do so, so I bookmarked it.

At the very least, I would have a record that I should have checked it. Hmm, maybe something should automate this for me? ;)

I’ve been writing an extension that uses part of Tinderbox’s (56K warning) json.js file. It’s an interesting experience, since I haven’t done much work with JSON before.

At over a meg, this json file takes quite a while to load. While parsing it and playing around with it for my own purposes, I noticed a few things that I would like to see :

  • A JSON formatter refuses to touch json.js because it is too big. So I had to do one of my own (need to upload it once I pretty it up).
  • JavaScript reportedly can load compressed javascript files. It would be mighty dandy for it to load compressed json (shrinking it down to a much smaller 84KB). Maybe it can! I have not been very successful
  • Tinderboxe’s JSON output isn’t real JSON, but that has been noted and filed in bugzilla. Hmm, I wondered why an error message was being written to my console ;)
  • I haven’t yet found a (simple) way to associate a check-in with a time/person, so I can’t “blame” a burning build on anyone. It’s got to the point where I was just about to comment asking them to reopen the bug, but loading in a new json.js file I noted some things that were not in the previous file. Mainly, the last json.js file I downloaded all had ‘undef’ in one section, and this one has a few names and id so I can sorta match when they checked in.
  • There are files littered in tinderbox to a bunch of this data that json.js is supposed to replace (See Tinderbox’s README file, Other Files section). When I just started using JSON, the almost CSV file was both direct to the point and pretty much what I wanted out of the JSON file anyways. But it was still missing some things, like who checked in, the log file, the stats. And another file sorta had that information. So it was spread out. I am really hoping that json.js consolidates and really fixes this problem. But at the same time, it is also fairly complex.

Anyways, it will be all fun and worth it when this is done. At least, I’ll be using it :)

While someone else has javascript and canvas covered, I wanted to learn some new things about SVG. While perhaps best known for the tiger and other graphic goodness, I am not a graphics artist. So these didn’t apply to me so much. However, you can do some neat things with images in SVG that are harder/impossible to do in CSS, such as rotating images and skewing them.

So I started doing some things with SVG. One of those being something to catalog all the albums I have started amassing (I only have 460MB left of my 2GB iPod). Yes, I still do pay for music. I’m old skool like that.
You need an SVG viewer to view this image. May I recommend a plugin or a SVG enabled browser?
Not much. But it took me so long to get rotation working, mainly because of lack of good sample documentation. Though I came across some good docs, it just wasn’t enough. For example, here is the code to rorate:

rotate(angle, cx, cy)

Where angle is how much you want to rotate it by, in degrees.
cx and cy are the “offset of the current view box. If cx and cy are not present then the points are rotated around the origin” (Bystedt). Both cx and cy are optional.

Maybe an example of rotation would clarify cx and cy. Here is the first image being rotated 45° without skewing at point 0,0.
Man, another SVG image. Your really missing out
To rotate an image at the centre, cx and cy should be the distance to the centre of the image. Both on the x-axis and y-axis respectively. Imagine to my horror when the image was 50% from the left, and a 45° rotate threw it down half way across the screen. I won’t bore you with the details of how changing cx and cy confused me even more, but some samples would have helped!