2005/11/24

Five minute hammer

[ Retroactive disclaimer: Posts like these really are for my own benefit. I doubt they’re much of interest to anybody. It’s just a bit of introspection and practice of putting words on a page, if you’ll allow me. I’m really keen on developing the skills to write something in 10 minutes that doesn’t require too much revising or proof-reading. ]

I don’t think I’m all bad, really. When I’m by myself just thinking, I do get excited by the project I’m doing. It’s just that when I’m working, I have created an environment for myself that’s so conducive to distraction. And the problem there is that it’s hard to do work.

When I was an undergrad, I worked literally as little as I could to still get by. That’s not the entire truth, since I didn’t do too badly, but I was never passionate about any of the things I was learning (in the same way that I get obsessed with other things, if you get my meaning), and I didn’t learn the basics as well as I should have. People complain about pattern-recognition rote-learners. I guess I was a little bit like one of them. I just feel that my pattern matching is flexible enough to cope with new ideas. Which isn’t so different from understanding, right? We all rote learn in the beginning.

But here I am, and my MATLAB code looks okay but isn’t giving the right answers. Debugging it involves both checking the physics and checking the code, and I don’t really feel up to either of them at the time being. So I read the feeds, waste some time (I like collecting information, but there’s got to be a better way), then turn back to my “work” computer, realise I’m still stuck, and come back to write this because I’m feeling introspective.

I’m really enjoying writing more. In fact, I’m also really enjoying exercising more. They’re both things people say you should do, which is kind of cool, because it means people are right for a change. I’d like to start eating small meals, but I don’t think that’s as common a meme. I feel kind of pretentious using the word meme, actually, and I’m a bit embarrassed about using it. Doesn’t “idea” fit the bill almost in exactly the same way? Isn’t it always better to write without jargon? (And, if I can say anything about it, without acronyms. Damn them.)

So from now on, ‘meme’ is delegated to only specific usages about the actual replication of ideas between minds. It’s silly in all other circumstances.

I said I was going to write about Aperture and stuff, but I’ve kind of lost the motivation at present (short term only, presumably) to write about that kind of stuff. I’m happy to think that my brain is actually turning its attention more directly on the research I’m supposed to be doing, albeit in a slow and plodding manner. That’s fine by me.

Dammit. It’s getting late. I should get some work done before going home for eats. ’Til next time.

First pass edits: 
 - added parenthetical remark, ¶2
 - fixed typo, ¶4
 - added quote marks to 'meme', ¶5
 - added parenthetical remark, ¶6

2005/11/17

Intel Mac mini: wtf?

(I make myself laugh. How on earth did I copy/paste the markdown version of this post into Blogger?)

What on earth is the deal with people thinking that the Mac mini will be the first, or among the first, Apple computer to switch to the Intel chip? It’s ridiculous!

Steve said that the Intel chip would debut in the “low-end” (or something along those lines, I’m too lazy to check). That’s clearly because the G5 is holding its own pretty well in the applications where its deployed. (In fact, I’m a bit bummed at this last minute switch because it really did seem like PowerPC was on the verge of becoming sustainable. But that’s armchair analysis for you!)

So what will be the first Intel Mac? Very very obviously, it’ll be the PowerBook. This is the computer that has been in a world of hurt for a long time now; not that they’re bad machines exactly, (ask John Gruber) just that, as J.G. says, they’ve only increased in max. clock speed by 33% in the last two years. Moore’s Law, indeed.

With an Intel PowerBook, Apple will be able to start from scratch, which I predict they’ll do, and usher in the next generation laptop that sets the scene for the next several years. Think the late G3 PowerBooks, the sexiest computers Apple’s every shipped; then the G4 PowerBooks, whose design was so good it’s still up-to-date after so many years.

At this time, Apple might bump up the iBooks to fill the performance slot of the G4 PowerBooks, but I can’t imagine them going whole hog with both brands. (Under the assumption they will keep the consumer/pro division with the laptop range. I think it’s a good idea, at least.)

Now (I just read) there’re rumours (no need to link; you know where) that Intel iBooks are rolling out in January. Nice and early I suppose, which, as someone else commented (again, where’s my link?) is a nice PR boost that they’re “ahead of schedule” even if they intended it all along.

But I just don’t see the logic in it. The PowerBooks were just updated and January’s too soon to be rolling out the next big notebook thing. So what’s the deal? It would be plain weird if Apple announces their flagship new Intel product (because this is a big thing) as a cost competitive bare-bones notebook! In conclusion, Think Secret wrong; I still expect awesome PowerBooks (or, fingers crossed, something even better like a tablet; I’m not holding my breathe, though, for a couple of reasons) as the first Intel Mac available, with the good chance of iBooks at the same time. But, ha, what do I know? I’m just an armchair analyst.

I would never have gotten into this mess if I’d just avoided Think Secret like I was supposed to. The wait’s more fun when it makes sense.

P.S. I actually just realised this post was hardly about Mac minis at all; I guess I put them in the same boat as the iBook; it might turn up at the same time, but it’ll be exactly what you expect. Why bother thinking about the inevitable as opposed to secret and exciting PowerBook developments?

OmniWeb eulogy

Well, I finally did it. I’ve been using OmniWeb for a long long time now, but I’ve finally had to say good-bye. This is my eulogy. I first used OmniWeb (in fact, I can distinctly remember the first time I even heard about it) in v4 for quite some time as my main browser in Mac OS X, even after people were complaining about its lack of standards support (it wasn’t much of an issue to me at the time, since few things seemed obviously broken to me because that was all I knew); OW’s paragraph builder was much prettier than any other, even today, I would wager. After jumping around a bit (Camino was my next browser of choice for quite some time), I then went back to the fold after Safari was released, as OmniWeb stood on its shoulders to provide the best of both worlds: standards support and an ace application. Since then, it’s had a single major update to 5.1.

So what was the straw that broke the camel’s back? It was sort of the opposite, actually. OmniWeb has so many great little features that I love, I’m going to detail them here because I can. I’ve put off leaving because of all these things, and I hope I won’t miss them too much.

  • Per-site preferences really was one of the killer features for me. Being able to set the font size individually for each site you visit is so natural, because you’re never distracted by small type because it’s fixed once and for all. (This is probably more of a problem for someone using, as I am, a notebook of some kind.)

  • The tabs in OmniWeb really rock. They exist in a drawer, so they don’t use up any vertical space (another problem only with those with 1024 by 768 resolution screens or smaller). They can be rearranged at will, and even dragged between windows. Oh so nice.

  • Before syndication took over the world, I really enjoyed the way that OmniWeb would inform you whenever a site had been changed (it was so good to be able to actually know when to re-load a site — I forget what it used to be like). It worked so well for so long, that I didn’t like RSS at the beginning because I wanted to see the real web-page, dammit, not some plain-text version thereof. Especially for really beautiful websites, it’s sometimes half the experience to soak in the design while you read. (More modern feed readers tend not to suffer from this problem so much, but it’s still a bit of an issue for me.) It still galls me that what was possible in OmniWeb so long ago hasn’t been developed into a really good solution to syndication.

  • On a sour note, OmniWeb’s support for RSS was quite poor, at best, and only really worked for collections of, say, 50 sites at most that were updated fairly often. I did use it for a while, but NNW Lite won me over. I really hope that the OmniGroup create a really decent feed reader for v6, but I’m afraid that NNW has probably already taken all of its customers. John Siracusa admitted to using NetNewsWire as his main browser half the time because he liked nesting in the app so much, as a case in point!

  • I liked the shortcut feature for the URL address bar (e.g., type g hello to search Google for “hello”; gl I defined for “I’m feeling lucky”) but in the days of Google search fields, it’s not that relevant.

  • Finally, it was great that even if it crashed, OmniWeb would bring back your whole stack of tabs on relaunch (and I’m sad to say that crashes still did happen to it every now and then quite inexplicably; another big straw). I’m aware the saving tab functionality is now available through Safari plug-ins, so I’ll check that out ASAP as well. OmniWeb also had this weird workspace mode in which you could segregate your browsing windows by category and hide everything not currently relevant; I tried this out a few times, but never really became enamoured by the idea. Minimising works a charm, most of the time, anyway.

So, it’s over between me and OmniWeb. In a word, because it’s slow. The OmniGroup’ve really fallen behind the mark in keeping up with WebKit advances (since they had to fork the WebCore code to do all the fancy things they’ve done) and when I compare even just regular browsing between OmniWeb and Safari the difference is night and day. Don’t even ask about my crappy Java internet banking application. Dear doG.

I’m interested to check out FireFox 1.5 when it’s released, and similarly Camino. My browsing habits don’t really require that much, I guess. I’m not a web developer, I just want to read some stuff, use Google Groups, browse around, and have my passwords remembered in the Mac OS X keychain. All this kow-towing about is good for competition, but at the end of the day, there’s not too much between them any more from my point of view.

A final note on bookmarks. Now that I think of it, I haven’t been using bookmarks at all for as long as I can remember. I’ve got a whole slew of them that have been faithfully imported into Safari (Import Bookmarks..., I thank you) from years ago, but generally now it’s just as easy to search Google.

Looking through some what’s in there, I realise that there’s a whole bunch of information that I’ve read and thought was interesting, so I’ve left a reminder to myself that I like it. I would much prefer to have this information stored offline, so it would be searchable and properly browse-able, but I’m not sure that there are any programs that will do this nicely for me. Something to think about, for sure…

That’s me, anyway, on ditching OmniWeb. It’s of right now, so if I change my mind tomorrow, I’ll have to recant some of the things I just said. But don’t worry, OmniGroup; I’ll come back to you if you show decent improvements in the future (I did pay for a license, after all).

2005/11/13

Programming memes within Apple

I’ve been very interested to read some pre-release information about Aperture, a professional program for photographers that I will likely never use. Why do I care?

Put simply, Apple is a pretty small company in some ways. It wouldn’t surprise me (in fact, I conjecture) that programmers or small teams of programmers are incrementally assigned to different areas of Apple’s software division. That is, one person will work on more than one application. This is intuitive to anyone that has noticed the discrepancy between the quality of, say, Mail.app & Finder to Pages & Keynote.

I’d bet Mail and (the) Finder are written by the same teams, given the shoddy finish and numerous bugs that boths apps have. (We know already that the iWork apps are written as one.)

Now, I don’t know to what extent the programmers in the professional apps division cross over to the core side of the fence, but, also given the relatively few updates the professional apps receive, I’d also suggest that some of Apple’s best programmers move around a little bit between various projects. At least, if this were the case, one would hope that the OS itself isn’t being written by the people that maintain (the) Finder.

So when a new professional app comes on the scene, it’s good to take note of whatever built-in goodness this application contains, for it often turns up at a later date within Mac OS X itself. In fact, this needn’t be restricted to the pro apps; in Mac OS X 10.2, Preview was crappy. Come 10.3, it had been re-written, was ace, but had no programming interface to access all the goodness (I mentioned this previously, now that I think about it). Finally, Apple rolled nice PDF features into PDFKit in 10.4, which was one of my most compelling upgrade reasons.

This isn’t an isolated example. Apple applications can sometimes be considered functionality test-beds, where they implement some new features and see how they go. This gives a snapshot of where Apple’s minds are looking at this particular time. If all goes well, the other apps will want to use the goodness as well, and it is baked into Mac OS X itself. Or similar trends continue in other areas of application development. Not all programming instances are just something to be eventually rolled into the system.

When Motion was released, it was clear that it was doing something shit hot in order to be able to keep up with the graphical load. After the announcement, we learn about things like Core Image & Video, and Quartz doing ace things with graphics cards. (Described by Siracusa, disabled for good in 10.4.3, for an expected re-appearance in Mac OS X 10.5.)

Similarly, iPhoto’s “darth vader” editing panel seems to be the natural progression of an interface first (I believe) seen in Motion (bottom right on that page).

In the meantime, the moral of today’s story I hope is clear. Apple’s programmers almost always test out their ideas in individual apps first. Let’s call them, “programming memes”, or something. If these premes are successful (mmm, not sure if I like this new word), they’ll start to show up in other areas of development. In the ideal case, the functionality or idea migrates wholesale into the operating system itself, to become a functioning block for future applications to build from.

Therefore, by looking at the forefront of Apple’s development process, which most radically is exhibited, for whatever reason (that’s a whole ‘nother can of worms), in their pro apps, we might be able to glean some insight as to where the company is going in general.

Next time: what’s new in Aperture that I hope will migrate to Mac OS X. Sorry, I hate these announcements. But I simply ran out of time to go into it here.

2005/11/09

Whinging

Rants.

Who the hell thought of disk images for downloading applications? Who on earth wants to copy the file they just obtained from the desktop to their “real” hard drive?

Gah!

Why the hell would I want to buy a single track from the iTunes Music Store, when I’m not subsidised if I then decide I like it and want the whole album?

Nyah!

Why on earth has it taken Apple so long to fix the Finder, and to improve iTunes, when Bibdesk’s exciting-ness took two part time hackers three weeks to code?

Blah!

Why are all mobile phones annoying to use? And why can’t they download the time from their towers so I don’t have to set them manually and inaccurately? And why can’t predictive text pre-empt me? (Actually, I’ve seen some phones that can. But I call copyright on “pre-emptive text”, “preemptive text” and “preëmptive text” :) )

2005/11/08

Daniel Dennet's Consciousness Explained

Update: small changes made to make it a little less discontinuous; I had meant to make them immediately, but Guillaume walked into my office with kidney stones. Not good.

Having just finished reading Daniel Dennet’s book Consciousness Explained, I wanted to write about it a little. I bought this book back in April, and have been reading it on-and-off until just recently, when its critical mass in my brain was large enough that I wanted to read it more heavily.

Since I’m not actually a philosopher, it’s obviously tricky for me to be objective about the arguments he puts forth; his writing style is informal and concise, and quite persuasive. It is interesting to compare his style with some of the people he quotes, who sometimes use unnecessarily long-winded and complicated words (and catch-words, unfortunately).

The trick with this sort of writing is to put the notion across clearly, something that eludes all but the best writers. Being conscious of this fact clearly makes wish to aspire to that ability, but I wouldn’t be so bold to presume I actually can write well about technical matters. (The contrast is even more pronounced in Douglas Hofstadter’s writing when he quotes long passages from the persons’ views he is objecting to, notably Searle.)

Back to the book. It covers a fascinating range of subjects, which, although all cohesive and included for a specific purpose, are almost always enjoyable without the context of the surrounding chapters. Of course, talks of “heterophenomology” will make little sense unless the reader actually has read from the beginning, but the point I am trying to make is that there aren’t chapters full of technical detail that must be waded through before coming to the interesting anecdotes and thought experiments.

Perhaps the only criticism I could raise of the structure of the book is a little too much rebuttle of the then-recent literature, which, as an outsider, added little to the discussion. For those reading the book for professional reasons, however, these chapters probably clarified (in the beginning of the book, before his ideas were fully realised) the viewpoint of Dennet himself.

I guess I should talk about what the book actually describes, which I can only sketch because I would be foolish to think that I absorbed that great an amount of the content of the book. The book lives up to its title “Consciousness Explained”, which it does by talking about the classical view of consciousness (in popular unlearned opinion), why that is wrong, and what his scheme is that explains it better.

So what isn’t consciousness? It’s not defined by a point in the brain where all the sub-conscious signals arrive and are coherently put together for the consumption by the self. Rather, it is an artificial construct, an abstraction above a chaotic mix of incoming input (from the eyes, ears, and other sensing nerves), hard-wired responses, and reactionary brain activity. It is what allows the brain to be reflective, and to be able to predict events in the future. I can’t describe it any better than that, and the point is lost, really, without actually reading the book. These words are as much for my benefit as they are yours.

The path to Dennet’s explanation of consciousness is winding and actually as interesting as the final result, since many artefacts of our consciousness manifest themselves in curious ways. This is not to belittle the “ah-ha!” moment, when it becomes apparent exactly how the rest of the book fits together to support this argument of what consciousness is. (Actually, this moment for me was a few days after finishing the book and digesting it in the background.)

I have one sentence that I remember most clearly that Dennet uses as a slogan exactly for description rather than explanation: “If I couldn’t talk to myself, how would I know what I was thinking?” This sentence, after the fact, justifies nicely the time I spend to write things in here, although recently bug reports aren’t really as satisfying as proper contemplation and analysis. This is also why I should be writing notes about my PhD every single day, so that I can actually feedback the work I’m doing into my daily thinking rather than chipping away at a mountain.

Another two points that my mind has been chewing over (and I’ll have to re-assess my usage of all such turns of phrase from now on; pretend I said “I have been chewing over” instead) is the r√¥le of evolution and memes. When you think about it, evolution seems too neat: “Why did something evolve that way? Well, because it gave that thing a better chance of survival. So how did it survive? Because it evolved that way.” Aren’t we missing something here? Not at all. It’s so perfect: evolution brought us to the exact point where we are because we are indeed here.

It’s like when the fiction of a story is questioned, and I (at least, I don’t think I’ve heard the argument from another) hypothetically retort that if the story went differently (a main character didn’t survive a lucky break, say), then it wouldn’t have been told; hence the story as told can only be written in that way. In fact, this argument is less persuasive than the case it’s trying to strengthen.

I also said I’d talk about memes. Now, I first read of memes in Hofstadter and Dennet’s (yes, same one) “The Mind’s I”, a compilation of essays and stories (with preceeding commentary by the compilers of the book) designed to bring attention to a wide variety of philosophical issues regarding the self. I can’t really do memes justice in the short amount of time I have to mention them. The argument (drawn from others, including Dawkins, whose “The Selfish Gene” introduced the actual term “memes” — this book is next on my reading list) is that memes follow the exact same laws as genes, but exist as ideas inside minds. Memes replicate, and the ones better suited to replication do so better and become more prevalent. You will spread around an idea I pass on to you if you find it imminently attractive to spread around; consider religion, exercise, jokes, the concept of memes, …

After we learned “clever tricks” early on in our evolution, our minds became sufficiently advanced that they could re-organise themselves, and the effect of memes on our life can be much more dominant these days than the effect of our genes. Through language, culture, and memes, we are capable of advancing at a much greater rate than if we were monkeys. And it’s early days yet. I’m very interested to see where we go in the course of my lifetime, to say the least.

I’m really just rambling, but I’d like a record of some of my stream of consciousness for later perusal; I hope my (zero) readers don’t take umbrage.

I’m literally amazed and incredibly envious of successful philosophers who spend their whole days reading, thinking, and writing about sometimes intangible ideas. The coherence of Dennet’s writing, and the conciseness of it, is something that I’d love to aspire to.

Two more (small) iTunes complaints

Find menu item

There is no menu item for “Find”, so the keyboard shortcut cannot be customised with System Preferences. I thought it was wrong to make the keyboard shortcut for “Find” CMD-OPT-F, but Apple has a special mention of “search fields” in the HIG. Problem #4333508.

iTunes zoom behaviour not “ideal”

Problem #4333522:

Summary:

  • When the option key is held down, iTunes’ green zoom button behaves normally; that is, (quoting the Keyboard Shortcuts document from iTunes’ Help menu) used to “zoom the window to an ideal size”. In the iTunes Music Store, the page width can often be quite wide. OPT+Zoom should enlarge the window size to fit the width of the iTMS content, but it does not. This is not “ideal”.

Steps to Reproduce:

  • Open iTunes
  • Make the window a comfortable size on screen, maybe around 800x600 pixels or thereabouts.
  • Switch to the iTunes Music Store. Note that horizontal width of the store doesn’t fit in the window.
  • Hold down option and click the green zoom button of the iTunes window, or select “Zoom” from the Window menu.

Expected Results:

  • The window should enlarge to the minimum width such that there is no horizontal scroll bar.

Actual Results:

  • The window hasn’t enlarged itself sufficiently to completely contain the content of the iTMS; there is still a horizontal scroll bar visible.

2005/11/02

BibDesk trend-setting and metadata

This is what I’ve been waiting for! Some context may be required with this sentence, I admit.

A new version of BibDesk has been released, which is a bibliography-managing application that does all its work off BibTeX-formatted files. Just a front-end, for now. In the future, they plan to abstract the file format from the bibliography format itself, to allow for nice things that are a bit kludgy or impossible when you’re simply adding plain text to a .bib file.

I didn’t get into BibDesk for a long time, primarily because it didn’t support macros; references to strings that could be changed after the fact if you need to create a bibliography with abbreviated journal titles, for example. Besides that, it didn’t seem to add too much to my experience of manually editing the .bib file by hand.

I’m not sure when the project turned from Michael McCracken’s baby into a fantastic example of open source development, but it’s really a stellar example of what is possible with some volunteers with spare time working with Cocoa.

So why am I so suddenly enthusiastic? (I’ve noticed that people closer to the project itself have in fact been similarly so for quite some time now; in anticipation, I must assume.) BibDesk deals with metadata in a way that makes sense and makes it easy, but most importantly, makes the metadata relevant. (Sorry about the emphasis overuse.)

We’ve (or I’ve) been ignoring keyword fields for years, wondering “what’s the point, really?”, even though it can help for searching quite a bit in certain circumstances. But the new BibDesk will (in real time) organise and sort bibliographic entries by arbitrary metadata, which for bibliographic entries is most usefully keywords. (It has always been possible to add extra fields to a BibTeX database, they are just silently ignored if they are unknown.) Keyword groupings will be populated as you add keywords to articles, and keywords will be added to entries that are dragged into they keyword folders. Moreover, they’re non-exclusive. Keywords of “red, exciting” will turn up in both the “red” and “exciting” groups.

You’ll note that iTunes should have had this a long time ago; iTunes is the only application I can think of that deals with metadata in anywhere near a comprehensive fashion to be note-worthy. And it falls far short of where we should be in 2005. (Note I did include this as a feature request in my iTunes complaints, but it was closed as a duplicate. If it’s a duplicate, dammit, then why didn’t they roll it into v5/6? No progress…)

I’ve seen demonstrations of this idea of metadata organisation in a Longhorn demonstration a while ago, which works for every file in your file system. (I wrote about this , among other things, at the time at MacMischief. Boy, that gig didn’t last long.) Mac OS X 10.5 has got to have some pretty fancy things up its sleeve, especially for the Finder.

Mac OS X’s Spotlight is impressive, but it solves a different problem. It helps you find; but managing metadata like BibDesk does now and like Windows Vista will is able organising information and keeping track of it. Half the point is that it allows you to add the metadata to your information that you desperately need for the Spotlight searches.

This ramble has gone long enough, given that I was due home for dinner ages ago. Anyway, in summary: new BibDesk = very impressive. It will be a trend-setter for all applications in the future dealing with metadata in a complex way. And something tells me that won’t be a small field.

iTunes' bugs revisited

Damn, running kills you. Well, at least me. I’m tired out, sweaty, and I’ve sore ankles, but actually I guess I feel kind of alright. Now, if that wasn’t the prime example of me changing my mind within a single paragraph…

Anyway, after a week and half of neglect, or something, I’m distracted enough to put together some more thoughts for nobody’s reading pleasure. Structured life, structured life—I’ll get it eventually.

I need to keep better notes of my ideas. There’s few rolling around in there, but this article is a follow up from my previous round of iTunes complaints.

Actually, I just realised that this isn’t allowed, because replies from Apple are under non-disclosure. Hopefully they don’t get too mad at me for that Preview/aliases bug from a while back.

Anyway, let’s just say that I came to the realisation that things like song lyrics and album art for a CD are copyrighted material, and hence cannot be automatically downloaded by one of Apple’s programs. They are trying to act nice with the music industry, after all.

Also, the issue of multiple metadata has been around for ages now (at least, I’m sure my idea wasn’t original) so I’m sure that someone’s bound to have requested it from Apple before now…

Finally, let’s say that iTunes’ developers and I will have to agree to disagree both on the location of the iTunes folder within the users’ library (contrary to what’s said in Apple’s own developer documentation), and to the intelligence of the user when they are trying to edit every item implicitly selected in the Browse pane. (“Thank you for your feedback. We are constantly looking for ways to acknowledge your presence while actually ignoring you.”)

I’m keen on this 10.4.3 update. So I’ve heard, the slow PDF rendering times that has made Tiger very underwhelming for me are gone! (The majority of my work on my PowerBook is with PDFs generated by (Xe)TeX) Mac OS X 10.3 performance is back again. Well, so I’m expecting.

Before I go, let me express my happiness about the Australian iTunes Music Store (that also sells Video). I’ve bought one whole song (Dualing Banjos, because it’s an absurd choice), but I’ve already noticed that the store itself is a bit clunky inside the iTunes window itself. That whole search field at the very top of the window is totally unintuitive. Move it down next to the Sign In button, please.

Ciao for now.