Well, maybe not broken, but definitely showing some cracks.
The iPhone App Store is a great concept. One central place to get all applications for the iPhone; everything is there, and only there, available right on your iPhone.
But is it everything? Of course, Apple rightly filters out malware and illegal applications... but they have caused some controversy of late by refusing entry to generally useful applications. Worse, they've rejected a couple of apps recently because they "duplicate existing functionality".
One such is a podcasting app, which they say duplicates the iPod app... but seems to have offered other benefits. Another is a Gmail reader, which apparently is more convenient than using Apple's Mail or Safari to access Gmail.
Notice something in common there? Both rejected apps would have competed with Apple's own apps. Yet Apple has no problem with dozens of flashlight and sudoku apps. So it seems to a plain-and-simple anti-competitive move on Apple's part. That is not playing nicely, and potentially illegal. Governments tend to frown on that kind of behavior.
Why do I care?
I haven't written any iPhone apps yet... but I'd like to, in due course. I've written up a rough design for one new app, and would likely want to write companions for some of my Mac apps, like Dejal Simon. However, episodes like these make me and many other developers hesitate to begin, or continue.
Writing software is hard; it can take months to write even a relatively small application properly. What if we come up with a great idea, spend months of time designing, developing and polishing it, then submit it to the App Store, only to have it rejected based on some unannounced policy, or whim? That would be a huge waste of time and effort, which makes developers like me concerned about whether it's worth starting.
What Apple needs to do is provide a clear, detailed description of the iPhone App Store policies, and stick with it. Perhaps offer a contact point for discussions early on, to ensure that an app concept is worth pursuing.
And preferably make the policies as open as possible — none of this anti-competitive behavior. If someone writes an alternative email app or web browser, let them release it. If it is superior to Apple's, it will flourish, and everyone will benefit (including Apple, via their sales cut). If it isn't any good, it'll fade into obscurity.
It's really in Apple's interest to do this, to ensure developers put the effort into building quality apps for the platform. Apple, the ball is in your court. Make it right.
The promotion is offering a Basic license, which allows up to seven active tests, for just $14.95 (normally $29.95). I'm practically giving it away!
Narrator, my fun text-to-speech app that allows mixing multiple voices in a document and exporting to iTunes, has been updated to version 2.0.3.
This release includes some important bug fixes, and is a recommended update for everyone:
Dejal Simon has been updated to version 2.4.2.
This bug-fix release includes some important fixes in the Mount, Twitter and Port plug-ins, plus report improvements and other changes, as detailed in the release notes. It is a recommended update for everyone.
As previously mentioned, my main Mac is having issues. In the meantime, I've moved to another Mac, so I can answer emails again; I'm all caught up now ("Inbox Zero", as the productivity people say). But as always, I encourage you to use the Dejal Forums, so others can help and benefit from the answers.
By the way, watch out for a new Simon bug-fix release, due in a couple of days.
Just to let you know, I will be slow to respond to emails for the next day or so, as my main Mac (a 17" MacBook Pro) is having major kernel panic issues. I think it's a hardware problem, as I've seen interference when connecting a second screen, and even on the built-in screen.
I can continue to monitor the Dejal forums via the other machine on my desk, but email will have to wait till I get the machine operational again, or can switch to a temporary machine if I need to take the MBP in for repairs. So please use the forums for support queries. Purchase processing is all automatic, so won't be affected.
I recently came across an interesting new website: wakoopa.
Similar to iusethis.com, it tracks usage of applications. But it has an advantage: you can download a tracker application that will watch what applications you use, and report them to the server. Thus it automatically keeps track of the applications you actually use, rather than relying on you hunting them out to manually report them occasionally.
All of my products are listed, of course (plus some internal tools).
The site design is quite attractive, with some social-site features, to organize into "teams", post and read reviews of products, and suggest software that you might like, based on what you currently use:
Version 2.4 of Simon, my website and server monitoring tool, added a plug-in to support the popular Twitter service — where short messages can be posted to tell your friends and associates what you're up to throughout your day.
The Twitter plug-in in Simon works both as a service, that a test can check, and as a notifier to alert you to events for any tests. It was kindly written by Daniel Ellis.
When used with a test, you can monitor Twitter updates, direct messages, friends (people you follow), followers (people who follow you), and more. This is handy to simply track when Twitter is down (or experiencing the "fail whale"), or learn when someone un-follows you, or other events:
A key benefit of Simon is its notifiers, which alert you via email, sound, speech, and more when something interesting happens with a test. Now you can also post an update (public message) or direct (private) message to Twitter. If you're an avid Twitter user, Simon can keep you informed right in your Twitterfeed.
As with a number of other notifiers, you can include custom text in your tweet, including variables for the test name, the kind of event, the date and time, the URL, and much more:
I have a special Twitter account for Simon notifications, which alerts of Dejal blog and forum posts and comments, and a few other events: the SimonBot. You're welcome to follow it to hear about new blog and forum posts, if you wish.
I also use Twitter myself; you can follow me for insights into my life.
The Mac Bundle Box collection of 15 great applications is now available!
The bundle includes my own Caboodle and Narrator, plus 13 more excellent applications from other independent developers, for the low price of $49.95 total. Save hundreds of dollars over the cost of buying them separately! My two apps are together worth $35, so If there are even just one or two other apps in the bundle that you want, you'll be saving lots of money.
Visit the Mac Bundle Box site to take advantage of this great deal, while it lasts!
Coming on August 1st:
Get a sneak peek at the contents via Chris Pirillo:
Visit the Mac Bundle Box site to sign up to be notified when it's available, or come back in a couple of days!
Hard as it may be to believe, I somehow survived the last year without an iPhone. Not entirely by choice: my wife and I were locked into a Verizon contract. Sure, we could have paid the large cancellation fee, but we opted not to.
It worked out well this year, though, as our Verizon contract expired a week before the iPhone 3G was released.
On release day (July 11), I monitored the release coverage, including reports of the really long lines at Apple stores. I don't enjoy waiting in lines, so wasn't keen to join the queues. My wife and I had to go out to some shops near an AT&T store, so we figured we pop by there to see how bad their lines were. I really wanted to purchase our iPhones at an Apple store, for the full Apple experience, but figured it couldn't hurt to check out AT&T.
When we got to store, we found no lines at all. We walked up to the counter, and were told by a pleasant salesperson that they had only received 30 phones that morning, and were all sold out. They were expecting 100 more the next day, or we could purchase now for "direct fulfillment". This is where the store orders our phones directly from their supply chain, bypassing the gamble of turning up at an Apple or AT&T store when they happen to have stock, and contending with the lines.
With some hesitation, we chose the direct fulfillment option. Sure, the Apple experience would be nice, but waiting a few days for the direct hassle-free method had a lot of appeal too. We had waited a year... what's another week?
It went swimmingly. My wife chose a white 16 GB iPhone 3G, while I opted for the black 16 GB model. We provided the credit card info (which seemed to count as their credit check) and other information, then left the store within minutes. The white iPhone turned up about a week later, and my wife popped in to the store to pick it up and choose the plan etc. Very easy. While waiting, we monitored progress via an online tracking page, and the friendly salesperson called to alert us when the phone had arrived (in case we weren't monitoring it).
The black model has been a lot more popular, so was backordered, but arrived on Monday, a few days after the white one, so we quickly picked that up and added it to the plan.
People have complained about the in-store activation, but really it's not all that bad; it only took a few minutes. I'm sure it would have been nice to take the unopened box home, but it's really not a big deal.
Since then, I've been having lots of fun configuring things, trying third-party apps, etc. We're really happy with our iPhones, and now wouldn't want to be without them. If you've been thinking about getting one, but were on the fence, hop off that fence and into an Apple or AT&T store now!
It seems that AT&T may still be your best bet. Even now, almost two weeks after launch, reports still indicate low availability, long lines and multi-hour waits at Apple stores, whereas AT&T stores are apparently now offering 72 hour availability in some stores. Even if it's a few days longer than that, I found the AT&T direct fulfillment experience to be quite satisfactory.
One of the major strengths of Simon, my website and server monitoring tool, is the flexibility it offers through the ability to write custom scripts in many scripting languages. Simon is plenty useful with the built-in services and notifiers, but the ability for customers to enhance it themselves makes it even better.
Recently, two notifier scripts were added. Notifier scripts enable you to provide new ways of being alerted to changes, failures or recoveries of tests.
Firstly, a useful Ruby script called "Email on Counter Change", to notify you via email when a numeric value changes. It was kindly written by a Simon customer, Wade Maxfield. He wrote it work with the output of the MySQL service, though it could be used with other services, and/or customized for different behavior. He describes it thusly:
Parses the results of the test for name/value pairs and then notifies by email if any of the values differ by more than the warningThreshold since the last check. Use a negative number as the warningThreshold if you want to check for values that decrease over time. For use with the MySQL service, and queries like SHOW global status WHERE (variable_name LIKE "Qcache%")
Requires Simon 2.4.1 or newer.
As an example: Set up a Test and Notifier to check if MySQL has restarted. For this test we will check the value of the Uptime status variable in MySQL. Since it shows the current uptime in seconds, it should not decrease, if it does send a notification email since MySQL must have restarted.
In a MySQL Service test set the Server, Port, Database and Security values to whatever are required to connect to your MySQL server, then set the Query to SHOW global status WHERE (variable_name="Uptime"). Add Notifiers for Change and Failure, and set both to use the Notifier you have setup with this script.
In the Notifier, set the mail options as needed. Set the warningThreshold to -1, then if the Uptime variable is ever lower that the previous check, MySQL must have restarted, so this script will send the notification email.
Secondly, I wrote a very simple notifier script called "Show & Screenshot" in answer to a forum query:
Opens the page in the default web browser, waits a few seconds for the page to render, then takes a screenshot of it. Enter the path of a folder to save them to (the folder must already exist). Also specify how long to wait before performing the screenshot, in seconds.
You can download these scripts and much more via the Notifier Scripts section of the Simon Extras page.
Enjoy! And if you create a useful script for Simon, please share it with others!
Last year I was featured in MacTech magazine as their developer spotlight for the month. They asked me some questions about my background; here are my responses:
What do you do?
Dejal is a small ISV, so I do pretty much everything, including Cocoa development, customer support, accounting, PHP web development, graphic design, etc. I do have a developer that helps with Dejal Simon plugins etc, and I've used graphic designers for some app icons and the new Dejal logo. In addition to my own products, I do contracting work part-time.
How long have you been doing what you do?
I learned BASIC in 1982 as my first programming language, and knew that's what I wanted to do with my life. In 1988 I switched to Pascal on Mac Pluses at the University of Auckland in New Zealand, and started playing around with apps, but didn't sell anything until I created Dejal (originally called Dejal Userware, for user-friendly software) in 1991. Back then it was just a hobby, selling utilities for System 5 through Mac OS 9 (they're still available as freeware: http://www.dejal.com/classic/). There wasn't a web back then, though; I distributed my software via Compuserve, AOL, floppy disks, and later CDs, and provided licenses via airmail (from New Zealand), hand-written on photocopied certificates.
When my wife and I moved to the US in 2001, I learned Cocoa, developed my first Mac OS X apps, and registered my company as Dejal Systems, LLC in 2002.
Your first computer:
I got my first computer in 1983: a Sinclair ZX81, with 3.25 MHz Z80 processor, 1K of RAM, a cassette tape drive, tiny membrane keyboard, and hooked to a B&W TV. I first used a Mac at school: an original 128K Mac in 1984... but I didn't own one until I got a Mac Plus in 1988.
Are you Mac-only, or a multi-platform person?
Definitely Mac-only. I have a Windows box I got a few years ago for a project, but it just gathers dust.
Do the products you develop scratch a personal itch, or are they for others?
A bit of both. Obviously I need to keep marketability in mind when working on products. Most started out as fulfilling a need I didn't see being adequately serviced with existing products in the marketplace. Narrator started as a fun way to learn Cocoa. Simon began as a way for me to watch for website updates, and became more sophisticated as it became popular. I created Time Out to improve my health, since I can suffer from eyestrain when staring at a computer for hours on end. Caboodle was written to compete with others in the snippet-keeper market, as I didn't really like the approach existing ones took. Macfilink was created in partnership with an affiliate marketer to serve that community. BlogAssist was written specifically for my wife, who was really into LiveJournal blogging at the time. All of the products have grown and evolved over the years based on customer feedback -- it's really important to listen to what people say about products and incorporate their ideas into the design, as makes sense. I keep track of all suggestions, and tally votes for them to determine the most requested enhancements, to which I give priority when deciding on features for an update.
What's the coolest tech thing you've done using OS X?
One thing I'm quite pleased with is the Script plugin in Dejal Simon. Simon is a server monitoring tool that uses a plugin model for services, notifiers, and reports. The Script plugin allows running AppleScripts, shell scripts, Perl, Python, Ruby, or other scripts to perform checks and notifications for local or remote servers and processes. I like it as it leverages Mac OS X's unix underpinnings to significantly enhance the reach of the product. That would've been much harder under Mac OS 9 or Windows.
I wrote an integrated environment for an old SpectraVideo MSX computer (loaded off 5.25" floppies) around 1986, complete with a basic word processor, spreadsheet, and more. It was never released, though.
Where can we see a sample of your work?
Try my products: free trials are available at http://www.dejal.com.
See my code: open source Cocoa at http://www.dejal.com/developer/.
Read my thoughts: subscribe to my blog at http://www.dejal.com/blog/.
The next way I'm going to impact IT/OS X/the Mac universe is:
I'm excited about the upgrades of the Dejal apps for Leopard. Simon 3 and Time Out 2 will be major upgrades, with much-improved UI and features.
Narrator, my app to read out stories in multiple voices, has been updated to version 2.0.2.
It is also available for half price for today only, via the MacUpdate Promo page. Be in quick to take advantage of this one-day offer!
This bug-fix release includes a few important issues:
Simon, my website and server monitoring tool, has been updated to version 2.4.1.
This is a bug-fix release, with a few important fixes to the Port service and notifier plug-in, among other changes.
Time Out, my popular free break reminder tool, has just been updated to version 1.5.3.
It contains a few improvements:
defaults write com.dejal.timeout DebugScheduler YESin Terminal. You shouldn't turn this on unless you think Time Out isn't working properly, as it outputs quite a lot of information.
Time Out 2, the major rewrite for Leopard, is currently in development. More information about it will be made available in due course. In the meantime, enjoy Time Out 1.5.3!
Seth Dillingham is hosting a Pan-Mass Challenge software auction once again this year, as a fundraising project in support of his 300-mile ride across the state of Massachusetts for a cancer care charity.
He wants to collect hundreds of software products, which will be auctioned on eBay starting soon.
This is a very worthy cause. I participated last year, and am happy to participate again this year. I am donating at least 5 Standard licenses for Dejal Simon, at least 5 Household licenses for Dejal Caboodle, plus at least 5 Household licenses for Dejal Narrator (about $520 total value). I encourage other Mac developers to join in, too.
For more information on the fundraising, click this image:
I previously blogged with my predictions for the Stevenote at this year's WWDC. So how'd I do?
3G iPhone & SDK:
This was of course a no-brainer. There may have been riots in Moscone if this hadn't eventuated. The iPhone 3G meets most of the expectations that people had, with one or two perhaps overly optimistic exceptions: some people were hoping for a front-facing camera with video support, for video chats, which won't be included... yet. Maybe in next year's model?
I wondered when it would be available, predicting "no later than the end of June", but it turned out that July 11 is the magic date. A little off there, but I'm not surprised that it was delayed a little. It's perfect timing for me: my old cellphone contract expires on July 2, so I'll be raring to go on launch day.
One concern with the launch, though, is that it appears that iTunes-based activation will no longer be supported: iPhone customers will have to activate in-store. That will probably lead to really long delays on launch day (and subsequent days)... not something I'm looking forward to.
Although the iPhone 3G will be cheaper up-front, the total cost of ownership is going up. AT&T will be charging $10/month more than before for the data plan, resulting in a total cost over the two year contract of $440, $40 more than before. Even so, the iPhone 3G will be well worth that difference, with faster speeds, better battery life, GPS, and more.
Another rumor I commented on was that Mac OS X 10.6 would be announced, with the code-name "Snow Leopard", as a no-new-features release with performance improvements. This was indeed announced, though somewhat in passing during the Stevenote. Developers attending WWDC apparently got a seed of this release. There was little information on what is included, but I predicted that the rumor that it'd drop PowerPC support was unfounded. I can't say for sure, but considering the intertubes haven't exploded with outrage, I think it's safe to assume this wasn't true.
This rumor did come true, too. As widely expected, the new name is MobileMe. I'm still not a big fan of the name, but anything's better than "dot-Mac". From what was shown during the Stevenote (or Schillernote at that point), they do seem to have gotten it right at last. The web apps look very clean and usable, and push synchronization should be an improvement.
New Multi-Touch Device, Other Hardware:
I was very skeptical of the rumor of a new multi-touch device, and wasn't surprised to see it was false. Apple has a great new platform in the iPhone, just at the beginning of taking over the world, so they wouldn't want to distract from that at this stage. Maybe in a couple of years time, they might bring out a touch tablet or something.
As for new Mac models, I didn't expect any, and there certainly weren't any. As I said, WWDC is not the time for new hardware.
I did end jokingly with "The real surprise would be if Steve doesn't say "boom". :)" Maybe that is the biggest surprise of the show; he didn't say "boom" once, unless you count the sound effects in the slides when announcing the lower prices. I'm shocked! :)
Overall, a most satisfactory WWDC Stevenote. I look forward to getting my iPhone 3G, and seeing the plethora of iPhone apps that will start appearing in the App Store. It's going to an excellent platform.
Unfortunately I'm not attending WWDC this year. I'm not currently working on or immediately planning an iPhone app, and don't expect anything much new for Mac OS X, so it wasn't worthwhile to go this year. Maybe next year?
I'm sure I will write some iPhone apps in the future, though; it's an exciting platform, and I'm really looking forward to getting a new iPhone once they're released.
But speaking of releases, time for some prognostication.
The leading expectation for WWDC 08, of course, is the 3G iPhone with version 2.0 software and the software development kit (SDK). I'm confident that this will eventuate. I'm not sure whether or not the new iPhone model will be immediately available, or just announced for pre-order and delivery later in the month (or even later). If I had to guess, I'd say it'd be released no later than the end of June... but I'm hoping for immediate availability.
There are also questions of whether or not the updated iPhone will be thinner or thicker than the current model, what memory size it'll have, if there will be multiple models (perhaps a cheaper 2.5G and more expensive 3G model), coloring, form-factor, etc. I would guess thinner, double the memory, and only a 3G model (with a preference to switch between 2.5G and 3G).
Another rumor that has been popular recently is an unusual update to Mac OS X to version 10.6, code-named "Snow Leopard". This would be unusual in that it is supposed to not include any major new features, but just concentrate on tidying up the code base, improving performance and stability... stuff that is normally the realm of bug-fix releases.
But it is supposed to also drop PowerPC support. This would make a certain amount of sense — it'd allow throwing away lots of code, and simplifying many things. But it might be a little too soon for such a drastic change; there are still plenty of perfectly good PowerPC machines out there (I have a few in active use).
There have been rumors that 10.6 would change Carbon support in some way. Some thought it would drop Carbon entirely, or Carbon UI, but I don't think that is realistic. There are still many Carbon apps out there, including big ones from Adobe, Microsoft, and others. What I could see happening, though, is (as Gruber says) adding Objective-C wrappers around framework calls that are only available via Carbon currently. That would certainly be very welcome; as a Cocoa programmer, it can be mildly distasteful to have to drop down to Carbon to implement some functionality, though it's certainly not the end of the world.
Another popular rumor is that .Mac will be overhauled and renamed, perhaps as "Mobile Me". This has been fueled by people noticing that me.com is owned by Apple, and seeing the text "Mobile Me" referenced in resources. This does seem pretty conclusive, though I can't say I particularly like the name. On the other hand, .Mac has always been a silly name, so Mobile Me isn't any worse. It does certainly make sense to rebrand it to avoid reference to Macs, now that Apple has a major non-Mac platform in the iPhone.
Finally, some people are predicting a new multi-touch device, perhaps some sort of tablet or Newton-like form factor. I'd certainly welcome that, but am rather skeptical that such a device would be introduced now. I'm sure Apple has a few such devices in development, even if only as experimental projects, but introducing one now would distract from the new iPhone, unless it were positioned as a "super-iPod touch" kind of device, running the mobile OS X. I would really like to see a multi-touch Mac tablet... but that seems even less likely at this stage.
I would be very surprised if any Mac hardware were announced. WWDC isn't traditionally the venue for hardware releases; last year Apple released updated MacBook Pros a week before WWDC, rather than waiting a week. At its core, WWDC is for developers, talking about the OS. That's the way it should be.
Macfilink, my affiliate link cloaking tool, has been updated to version 1.4.3.
This update includes a few fixes, and is free for existing customers: