Archive for the 'Stuffed Tracker' Category

Stuffed Tracker art concept

We in Stuffed Guys are lucky to be working with an outstanding designer nickoose. He is the person who have originally come up with an idea to physically create a real stuffed doll for our new site that he was designing in 2005. That doll is mr. Stuffed, you can see him in our official logo and in the header of this blog (by the way, the image in the header of this blog is not computer-generated if you were wondering, it’s a photo of a real custom-made doll in custom-made clothes).

Well, nickoose strikes again! This time with the main art concept for the new Stuffed Tracker site which we’ve launched several weeks ago. Here it is:

Stuffed Tracker Art

The main ideas:

  1. A tree — is your site.
  2. You cherish the tree and water it; and look how it grows every day.
  3. The magnifying glass is of course Stuffed Tracker itself. You use it to carefully examine the tree (your site) in order to understand how to grow it faster and keep it healthy.

The tree can as well be your advertising campaign which you analyze with Stuffed Tracker :)

I think the concept and the art are just amazing.

Stuffed Tracker helps in unexpected way

While examining the most frequently used keywords on Google which were used to arrive to this blog (as reported by our own Stuffed Tracker, of course), Ivan has discovered that lots of them are related to porn for some reason. That was strange, since this blog has nothing to do with porn in any way, so we started investigating.

It turned out that WordPress which powers this blog had an unfortunate security hole in one of the previous versions which allowed anyone to modify already existing posts via XML-RPC interface. Our version was newer that the one that was affected, but apparently someone managed to use this exploit on our blog while we still used the older unprotected version of the blog software. So we had links to porn sites in a hidden layer on the front page in the latest 5-6 posts, they were indexed by Google and we got first places on some specific porn-related searches.

The amusing thing is that the people who modified the posts kept the original posts untouched (thank you very much!) and just added their hidden HTML in the end (yeah, I know they did it to stay unnoticed, but still that was good of them). Getting rid of this stuff was trivial of course.

And Stuffed Tracker saved the day!

BTW, we’ve launched a completely new stand-alone site for the new 3rd generation of Stuffed Tracker not long ago.

Three

Vista disk activity again

Apparently, lots of people have trouble with Vista doing something with their hard drive all the time. My previous post about this gets quite a lot of hits from Google.

Here are the top keywords for this week:

vista.keywords.png

Stuffed Tracking

Apparently, there is a new term “stuffed tracking” now:

Major milestone for Stuffed Tracker

We’ve finally released the long-awaited version of Stuffed Tracker with reports caching.

Ivan actually started to work on caching back in February or January 2006 (don’t remember exactly now). So it took a really long time to finish as you can see (though Ivan has been constantly distracted by other internal projects).

I really like the end result. We’ve managed to combine the idea of static reports which are updated continuously on the side of the server with our fancy dynamic reports constructor.

To be honest, it wasn’t clear for us how to pull this off with the reports constructor still being present in the product (and it is the main way to work with the aggregated statistics in Stuffed Tracker). But after a 2-month testing period of the new version on our client’s server with a tracking database close to 1Gb in size, I can now safely say that the new caching feature works great and it does solve the “slow reports” problem that any statistical software is plagued with by definition.

Working with the tracker that has to make queries in a 1Gb MySQL database is now fast and convenient (with caching enabled of course).

We’ve even introduced a so called “smart caching” feature. With this feature enabled Stuffed Tracker constantly analyzes how long it took to prepare each report and displays fast reports in real time and slow reports through the caching feature. This effectively means that you can enable smart caching and as soon as some of your reports will become too slow to generate they will be cached, while the others, which are still fast, will still display in real time.

With caching problem gone, we now have only two major problems that have to be solved:

  1. Complete deleting of the old data (probably, this will include automatic deleting via cron script) — to solve the problem that the database grows too big and doesn’t fit into the accounts of some of our clients.
  2. Archiving of the old data — this one should obviously come together with complete deleting, because it’s not good to just lose the data completely, even if it’s old.

These 2 problems are much easier to solve then caching and I am thinking that at the very beginning of the next year we will get rid of them.

This all means that we are finally reaching the stage in the Stuffed Tracker development when we will start to add tons of new exciting features instead of just solving the current problems.

Hard work of product support

Doing support for a product is usually a pleasant job. You help great people to understand your great product better.

But, unfortunately, this is not always the case. Sometimes you get an aggressive person on the other side of the email communication pipeline that doesn’t trust you from the start. Whatever you will say to such person, he will turn against you. Oh, and he will also try to say the last word.

We are lucky that we haven’t met such people in 10 months during which the new re-launched version of Stuffed Tracker is on the market. But everything happens some day. And such person just ruined my whole day today.

That’s actually the hard part of the support job. You can’t get angry on the client, whatever he says to you or however aggressive he is. Your job is to kindly show why the person is wrong. That’s what I did today, although I feel very bad right now (you know when somebody says something very unfair to you and you can’t open the person’s eyes — he just doesn’t listen to you).

I am sure, good support service should always be polite and kind. That’s the key. This can often even save the situation. But not this time. Oh well.

Adwords is not good for software developers?

I recently had an email conversation with our client who is using Stuffed Tracker to track effectiveness of his advertising. The client’s company is selling web software just as we do. He complained that he can’t make his adwords campaigns generate him sales.

And we have exactly the same problem! Traffic from Adwords seems to be of less quality for us compared to other advertising sources.

What’s the reason for this? Maybe software developers are not good at writing short text creatives and buying the right words? Or, maybe the majority of the people clicking on adwords are not looking to purchase the software?

What’s up with Stuffed Tracker

The last version of Stuffed Tracker was released in the beginning of January 2006. So it’s been 2 months without new versions which is unusual for us (we try to release a new version every month).

But there is nothing to worry about. Ivan, the main developer of Stuffed Tracker, had to take some time off to help with implementing the new interface for Factory Nova and also do some custom development work for our friends from Florida.

He is now back to work on the next version of Stuffed Tracker, but we still don’t expect it to be released at least for another month. I’ll explain why.

The time has come for us to focus on Stuffed Tracker’s perfomance. Don’t get me wrong, even before we’ve released the initial 2.0 version we’ve optimized the speed of the code and the database to the maximum. But as it appears this is still not enough.

Working with statistical data (collecting & analyzing) is one of the hardest tasks in web software development and only because the amounts of data could get huge when popular sites are tracked or you are tracking tens of thousands of keywords on Google (or more). With such volumes you can easily get millions of records in the stats database in just several days and much much more after a month or two of tracking.

Really, everyone has the same problem here. I am still waiting for my invitation to Google Analytics although I signed up for it a week or two after Google launched the service.

So, again, making the database to query a set of data which contains tens of millions of records in real time will be a challenge even if you are doing this on a dedicated server with 2 Xeon processors and 4 Gb of memory.

How can we solve the problem, we were thinking. And eventually we’ve come up with several ideas that we think should work:

1. No real time reports (as an option) — the reports will be prepared by a cron script and a user will view an already prepared report which will load fast and the loading time would not depend on the amount of statistics that you have in the database. This feature is especially challenging because of the dynamic nature of our reports constructor, but we think we know how to solve this.

2. Delayed tracking (as an option) — tracking will get rid of all of its current logic (which currently does mutliple requests in the database, thus increasing its load), it will brainlessly log every tracking request somewhere and then a cron script will process this log and will put the data in the proper database tables, apply required logic, etc.

3. Archiving of the old statistics — we are planning to make it possible to archive the old statistics in some form so that you will be able to view the archives later and delete the data that was already archived to free up the database and increase the overall performance of Stuffed Tracker. It would probably be possible to optionally do this via a shell PHP script (especially important when working with huge databases where a normal PHP script accessed through the web could timeout).

4. AJAX in the reports — to make the reports more responsive, convenient and generally to ease the pain of waiting for the slow reports in case we will still have them somewhere.

As you can probably imagine, these ideas are not fast to implement, but we are confident we need to do them before we will move forward with any other features. This will be a strong foundation for Stuffed Tracker on top of which we will be adding new features and functionality in the future.

Full path of a visitor in a feedback form

We’ve just implemented an interesting custom modification for Stuffed Tracker for one of our clients. The idea came from the client and I think it is interesting enough to be described here.

The story.

The client has a form on his site which is submitted by potential customers. The form is quite general, it basically asks for customer’s contact information. Traffic on the site on which the form is located is tracked with Stuffed Tracker.

The client asked us to implement a functionality which will allow the form handling script to get the full path of the visitor and send it in the email along with other information from the form. With some simple Javascript magic combined with a specially written PHP code we’ve implemented a solution for this.

So now our client can see a full path of a potential customer on the site: where he/she came from, what actions he/she has performed etc. And all this — in the email with other information from the submitted form.

Useful stuff!

In other news.

You wouldn’t believe this, but the release of the beta version of Factory Nova is still planned for the end of February. I think this is the first time I am reconfirming a release date for Factory Nova (which probably means that we are really close to completing it).

Just an hour ago I’ve completed support for a “code” tag in FN, which is meant to be used to insert any type of code in the task description, task comment, discussions, etc. It even has syntax highlighting for PHP sources.

Support for code in comments in Factory Nova