Saturday, December 18, 2004
I had a few times in the past month or so where I missed meetings I should have gone to. I used to carry a Palm Tungsten T3 around with me, but it turned out to be a pain to have to remember to take that and my cellphone. I wanted a single device, but most cellphones were not good at PDA stuff, and with PDA phones being so big it felt like you were holding a piece of toast up to your head.
I finally found a solution in the iMate Jam. Its a phone that runs Microsoft Windows Mobile 2003 Second Edition... and its tiny! To put it in perspective, this phone is exactly the same size (to within a millimeter each side) of my iPod Photo. In fact, I found the carrying case that came with the iPod to be a much better case for this phone than the one it came with!
First impressions have been really good. The small size fits well in your palm when talking on the phone. The phone itself is finished in what appears to be aluminum, so it should be tough enough. The screen is small, but works well enough at 240x320 resolution. One of the nice things about MS's 2003 Second Edition is the ability to set the screen into landscape mode, which is good when you're looking through your inbox.
Some reviewers have complained about the lack of 802.11 support, but this doesn't bother me too much. If its too much of a hardship I can always get an SDIO 802.11 card. One side benefit of that approach is that I can upgrade that SDIO card as speeds and standards improve.
If like me you're looking for a fully featured PDA that is also a decent phone in a phone form factor, you could do far worse.
I got mine at Expansys, though no doubt other companies will be carrying it soon. T-Mobile sells its in the UK and may bring it to the US too.
I finally found a solution in the iMate Jam. Its a phone that runs Microsoft Windows Mobile 2003 Second Edition... and its tiny! To put it in perspective, this phone is exactly the same size (to within a millimeter each side) of my iPod Photo. In fact, I found the carrying case that came with the iPod to be a much better case for this phone than the one it came with!First impressions have been really good. The small size fits well in your palm when talking on the phone. The phone itself is finished in what appears to be aluminum, so it should be tough enough. The screen is small, but works well enough at 240x320 resolution. One of the nice things about MS's 2003 Second Edition is the ability to set the screen into landscape mode, which is good when you're looking through your inbox.
Some reviewers have complained about the lack of 802.11 support, but this doesn't bother me too much. If its too much of a hardship I can always get an SDIO 802.11 card. One side benefit of that approach is that I can upgrade that SDIO card as speeds and standards improve.
If like me you're looking for a fully featured PDA that is also a decent phone in a phone form factor, you could do far worse.
I got mine at Expansys, though no doubt other companies will be carrying it soon. T-Mobile sells its in the UK and may bring it to the US too.
Sunday, December 05, 2004
One of the parts of Xanadu that we wanted from the start was a robust business rules engine, but it wasn't a requirement for the immediate project we were working on.
Xanadu has a "workflow" component that is used for inter-page navigation, and is based on the work the commerce.dell.com team did for building a dynamic checkout sequence. But this system is really only useful for navigation. While navigation sequencing is a useful feature (allows you to link pages together with metadata instead of hard coding them), it falls a long way short of what I'd like a total system to do.
Things I wish I want from a business rules engine:
Next I looked at BPXL from BPMI.org. I need to get more detail on this, but it appears to provide extensions to BPEL that might make it more useful to us. But their web site is pretty vague, and I didn't necessarily want to register for more info to have some vendor start calling me day and night.
Then I moved on to look at BizTalk. On an earlier trip to Microsoft I'd come across a presentation on Voyager, which was the code name for a new orchestration engine they were building, and took their XLANG/s language and built a .NET assembly from it. It appeared to do a lot of the things I needed - all of them really, and it had a great looking tool. The problem is that the generated assembly is designed to run inside the BizTalk server. Thats no good to me, as our Xanadu-based applications need to be able to run in disconnected clients.
This coming week I'll be at Oracle OpenWorld in San Francisco. Oracle has BPEL-centric tools to. But Oracle is very Java-centric and their stuff probably won't integrate at the client. But I'm willing to look at it. In fact it seems that with Microsoft building the best of other company's ideas into their products, most vendors are conent to stay in the Java world and not compete with MS on their home turf, which is a pity.
One product that is in the .NET space and may be a viable contender is Avanade's ACA.NET as from what I recall, that product has a workflow piece for controlling navigation. It'll be interesting to see how that has evolved since the last version I looked at in 2001 or so.
Worst case I'm going to end up taking a BizTalk orchestration (.ocd) file (which is hybrid XML file containing the XLANG/s flow sequence), and writing my own compiler for it that will work in the client. I'm just a little surprised other companies haven't already solved this problem (I stopped thinking we were unique some time ago).
Xanadu has a "workflow" component that is used for inter-page navigation, and is based on the work the commerce.dell.com team did for building a dynamic checkout sequence. But this system is really only useful for navigation. While navigation sequencing is a useful feature (allows you to link pages together with metadata instead of hard coding them), it falls a long way short of what I'd like a total system to do.
Things I wish I want from a business rules engine:
- Ability to have state variables across the workflow that the stages can set (for navigation, you might use this to set the step's display name, icon, and which page it is tied to)
- Ability to branch based on some business logic. Our current system lets you bind to a property in your code, which is how the commerce checkout app goes to the credit card page if you choose "Credit Card" on the payment types page. But I want to be able to extend the workflow without modifying the code.
- Complex branching and looping. We can branch with our current system, but its fairly crude and we can't loop.
Why loop? If you've used MSN Messenger and you've ever added a contact, you will see it go through and ask for an email address. At the end you can tell it you want to add another contact, and it goes around again. Thats a useful feature as it allows you to extend the navigation support beyond straight sequencing. - It would be cool if it could call methods in our code, so we could use the system to orchestrate complex business logic.
- I want to focus on a standard that already exists because I don't want to write tools to manage it. We're trying to solve a business process and speed our development. We're not a tools vendor and its not a great idea to spend 6 months going off writing a Visio-like designer to solve this problem.
- My last one is a soft requirement - Ideally the system would take my workflow/orchestration and compile it to a .NET assembly so that any code and callbacks into our business logic is early-bound and running as native code (not being interpreted).
Next I looked at BPXL from BPMI.org. I need to get more detail on this, but it appears to provide extensions to BPEL that might make it more useful to us. But their web site is pretty vague, and I didn't necessarily want to register for more info to have some vendor start calling me day and night.
Then I moved on to look at BizTalk. On an earlier trip to Microsoft I'd come across a presentation on Voyager, which was the code name for a new orchestration engine they were building, and took their XLANG/s language and built a .NET assembly from it. It appeared to do a lot of the things I needed - all of them really, and it had a great looking tool. The problem is that the generated assembly is designed to run inside the BizTalk server. Thats no good to me, as our Xanadu-based applications need to be able to run in disconnected clients.
This coming week I'll be at Oracle OpenWorld in San Francisco. Oracle has BPEL-centric tools to. But Oracle is very Java-centric and their stuff probably won't integrate at the client. But I'm willing to look at it. In fact it seems that with Microsoft building the best of other company's ideas into their products, most vendors are conent to stay in the Java world and not compete with MS on their home turf, which is a pity.
One product that is in the .NET space and may be a viable contender is Avanade's ACA.NET as from what I recall, that product has a workflow piece for controlling navigation. It'll be interesting to see how that has evolved since the last version I looked at in 2001 or so.
Worst case I'm going to end up taking a BizTalk orchestration (.ocd) file (which is hybrid XML file containing the XLANG/s flow sequence), and writing my own compiler for it that will work in the client. I'm just a little surprised other companies haven't already solved this problem (I stopped thinking we were unique some time ago).



