Below follows a copy of an email I sent Shaun Inman three days ago. No reply yet.
Remember me? I told you off some months ago for having poorly designed cookies in Mint. I criticised that you did not set the cookie path to Mint‘s installation path instead of doing it site wide. You have later fixed this, and I appreciate that.
Well, I want to criticise you some more. (Lucky you.) This time I want you to speed up the cookies sent to and from the server/Mint and the user.
Look at the MintUnique-line of cookies:
MintUnique=#
MintUniqueHour=#
MintUniqueDay=#
MintUniqueMonth=#Each with a complete cookie instruction set (expires date, path, domain, secured, …)
Why have you not combined these into one cookie? That would speedup things considerably. You would need to redo how cookies are processed, but that is as easy as regular expressions. Imagine this cookie instead:
MintAnalysis=visits:1#hour:#;day:#;month:#;add-ons:value;
That would reduce the number of instruction sets to one, and shave of quite a few bytes on every request. The naming also makes it clearer for users who are inspecting incoming and outgoing cookies what the cookie is for (usage analysis).
You could reduce the cookie even more by combining hour day, and month key/value pairs into one unique number or a date. Or simply use one unique number for the first hour and set a plus sign and a number to add to get more unique numbers. (say hour:4567;day:+1;month:+2; which would be equals of hour:4567;day:4568;month:4569;)
This improved cookie handling would speed up Mint, and you could slap out a new and faster release. (Version 3, which you could charge for.)
I can offer cheap coding help if needed.
Want some speedier Mints? Fix the cookies!