Welcome To My Web Site!

I'm a Software Developer and Musician living in Charlotte, North Carolina.  I've created this site as a means to share my passions for Software Development and Music.  I consider myself one of the lucky few who really enjoy their work.

Since August 2004, most of my spare time has been spent working on mojoPortal, an open source web site framework and content management system written in C# that runs on Windows with .NET or Mac/Linux with Mono. In October 2006, I started my own business, Source Tree Solutions, LLC to offer development, hosting, and support services for mojoPortal based web sites and applications. (Hire Me) This site is  running on mojoPortal 

Cross Platform .NET Development with Mono and MySQL

what was i thinking...

For a Developer a Fast New Machine is Bliss 

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.

Share This Using Popular Bookmarking Services

PayPal sandbox doesn't work 

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.

Share This Using Popular Bookmarking Services

I Can't Resist I'm Gonna Get a 3g iPhone 

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

Share This Using Popular Bookmarking Services

Imeem Social Playlist Sharing - Mix Tapes for the Web 2.0 Generation 

Saturday, April 19, 2008 6:30:00 PM

I had not looked at Imeem.com in quite while, once upon a time it was mostly about groups and the convenience of a chat client that worked across services. Now its something totally cooler. You can create playlists and share them not only on the imeem site but on other social networking sites like Facebook or even embed them into your own site.

 

 

Wicked Cool!

Share This Using Popular Bookmarking Services

Software Wars Poster 

Friday, April 04, 2008 5:20:13 PM

Great post today on the Microsoft Port 25 blog. Very entertaining graphic about the "software wars"!

Software Wars poster

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.

 

 

Share This Using Popular Bookmarking Services

Yahoo Media Player - Sweet and Easy 

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.

Yahoo Media Player automatically adds play buttons

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.

Share This Using Popular Bookmarking Services

No More Treadmills for Me 

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.

A hiking trail near my house.

Share This Using Popular Bookmarking Services

Showcasing mojoPortal at the 2008 MySQL Conference and Expo 

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.

Share This Using Popular Bookmarking Services

mojoPortal is a Finalist in the 2007 Open Source CMS Awards - we need your vote! 

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

Share This Using Popular Bookmarking Services

mojoPortal 2.2.3.6 Released 

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.

 

Share This Using Popular Bookmarking Services
Copyright 2003-2005 Joe Audette
Donate Money to support the mojoPortal Project. View Joe Audette's profile on LinkedIn View Joe Audette's profile on The Guild of Accessible Web Designers site