Monday, July 14, 2008 11:49:41 AM
I got a new machine about a week ago for my main development system and I am so happy with the improved speed. My previous machine had become so slow it was really getting in my way all the time. I had upgraded it to Vista about a year ago and after 8 months it became unusable, so I kind of blamed Vista and I went back to XP. After a clean install of XP it seemed better again for a little while but then I started using Visual Studio 2008. At first it was tolerable then it became worse over time and it was getting very frustrating waiting for it to do whatever its doing in the background all the time before I could do what I need to do. It was just getting in my way and hurting my productivity and attitude. So finally I realized, hey, this machine is 3 years old, I'm a developer, I need a new faster machine, its crazy for me to limp along on this old hardware.
I bought an HP Workstation for about $2,350 plus tax and shipping with no monitor, keyboard or mouse, as I already have that stuff. So far its so much faster than anything I've used I'm really happy with it. I got 8GB of RAM and 2 10,000RPM drives and a fast Core Duo processor. If I had it to do over I'd probably spend more and get a Quad Core processor, but this machine is plenty fast. It opens large Visual Studio solutions almost instantly, builds are very fast, and development in general is a joy again because I'm not hindered waiting for my machine anymore. I'm running 64 bit Vista Business, obviously 64 bit since you can't address 8GB of ram with a 32 bit version of Windows.
I guess I waited so long because I'm in a self funded startup business and trying to be very frugal, but I think to be succesful I need to be very productive and to be very productive I need to have a responsive machine. It was worth every penny. Development is fun again.
Sunday, June 29, 2008 10:14:58 AM
As a software developer I've worked with a lot of APIs and developer tools over the years and had many good experiences and a few bad ones. The bad ones are where you waste a lot of time trying to get something to work and it just doesn't do what its supposed to. These kinds of things make you angry and make you resent the vendor because they make you look bad as a developer and they cost you a lot of time, and time is money. The worst cases are those where you have no real choice, you have to use the vendors products or APIs. The latest bad experience I've had is with PayPal. Their developer sandbox just doesn't work and its been eating up my time trying to make it work. I have followed the API documentation closely and am 100% sure I'm doing the right things in my code but it doesn't work. Yet, how can I ignore PayPal if I want to implement ecommerce? I can't because they are the most popular provider. I simply have to get it working. Maybe I will have to test on their production site and then issue refunds. This is what some others have resorted to if you read their forums. You end up paying the transaction fees though even if you do issue refunds. Its a wonder to me that PayPal is so dominant given these shortcomings. I've implemented google checkout and Authorize.NET and they both worked as expected using their sandboxes.
I've created a Camtasia movie here showing the problems, but to summarize:
PayPal offers 2 products, PayPal Express and PayPal Pro/ Direct Pay. The Direct Pay allows you to charge the customer right from your own site by letting them enter their credit card info, this costs you $30/month to enable the service. Express checkout doesn't have this monthly fee but requires the user to pay at the paypal site with their paypal account.
Using the NVP (Name Value Pair) API to process Express checkout, the process is.
1. Make a call to the PayPal NVP web service using the SetExpressCheckout call. You recieve back a paypaltoken and then you redirect the user to paypal passing this same token. This call works as expected, you get the token and you redirect.
2. After the customer pays at PayPal, PayPal redirects them back to your designated page and passes the paypaltoken again. Its the same token as the one returned from the previous call to SetExpressCheckout. Next you are supposed to call GetExpressCheckoutDetails passing the same token back to PayPal. This call fails with the error "Security header is not valid". When you look this up or google it, its supposed to mean that you did not pass the correct API credentials, but believe me, I'm passing the right credentials and its the same credentials that worked fine in the call to SetExpressCheckout. If the call to GetExpressCheckoutDetails worked as its supposed to, the next step would be to call DoExpressCheckoutPayment which is where the order would be completed.
To use the DirectPay API you need to accept the billing agreement which would cost you $30/month on production but should be free on the sandbox. However, when you click the I Agree button in the sandbox account it doesn't work so you can't get your sandboz account enabled to use the DirectPay API.
So, in short, the PayPal sandbox just doesn't work. You can't reliably test the Expess Checkout or the DirectPay API. You would think the so called industry leader in payment processing could do a better job with this. PayPal are you listening? Please please please fix this crap and stop making me waste my time. Are you really going to make me use the production site for testing? Is that some angle to help you squeeze me for $30/month or are you just incompetant?
UPDATE: In case you think I'm being too hard on PayPal, I captured another little video to show how difficult it is to file a support ticket. I have not figured out how to do it yet. I had this same problem yesterday which is why I resorted to blogging in hopes of getting some attention from PayPal to address the sandbox problems.
UPDATE 2008-07-11:
I've had a lot better luck with testing the PayPal Standard API in the sandbox, but still no joy when trying PayPal Pro APIs.
PayPal Standard
Buy Now button works as expected
Cart Upload works as expected
PDT (Payment Data Transfer) works as expected
IPN (Instant Payment Notification) works as expected
PayPal Pro NVP (Name Value Pair) API
PayPalDirect - test with expired card returns correct error
PayPalDirect - test with anvalid expiry date format returns correct error
PayPalDirect - test with valid non expired test card Visa 4111111111111111 fails with invalid card message, error code 10759 -this should not happen
SetExpressCheckout - works as expected returns a token
GetExpressCheckoutDetails - fails with invalid security header message, error code 10002
DoExpressCheckoutPayment - can't be called due to invalid respons from GetExpressCheckoutDetails
UPDATE 2008-07-12
Somehow today I managed to get ExpressCheckout working. I'm really not sure whether it was something I changed in the code or the sandbox just started working right but its been reliable for testing all day today. I've done some refactoring but haven't changed any logic, at least I don't think I have, but in any case I'm glad its working.
UPDATE 2008-07-14
Success! Today I got PayPal DirectPayment API working in the sandbox. Its rather slow so you have to put a long timeout on the web request to the sandbox, but its working. So, now I have got everything working in the PayPal sandbox for PayPal Standard and PayPal Pro.
Monday, June 09, 2008 5:41:47 PM
I followed the Apple WWDC keynote today and I'm sold, hook line and sinker, I want an iPhone.
And I can justify it too because its not as expensive as it was and I'm a web developer so I have to be able to test the mojoPortal experience on an iPhone since a lot of people are viewing the web with it and more will be soon with 3G. Yeah thats the ticket, I "have to" have one for work. See how easy that was.
Only problem now is July 11 seems a long time to wait, I'm impatient, I want it now :-D
Saturday, April 19, 2008 6:30:00 PM
Friday, April 04, 2008 5:20:13 PM
Great post today on the Microsoft Port 25 blog. Very entertaining graphic about the "software wars"!

I had never seen this before but it just struck me as fascinating and it gave me a smile. So I googled "Software Wars" and found the larger original here.
Sunday, March 09, 2008 8:16:02 AM
I first read about Yahoo Media Player a month or so back and I bookmarked it with the intention of using it on my site. I don't know why I waited, I must have just been too busy or absorbed in other things I was working on. I mean its a 2 minute job to integrate it, you just add a script to your page or in my case to the layout.master file in my mojoPortal skin like this:
<script type="text/javascript" src="http://mediaplayer.yahoo.com/js"></script>
and thats all there is to it. Any page that has links to mp3 files now autmatically have little play buttons next to them.

Click the image above or visit this link to see it on my site: http://www.joeaudette.com/therealitysaladband.aspx
If you click a play button the player comes up at the bottom of the screen and has a playlist of all the mp3s linked on the page.

Pretty cool and so easy a caveman could do it.
Saturday, December 08, 2007 11:10:03 AM
In my last job before I started my own business one of the benefits was a membership to the YMCA and we used to take a break during the work day and go workout at the Y. I really liked this because when you work in front of a computer for hours and hours a day you don't tend to get much physical excercise and over many years you find yourself feeling really out of shape. So during my first year in business for myself I joined a nearby gym and made it a general habit of going to the gym 3-5 days a week and power walk on the treadmill to get some cardio excercise.
I was really disciplined about it for the whole year and I figured by the end of the year I was not in too bad physical condition. So I was surprised when I went and spent an afternoon walking around the Renaissance Festival with my Dad and then my legs were sore for the next 3 days. I mean after a year of vigilent treadmill power walking I thought I would be in good shape.
I think the problem is that treadmill walking is not like real walking, there are different muscles used to coordinate walking on real terrain. So this year when my membership at the gym came due for renewal I didn't renew. Instead I now go to a nice hiking trail only 5 - 10 minutes drive from my house. After a month of walking there I'm glad I made the switch. Walking through trails is much more enjoyable, I get fresh air and sunshine and I think it is therapeutic for my vision as well. When you focus on an array of computer monitors all day your vision is always focusing in a narrow range of depth and walking outside give you opprotunites to focus your vision on objects of varying distance. I also find that during the walks I can ponder difficult technical problems and come back with fresh ideas to try.

Sunday, December 02, 2007 9:51:58 AM
I didn't get to make it to the Mono Summit again this year, really wish I could have. Last year it was due to the sale of my house and moving, this year I just couldn't afford the trip to Spain. Maybe next year it will be in the US again, if it is I'm determined to attend and finally get to meet some of the good folks in the Mono community in person.
I'm wondering if any of the Mono folks or Novell folks will be at the MySQL conference in April. MySQL has been kind enough to offer a booth to the mojoPortal project so I will be there demoing mojoPortal both on Windows and on Linux with Mono using MySQL. (Huge Thanks to Todd Stone for donating to help fund the trip!)
I'm really hoping the CSS Control adapters are working by then (hint hint to Marek :-])
I would also love to be sporting one of those cool "How Cross Platform is your .NET" t-shirts or even giving some away if they are available. (hint hint to anyone who can help)

Anyone else going to be there? I hope so. Let me know if you are. I can get up to 3 more people into the event free if you are willing to help me man the mojoPortal booth. There will be one pass to the sessions that we can share betwen us.
Tuesday, September 11, 2007 9:44:57 AM
Thanks to the nominations from the mojoPortal community, we are a finalist in the 2007 Open Source CMS Awards in the category "Best Other Open Source CMS"! (other means non-PHP)
See the full list of finalists here:
http://www.packtpub.com/2007-open-source-cms-award-finalists
Its very exciting to be among the finalists and its all thanks to your nominations!
Now we need your vote again since the first round of voting was just nominations, so please go and vote for mojoPortal, it would be wonderful to actually win in this category!

Voting ends October 26, 2007
Monday, August 27, 2007 2:17:12 PM
I'm happy to announce the release of mojoPortal 2.2.3.6, its available now on the download page.
New This Release:
- Open ID Authentication
- Windows Live ID Authentication
- New Captcha Provider with support for Subkismet Captcha and reCAPTCHA
- Initial Support for XStandard editor (requires free browser plugin)
- New Swedish Translation by Christian Fredh
- 2 new Right To Left skins contributed by A.Samarian
As always, be sure and backup both your database and your site before doing an upgrade, see additional upgrade tips here. Please post in the forums if you have any difficulties.