Archive for October, 2006

Lovely Colorado weather

Friday, October 27th, 2006

Of course one day after I give my beta testers a tentative release date, I get 2 feet of heavy snow which knocks out the power for a full day (from 5 am to 6 pm). Heavy snow that breaks electricity wires only usually comes in the Spring!

Beta news, and more downsides to spam

Wednesday, October 25th, 2006

Thanks to Ben Stanfield of MacSlash, many beta testers have signed up to Find It! Keep It!. Now I just need to get the last known bugs fixed.

Spam is one of the most irritating inventions ever. Currently I get 60 a day! Google Mail is really good at finding them. Unfortunately, other mail services aren’t, so that some of my messages to people signing up are rejected… Yet another way in which spam has a real detrimental effect!

If you didn’t get a message from me, and did sign up yesterday or earlier, please search your spam tray for “Ansemond” or set your spam filters to accept messages from ansemond.com You can check your status in the mailing lists. If you signed up for a beta, you should be signed up for the Beta newsletter.

Simplicity: a recurring winning idea

Sunday, October 22nd, 2006

Our lives are unnecessarily complex

Consider the number of forms you should have filled out. Here’s a starter list: insurance (health, vision, dental, house, life, car, …); banks (checks, saving, credit cards), retirement, taxes (state and federal).

Consider the number of options on standard electronics (cell phone, dishwasher, TV, video recorder…)

Consider the length of modern laws (just the Patriot Act is 300 pages long). How can you obey them if you don’t know them?

Consider the mainstream software you use daily, how many features do you really use? Why is the average computer book 500 pages long?

Contrast this to our previous tools: fire, stones, reading, writing, hammers, etc.

The costs

All this unnecessary complexity has a cost and no benefit. Inefficiencies can kill entire national industries. Toyota succeeded while US manufacturers were failing because it focussed on eliminating waste.

Where does this complexity come from?

Ironically, economics! It’s cheaper to add a feature than to change a design, both for existing users (less to learn) and for the tool maker (less to change). Although risk aversion plays a role too…

Consequences

Among early adopters, simpler often wins. This rarely lasts as new features are added without removing older ones. (PowerPC RISC became as comples as CISC; GPUs, once simple and fast, have become larger than CPUs; Mainframes, minicomputers, microcomputers each replaced their bigger older brothers).

Late adopters, having found it so hard to master one tool, refuse to learn another, perpetuating bad tools. Can we have x86, but faster? Can we have Windows, but without the viruses? Can we have Word, but without the annoying features?

Web 2.0 is just another incarnation of this cycle. Google’s key invention was a simple interface, coupled with page rank. GMail was easy to use: free webmail existed before.

One could think that Web 2.0 is successful because it’s free. 37 signals refute this notion: people subscribe to use their web applications. Why? Because their tools are simpler to use. 37 signals believe in simpler products that do less than the competition. They one down the competition rather than one upping it.. Their philosophy is in their book.

Find It! Keep It! also emphasizes simplicity. Two examples: You don’t create a project or a document. You just go to the URL and press Keep It! Saved webpages and database searches have URLs, just like live pages.

A week of browser news…

Saturday, October 21st, 2006

Serendipity?

18 October: IE 7 comes out, bringing tabs, anti-phishing protection and slightly better standards support to the windows world. It received a very mixed reception.

18 October: The Find It! Keep It! website goes up presenting my Mac webpage & video saving browser to the world.

18 October: Flash 9 appears for Linux.

19 October: CoolIris released a plugin to make browsing flickr easier with Safari.

19 October: Firefox RC3 is released, featuring anti-phishing protection, a better UI, and better standards support.

20 October: Opera 9.1 beta is out, featuring new anti-phishing protection. In the same week, Opera asked for credit for having invented tabs, although Internetworks released it to the public earlier

24 October: Firefox 2 is due next Tuesday

Figure out someone’s age

Saturday, October 21st, 2006

You’ve never met them. You only know their name. Can you know their exact age? No, but you can get a pretty good ballpark guess if they are Americans. Just type their name into this online tool. (via NYT and hawkwings).

Ho hum, ansemond.com was a blank page in Firefox

Thursday, October 19th, 2006

A final tweak to my website before it went live made it not work with Opera or Firefox…
Luckily a friend noticed and pointed that out.
Sorry to all those that visited it to meet a blank page!

I must double check my site in Firefox!
I must double check my site in Firefox!
I must double check my site in Firefox!
I must double check my site in Firefox!
I must double check my site in Firefox!
I must double check my site in Firefox!

The ansemond website is finally live!

Thursday, October 19th, 2006

I’m happy to announce that Ansemond LLC’s website is finally live.

You can head over to it to see what I’ve been working on. Find It! Keep It! is a tool to help anyone save pages from the internet and find them again. Saved pages are pretty much indistinguishable from the page you saw on the internet.

Most webpage downloading tools copy the full structure of the website from which the page came, which means you have to remember the location of the file it is you want to read. I found this very annoying in real world use. I also found that they don’t work too well on pages that use javascript or flash.

Find It! Keep It! helps you find pages using tags you assigned them, or full word search. Your database is browsable like the Internet. The basic idea is to make finding and keeping things as painless as possible.

If you’d like to help test the tool, you can sign up for beta testing on the main page. The tool has been in alpha testing for about 3 weeks, and once all those bugs are fixed, I’ll release it for beta testing. Please specify what kind of processor your system has. I’ll be beta testing PowerPC systems first because I do not yet have an Intel system.

If you like the tool and know someone who would find it useful, please tell them about it.

Thanks,

Sengan

How to subclass a Cocoa class in Interface Builder

Friday, October 6th, 2006

Interface Builder is a great tool if you know what you’re doing. If you don’t it’s a black box.

Cocoa is extraordinarily flexible. Standard GUI element behavior can be changed by overriding class methods, for instance by subclassing. The question then arises: how do I get Interface Builder to use my subclass?

There are three steps:

  • Introduce Interface Builder to your subclass: In the classes tab, select the standard widget, then choose “Subclass widget” in the Classes window.
  • Place the standard widget where you want your modified widget to appear. By using the standard widget, you’re telling Interface Builder that your modified widget has all the properties of the standard widget: they are API compatible
  • Declare the standard widget to use your subclass as “custom class” by switching to the “Custom class” tab inside the inspector (”Show Inspector” in the “Tools” menu) and choosing your subclass. This tells your application to use your subclass instead of the standard widget.

Awfully quiet around here…

Wednesday, October 4th, 2006

Sorry about that! Usually I’m quiet when I’m working too hard. The good news is that I will be entering beta soon.

The first alpha testers received their copies a week ago, and the first lesson is that Find It! Keep It! doesn’t work on Intel Macs, even with Rosetta emulation. In the mean time, I’ve been busy writing documentation, building the website’s content, and fixing bugs and rough edges. There’s still a lot to do, but the end is in sight.

While I’m blogging, I want to mention this post by bbum. On Linux I used Valgrind. It was invaluable, and I would love to have it on Mac OS X. I’ve tried various Mac tools (OmniObjectMeter, ObjectAlloc) and while they’re pretty they slow Find It! Keep It! too much to be useable. As usual, with Apple, all along I had a tool called “leaks” on my harddrive… Would have been nice to know about it! Quoting bbum:

To summarize:

In a Terminal window….

setenv MallocStackLogging /path/to/foo.app/Contents/MacOS/foo
… you should see a diagnostic message like …

malloc[PID]: recording stacks using standard recorder
… then, in another Terminal window…

leaks PID
… do whatever it is in the app that you suspect causes leaks. The leaks process will print detailed information about the leak, including the backtrace of the appropriate thread within the application at the time the memory was allocated.

Bbum’s link doesn’t work right now, so this is the Google Cache, and the post he references is still on the Wayback machine.

It turns out the Webkit crew use it too