Billable mention in Macworld
Macworld magazine recently did a feature story covering a number of Quicken alternative for your personal financial management needs. In a sidebar they listed a number of programs for the self-employed and happily mentioned Billable:
If you want to both keep track of the services you perform and create invoices, without a lot of other bells and whistles, Clickable Bliss’s Billable is a good, inexpensive choice. It lets you set different hourly rates for a client; you can also create and customize invoice templates in HTML, and then print them as PDFs.
Sweet.
Posted on: August 23, 2007 – 5:33 pm | Comments (1)
FogBugz World Tour and RubyEast
With WWDC and C4 now past it’s time to plan the next few geeky social distractions.
First will be Joel Spolsky’s visit to Philadelphia as part of his FogBugz World Tour on Monday, September 17th. FogBugz is a bug tracker that has gotten some good press in the MacSB blogsphere recently. Personally I’m planning to set it up next week to test out in preparation for the Billable 1.2 launch and inevitable pile of support emails (most of which are usually feedback and feature requests but still important to track). Joel’s talk is free, though you do need to register.
Later in September (Friday, September 28) one of the local Rails development shops is helping to run RubyEast, a one-day Ruby / Rails collection of talks to help both experienced and young Rails developers alike. RubyEast is $100 and will be held in Penn State Great Valley which is east of Philly, but not that far of a drive.
There are of course the continual Philly Blogger meetups as well as Philly on Rails and other technical groups. I’ve gotten a few people who want to see the Philadelphia Apple Developers (PHAD) regroup and have a few more meetings. If you are interested please shoot me an email and let me know what you are working on and what you might like to see discussed.
Posted on: August 17, 2007 – 4:48 pm | Comments (0)
Looking for work
I have some free time now and I’m hoping to pick up some contract work. If you or someone you know needs any Rails/Cocoa/Screencast work please let me know.
Posted on: August 16, 2007 – 3:41 pm | Comments (4)
C4[1] Retrospective
First, a huge thanks to Jonathan ‘Wolf’ Rentzsch for putting on C4 yet again this year. I can only imagine how much work goes into organizing this and I was very grateful to be able to look forward to and experience such an inspiring weekend yet again this year.

Brackets totally stolen borrowed from Chad Weider.
The Talks
Wolf opened with a talk exploring the ever growing and powerful “indie” developer. From open source development stacks to the interweaving bridges gluing the open source (Python/Ruby/etc.) to the commercial frameworks (Cocoa), more and more indie developers are influencing (if not defining) the future of our environment. While not truly evident until the Iron Coder showcase at the end, even the mighty iPhone’s barriers are crumbling at an astonishing rate. Overall a very inspiring talk and you could see the almost fatherly proudness on Wolf’s face for the C4 group and their accomplishments in this area.
There were a collection of talks that could be grouped under the topic of “Marketing” which was something new to C4 and I think welcome to a nice subgroup of attendees who are still young to the world of Mac indie development. Shipley had a very entertaining review of hype and how it’s worked for Delicious Library while also covering some more specific marketing todos surrounding Google AdWords and the process of launching. Adam Engst of TidBITs compressed an updated version of his noteworthily Hacking the Press talk done at previous MacHacks. Adam of course has the perspective of the editor/publisher, his comments on marketing and working with the press were much more direct than Wil’s and I think worked well together. There are also some older Hacking the Press articles on TidBITs which are relevant and worth reading, should you be interested.
Daniel Jalkut opened Saturday with a talk discussing his recent application acquisitions and tried to pass on as much wisdom as possible should one want to go through the process themselves. For me currently I’m not really planning to do much of this but it was interesting to her Daniel hypothesize on the idea of a Application flipping — taking an existing application adding some polish and making a profit.
Shawn Morel who works on VMware’s Fusion product did a talk discussing how virtualization works and the challenges they face. A little over my head here but kind of interesting. During the Q&A the enviable question of OS X inside of OS X came up. Clearly the developer community is dying for this — if only the higher ups at Apple could understand the potential and take away the legal / bureaucratic issues.
Allan Odgaard did a talk covering the past, present and future of TextMate. In addition to his own challenges and solutions, Allan spent a good chunk of the talk covered the TextMate community and it’s contributions to the application via it’s bundles system.
While known in most circles of his PyObjC efforts, Bob Ippolito’s talk at C4 was all about Erlang. For me this was both cool and over my head. Generally speaking Erlang pre-C4 was some language I heard about via a few Philly on Rails people and Dave Thomas. Bob did a great job introducing the language, its uses and strengths but because of the insane unique and interesting syntax and the new-to-me design patterns I have to admit my eyes glazed over more than once. That said, I am extremely happy to have seen the talk. It’s probably not a technology I’ll use tomorrow but I’m much better prepared to recognizing a future situation where it may come in handy.
Tim Burks’ talk was insanely great. For me Tim Burks was not a name I (or I’d bet many) knew before C4 but after this talk I’m sure he has many new subscribers to his blog to see what he’s up to next. The talk started with poetic stories and biblical references of rebirth to cover the close relationship of Cocoa with Ruby, the RubyCocoa bridge, Tim’s own development of RubyObjC and some seriously cool demos of a circuit design application. For the finale Tim put the hole talk on it’s head, reviewed the frustrating issues experienced when doing Cocoa stuff in Ruby and then introduced his fix: a Object Oriented-smart Lisp that works with ObjC called Nu (still in private development, but looking for people to help). The language geeks in the audience orgasmed.
On Sunday morning, nice and late at 11:00am (so we could all at least try to get through our hangovers) Cabel Sasser did a talk covering the growth of Panic, his process of design and how Coda came to be. Very entertaining and informative. As was posted on the Twitter back channel Cabel could take the talk on the road and charge for tickets.
Iron Coder Live
At the close of the show Iron Coder Live was held and we had 12 or so people present various hacks done up for the iPhone and OS X. I’m not going to review them specifically. Perhaps some other blogger can do that as this post is already crazy long and I didn’t take very good notes. With luck most of the sources will be posted and indexed soon.
Operations Feedback
Location: Being in downtown Chicago worked out great. Specifically, for the tourism I did pre-conference and all the bar hopping we did on Friday / Saturday. The pool-side bar “sessions” were important as it was the only real “social time” when the handful of younger developers could hang out with us while we were drinking. Getting them into the bars is kinda hard.
Food: Dinner on Friday was so-so, the hot breakfasts were very welcome, and Gino’s East was very tasty though I wouldn’t mind a few more plain cheese next year. More caffeine options during the talks would also be cool. Jamba Juice rocks!
Network: Pretty solid for a hotel. Having to do the website to join the network kind of sucks but to be expected. Noteworthy: I didn’t get billed for the day of internet I used in my room on Thurs and I wasn’t part of the conference block either.
Swag: Love the dog tags. T-shirt looks nice and high quality too.
The DrunkenBatman Panel
In the gap of time between the fall of MacHack and the rise of C4 there was an event called Evening at the Adler where a blogger by the name of DrunkenBatman (DB) assembled a great group of Macintosh developers to discuss the topics of the day. Overall the event was a great success and was even made available online so the reach was much broader then the 100 or so people in attendance. When C4[0] of 2006 was announced DB was given an opportunity to do another panel at the C4 show. Reaction to the C4[0] DB Panel was mixed. I got the feeling most people internally rated it as “ok”. Personally I was disappointed as it didn’t feel very focused and the topics that got the most time (DRM and piracy) are topics that I feel at this point have been discussed past their point of usefulness, ie the group discussing and listening have already done so previously and nothing informative was being created. All that said the DB panel of C4[0] was, to put simply, uneventful — nothing to lose any sleep over.
So time passes and C4[1] begins to get planned. At the same time the blogging on the once very active DrunkenBlog stops. There is a post on May 3, 2006 and then nothing until a post May 15, 2007 (about the same time details of C4[1] come out). DB has a panel again which is fine, but the DB post is not the usual “can’t wait for C4,” it’s the “I’m going to go to C4 and punch Vinay Venkatesh in the face because I believe he steals code” variety. Lots of reaction came via blogs and in IRC (comments were not enabled on the post itself) but as the weeks passed by it seems Vinay wouldn’t be coming to C4, a fellow co-worker would do his virtualization talk, and DB would still be doing his panel. I wasn’t involved or have heard any of the real insider information as to the developments that led to these results. Personally, if I were running the show and a presenter or attendee threatened violence for any reason they wouldn’t be invited to come. Even if the allegations of someone stealing code are true — violence isn’t needed anywhere near the aura of C4. In my opinion, the best case for DB would have been to outline his arguments with proof, try to convince the community and then let the community take the required action. So, with all that drama pre-C4 we sit down awaiting DB’s panel with a slight distaste in our mouths but whatever we are having a good time so it’s easy to forget.
The first topic brought up was an idea of applications that are somehow are ripping off / deceiving users and if we as a community have to stop them. The example DB used was an application called Pzizz. Basically he called out the app on it’s benefits as marketed via the website and backed up by hot-linked “scientific evidence.” He followed a path of research that he thought was very questionable and asked the panel if we need to, as a community, call these modern day snake oil salesmen and others like them out. The general reaction from the panel (after taking a deep breath from such an unexpected topic) is that applications that clam outrageous things (ie: MarsEdit will get you laid) and don’t deliver on the promise are naturally phased out by the marketplace. It would be a misplace of power for a select few community leaders to band up and punish a company like that.
Crowd reaction to topic one was mostly bewilderment. It was clearly not a question anyone might have guessed would have been brought up. The amount of time it took DB to present his case to the panel and the attendees clearly seemed to have taken too long. Most in the audience wanted to move on.
The second topic opened with this slide which simple read: “Black people don’t use Macs”. My interpretation of DB’s point was that he felt the community was completely homogenized and that a lack of diverse cultures might have side effects and thus the question to the panel, what might they be. The problem was he didn’t word this well at all. He linked class and race, his perceptions on diversity were flat out wrong to most in the audience and at one point he said something to the effect, the only black people you see around an Apple Store are panhandling for money. At this point I kind of put my head down and started to ask myself what the hell was going on. The twitter back channel was very active and easily became more interesting than talk itself. Eventually the topic moved on but by now everyone was kind of on edge waiting to see what would happen next.
The third and final topic before time ran out was open source. DB it seems is very upset at the state of open source on the Mac. I can’t clarify too much what he was unhappy about (honestly, I was internally counting down to pizza time and leaving this train wreck behind me) but I do remember many successful open source projects being named to counter arguments. Some big boys like Firefox and Adium as well as frameworks like Sparkle. There was even a hands up if you use Sparkle and about half the room raised their hands.
When time had run up we all exited to store our laptops and bags in the hotel rooms and head off to pizza. Commentary on the panel lingered most of the night. I’d be amazed if DB is running a panel again next year. Too many people just saw it as a waste of time and potential. Maybe it was just a bad day or bad planning. I wouldn’t mind reading his arguments on the blog but these weren’t well suited for a panel at all.
To whomever might be running the panel next year, maybe ping the bloggers with some question ideas and ask for feedback ahead of time?
Final Thoughts
In close, despite the drama of the panel, C4 was a terrific success. I can only hope Wolf is up to it again next year.
Posted on: August 13, 2007 – 11:15 pm | Comments (11)
Nice app: rooVid
I enjoy taking little movies with my camera and like to share them via web / email. Unfortunately the camera takes these movies in a crappy AVI format with a size of about 18 MB per 30 sec movie. To help convert them to a much slimmer/nicer QuickTime movie format I’ve started to use a very handy application called rooVid.

The basic idea is that you create QuickTime profiles describing the codecs you want to use, drag the original media over the profiles and rooVid will create a new QuickTime movie form the source using the profile and store it in subfolder in ~/Movies/. For batches of movies that share the same codec needs this works great and is much faster that trying to do them individually via QuickTime Pro.
To be clear, rooVid is actually named “rooVid Lite” and is currently free. I believe the intention was to make a full version/commercial rooVid but development seems to have slowed. Despite that, this works great for me and well worth the download if you have similar needs.
Posted on: August 13, 2007 – 4:01 pm | Comments (2)
C4 Photos and Movies
C4 blurry photos via Flickr and a few little camera movies here:
- Adam on silly news
- Daniel on buying apps
- Shawn Morel on virtual vs emulation
- Shipley on simplicity
- Wolf on indies
- Sears Tower
Posted on: August 13, 2007 – 3:40 pm | Comments (0)
Testers wanted: Billable 1.2b1
As I continue to work on Billable 1.2 I thought it was time to get a build out there some people could play with and give me feedback on. As an experiment I’m putting this beta download on the public site but please only use this version if you are comfortable with betas (ie: application crashes, data loss, restoring from backups, etc.) And with all that said what’s new?
Well a full changelog is online but some highlights include:
- A new date picker helper UI widget next to all of the date fields.
- We now store PDFs in-between application launches. Additionally we also now enable changes to services even when they have been already invoiced. Billable will also watch for changes to your custom invoice template on the hard disk making the workflow of editing it and previewing invoices much easier.
- Much better email support.
- New quantity type option for services.
- A new checkbox option next to Invoice Due Date that will let you choose “due on receipt” instead of a specific day.
- New per-service notes let you be much more verbose about what you did for that service.
- Basic AppleScript support
- Bug fixes, optimizations, yatta and yatta.
Other notes:
- This version does work better on the Leopard seeds than version 1.1.2 but is not fully compatible yet. More info on these issues can be found at the top of the changelog.
- This code has an expiration date in it for Sept 1st.
- There is no sparkle support for the betas so when beta 2 inevitably comes out it won’t auto-install. Please subscribe to the blog or the twitter account to keep up.
One big area I need feedback on is the AppleScript support. Adding this to Billable was no small feat but in the long run will enable lots of interesting integration options so it’s important to do right. What I’ve made available in this beta is fairly raw object access. There is much less automatic stuff here than the UI version. As an example, when you create a new invoice in the UI I can determine the client it is for based on the service selection but in AppleScript I can’t, so you need to do it manually. For some example code you can try out this test script I wrote and used during development.
Download: Billable 1.2b1
Bug Reports and Feedback: http://clickablebliss.com/contact
Posted on: August 6, 2007 – 9:08 pm | Comments (5)
C4 roommate wanted
I have a double room for C4 booked and would be happy to save some monies and take in a roommate. I check in on Thursday and checkout on Sunday. Let me know if you are interested.
Posted on: August 3, 2007 – 1:17 pm | Comments (0)
Improved email support for Billable coming soon
One of the nice upcoming improvements in Billable 1.2 is better email support. Previous email support consisted of telling the user to use the “Mail PDF” option in the print panel. This has a few problems though:
- It uses Mail.app and Mail.app only.
- The PDF it attaches to the new mail message is named “Untitled.pdf”
- The To address isn’t autofilled.
- The subject is left blank.
In Billable 1.2 we will be using an AppleScript-based implementation to make this better. (We have to use AppleScript since you can’t pass an attachment using the mailto: protocol).
In my developer version Billable now supports Mail.app as well as Entourage, gives the PDF a nicer name, the subject line a better default (both based on the Invoice Number) and it autofills the to address field based on what you setup in the client editor.
Note, even though this is an AppleScript-based implementation it is just a normal button under the invoice view.
Anyways the main reason I’m posting this to the blog is I wanted to find out if any Billable users out there are using a desktop mail client other than Mail.app or Entourage. If you are, let me know and I’ll try my best to support your client. If know AppleScript and what to help you could also try to make an AppleScript function to satisfy your client. My scripts for Mail and Entourage are online for reference if you want to take a look at how those two are handled.
Thanks.
UPDATE: Thanks to the work of Jonathan ‘Wolf’ Rentzsch we now have support for Mailsmith as well. Thanks again Jon!
Posted on: August 1, 2007 – 6:22 pm | Comments (2)
Friend looking for image processing to measure stamp quality
A friend approach me the other day to see if I could whip up a small program to help him with his stamp collection. Apparently how well centered a stamp is is very important to its value and while there are some programs that do this measurement on Windows he is unaware of anything for the Mac. He lacks an intel Mac as well which makes the option of emulation harder.
I’ve never done much with image processing myself but promised I’d blog the need and see if anyone out there has anything laying around that could do the job or is interested in the project. I think he is willing to put up a small bounty but nothing huge. If you are interested let me know and I’ll fwd your email to him. Thanks.
Posted on: August 1, 2007 – 12:43 am | Comments (0)

