Trowl 0.6 Preview

It has been a while, hasn’t it?

Even so, I’ve been working on Trowl, and I’m happy to make available the preview for Trowl 0.6.  So why 0.6 when the last version was 0.5.4?  Well, first of all: we’re talking about 0.0.6 of a version – does it really matter? ;)  But more technically, I’ve made a lot of changes, both to the code behind the scenes and to what you see in the behavior and UI of the app.  While a lot of the changes aren’t particularly groundbreaking, taken together I think they offer a substantial improvement to 0.5.4.

Plus there is a .NET Framework 4 version – but that’s coming later, so I won’t delve into that right now.

Before I give you the download link, I wanted to go over a few of the larger changes so you know what you’re getting into.

Backend Code
I mentioned that I made changes to the code that aren’t immediately obvious on the surface.  This includes changes with the Twitter API: some of the calls are updated, and I further refined how Trowl checks your rate limit.  There have also been changes to how Trowl parses the results it gets back from Twitter.  Finally, I’ve made some modifications to how notifications are sent and received from Growl.  Observant users will notice that I added the word “try” to the “show X number of notifications on screen at once” setting.  I’ve made this a bit more flexible to handle occasional lost notifications or other oddities.  So if you sometimes see more or less than your desired number of notifications, don’t freak out. :)

Different Growls for Different Accounts
A new advanced notification setting will force Trowl to register a separate “New Tweet” notification type for each of your Twitter accounts.  What does this mean?  Well right now, if you open Growl and look at Trowl’s notifications, you will see just one “New Tweet” notification type.  If you switch this setting on, however, it will create a “New Tweet” notification type for each of your Twitter accounts.  What’s the point?  By doing this, you can configure each account separately.  Want one account to forward to iPhone, and another not?  Want one account’s notifications to be sticky, but another to close automatically?  Now you have the power.

New Tweet
You can now use the hotkey CTRL-SHIFT-T to open the New Tweet window from anywhere. (Update: You can now toggle the hotkey option, as well as what the hotkey is.)  Also, some minor layout changes were made to this screen.  Finally, I added a button to let you switch between reply and retweet.  Why?  Well, have you ever accidentally hit “reply” instead of “retweet” or vice versa?  Or did you hit “retweet”, only to realize you’d rather do an “old style” retweet?  Now you can quickly switch between the two types right from the New Tweet screen.

Refined Catch-Up Tweets
For a while now, Trowl has offered the ability to show the tweets you “missed” while it was closed.  Using a special “while you were gone” notification type, it would show all the tweets you would have normally seen if you hadn’t quit Trowl.  You can now toggle this option to show all tweets, or just replies and mentions.  (Of course, if you already have the account set up to only growl replies and mentions, this toggle will make no difference.)

Refined Silence Mode
In previous versions, “Silence” mode would simply cause Trowl to stop checking for new tweets. When you turned Silence off, it would show all the tweets you missed while it was silent.  Now the default action is to not display any missed tweets.  If you still want it to do this, “show missed tweets” has an option to include Silence mode.

Auto-Silence
Related to the previous section, Trowl can now detect when your computer goes to sleep.  When it does so, you can have Trowl automatically go into Silence mode.  When it comes out of sleep, it will turn off Silence, and then show what tweets you missed, if you configured it to do so.

Settings Backup
A new button was added to make a backup of your settings.  It puts a file in a location that can be seen by all Trowl versions.  If for some reason Trowl loses track of your settings (usually after a version upgrade) it will look for a backup and restore from it.  You can also use the backup file to easily transfer settings to another computer, or do a manual reset if something bad happens.

… and more.  There have been lots of other minor changes and tweaks too.  This is actually a slightly more rough “preview” version than in the past.  So don’t be surprised if you find any bugs – just let me know in the comments here, or at the Google Group, and I’ll update this post with any bug fix versions as necessary.

So if you get a chance, please download and try out the preview version.  I look forward to any feedback you may have. Thanks!

Trowl 0.6 Preview

Tagged , ,

MacBook Pro – One Week Later

A week ago today, FedEx dropped off my shiny new laptop, direct from China.  Since then, I’ve been hurriedly prepping it and setting it up to see how well it would fit into my digital world – especially since that world is mostly Windows-based.

The “too much text, didn’t read” version is that Windows 7 and Mac OS X coexist very nicely.  There are certainly frustrations in doing so, however – you have to be willing to work through the issues.  I also don’t think MBP is the ideal solution if Windows is the only operating system you plan on using. But as a laptop, the machine is stellar.  And for running both Windows and OS X, the choice is obvious (not that there is much of a choice).  Read on for the nitty gritty.

Continue reading

Tagged , , , , ,

I’m a PC — AND a Mac

The secret is out — I decided to get a MacBook Pro.  It’s something that I have been considering for a while, but it still feels a bit strange getting an Apple machine.  As anyone who’s met me knows, I’m not a big fan of Apple.  Sure, I have an iPhone.  But I’m not a particularly big fan of OS X, and I’m often critical about Apple’s software and business practices.

So why a MacBook Pro?  Isn’t that like buying into the dark side?

Well, let me assure you first of all that I’m not a "switcher".  I’m not going to port Trowl to OS X, and I’m not going to start wearing black turtleneck sweaters.

Continue reading

Tagged , , , , ,

New Display: Metro

I’m going to try and keep this short and sweet so I can get this posted :)

A few weeks ago, it occurred to me that the typography-heavy Metro would work well as a Growl display.  Specifically, the Windows Phone 7 home screen had some potential to be an interesting layout.

I knew that I wanted the application name to be a large font and slightly “off screen”, like when you drill down into a section on the Zune.  The rest of the design was a bit harder to nail down though.  I played with a lot of different prototypes, including one that was almost a direct rip of the Windows Phone 7 home screen – blue boxes and all.  In the end, though, it was too much for something that was supposed to provide subtle notifications.

So I compromised and went greyscale.  I tried to retain the “blocks of information” style of Windows Phone 7, but not go too overboard with it.  At this point, I was still considering this display to be just a general-purpose display.  But as I thought about it, I realized the “blocks of information” concept would be wasted if it didn’t do more.  So I decided to extend it to have the same Twitter/Trowl functionality as my other, Twitter-based display.

A few weeks later, and lots of tweaking and fine tuning later, the first pre-release of the Metro-inspired display is ready.

Metro A couple of things to note:

You need the Segoe UI font for this to render properly. You might be able to use this display without that font, but I’m not sure how it would look.

Like TwitterDisplay, the Twitter features show up in Trowl, or any other app that decides to use the same sort of hooks.

This display has all the same features as the current version of TwitterDisplay.  In addition, it also lets you choose the corner of the screen you’d like the display to appear at.

This is a pre-release and may have bugs.  Feel free to contact me if you do have any troubles with it.  There are a few more things I want to add to this display before making it final.  But it’s in a final enough state now to offer it as a preview for those interested.

… And I think that’s it!  If you’d like to try it out, you can click here to install it automagically into Growl.  If you prefer the hard way, here is a direct link to the archive.  Extract it to a folder called “Metro” in your user folder where Growl’s settings and displays live (AppData/Local/Growl/2.0.0.0/Displays on my machine).

Enjoy!

Tagged , ,

UrlShorteningTextBox

This is something I’ve been meaning to post for a while, but it kept slipping my mind. In Trowl, one of the features is that the “New Tweet” box will automatically shorten any URLs you copy and paste into it. It’s kind of a limited use case — I’m not sure how many apps out there need this ability — but I thought I’d post the code for anyone who might find it useful.

It also demonstrates a few things, like how to capture the “paste” event in .NET, how to create your own events and how to inherit from .NET’s base controls. So even if you don’t use the URL-shortening capability itself, perhaps it can be used for those things.

The code is relatively straightforward, so I’m not going to go through it line-by-line. But I’d be happy to answer any questions — just leave a comment! And, of course, I’m open to any suggestions :)

Enjoy!

UrlShorteningTextBox.cs

Tagged , ,

The Task at Hand

I was reading the latest entry on Paul Thurrott’s Windows Phone 7 Secrets blog, and it got me thinking about the whole multitasking argument that has been taking place since Apple’s iPhone OS 4 announcement.

So first, a quick summary: since the iPhone was launched, multitasking has been next to impossible. Except for a few of Apple’s own stock Apps, it is only possible to run one App at a time.  Once you hit that home button, everything goes away.  In most cases, this is not a big deal.  But sometimes, you just want to listen to Pandora while browsing the web.

Last year, Apple announced push notifications as one answer to the multitasking problem.  For example, on phones where multitasking is allowed, you could leave a Twitter client open, and it could notify you some way when your timeline updates.  As mentioned above, it wasn’t possible to do this on the iPhone.  With push notifications, though, an App developer could set it up so that they would monitor your Twitter timeline, and send a notification to your phone when something changes.  A bit of a roundabout method, but it gets the job done.

On Thursday, at Apple’s iPhone OS 4 reveal, they added another piece to the multitasking puzzle: task-based multitasking.  Certain things, such as listening to music, getting location-based information, or talking on a VoIP call, could be done in the background while you work on another task.  As you can see, this isn’t free-for-all multitasking.  But, it does answer the majority of scenarios that users cite when they complain about iPhone’s lack of multitasking.

What this all leads to is Microsoft’s upcoming Windows Phone 7.  This is almost a complete rewrite of the entire WIndows Mobile experience, and so I imagine that Microsoft is keeping its initial goals simple and straightforward.  I would also not be surprised if Microsoft took note of Apple’s simplistic “one App only” view and decided it was Good Enough for them as well.  But now that Apple is adding some form of multitasking, it has everyone declaring Windows Phone 7 as dead before it even ships.

What Paul’s article correctly points out is that Windows Phone 7 doesn’t need multitasking, because it is built around multiple tasks.  Huh?  Okay, let me break this down a bit.  Windows Phone 7 is built around distinct “hubs”.  There’s the picture hub, the music hub, the “I’m a social butterfly” hub – each one of these has an anchor in a certain theme, but pulls its content from many disparate sources.  So, for example, Pictures not only shows you the pictures you’ve loaded onto your phone, but also dynamic content from Facebook, or Flickr.  Go into your contacts hub, and it not only shows you your contacts and how to get in touch with them, but also their latest updates on Twitter, Facebook, and so on.

So the basic point is: why do you need to worry about multitasking, if everything is already right in front of you, in one hub?

Well, here’s the part that worries me. While this concept is incredibly cool, it puts the responsibility on Microsoft to keep things up to date and fresh.  What the App concept buys you is that when new social networking services crop up (for example), people can write Apps on top of its APIs right away, and before you know it you’re linked in to the service.

With Microsoft’s hubs, how long will you have to wait for Microsoft to integrate a new social networking service?

Sure, Windows Phone 7 supports apps, but can you imagine how annoying it would be if you had to not only view your contacts hub, but also jump out to a third-party app, to see the complete picture?

Or even worse, what if Twitter disappears? Or Facebook?  Or, more likely, what if something better comes along and everyone switches to the new service en masse?  Suddenly, your contacts hub is no longer relevant because no one uses those services anymore.

How long would it take for Microsoft to add support for new services? Would they ditch older services?

Of course, we don’t have a complete picture of Windows Phone 7 yet.  It might be that Microsoft will eventually allow third parties to hook into the hubs, if approved by Microsoft.  That would be a nice way to make sure things stay fresh.

But this worries me a bit.  The concept is amazing cool, and I think is a much-needed reimagining of how a mobile device presents information to you.  But with how quickly the internet evolves, something like this can break down quickly – and what used to be a nifty take on the multitasking issue ends up making things ten times worse.

Just my two cents.

Update: Oh, and yes, I realize that Microsoft’s solution doesn’t solve things like “listening to Pandora while browsing the web”, just like the iPhone  used to not allow.  I am sure eventually Microsoft will bridge this gap.  But there is still a fundamental rethinking, which helps to downplay the need for multitasking.

Update 2: So, Paul just made a new post in response to a recent interview. In said interview, it is mentioned that eventually third parties will be able to extend hubs, but that functionality won’t make it at launch. This is obviously good news, and helps alleviate some of my concern. I still worry about the long-term evolution of how these hubs are maintained, but it’s good to see that they likely won’t stagnate.

Tagged ,

Trowl 0.5.4

With my little vacation next week, I’m probably not going to be able to get a preview version of Trowl out before leaving.  So I thought I’d do a little tour of some of the things to expect in the new version.

Continue reading

Tagged ,

Contacting me in Europe

This time next week, I’ll be getting ready to leave for Spain (with a brief stopover in England) for a week.

Because mobile phone roaming charges are evil, I’m not going to have my usual constant connection to the interwebz via my iPhone.  If you need to get a hold of me urgently, send me a text message.  (If you don’t know my mobile number, get in touch with me and I’ll be happy to give it to you.)  Please only use this for urgent purposes though – while regular text message charges are already daylight robbery, roaming text message charges are even more obscene.

For everything else, feel free to use Twitter/Email/etc.  I will have WiFi access at my hotels, so at the very least I’ll be able to catch up on communications once or twice a day.

I’ll be in England 3/2 and part of 3/3, then in Spain for the rest of the time.  England is +5 hours from EST, and Spain is +6 hours from EST.

Did I forget anything?  Feel free to leave a comment.  Thanks!

Tagged ,

Assassin’s Creed 2

Since my Xbox is out of commission, and I haven’t been able to play it recently, I thought I’d share some thoughts about the game I was playing before it bit the dust: Assassin’s Creed 2.

The Good

When details first started to emerge about the sequel to one of my favorite games, I got a little worried.  A lot of people complained about the repetitiveness of the missions.  Personally, I didn’t mind that they were repetitive because they were so fun to do.  But, because of the complaints, one of the points that was driven home whenever Assassin’s Creed 2 was discussed, was that it would have more variety in missions.  That it would be more challenging.  That it would be less repetitive.

Challenge is good.  Variety is good.  But I was worried that the game would explode into something that was so far past its predecessor, that it couldn’t be considered the same game.  I might not have been so worried about this if it hadn’t already happened to another game I loved.  Jak and Daxter was my first PS2 game, and I adored it.  It was pretty simple, but it was a lot of fun.  It was obvious that there would be a sequel, and I couldn’t wait to see where the series went next.

Where it went was somewhere completely different.  And I didn’t really like it.  I mean, it was okay.  The core mechanics were there.  But so much other stuff changed that it became a different game.  And I was afraid the same thing would happen to AC2.

Luckily, it appears that didn’t happen.  They’ve added a lot to the sequel, without changing the fundamental aspects that made the first game so interesting.  They certainly did increase the variety of missions you do in the second game – but there is still repetition.  The similarities are just well-masked, and there is enough going on in between that it doesn’t feel like you’re doing the same thing every five minutes.

I’ve enjoyed just about every aspect of the gameplay so far – the classic assassination mechanics. the pseudo-history surrounding the characters, the new open area “Prince of Persia”-like environments.  Even the ability to buy and sell goods has been integrated well, something I was also worried about before release.  It’s not a very complex mechanic, but it serves the game well.

The Bad

Unfortunately, however, it’s not perfect.  Perhaps my biggest complaint is that there appears to have been no attempt to make the main character easier to maneuver in certain situations.  In the first game, Altair would be more than happy to grab onto any ledge, ladder or climbable surface when you were doing a free run, usually sending you off in a direction you didn’t intend to go.  Sadly, Ezio is just as inclined to do this in the sequel.  There are many times I wanted to jump one direction, but the game decided it would be much better to jump the other direction – usually with disastrous results.  I hope they spend more time on fixing this shortcoming in the third installment.

One of the more compelling aspects to the game is the fact that the past is actually a replaying of memories, encoded in the DNA of the assassin’s ancestor.  The first game frequently cut between reliving those memories, and the events of the present.  But the second game only does this occasionally, and that’s disappointing.  I read one review that considered this a good point, but if you truly are absorbed by the underlying story, this lack of interaction in the present makes it feel like you’re losing a large chunk of the narrative.

Of course, I am only about halfway through the game, so there may be more to come that makes the wait worthwhile.

Finally, there is the case of the missing memory segments.  I actually haven’t reached this point of the game yet, but it’s worth a mention.  Ubisoft actually cut out two segments of the game due to time restrictions, deciding to offer them later on as DLC.  They say this is perfectly acceptable, as the player already gets more than their money’s worth from the content that is provided on the disc.

And I don’t argue that fact.

However, it is a bit disjointed to have to skip over those segments, only to “relive” them later.  My 360 getting its red ring may actually be a blessing in disguise in that the DLC may be available by the time I get to that part of the game, allowing me to play all the memory segments in order.  I understand the reasons for what Ubisoft did, but I question the final execution.

Conclusion

I think that’s it – very brief, very high level.  Overall, I’m enjoying the game considerably, and I highly recommend it for both the likers and haters of the first game.  Just be prepared for the fact that not all the quirks of the first game got ironed out.

Tagged , ,

Photo-a-Day 2009

Well, it’s over.

All in all, that was a fun experiment. I think if I were to redo it, I would be less strict with the “one photo a day” rule. When you start out, there are a lot of interesting subjects — but about halfway through you start to realize that having a 9-5 desk job isn’t the most conducive environment for creative photography. There are more than a few cases throughout the year where I had to take two or three photos from one day, and spread them out over multiple days.

Having said that, though, it made me more aware of my camera. Things I probably wouldn’t have bothered photographing before suddenly became very important. Above all, that spirit is what I want to take from this project into the future.

A lot of the pictures I took over the year weren’t that special, but there are some I’m particularly fond of. For example, around the same time each month, I took a picture looking out at the same spot from my apartment’s balcony, to show the progression of seasons.

In addition to those, there are some specific photos that I think turned out well. I think I will close out this post, and this project, with that list:

1/1/2009 1/26/2009 1/29/2009
3/20/2009
4/6/2009 4/20/2009
5/2/2009
6/24/2009
7/31/2009
8/22/2009
9/18/2009
11/26/2009
12/5/2009 12/6/2009 12/14/2009 12/25/2009

Tagged