Skip to content

Keyword dense page names which are no longer relavant

Last week I setup a new shop site and copied over my existing product from my old site, as the new site had a better domain name. So I then decided to put some different products on my old site.

So I now have an old site with PR2 on the front page (which is obviously a good start and extremely useful), but I also have several pages which have keyword dense page names, have PR1 etc, which hold no relevance to the products I’m now going to add.

At the moment this “lost pages” just show a link to a missing product. I guess when I add the new products this will show a new / unrelated product.

Is this OK?

is it the best use of such a lost page?

And ideas?

by JM

Tagged

Keep Nagging For a Purchase

When I first thought about selling shareware I read all sorts of different advice about how to encourage people to purchase. The problem was that lots of advice conflicted.

One piece of advice I got was never to stop people using the software package, i.e. don’t have a trial period. Let them use it forever – maybe one day they’ll decide to buy! This is a Winzip kind of scheme – but it hasn’t made me purchase Winzip after 3 1/2 years of seeing the nag screen.

The same people who made me paranoid about unlock codes made me paranoid about the Winzip scheme.

In the end I went for a trial period with a nag dialog showing when the package starts. The nag dialog serves 2 purposes – it lets people know I’d like them to purchase and it also lets them know how long they’ve got left on the free trial.

I’ve since read that the best strategy is to nag more often, e.g. when the package is closed as well as when it starts. I’ve also read that long trial periods are useless – if people buy they usually do so within a day or two. I did have a trial period of 60 days initially and found that a fair few people – 50%? – actually waited the whole 60 days before buying so I’m not sure this advice is good.

Any thoughts?

by ML

Tagged ,

Improving Shareware Unlock Code Mechanisms

On my software I initially had an unlock code scheme where the user’s email address was used to generate an unlock code. The user entered their email address and unlock code into the software’s registration dialog and bingo they were up and running.

I then became a bit paranoid about people sharing unlock codes. The situation really is that other people became paranoid for me and thought I should tighten things up. In the second version of the software I switched to a code that was generated using specific features of the user’s PC. A different unlock code was then used for each PC. I knew this was unadvisable but went ahead and did it.

The inevitable has now happened of course: when users change PCs they need a new code and email me. As the user base grows this is getting somewhat tiresome.

The other aspect that make this scheme undesirable is that whenever anyone asks for a new unlock code, I almost always give them one. There’s no way I can distinguish between a genuine PC change and the user wanting to run a second copy. In any case, if someone wants to run a second copy I’ve no problem giving them a code – I just don’t want them sharing codes with their friends.

I can easily change the software unlock mechanism in a future release and make it backward compatible with the present method. Question is: what’s the best thing to do?

by ML

Examples of Searchworthy Categories

Back in the post Searchworthy Categories I talked about having other categories that had a better chance of matching keywords people actually search for on Google etc.

A lot of shareware sites these days seem to have moved past the top level Business, Audio & Multimedia, Desktop categories and they now include other major categories that reflect what people tend to look for online.

To illustrate what I mean, I’ve added 3 new categories over at SoftwareLode Free DVD Software, Free Photo Software and Free MP3 Software. Clicking on these links lists all related software with those keywords in the PAD file. The titles of the pages also match the search term, as do the page URLs. Hopefully, in time, these pages will do well in searches.

To see what I mean about search volumes for these terms, try looking at “Free DVD Software” etc. using Wordtracker.

by ML

Tagged

Simple way of comparing field values

This post is a response to http://blog.softtester.com/index.php/2008/06/whats-the-best-to-stop-duplicate-data-being-added-in-an-update-query/.

There are many ways to skin a cat but the first idea that springs to mind is to use the Dictionary class in the .Net runtime. The field names can be the keys and the field values will be the values associated with the keys. Using a dictionary might avoid the need to write any classes to handle field names and values.

You can leave the value type in the Dictionary as object and then use the “is” operator to determine whether the value is a string or an int before processing it.

by ML

Whats the best to stop existing data being added in an update query?

This probably isn’t what you think, but I couldn’t think of an accurate title. I use and INSERT query at the start of my process then an UPDATE query later on. I need to reduce the size of my UPDATE query by stopping it from updating data I already have in my record.

When I say best, I guess I mean quickest to code, least bugs.

I know in dotnet theres datatables and functionality to create SQL statement. But I’m not very familiar with those.

So instead I could :-

A) Use my my existing table class and set the properties in a second instance of the class, just to save the data till later. I could then pass this instance into a comparison function. I think I might have to write this function myself as I’m not aware of any inbuilt dotnet property comparison functionality.

B) I could write something which analyses the actual queries and gain the data from each and make the comparison.

C) I could create an array where I have a structure with two values field name and value, then do the comparison and assignments to it.

Thoughts?

High quality fashion jewellery at a reasonable price!

by JM

MySQL Query Performance Improvements

SoftTester uses a program written in VB.Net to perform all of the transactions. At the moment.t this runs during the night. In the last few months is undergone some big changes moving from MS Access offline with My SQL, to completely with MySQL.

Obviously when I did this conversion I had to do it in stages and leave tweaks till last after things settled down.

The next thing I need to do is query tweaks to improve the performance of the program and the MySQL process on the web server. Then I can do more with the program and hopefully convince my ISP that the program is fast enough to run during the day OR as he prefers in realtime.

Following a conversation with my ISP about the queries the program uses, I thought i’d share the I’d share the bigger picture.

Try to avoid text searches, use number / indexes fields.
When you have to use text searches try to include another clause to cut down that amount of records that the database has to look at to provide results.

This is a problem for me as I search on pad url as it is unique. I don’t have any other data which is unique.

Next, instead of having big update queires which update fields which are already up-to-date, store the data in variables or some sort of structure and produce a smaller update query.

Then I have in my main table what I call a locking flag. This allows me to gain the key value after the record is added. Instead I can do a Max on key field plus one, then I have the record key id. Oh of course I use auto num.

Its a start but I’m hopeful these will make a big difference

by JM

Missing Images

I´ve worked out I´m missing 5000 screen shots.

I´m not sure what to do for the best.
I´m not polling at all at the moment, I haven´t been since the start of the year.
I´m waiting to get my updater program more resource friendly before I add it.

So theres no way some of these files will ever get updated.

My options are :-

A) To get the files offline via a little program I could knock up, but this may mean some data is out-of-date, with a new image

B) I could send my updater 5000 transactional emails, that the way it works at the moment, however the updater program only runs at night and does 100 hour.
However this would take 50 days, not including transactional emails.

I guess thinking about it I´ve answered my own question, maybe I´m best off improving my program making it a lot more resource friendly and to turn on polling, but make the 5000 first.

Question is how to make it faster and more resource friendly.

High quality fashion jewellery at a reasonable price!

by JM

Tagged

Writing Help files for software products

For help, I’ve stuck with the CHM format. It does what I need and is easy to integrate with a .Net application. I must admit though I haven’t spent time investigating alternatives and I’ve just gone with what I know about.

I used to find the process of developing a CHM a bit laborious. I’d use Microsoft FrontPage to generate HTML pages and then use the Microsoft Help Compiler to turn them into a CHM. There were always index files etc. to edit in Notepad. The process wasn’t really diffcult, just a bit lengthy. I tend to put pictures into my help files too and maintaining help pictures with overlayed text and pointers in something like Paint .Net is a bit tedious.

Nowadays I use a package called Help & Manual (www.helpandmanual.com). This is a superb, well-rounded package that allows you to write WYSIWYG help in a Microsoft Word like way. Help & Manual also invokes the Help Compiler for you behind the scenes and there are no independent text files with weird formats to edit.

Help & Manual also includes its own image editor that allows you to easily write text and pointers/ arrows in different layers. When screenshots change, all you need do is update the background image and the text and pointers can be reused. This saves me hours and hours of time.

The other thing I like about Help & Manual is that you can generate output in different formats just by making a simple selection from a dropdown.

For example you can generate a PDF document of your help file. This can then be placed on your website for download or made available to users in printed form.

The other output format I use Help & Manual to generate is HTML help. I upload this to my website and it adds about 90 pages to my site – all full of good keywords relating to my applications. Google is also meant to prefer bigger sites so the extra pages might help me look bigger and more information heavy.

Within Help & Manual you can specify common headers for different output formats. For the HTML help I make sure each page links back to the homepage of my site. I also add links in the footer of each help page so that if the help pages are landing pages, a visitor can find their way to the main part of my site.

by ML

Tagged

New name for IdeasPad

I wouldn’t worry too much about coming up with a name that people search for – you can always write text and titles on your website that steer people to your product anyway.

I had a think of some names and looked for products with those naes on Google.  I came across some possible competing products and websites. I’m note sure if you come across these before but the sites look good and might give you some ideas:

  • MyNotes – www dot mynotes dot com
  • NoteKeeper – www dot mynoteskeeper dot com
  • MyNotesCenter – www dot mynotescenter dot com
  • MyJotter – www dot myjotter dot com

by ML

Tagged , ,