marusin.com » Blog Archive » Setting Twitterific (Power User) Preferences
19 September 2008
in links
tagged with
[macos]
[preferences]
[software]
[twitter]
[twitterific]
poweruser preferences for twitterific, including client-side filtering of tweets. Useful for talk-like-a-clown-day.
http://www.marusin.com/2008/02/12/setting-twitterific-pow...
Simplistic Complexity » Jeez People, Stop Fretting Over Installing RMagick
08 August 2008
in links
tagged with
[install]
[macos]
[rmagick]
[ruby]
[software]
Utility to install rmagick on macos. Might be useful if I ever want to try using the system ruby for development.
http://www.simplisticcomplexity.com/2008/06/06/jeez-peopl...
Camp Tune for Mac OS X - Overview
30 July 2008
in links
tagged with
[bootcamp]
[macos]
[partition]
[utility]
Resize a bootcamp partition non-destructively. Commentary elsewhere is a little worrying, though. To look at later when it’s properly released, anyway.
Cocoa Programming for Mac OS X
12 June 2008
in photos
tagged with
[book]
[cocoa]
[macos]
[programming]
Third Edition. Yay.
Leopard Firewire Target Mode OS Install
28 May 2008
in links
tagged with
[installer]
[macos]
[software]
Cribbed for the ability to install packages from the command line. Can also work around that annoying inability to install packages directly off the macos install DVDs.
http://northstarlabs.net/2007/11/04/leopard-firewire-targ...
Concern :: New Git package for OS X
25 April 2008
in links
tagged with
[binary]
[git]
[installer]
[macos]
[package]
git binary install package for macos. Includes git-svn, which is nice.
http://metastatic.org/text/Concern/2007/09/15/new-git-pac...
Released Shelf 0.0.13
28 March 2008
in blog
tagged with
[macos]
[python]
[release]
[shelf]
[software]
Shelf 0.0.13 is available, though it’ll auto-update itself if you let it. Not a lot in this one, the most interesting thing for me is that Dopplr support is back in and works a lot better - there’s now a button to click that’ll get you a token, for instance. I’ve also squashed various crashes for cases where data was bad.
2 gigs of memory in Liebniz
23 March 2008
in photos
tagged with
[hardware]
[macos]
[memory]
[screenshot]
In an astonishing coincidence, the Mac mini I keep under the telly takes the same memory as the MBP. So having put 4 gigs in the Pro, I suddenly had 2 gigs free I could put in the Mini. Which is an improvement over the 512 it had before..
Home — gitnub — GitHub
21 March 2008
in links
tagged with
[git]
[gui]
[macos]
[versioncontrol]
oooh, pretty. When I have a free moment I must knock up something like this for subversion
Released Shelf 0.0.12
14 February 2008
in blog
tagged with
[macos]
[release]
[shelf]
[software]
Another week, another Shelf release - this one is 0.0.12 - read the release notes or download the binary.
Loads of stuff in this one, but muttley may like the fact that you can now turn off the background poller and have Shelf look for context only when you hit a global shortcut key. This will also make life nicer for people with smaller screens who don’t want this widow popping to the foreground every time it can figure out who you’re looking at.
Other than that, there are lots of improvements. Shelf should be faster and make less gratuitous network requests. Feed display is prettier, and I make an effort to display recently updated feeds at the top, rather than in random order.
OS X Icon Editor - Download the Icon Editor Pack Free!
12 February 2008
in links
tagged with
[icns]
[ico]
[icon]
[macos]
[software]
MacOS icon production resources, via mark
Released Shelf 0.0.11
06 February 2008
in blog
tagged with
[macos]
[release]
[shelf]
[software]
So, I have a new release of Shelf, having finally been inspired to put a bit of effort into the scary refactorings I was putting off. It’s internally much better than the last one, though I still have places I can take it. Feature-wise, it’s only a little better, though. Feeds look nicer. It should be fast, and caches the contents of remote feeds better, so it’ll thrash the network less.
The big thing is the Google Social Graph integration. Disabled by default, because it’s a privacy nightmare, I can ask Google who the current page in our web browser belongs to, to found out a person to display in Shelf. Once I’ve got a person, I can also ask Google what other URLs they advertise about themselves, so you no longer have to stuff dozens of URLs into your Address Book cards just to see interesting things about people. Looking at Brad’s homepage is a good torture test..
I’m alwo working towards making Simon happier, with a couple of preferences determining how the window should be displayed. It’s not all the way there yet, but I’m moving..
Get the full release notes here.
Shelf 0.0.10
11 January 2008
in blog
tagged with
[macos]
[release]
[shelf]
[software]
Amazingly, Shelf is still fun to work on. Hence version 0.0.10. Read the release notes.
Yet Another Shelf Release (0.0.8)
10 January 2008
in blog
tagged with
[macos]
[release]
[shelf]
[software]
These version numbers are just jumping around randomly now. Well, ok, they’re not, but not every version escapes to the world. Anyway, download the new Shelf - this one has an icon! And it now includes Sparkle, so it’ll update itself automatically from now on - you can stop visiting my blog every 10 minutes to see if I’ve released a new version now.
Incidentally, Sparkle is <i>stupidly</i> easy to install - everyone should use it. It’s awesome.
I’m going to start keeping a proper ChangeLog now, because I have no idea what’s in this version. Better cacheing? I think it’ll also use AddressBook.app as a source of Clues, so if you’re having trouble getting the app to do anything, just open Address Book and look at a card - you’re guaranteed to see something.
Shelf ported to Python
06 January 2008
in blog
tagged with
[macos]
[release]
[shelf]
[software]
Ruby turned out to be a bit of a pain for Shelf - I needed many external libraries and the Ruby bridge does a fairly bad job of packaging them all. I’ve ported the thing to Python now and it seems better - in fact, it’s better enough that I can actually produce a binary! Check out the downloadable action! - MacOS 10.5 only, and this is very unlikely to change. Deal with it.
It’ll pull context from Safari, NetNewsWire, Mail.app, Adium and Twitterific. Adding new apps is easy, I just haven’t yet. It’ll display only the person’s name, email addresses, and street address. And there will be errors if the street address is incomplete. It’s a PROOF OF CONCEPT. Jeez. Quit whining. There is code to fetch the recent feeds of their pages, but it’s disabled because the app blocks while it’s doing it, making it practically unusable.
Rather than me updating this page all the time, just go to the Shelf project page and get the most recent binary from there.
Tales from the Loonybin » Demystifying Mail.app Plugins – A Tutorial
06 January 2008
in links
tagged with
[macos]
[mail.app]
[plugin]
[python]
[software]
Writing Mail.app plugins. In Python. Rocking.
http://www.bazza.com/~eaganj/weblog/2006/03/29/demystifyi...
Shelf - Context for MacOS
05 January 2008
in blog
tagged with
[cluepacket]
[dashboard]
[macos]
[ruby]
[shelf]
[software]
I really miss Dashboard. It was an effort to display some context around whatever person you were interacting with at any given moment - look at an email from Paul, or open an IM chat with him and you’d see things that he’d blogged or uploaded to Flickr recently. Genius. From the screenshots, it looks practically magic, tying into incoming SMS messages, IM conversations, the RSS feed reader, etc.
Alas, I never had a fully working Dashboard setup locally, mostly because applications had to actively participate in the process - they sent things called ‘cluepackets’ to the dashboard application containing hints about the current context. Because of this design, every app involved needed its source code patched and a recompile. This was a complete pain. Obviously, had everything gone to plan, the patches would have been merged and everyone would have been happy. I presume that Dashboard failed because the bootstrapping process was so hard that no-one used it.
Anyway, inspired by both Dashboard and Aaron‘s obsession with the address book, I’ve had a stab at doing it again, but worse.
Shelf
Shelf will look at the current foreground application, and try to figure out if what you’re looking at corresponds to a person in your Address Book. Then it’ll tell you things about them.
Update 2008/01/08: I have downloadable versions of Shelf now. Go to the project page and download one.
It’s for MacOS. Because on MacOS, I have OSA - I can interrogate most (well-written) applications about their state in a beautiful, language-agnostic and fast manner. I can ask Mail.app for the email address of the current mail. I can ask Safari what the URL of the foreground window is. I can ask Adium for the account details of the current chat. I can ask NetNewsWire for the homepage URL of the current subscription. And I can ask the system what app is in the foreground. I can also interrogate the system address book via the Cocoa bindings for same and find out what users have got that email address, or URL, or AIM screen name. And then I can take all the other information about them in their address book entry, and figure out some context. Oh, and the thing’s written in Ruby, because the Ruby scripting bridge is a thing of serious beauty and should be played with by everyone.
Good thing
So, advantages. I don’t have the bootstrapping problem, because most MacOS applications already have enough of a scripting interface that I can extract information from them. Firefox is proving to be a serious problem, alas, but I’ve hit no other apps I can’t get something useful out of.
Once I have an Addressbook record as context, I can update the interface with a picture of the person and their name/company (direct from the address book, so easy). As a ‘will this work?’ experiment, I’m parsing every referenced URL in the address book card for RSS feeds, and displaying those as context. And (because I work there) I have special-case Dopplr support that tells me where the person is in the world and where they’re going next. This means that when someone IMs me, a window pops up and tells me where they are, when they’re back, and what they’ve blogged recently. Awesome.
The system address book is great - it has multiple email address and URLs for people, so I’m indicating things like Dopplr username by just putting the url to my traveller page in my address book entry. I can parse the username out later and use it to call the API with. This has the advantage that if I visit my Dopplr page in Safari, hey, wow, that URL is in the address book, and it knows that it’s me again. Flickr is the next obvious choice for special-casing, but the principle extends to anything.
Bad thing
Disadvantages. Firstly, urgh, I’m polling. Every 2 seconds, I ask the system for the foreground application, then ask that application (if I know how) for context. This is probably a little heavy (is it? I’m guessing..). Secondly, I have to do explicit work for every app out there. The huge advantages of Dashboard’s cluepacket approach over mine were that packets were pushed instantly on a change of context, and that a new application was responsible for sending its own cluepackets.
Actually, this is easy. My app should have a ‘change context’ OSA method that other applications can call. Smart apps can tell me when their context changes, and I’ll just poll everyone else. Once I’ve taken over the world, everyone will be pushing messages to me, and I can deprecate the poll interface. Genius.
Recently, most of the crazy apps I’ve put here have been labelled as ‘proof of concept’. This one is different. This one probably won’t even build on your computer. I’m putting things up here as a was of musing about technique. For instance, Dashboard had a far better design than this app. It had a nice pipeline thing going for it, whereas I just have a class per foreground application, this class must produce an Address Book record, then I just interrogate every context producer for information and display it. This is silly - if I’m looking at Paul’s Flickr photos page, I don’t need my app showing me the thumbnails again, I might be much more interested in where he is right now. Hell, in a perfect world, it would work out the dates of the photos I’m looking at, and show me where he was at that time.
Future
Clever things I could (and want to) do:
If the foreground URL doesn’t belong to a user, look for hcard markup in the source HTML and try to derive a person from that. Right now, for instance, I’ll only recognise your Flickr page as belonging to you if it’s one of the URLs against your address book card. But Flickr pages are marked up with enough hcard that I should be just able to figure it out.
More intelligence around context - as above, if I’m looking at a blog of a friend, I want to see other things, not their blog again.
Remembering connections - if I figure out a local person from a Flickr page via hcard markup rather than an Address Book URL, why not remember their Flickr username and display their photos when they email me?
Many of these features are difficult, mostly because of my core design right now - I derive an Address Book entry from the current application, then derive context from that entry. This hampers cleverness somewhat - I really need to pass around a lot more information about how I derived this person, and keep a local cache of conclusions about them. Maybe the person isn’t in my address book - I get email from people I don’t know! But their email address might correspond to a Gravatar so I could show a picture of them. Maybe the mail has some URLs in the .sig and I could find their blog. Maybe they’ve commented on my blog in the past and I’d like links to the comments. Likewise, if I find, via hcard in the source of a page, that a page is about someone I know, should I update Address Book and add URLs for them? Probably not a good idea. So I need a local store of connections as well.
Now what?
I don’t know. It’s very tempting to rewrite the thing in Python before it gets any more complex. Partially this is because the Ruby feedparser dependencies are a bugger, but mostly it’s because I don’t want my python sk1llz to atrophy down to nothing. Recently everything I do is in Ruby, and I don’t like that. Shelf also desperately needs some work done to make it asynchronous, and cache things - when I look at an email right now, it’ll hang for 5 minutes while it goes off and fetches 20 RSS feeds, every time I change the person I’m looking at. Not exactly pleasant. But the ‘find out about a person’ is really just a trivial example of the sort of things you can do once you know who they are. The ‘derive context from current machine state’ side of things is much more interesting.
Folder Quick Look Plugin - Underconstruction by Taiyo@hatena
27 November 2007
in links
tagged with
[macos]
[quicklook]
[zip]
Via mark, quicklook plugin for folders
Zip Quick Look Plugin - Underconstruction by Taiyo@hatena
27 November 2007
in links
tagged with
[macos]
[quicklook]
[zip]
Via mark, quicklook plugin for zip files
WhatsNewInLeopard - ruby - Trac
26 October 2007
in links
tagged with
[leopard]
[macos]
[ruby]
[[ ..write a Ruby class in Xcode, with outlets and/or actions, and everything automatically appears in IB […] the other way, you can manually define outlets and/or actions in IB, and the corresponding Ruby code will be pasted created ]]
http://trac.macosforge.org/projects/ruby/wiki/WhatsNewInL...
» Mac OS X start up sound volume control » Silver Mac
09 August 2007
in links
tagged with
[macos]
[sound]
[startup]
[volume]
aaah, lovely. I hate how loud the starup bong is.
http://www.silvermac.com/2006/mac-os-x-start-up-sound-vol...
Hivelogic - The Narrative - Building Ruby, Rails, Subversion, Mongrel, and MySQL on Mac OS X
30 July 2007
in links
tagged with
[install]
[macos]
[ruby]
I don’t seem to have delicioused this, despire using it all the time. What can I say? I rebuild my computer a lot.
http://hivelogic.com/narrative/articles/ruby-rails-mongre...
Anti-Grain Geometry - Texts Rasterization Exposures
09 July 2007
in links
tagged with
[font]
[macos]
[scaling]
interesting stuff about font scaling. Personally, I’ve always felt that macos fonts looked nicer than linux fonts. Now I understand it, maybe I can fix this. For my own personal perception, anyway..
message2net
01 July 2007
in links
tagged with
[bluetooth]
[macos]
[phone]
[sms]
[software]
Manage SMS messages on phone from MacOS, via bluetooth. Icky non-native interface, but does the job.
http://www.novamedia.de/e_pages/e_produkte_mac_m2n_phone....
Universal binaries for Quake 3
30 June 2007
in links
tagged with
[binary]
[macos]
[quake]
[quake3]
[universal]
I’m on a bizarre retro-quake thing at the moment.
The Unarchiver
19 June 2007
in links
tagged with
[macos]
[software]
[uncompress]
[zip]
File decompressor for macos - handles almost everything. via ssp.
coconut-flavour.com - coconutWiFi 1.3
14 June 2007
in links
tagged with
[macos]
[network]
[software]
[wifi]
[wireless]
Menubar utility that’ll tell you which of the available wireless networks are closed/open. Why doesn’t the built-in wireless menu do this? Free, too. Yay.
FrozenSilicon Labs: Home
26 April 2007
in links
tagged with
[gui]
[macos]
[pandora]
[software]
Hurrah for web applications crammed into .apps
Noodlings » A Modest Proposal: A New Way To Install
18 April 2007
in links
tagged with
[application]
[install]
[macos]
[software]
[todo]
Apps should copy themselves off disk images if run from a disk image. Very true. I should make all my apps do this, it should be easy. [update later: wait, no. One of the comments has it right. Disk images suck - ship .zip files with .apps in them]
http://www.noodlesoft.com/blog/2007/04/15/a-modest-propos...
DjangoKit
28 March 2007
in code
tagged with
[cocoa]
[django]
[macos]
[python]
DjangoKit is a framework that will take a Django application, and turn it into a stand-alone MacOS application with a local database and media files. It started as more of a thought experiment than an effort at producing a real application, but I have it working, and you can package perfectly usable stand-alone applications with it.
DjangoKit is currently hosted in a Google Code repository, so go there for downloads and source, or just get the svn tree directly at http://djangokit.googlecode.com/svn/trunk/.
Optimized Firefox for G4, G5, and Intel Macs
03 March 2007
in links
tagged with
[firefox]
[intel]
[macos]
[optimized]
I’d use firefox, except that it’s so slow under macos. Maybe this will help.
UnicodeChecker 1.12 (Quarter Life Crisis)
22 February 2007
in links
tagged with
[macos]
[unicode]
This utility is great and I could not live without it.
http://earthlingsoft.net/ssp/blog/2007/02/unicodechecker_112
GmailFS for Mac OS X - MacOS.fr
21 February 2007
in links
tagged with
[filesystem]
[fuse]
[macos]
[python]
linked because it lists how to install the python-fuse bindings under macos. And boy, is it nasty.
Big security risk with global sharing - Parallels Support Forum
29 January 2007
in links
tagged with
[macos]
[parallels]
[security]
aaah, huge scary security worries.
Intel-based Macs: Starting up into Apple Hardware Test
16 January 2007
in links
tagged with
[hardware]
[macbook]
[macos]
[test]
You hold down D. Of course. It’s even written on the install media.
collectivity » Blog Archive » SSHKeychain Universal Build
15 January 2007
in links
tagged with
[macos]
[software]
[sshkeychain]
[universal]
Universal SSHKeychain binary. Yay.
http://collectivity.goof.com/articles/2006/04/08/sshkeych...
macfuse - Google Code
12 January 2007
in links
tagged with
[filesystem]
[fuse]
[macos]
oooh, user-mode filesystems for macos. Bwahahahah
What do I need for TeX on Mac OS X?
30 November 2006
in links
tagged with
[holycowmybrainhurts]
[macos]
[tex]
GAAAAAAAHHHH. Installing TeX is as hard as USING it.
Leopard Technology Series for Developers
16 November 2006
in links
tagged with
[development]
[leopard]
[macos]
[xcode]
oooh, Objective C 2.0 looks shiny - it’s getting far too high level for something that’s compiled. Can’t wait…
Code Sorcery Workshop » Pukka
16 November 2006
in links
tagged with
[delicious]
[macos]
[software]
cocoalicious stopped working in the WORST POSSIBLE WAY - it looked like it was posting, but wasn’t really. Bah. Mark recommends this.
Flame 0.2.2
01 November 2006
in blog
tagged with
[cocoa]
[macos]
[python]
[release]
A very minor release of Flame - we were too aggressive in de-duping the service list. It’s possible to have more than one service with the same port an IP address, if they have different names. Thanks to Bruce Walker for the bug report.
Ignoring resource fork files files with subversion
31 October 2006
in blog
tagged with
[macos]
[programming]
[subversion]
If you’ve ever edited files over samba, or on a fat partition, using a mac, you’ll know that it scatters annoying ._foo.txt files all over the place when you save things. These files are the system’s way of compensating for these filesystems not supporting ‘real’ resource forks, and they’re a complete pain. I feel this pain especially when I’m trying to see what’s changed in a subversion checkout using svn st, and it produces 30 lines of ? ._foo.pl complaints.
Fortunately, subversion allows you to ignore this stuff. Edit the file ~/.subversion/config (which is created the first time you use the subversion client), and search for the ‘miscellany’ section. Uncomment the line [miscellany] if it’s not already, and also uncomment the line beginning global-ignores. This line is a list of glob patterns for files that should be ignored when doing a svn st, or svn add (if you svn add on a folder, it won’t add any backup files in the folder, for instance). Add the pattern ._* to the end of it, and your resource fork woes are over…
Free FLV Player
02 October 2006
in links
tagged with
[flash]
[macos]
[video]
[windows]
Useful for.. uh.. playing flv files.
http://www.wimpyplayer.com/products/wimpy_standalone_flv_...
Marc Liyanage - Software - Mac OS X Packages - PHP
26 September 2006
in links
tagged with
[installer]
[macos]
[php]
PHP5 for MacOS, including universal binaries
Torsten’s weblog » Thunderbird has landed
16 August 2006
in links
tagged with
[addressbook]
[macos]
[thunderbird]
A build of thunderbird that will talk to Addressbook.app. Lovely
Mac OS X Python Packages for Universal Python 2.4 on Mac OS X 10.3.9 and later (Intel and PPC)
15 August 2006
in links
tagged with
[development]
[macos]
[python]
A useful heap of python packages for macos
Nekoware/NekoOnDesktop
28 June 2006
in links
tagged with
[cat]
[macos]
Neko. For MacOS.
http://homepage.mac.com/takashi_hamada/Acti/MacOSX/NekoOn...
NodeBox
04 June 2006
in links
tagged with
[graphics]
[macos]
[programming]
[python]
things to play with when I get back to a desk that has a mac on it.
Linux Fashion Parade
03 June 2006
in links
tagged with
[linux]
[macos]
[opensource]
“one of the things which perennially disappoints me is the number of OS X machines there in the hands of free software hackers
”
FatBits: John Siracusa’s Journal: The garbage man cometh
06 May 2006
in links
tagged with
[cocoa]
[macos]
[objectivec]
On the possibility of garbage collection in MacOS. Having to do my own memory management always put me off Objective C, but frankly given the existence of high-level bindings like pyobj, I don’t see me ever using this.
Blotter / Core Data
03 October 2005
in blog
tagged with
[cocoa]
[macos]
Wow, core data is shiny. James re-wrote (the core of) Blotter in 10 minutes using it, so after a bit of polish, I have a 0.9 release, written in pure ObjC/Core Data. Alas, you need 10.4 to run it, and XCode 2.1 to build it (an 800 meg download! ow) but that’s the cutting-edge future for you. Sigh.
Blotter
02 October 2005
in code
tagged with
[cocoa]
[macos]
A cocoa scratchpad for text-based notes storage.
Blotter is a scratchpad / notepad application I threw together so that I’d have somewhere to keep notes. It stores rich text, objects, etc, etc, still needs lots of features, but I use it as dogfood and quite like it. It requires Mac OS 10.4 - sorry.
Subversion
I develop in subversion. Check the source out here. The source requires XCode 2.1 to build (for versions > 0.9 - earlier versions are PyObjC based).
I suggest you use one of the releases, though.
bluetooth is teh shiny
25 September 2005
in blog
tagged with
[hardware]
[macos]
Today’s shiny toy is BluePhoneElite, which sits on the lappy and talks to the phone via bluetooth. It does the usual proximity stuff - lock the screen when the phone goes out of range, pause iTunes and display bezels when there’s an incoming call (which is great when the phone is set to silent mode and I don’t notice it ringing..), and random other stuff (yay applescript). It’ll talk to your address book locally, and let you add unknown numbers to in from your incoming call list. I can use it to send SMSes using my nice big keyboard instead of fumbling around on a tiny phone keyboard. All this stuff is boring - Romeo will do the proximity stuff nicely, for instance, and is free, no less, and the SMS-writing stuff is handled perfectly well by the Apple Address Book. For me, the killer feature of