I had a large company that wanted to buy a copy of PainlessSVN. They have a very convoluted buying process. I was down to the last step, which was to send an invoice. Here's where things broke down...
I had initiated a purchase order process through FastSpring. Unfortunately, this customers pays using SWIFT transfers, which FastSpring doesn't handle at this time. This meant that the purchase order and invoices that I had sent would not work for this customer. They needed an invoice that was initiated from SystemWidgets, instead of FastSpring.
Enter Zoho Apps. I had created an account with them early this year, but had totally forgotten about it. I signed up for their free account. I went and looked, and lo and behold, they now have an invoicing app. I setup the info in about 2 minutes. Then took me about another 2 minutes to setup the invoice. That was mostly because I had to hunt down the billing address for the customer, and also enter information on PainlessSVN itself.
So total time from login to sent invoice: 4 minutes. I'm impressed!
Zoho Apps has a bunch other web applications that I didn't notice before. Time to explore!
I had somebody ask me for specs on Twitter about the modules that I would like to see. I call this list the Micro Independent Software Vendor (mISV) pack.
I don't have the time to create something like this, but I do know that there is serious interest in having an integrated solution like I outline below.
Customer Licensing Center
- Gives the ability for customers to see what licenses they currently own
- Allows admins to import sales/licensing information from external license tracker systems.
- Allows admins to match imported customers to existing accounts, or create new ones.
License Dispenser for DNN Portal
- Allows admins to setup a license dispensing system, either custom or 3rd party liscening schemes.
- Allows admins to do online activation of their software.
- Integrates with gateways like FastSpring, Plimus, eBay, and Google Checkout.
- Integrates with customer licensing center.
Opt-In Email Marketing
- Allows admins to send reminders to customers for any expiring license subscriptions.
I think this can be already be done with DataSprings Opt In Email module.
- Allows admins to integrate with their DotNetNuke portal
- Allows integration with their current version control system
There are many good stand-alone web products in this category, but I find it infuriating having to send customers to a separate web app. Heck, even a module that has the basic functions in DNN would be welcome. I created a prototype that would read tickets from JIRA. Unfortunately, I don't have the code anymore.
- Allows admins to integrate with their DotNetNuke portal
- Allows integration with the ticket/case system, and the licensing center.
Again, there are many good web and desktop solutions, but I want to see this in my DotNetNuke portal. I REALLY hate sending customers to a separate web app for this.
Robust KB App
I have found that I like InstantKB.NET a whole lot. I would love to have this integrated with DotNetNuke as well. My dream scenario would be integrate with a forum, where there would be a button for "Create KB Article" which would copy the contents of the thread and start a new article.
I've had several catastrophic hardware failures in a row, which have crippled my ability to work on any of my projects. So here's what happened...
About 3 weeks ago, the in-house email server power supply failed. The ball bearing on the main fan gave out. I replaced the power supply, but then the server did not boot up. I went and replaced the motherboard. No dice again. At this point, I just gave up and moved the different email domains into Google Apps. So the email stuff is working again, except for the SMTP parts. Google Apps SMTP is a giant pain in the ass, and I haven't been able to get that to work at all.
The second failure happened when I was trying to recover the data in the hard drives for the email server. I had SQL Server 2008 running there, so I needed to get the database files off them. I was in the process of plugging the hard drives, one at a time, into my workstation, when I accidently dropped the workstation case. This killed the boot drive and a few of other drives. By kill, I mean that the platters were turned to shards, totally unrecoverable.
My code is safe as I had backups of that, and the repositories are on a Subversion server in my LAN. However my development environment is a total loss. All of my virtual images are gone, and so are my local Subversion working copies. I had the vitrual images in a separate drive, and the working copies in another drive. Both of these drives also failed.
I'm still trying to sort through what drives are working and which ones are not. I bought a new boot drive and installed Windows 7 Ultimate, so that I could at least browse the Internet and email at home.
I decided to just hold off on recreating my development environment, until we move into our new house. The house is supposed to be finished this Friday, September 4th. I will be getting my own office, and hopefully a new workstation. We are getting the tax credit for new home buyers, but most of it is going to be used for new furniture, since all of our stuff is over 15 years old.
It may not be until October 2009, before I can get my development environment up to speed. I will know more, after September 10th, which is the day we are supposed to be getting the keys for the new house.
I'm developing against PainlessSVN. There are a lot of things happening, and I had to slow down work on PainlessSVN. So here's a list of things that have been happening:
1) The house that my family and I were renting went on short sale, and we had to move out immediately. This created chaos for a short time, but it caused enough disruption that I had to stop work on everything.
2) The new rental does not have central air cooling. This made the house very uncomfortable. It was so hot inside that we ended up just sitting outside at night, until it was cool enough to go to sleep. We finally got 3 window units, and we can now live in the house during the day.
3) We signed up to have a new house built for us. This house is currently under construction, and it is scheduled to be completed at the end of August of this year. This is going to cause more disruptions very soon, as we will have to move, yet again. Thankfully, this will be the last move for us in the foreseeable future. I will finally have my own office, and will be able to concentrate back on the business of creating and updating great software.
4) While working on the PainlessSVN code, I realized that I could make it more intuitive if I did some structural changes to the UI. These changes, while pushing back the release of 1.1, will make it much easier to add new features to PainlessSVN. I will talk about these changes in a separate blog post.
Microsoft announced Windows Server 2008 Foundation. It seems that Microsoft is feeling the pressure from Linux and other free operating systems, and decided to go with a lower priced server offering.
Personally, I think this is an excellent idea. This will help mISV, like me, to get Windows Server. There are a lot of entry-level servers under $500. Why should we pay the same amount or more for the OS? That's why Linux has been trumping Windows in the server room.
Official Press Release
Windows Server 2008 Foundation Home Page
I have been working with Ken White over at FastSpring to setup a payment gateway and online store. I'm happy to say that this is finally done. I just finished the last bit on their side and hooked it up with my site today.
I'm hoping to have the part on my website done by Monday. The store link is already wired up, but I will not show it to the public until I get PainlessSVN working with the new license settings. The only thing left on my site is to wire up the buy buttons to the new URLs.
My current eCommerce system has been a total failure. I've been watching it with Clicky, and noticed that a lot of people were trying to buy, but couldn't. This is no good, so I decided to take it down today.
This was basically a half-assed system. I took a DNN module and integrated the licensing system with custom code. The main issues that I had were that I could not change the fields that were requested to something more reasonable. Also a lot of people were confused by its navigation. I'm yanking it today, rather than allow it to create even more frustration for me and potential customer.
I'm going to try my hand with FastSpring. Hopefully, this will allow me to outsource this part of my business. This will allow me to concentrate on making my products better, and not having to fiddle with stuff that I'm not familiar with. One feature that I'm looking forward to, is the ability to allow potential customers to pay in their own currency.
I'm going to be resetting the 30 day trial for PainlessSVN 1.1, so everybody will get another 30 days to play with it.
Frustrating, but good learning experience.
Springville, UT : September 6, 2006 - SystemWidgets is happy to announce the release of the first version of PainlessSVN Professional.
This is the first commercial product targeted specifically for Subversion repositories served with the svnserve custom server on the Windows Operating System. It is a Microsoft Management Console (MMC) version 3.0 snap-in. This makes the Subversion server a first-class Windows citizen.
Headquartered in Springville, Utah., SystemWidgets is a software development company offering custom solutions focused around the Microsoft .NET Framework. SystemWidgets also produces several free utilities to help IS people manage their day to day activities. The SystemWidgets product line offers proven solutions for small and medium-sized businesses.
For more information, please visit http://www.systemwidgets.com
Hector Sosa, Jr
I've been coding quite a bit in the last few days. I finally got the licensing bit from Infralution working correctly. I had to create a custom license generator for Infralution that would work for both the application and as part of ActivePurchase.
It took me a while to figure out that I couldn't just use the source code classes from the licensing system. It was expecting a specific signature from an assembly. Once I added a reference to this assembly, then the custom Infralution key generator started working perfectly. All in all, I spent less time than what I had scheduled in my FogBugz (free version) case. What can I say? I'm a horrible estimator!
I decided to use a new PayPal account for the payment processor. I was previously using my personal PayPal account, but decided to make my life easier and got me a PayPal Business account. I just verified all the bits, so this is ready to go.
My last bit of work now, is to create a custom step in ActivePurchase that will generate the key, then email it to the customer. Thankfully, I have experience writing modules for DotNetNuke, and I had already translated a VB.NET custom step sample provided by Will to C#. So, I'm not going in totally blind.
It looks like I'm going to make my early September release after all. Maybe even September 6.
I'm disappointed with Eziriz's tech support of late. I have been trying to contact them for about 3 weeks now. At first, I thought they were ignoring me. I decided to give them the benefit of the doubt when I read the thread called "Anybody home at Plimus?" on the Business Of Software forums at Joel On Software.
Basically, the thread talks about Plimus' email support probably having their spam filters too aggressive and eating a LOT of their emails. Several posters mentioned that using the online forms works very well. I decided to use the online form at Eziriz's website, but that went into a black hole as well.
What is frustrating about the whole thing is the total lack of non-communication. Nothing, zip, zilch, nada, not even an email saying that they got any of my emails. I don't think I've been a bad customer. I now know that MMC 3.0 snapins are a major pain to protect, because it constantly breaks .NET Reactor. Heck, even a "You are a customer that drains our support time, and unprofitable" is much better than this total silence. At least then, I would know where I stand and could take my business elsewhere.
PainlessSVN has been delayed because of this. I have a significant issue with the protected assembly not working on Windows 2003 Server Standard Edition. I'm in a bind, because my budget for protection tools is gone. I'm stuck with .NET Reactor. I does work very well for non-MMC snapins, though. I haven't had any problems with any of the other utilities I protected with it.
So Eziriz now falls in the disappointing category of very good product, with abysmal tech support.