Mozilla Spam

Is phishing the new spam?

I’m almost convinced now that the majority of stuff SpamAssassin misses isn’t really spam, but phishing messages. I think it’s time for SpamAssassin to start considering detecting it. Perhaps take a look at mscott’s good work for Mozilla Thunderbird.

Odds are lots of that detection stuff, will also detect spam slipping through by other means.

Open Source Web Development


After seeing Matt’s post that TinyMCE has been integrated into WordPress, I think I’m doing the same to a few things I’m currently developing. I was considering a WYSIWYG tool previously for these projects, but decided against it mainly because of the poor code they often produce. TinyMCE is rather good, but didn’t support Safari. Now that appears to be changing (they are testing and working with Apple). So I really have no reason not to use it right?

It’s a great thing for those who don’t know much (or good) HTML. Keeps the crud out. Now I need to either find, or write a really good HTML sanitizing function for PHP so I can make sure it’s pure safe HTML. Right now I just delete any tags.


PS3 the next Mac

Sony states:

The operating system has also yet to be clarified. The integrated Cell processor will be able to support a variety of operating systems (such as Linux or Apple’s Tiger).

A very interesting proposal. It’s not surprising that they would be supported, especially considering who developed the Cell processor. It would be interesting to see if Apple would create a Mac OS X distribution for the PS3. It would have some potential of increasing the user base, and providing a new avenue to showcase the OS’s features and capabilities while not really infringing on the computer business (people aren’t likely to trade in their PC’s for PS3’s just yet). Apple may have had this in mind for some time, just take a look at technologies such as Inkwell, VoiceOver, and of course Speech (which has really been around for several years). It’s perfect for the PS3.

[Hat tip MacNN]


Hard Drive Saga Continues

I ordered back on 7/5/2005. I’m still waiting. While CDW still has the balls to say 3-6 days on the product page. Eventually I guess I’ll give up, even though I really don’t want to get a slower drive. My hope is to be able to purchase a Seagate Momentus 7200.1 80GB. I may end up settling with a Seagate Momentus 5400.2 80GB if it doesn’t start moving soon. This is approaching a month now. I emailed Seagate to see if they were even shipping yet, and this is what I was told:

The ST910021A and ST980825A , 7200 RPM laptop drives have been released, but to the OEM manufacturers. We do not have an exact date for release to the open market but the date they were announced precedes their actual availability by approximately 160 days. The drives are pre-sold to manufacturers for at least that much time. We anticipate a late August release.

The development stages are supported with testing by both Seagate and major OEM accounts working mutually to finalize the design and development of the products. The OEM partners have Purchase Orders for minimum quantities of $2.5 million per quarter. These orders are filled completely prior to drives being offered to the open market.

> 4) “Is there any updated availability? “
They become available when the last OEM delivery is completed, that is a date that is a moving target as the OEM accounts often add on to the ordered volumes if demand is high.

Thank you for your inquiry. We appreciate your consideration of Seagate products for your storage solutions.

CDW said they received a small shipment in June, so it’s possible they purchased OEM drives (which isn’t that uncommon). Though the date keeps slipping.

So what’s a geek to do? Anyone know a store with these awesome drives in stock?


Mozilla Corporation

For the most part, the news has been rather clear, though a few questions still remain.

  1. Who owns the trademarks? The Foundation or the Corporation? This doesn’t say if the corporation will be allowed to use the trademarks, or will inherit them. It hints at inheriting, though Asa makes it sound otherwise.
  2. Who ultimately has the final say? Is the Foundation ultimately still in charge? Or does the Corporation get the upper hand?
  3. Who do and module owners answer to? Foundation or the corporation? Mitchell said a while back

    The key responsibility is that the Module Owner’s job is to act in the best interests of the community and the project at large, not in the interests of his or her employer. Ben has lived with these responsibilities as a volunteer, a Netscape employee, a Mozilla Foundation employee and now as a Google employee. We’re confident that Ben will continue to help us drive great innovations in the browsing world.

    Speaking of Ben’s departure to Google. Now is the Foundation ultimately going to continue to lead the community? Or will the Corporation step into play here? Is it possible for the Foundation and Corporation to disagree? How will that be mediated?

  4. Since the creation of the Foundation, long term goals have been a bit more open (as opposed to Netscape). Will the Corporation be modeling it’s confidential information policy against the Foundation, or that of Netscape?
  5. Who is the property owner (office space, servers, other worldly possessions)? Corporation or Foundation (or some sort of split)?
  6. Is there any obligation (either by policy, or charter or contract) for the Corporations code to be open source? Or could they (in theory, don’t start the conspiracy train on me) fork it into a “Netscape” scenario? Who has a say in this (again Foundation or Corporation)?
  7. There’s some talk on the net about concerns regarding Mozilla’s Search relationships (and potential relationships). Does the Foundation have any say in potential business relationships? Can it prohibit or block them?
  8. Will SpreadFirefox be under the Foundation or the Corporation?
  9. Will products be moving to rather than Or will they stay the same?

The ultimate question here is how much control will the Foundation have over the Corporation. As a wholly owned subsidiary, the Foundation should have substantial say, though it’s not quite clear just yet how a Corporation status will effect policies, most of the discussion thus far has been on day to day operation or “the basics” (will Firefox still be free? etc.) Hopefully a MoFo or MoCo (oh boy do I like the abbreviations) representative will be clarifying things in days to come. I’ll update this post if they do (nudges Asa and Mitchell).


Microsoft testing with Firefox

Several weeks ago I reported that Microsoft was sniffing user agents, and giving misleading errors based on it’s findings. They resolved that rather promptly. Interestingly enough, looking at the blog for Microsofts, there are two blog posts [one | two] that mention Firefox compatibility. It’s great to see them acknowledging browser choice. Thanks Microsoft!

Apple Hardware

Apple and DRM

As many sites are reporting (I’ll just link slashdot), DRM has been found in the new Intel Macs. So what? It doesn’t really say much. Mac OS X has always been tied to Mac hardware (with a small window for clones during the 90’s). It’s a little premature to assume that it will be used all over your computer. It’s likely because of this that those Mac_OS_X_10.4_Tiger_x86.iso‘s haven’t made it onto the net yet. There’s no way they would work without DRM. The good thing about DRM is that just because it exists, doesn’t mean it has to be used. Apple has been locking hardware with exclusive ROM’s, and special motherboards. Now they replaced all that with 1 chip. IMHO that’s just consolidation. If anything, it’s opened up a few doors. Now perhaps software manufacturers can allow us to activate software from the privacy of our own computers without phoning home (something that always bothered me a bit). Why do I have to tell Microsoft that I installed their software? Isn’t it enough I bought it? Do I actually need to call them up and tell them? I’d rather the DRM chip so they can preserve their licensing, and I can preserve the right to not initiate an electronic conversation with them to let them know I installed Windows XP (and obviously give them my IP address).

Interestingly, it’s said that DRM is only invoked when running Rosetta. Very likely done as part of a licensing agreement to keep Transitive’s QuickTransit on only those systems designed for it.

I don’t quite get the fuss. IMHO DRM by computer chip is much less invasive than most DRM methods currently around (product activation). Why are we upset about things that potentially shield us from more privacy invading techniques?

Internet Mozilla

Intelligent Bookmarking [Draft]

I consider this a draft at this time, and will likely publish a more finalized version at a later date. Please read with that in mind.

Bookmarks suck. There I said it [5 seconds for public outrage]. I rarely use them. Instead I use the auto-complete functionality of the URL bar, and I know I’m not the only one. I decided to take a little time and discuss why bookmarks suck, pinpoint the problem, and suggest a solution. Why? Because bookmarks shouldn’t suck. They should be useful.


The problem can be summed up to basically three points which cause many people (in particular people who spend lots of time in a web browser) to not use bookmarks. I will attempt to discuss them as briefly as I can:

  1. Bookmark lists are overwhelming – people like me who spend a bit of time on the net quickly accumulate a list of hundreds of bookmarks (if not more). The lists are so long they become meaningless. Granted it’s almost impossible to remember some of those giant URLs. It’s just as hard to find what i really want in that list. Then factor in that the title’s aren’t exactly great (since most sites prefix their page titles with the site name), and I don’t take the time to make them any better on my own. The list becomes unmanageable. The alternative is to be anal and nest them in folders, clean up the titles, etc. But that’s time consuming. Assume that takes a mere 15 seconds per bookmark. With only 300 bookmarks that’s 4,500 seconds, or 75 minutes (over one hour!). That’s not something I’m willing to spend time on.
  2. Auto-complete is very good – typically my browsing habits consist of under 75 websites. I visit them somewhat regular. So they are already in auto-complete. by simply typing in “we” I already get Asa’s Blog. “pl” gets me to Planet Mozilla. “sl” gets me to slashdot “fa” gets me to, “cdw” gets me directly to the order status page of my hard drive due for delivery. “fed” gets me right to the package I’ve been tracking. Why do I need bookmarks? Just a few keystrokes. No scanning menu’s for what I need.
  3. The Google Factor – Google has played a key role in this. I saw a 300 GB Seagate drive on sale the other day at circuit city (which I did purchase BTW). How did I bookmark it? I didn’t. I just remembered circuit city had it. Then googled for it. Why? It’s quick and easy. Again, no scanning through long lists.

All three of the above share a few common characteristics. First of all, they are attempts to avoid an unmanageable list. You can call it “work avoidance”, “laziness”, or what ever you wish, but that’s what it is. The second is that these alternate methods serve two distinct methods of how most people remember things:

  1. Repetition – most people remember things they see over and over again. How many here know a phone number off the top of their heads if they wanted to purchase a mattress? 1-800-MATTRES (leave off the last ‘s’ for savings). Yea, that’s right! How many here know Jenny’s Phone Number? 867-5309 (that’s 7 digits, most people don’t do good with more than 4 or 5 chunks). How many people can name at least 4 products on the McDonald’s menu, and have McDonald’s less than 4X a year (hint: just about everyone, regardless of if you eat there). What do these share in common? Well a few are catchy, or have a jingle, but the common theme is repetition. McDonald’s pounds their product line into the human consciousness. I’d bet more people know the McDonald’s menu than know what’s going to be discussed on the Senate floor after summer recess. Why? Because McDonald’s repeats their product line over and over in commercials, billboards, newspapers, etc. You see it dozens of times a day. To find out what’s going on in government, you need to find out yourself (Check CSPAN). Likely not as often. Repetition helps memory. Kids do it to study for spelling tests.”M-I-S-S-I-S-S-I-P-P-I” Mississippi. Ah childhood memories horrors..
  2. Accessibility – scrolling down a menu is a drag. It’s good for short menu’s but quickly becomes cumbersome. More than 20 or so items and a menu starts to become meaningless. Keyboards can quickly sort data very well. A menu and a mouse don’t sort very well. That’s all there is to it.


Is there a better way? I propose that there most certainly is. At least 1 better way, and likely many, some even better than what I’m going to suggest. My methodology involves a few specific ideas:

  1. Metadata – We’ll use the dictionary definition here:

    n : data about data; “a library catalog is metadata because it describes publications”
    Source: WordNet ® 2.0, © 2003 Princeton University

    The only difference here is our library catalog is our bookmarks, and publications are websites. Not really a difference eh? No, that’s not coincidence, that’s bonified logic. We’ll be working on this concept in a few moments.

  2. Machine Learning – Again we’ll use an established definition, this time from Wikipedia

    Machine learning is an area of artificial intelligence concerned with the development of techniques which allow computers to “learn”. More specifically, machine learning is a method for creating computer programs by the analysis of data sets. Machine learning overlaps heavily with statistics, since both fields study the analysis of data, but unlike statistics, machine learning is concerned with the algorithmic complexity of computational implementations.

    Again pretty simple right?

  3. Usage Patterns – This goes with that whole repetition thing.

So what’s the fix?

Bookmark Metadata

That’s right, bookmark metadata. More than just a title. Most websites use meta tags on them. The two most common are keywords, and description. An intelligent bookmarking system would look at the page being bookmarked, and extract that information if known, in particular keywords. Take for example this link to’s Memory options for a Mac Mini

<title>Apple Mac mini (G4 – 1.42GHz) upgrades from</title>
<meta name="keywords" content="crucial memory, memory, computer memory, USB flash drive, Secure Digital, Memory Stick, SmartMedia, card reader, USB, USB upgrades, memory upgrade, ddr memory, ram memory, pc memory, ram, memory upgrades, ddr ram, pc2100, buy ram, ddr sdram, belarc advisor, ram upgrade, micron memory, memory ram, buy memory, cheap ram, compact flash, cheap memory, memory chips, pc100, sdram, laptop memory, computer ram, pc2100 ddr, memory configurator, micron, ddr pc2100, ram prices, pc133 memory, ram upgrades, sdram pc100, computer memory upgrade, compactflash, memory selector, Radeon 9800, ATi Radeon, radeon 9700 pro, memory module, how much ram, micron ram, compact flash cards, pc2100 ddr sdram, sdram memory, computer memory upgrades pc100 ram, radeon, flash card, pc133, video cards, pc2100 memory, radeon 9700">
</meta><meta name="description" content="Purchase Mac mini (G4 – 1.42GHz) upgrades from Crucial to get factory-direct pricing and outstanding service and support. For a limited time, FREE shipping on qualified orders.">

See that yummy data? We can use that. How? Something along the lines of bayesian learning, we’ll discuss a bit more later on.

Intelligent Filtering

I should be able to go the URL bar and simply enter mac and see all Mac related websites (, and of course that crucial memory upgrade I noted above). memory should bring up Entering cruc should bring up crucial as well. To separate history from bookmarks, the browser should have an icon to the right of the URL (similar to Safari’s RSS icon) that indicates if it’s history, or a bookmark. Based on my usage patterns, it should give weight to the appropriate item. For example if I enter mac and, and that crucial memory upgrade page appears second, and I repeatedly revisit crucial, crucial should come up first. Why? Because that’s easier.

[ mac|                                                   ]
 |                               (Bookmark)  |
 |                     (Bookmark)  | 
 |                            (History)   |
 | ...                                                | 

No giant menu’s to find where that crucial memory page is, I could type in mac or memory or something to that effect. The above illustrates how I no longer need to navigate that menu. It’s integrated right into auto-complete, making for a real easy experience.

Intelligent Views

Camino’s Bookmarks view is rather good. In fact, it’s really good. I should be able to create a folder called mac and put associated bookmarks in there. Then when I use that keyword, I get all the bookmarks in that folder, in a higher priority than the machine learned bookmarks. Ideally when a new folder is created, it should attempt to auto-file my existing bookmarks for me. The end result could go in the current bookmarks menu. A computer generated (human edited) list of websites sorted and organized. Useful and relevant.

Machine Logic

Machine logic for this new functionality can be simple, or extremely complex. At it’s simplest form, it’s using the title, meta-description, and meta-keyword data, stripping it of punctuation (comma’s and such), delimited it by spaces, and creating a searchable index. In a more complex form, it’s figuring out how to group them based on patterns, probability, and user input. It could even go as far as using a dictionary file to get like terms, so computer also checks for PC. It can go as far as natural language, or suggest corrections (similar to Google’s correction functionality).

What advantage does this bring?

It improves the end-user experience of course. The end result is really pretty subtle, but good. First the days of scanning through a list of scrolling bookmarks no longer exists. That’s wonderful. The days of simply typing what you want and let your browser find it will be here. Your usage patterns will provide the browser with the information it needs to create a relevant, insightful, and useful auto-complete list.


I haven’t implemented this, nor do I have plans to do so at this time. I think the plan could use some refinement, and the project would be better handled by someone with more experience (and time) than I typically have. I put this idea out there in hopes someone else will finally admit bookmarks suck, and help do something about it. Because lets face it, bookmarks suck. I would love to see it implemented, and ideally expanded upon so that it’s results are more relevant. Lists are bad, very bad. Simple queries are good. I know what I want. Why do I have to search an entire list? That’s the bottom line. Bookmarks were a good solution for their time. But not anymore. We can do better. Oh yea, Bookmarks suck, did I mention that?