Free version available
Magnifying Glass

Blog archive for April, 2009

Syndicated Posts

FaceBook

Twitter

  • #financialconfession of the day: "I get really annoyed when my friends spend frivolously and then complain about... http://fb.me/I1qhJW4p 4 days ago
  • "Bye Bye Quicken Online, Hello Mint!" by Jay Monee on Budgets Are Sexy - "PocketSmith: This big pull with these... http://fb.me/EuooR2LH 1 week ago
  • "Too many people spend money they haven't earned, to buy things they don't want, to impress people they don't like." Will Smith #quote 1 week ago
  • More updates...

The sneaky limits of Gmail and how it affected our application

Wednesday, April 29th, 2009 by James

So we got featured on LifeHacker today, giving us a sudden surge of users. As we opened up the beta program around two weeks ago (with intentionally low fan-fare) we now have a massive number of new users. Welcome to you all!

One thing that sprung forth was one big hole in our existing production stack – which were relatively quickly fixed, however the VPS solution is definitely now showing its weak points. Pleased to say however that we are about to move to dedicated hardware with our movement out of beta and into full-release mode (occurring within the next 4 or so days), which from our tests is going to blow the current speeds out of the water.

The one thing we weren’t expecting is that no emails have been sent since 10:04am this morning. It transpires that Gmail doesn’t allow anymore mail to be sent from an account past the 500 mark (http://mail.google.com/support/bin/answer.py?hl=en&answer=22839). Thats a lot of users without activation emails.

So we are currently working on solutions to the mail problem for an ongoing basis for circumstances where the app needs to send thousands of emails in a day.

We do have a solution for the missing activation emails however – we will be getting these out to everyone who is owed one within the next 16 hours. However you can still log into PocketSmith for 24 hours after you have created your account without activating your email address!

Again, welcome to our new users, and thank you for putting the app and the server through its paces!

What Agile Actually Means – Goodbye to “Version 2 coming soon!”

Wednesday, April 8th, 2009 by James

One of the real highlights about the journey of building PocketSmith has been seeing the application flourish and adapt. We are constantly working on the application here, tweaking it and bringing it up to the standard that we have set for our public release of the application.

This can only occur because of the way that we have approached the business and the application. We have not once sat there and built a feature ‘to spec’. We have allowed each component of the application to grow naturally, and change incrementally over time.

What this means is that there will never be a ‘Version 2 coming soon!’ for PocketSmith. The application will always undergo adjustments, and our user community is an important part of this metamorphosis. We would never want to increase the distance between the application and our userbase. Especially to the extent that we sequester ourselves and build ‘a new version’ without releasing incremental changes to users to actually experience and test the bits we are building.

Sure this is easy to say at the stage of our business that we are in at the moment, however I would like to think that we will always have fast-to-market methodologies as the application grows. Quick releases is what PocketSmith is built on, and I hope that this does not have to change anytime soon.

I felt all inspired to write this post because of the incredible progress we have been making on user experience and functionality standpoints in the past ten days. I am really looking forward to the next deployment so you can all take a look – it is awesome.

PocketSmith beta invitations on eBay…

Thursday, April 2nd, 2009 by Francois

What a surprise when I found out that someone is selling PocketSmith beta invitations on eBay!

Actually this person is selling invitations to a dozen of web applications for a price tag of US$10 on average (Free shipping ;) Well, if you are keen on giving a try to PocketSmith, we would be more than happy to send you an invitation FOR FREE (and for real!)

From this story, I would like to raise a few questions that come to my mind:

  • Do you think this person is damaging PocketSmith’s reputation or on the contrary that his/her action is helping to promote our product?
  • Do you consider this person as being clever or do you think he/she is being sneaky?
  • Do you think startups should try to ‘control’ their image on Internet?

Please feel free to engage a conversation and give your opinion on this story :)

Cleaning up nasty body onload events using Prototype

Thursday, April 2nd, 2009 by James

I have another solid geek post on load balancing in Rails brewing, but for the moment I’ll quickly document a change that I have just made.

PocketSmith logs people out after a set period of time – currently 30 minutes. When this occurs, an overlay pops up over the screen notifying the user that they have been logged out. In order to get this out the door as quickly as possible a couple of months back, we hastily placed the code that performed this business in the body tag, using crusty onloads / onmousedown events, ala:

<body onkeydown="resetTimeout();" onmousedown='resetTimeout();' onload="timeoutObject=setTimeout('notifyLogout()',timePeriod);">

Now we’ve just switched over to use the (relatively less naughty, but still should be more unobtrusive) Prototype Event.observe functions to perform exactly the same thing. The below code is in a script tag at the end of each page.

<script type="text/javascript">
Event.observe(window, 'load', function() {
    timeoutObject = setTimeout('notifyLogout();',timePeriod);
    Event.observe(document, "keypress", function() {
        resetTimeout();
    });
    Event.observe(document, "click", function(){
        resetTimeout();
    });
});
</script>

This means that the onload has been replaced with Event.observe(window, ‘load’, function() {your_functions_here}, and the onkeydown / onmousedown has been replaced with the Event.observe(document, “keypress”, function() {your_functions_here} and Event.observe(document, “click”, function(){your_functions_here}.

So now, we have nice and clean <body> tags again. Hoorah!