Showing posts with label partychapp. Show all posts
Showing posts with label partychapp. Show all posts

Thursday, November 10, 2011

Changes afoot: Partychat moving to a new home


There are some changes coming to Partychat over the next few days, and while we hope they won’t have too big an impact on you, we wanted to explain what’s happening.

When Partychat was born, it ran on an ancient desktop in my living room. Two years ago, we moved it over to Google’s App Engine, which made Partychat much more stable and allowed us to add new features more easily. (In case you're not a programmer, App Engine is a platform that allows users to build web apps using Google's infrastructure). App Engine provides a certain amount of resources for free, and at the time, Partychat was small enough that we didn’t have to pay anything. Over time we’ve grown and in recent months we’ve been paying a bit more than $2 per day in fees to run the service.


Recently, Google decided to change their pricing model for App Engine, making Partychat significantly more expensive to operate. In fact, their initially announced prices would have caused Partychat to cost $250 per day at current usage levels (and mind you, we’ve doubled in size over the last 9 months). Google later revised these prices to a more reasonable level, but we would still be paying $25 per day under the new pricing model. $25 may not sound like a lot, but that’s $9,000 per year—and we’re committed to keeping Partychat free, with no advertising, so we literally have no source of revenue other than our own pockets and your kind donations.

We had hoped Google would change its mind yet again and lower prices further, to a sustainable level for us, but that hasn’t happened, and the new prices went into effect this Monday. So we’ve been forced to move Partychat over to Amazon’s Elastic Cloud Computing platform, where we calculate that we can run the service for less than what we were paying even before App Engine’s pricing change*.


As sad as we are to be leaving App Engine, this migration has an upside for us (aside from the savings) in that we’ll finally be able to move Partychat rooms to our custom partych.at domain. In fact, this should be the biggest change you’ll see as part of the migration: Instead of chatting with rooms in partychapp.appspot.com, you’ll now be chatting with them in partych.at. Your room state (members, aliases, ++points, etc.) will stay the same**.

We’ll be embarking on the migration sometime over the next few days. Please bear with us—we’ll try our best, but we don’t expect this to be a completely flawless transition. A huge, incredible thanks to Vijay who has been doing all the work to make the migration happen. And if you love Partychat as much as we do, consider donating to help it keep running for a long time.

-- Akshay



* During this transition, we've had to suspend rooms with more than 100 participants as these few rooms represent a disproportionately large portion of our costs. We hope to reinstate these rooms soon after we've fully migrated Partychat to EC2 and have everyone else running stably. To help keep future costs under control, we may start adding limitations to the number of people and/or the amount traffic in each room. We’ll be keeping you up to date here in this blog, and via our twitter account: @partychat

** In fact, we’re still using App Engine database for the next few weeks. The price hike was for outgoing XMPP messages, which we will now avoid by sending messages via EC2. We’ll write more about this soon.

Wednesday, August 17, 2011

Status update, and how to donate

Thanks to your help, Partychat has been growing like crazy! In fact, 10,000 people say something in Partychat every day now. We’re ecstatic so many of you find it as useful as we do, and so many of you are using it on a daily basis.

Unfortunately, this crazy awesome level of usage has caused us to exceed App Engine’s free resource quota. We’ve been optimizing to stretch the resources out as far as possible, but as our user base grows (yay!) our costs do too (booo!). Thankfully, users have been offering to contribute for a while, and we’ve finally gotten around to making a standard way for you to help:

Donate to Partychat by clicking here. Payments are processed through Amazon and are used solely to defray our server costs. It now runs us upwards of $15 to run Partychat for a week... almost $800 a year. If you use and value Partychat please contribute!

Side note for developers: I recently migrated the Partychat Google Code repository to git from svn. If you’re working on any changes or patches, be sure to re-sync this repository. (And if you weren’t, remember: patches welcome!). The migration process was a bit confusing, and I’ll be writing a separate blog post on that process soon.

Vijay, for the Partychat team.

Monday, February 21, 2011

More Sharing Features

We've enhanced the /share command to use Embedly for generating titles and descriptions of shared links. For example, this means that tweet text is now rendered inline, saving you a click. For YouTube links to get the video description, saving you from possible rickrolls.

Share bookmarklet

Rooms now also have a share bookmarklet, you can find it in the "Helpful links" section of the web interface.

Share bookmarklet

Finally, the share command can also be hooked up to Google Reader's Send to feature. Just go to the settings page and add a custom link with this template:

Reader "Send to" settings

Wednesday, November 17, 2010

Controlling logging (and FAQs)

To enable commands such as /undo and the search-and-replace feature, Partychat keeps a small log of recent messages said in the room (up to 10 for each member). However, we realize that not everyone wants even this form of limited logging, so we've added a preference on the room's web page (accessible at http://partychapp.appspot.com/room/<room name>) that lets you turn off logging:

Partychat settings

You can also enable and disable logging by using the /togglelogging command in the room itself.

We also added an FAQ about what gets logged (not just by Partychat, but by Gmail and your chat client). We didn't actually have an FAQ until now, so we took this opportunity to also write up some of Partychat's more esoteric features, like the PlusPlusBot. If there's anything else that you find confusing about Partychat, feel free to get in touch (how to do that is...wait for it...also in the FAQ).

Monday, November 08, 2010

Fun with aliases

We've recently loosened up restrictions for aliases, so now nearly any Unicode character can be used in them, even a snowman:.

What you type: /alias ☃
What the room sees: 'frosty' is now known as '☃'

Combined with existing support for Unicode support in messages, this can lead to silliness:

What you type: /me <3s ❄
What the room sees: s ❄

And if you ever wonder who's hiding behind an overly clever alias, you can use the /who command.

What you type: /who ☃
What you get back: ☃ (frosty@gmail.com) (online)

P.S. More usefully, this means that non-Latin alphabet speakers can now use aliases with their preferred character set.

Wednesday, May 19, 2010

Friendlier web interface, /share is back, and more

Here's some recent changes that I've made to Partychat:

  • Make the homepage friendlier (and slightly prettier), especially the room creation form.
  • Improve web-based room management (building on what David started), so that you can join, leave, or request an invitation from the room's web page (here's a sample room for the current developers).
  • Prettify the plusplusbot display in the web UI.
  • Add a /share command that makes it easy to share URLs and give some context.
  • Clean up some data layer issues and fix some inconsistencies.
  • And of course, quite a few bug fixes (nothing like scanning the AppEngine logs looking for NPEs).

/share command

There's also been some recent production issues that have kept me busy. For example, yesterday a user invited room A as a member of room B, and vice-versa. As an unintentional side-effect of a change that I made to make the setup process more user-friendly, it became very easy to set off an infinite loop of messages. By the time I realized what was going on, we'd run out of App Engine bandwidth quota. Thankfully after some budget rejiggering and a some quick code change all was well. Similarly, a couple of weeks ago we had CPU usage issues (though optimizing that away was still fun).

It seems like chat is gaining in trendyness, with HipChat launching recently (presumably to challenge the incumbent Campfire) and Brizzly/Thing Labs's Picnics happening. Partychat will probably remain a hobby/fit-within-AppEngine-free-quota sort of project indefinitely, but it's been fun polishing it (and of coure, there's still quite a few things left to fix).

Semi-cross-posted from Mihai's blog.

Wednesday, February 24, 2010

Partychapp not responding to messages

Partychapp appears online, but is not responding to messages. We're not sure why, but we're assuming it's an issue with AppEngine. Will investigate

Update: Back to normal - issues were due to http://code.google.com/status/appengine

Thursday, October 08, 2009

Back to the Beta


Marty McFly: Doc, we better back up. We don't have enough road to get up to 88.
Dr. Emmett Brown: Roads? Where we're going we don't need roads.

I'm happy to announce the first major step towards a more reliable, stable, and feature-rich Partychat: Partychapp β.

For the past few weeks, a rogue group of friends have been dedicating their spare time to porting PartyChat over to Google AppEngine. We'd talked about doing this for a long time, but the recently added XMPP support was the missing piece needed to make the whole thing run.

As with the old Partychat, Partychapp is open source and you can track its development through the associated Google Code feeds.

What makes Partychapp better? 95% of Partychat's issues were the result of our Jabber connection -- rate limiting, federation issues, etc. Because Partychapp uses AppEngine's XMPP bridge, jabber connectivity is vastly improved with Partychapp. And those remaining 5% of issues with Partychat? They generally had to do with data persistence, which again AppEngine deals with much more effectively.

Why beta? There are a number of features missing and bugs we need to fix. To track them (and add more!) see: Partychapp Issues. Also AppEngine XMPP doesn't (yet) support custom domains so we can't move partych.at over.

So check out Partychapp β. Instructions on how to set up a room (including a web-based invites system!) can be found at http://partychapp.appspot.com/.

Big, giant, overwhelming thanks go out to Neil, Jason, Kushal, and David who are the people responsible for making Partychapp happen. A special shout out to mpd who added XMPP support to AppEngine, making this all possible.