Speaking of Dates

July 8, 2007

Times and Timezones can be a pain as well. I was definitely happy that I ran across a method of automatically converting dates to the proper timezone with Javascript. Ecmanaut has several interesting articles on dates, times, and usability, the relevant one being on timezone best practices.

One of the commenters pointed out a post at RedHanded on something called PerfectTime. The article pointed to a more elegant version by Mike West, which was great except for it’s use of an invalid attribute, which he addressed by using the <abbr> tag.

These are very clever ways of getting localized time without a lot of back-end infrastructure and coding, which I like. I’m not sure if this will be the most appropriate way to handle things in Events, which could have dozens upon dozens of times, so we’ll have to keep an eye on performance, but I really like these as good starting points.

The only other issue I’d be concerned with would be browsers with improperly set times/timezones… I have no idea how prevalent that is.


Registration Done

May 28, 2007

When you’re just throwing a site together, or when you anticipate a small (or highly technical) audience, some of “supporting characters” on the site might not need to have the same level of investment as the the main features. Take user registration, for instance. A few fields tossed on a barebones form, a submit button, and some slightly less than cryptic error messages might suffice in some cases. In this case, though, we felt it was important to make every step of the process as usable and user-friendly as possible. That’s why I spent more time designing, tweaking, and coding the PostFresh registration screen than I have any other I’ve worked on. I’m pretty happy with the result.

The main feature of the registration screen is preliminary validation of all of the required form elements. We use AJAX to check the availability of the username, your email and password are evaluated in the browser, and you even get on-screen confirmation that your passwords match. In addition, each field has specific instructions as to what is required.

Over the coming week I’m hoping to get the rest of the user management features finished up, including integration of the TypeKey and OpenID systems into the login and event handling. After that we move on to event management. Hard to say how far out we are right now. I’m guessing sometime in the second half of June we should be ready for initial beta release. The plan is still for that to be a relatively limited release. More to come on that this week.


Approaching Beta

January 10, 2007

After the public demo, which went smashingly well (big thanks to Orson from EDSBS for joining us), our plan was to move forward into something of a Beta phase. No major bugs were uncovered during the demo, so that plan will continue apace.

More specifically, development will continue with the actual event application, but there’s lots of administrative things that need to be developed now, too. The final design should be agreed upon this week, and then it needs to be implemented. There are a few more features we want to get worked in (including Pagination for those long events, and Remote Blog Integration, which I’ve talked about before) and we’ll also be putting together a short video showcasing the features.

From this point things could happen quickly, or they might take a few weeks. Time will tell.


Lazy Registration

January 3, 2007

Today I finished up adding support for a kind of “Lazy Registration” by way of OpenID and TypeKey (as I mentioned before). Anonymous users aren’t going to be allowed to comment, but folks will be allowed to login with an OpenID or TypeKey and that will allow them to comment. At any point they’ll be able to convert those identities into full-fledged PostFresh accounts. Two things will be unavailale to the lazy users: ratings and “remember me” for logins. The former a precaution to avoid gaming and the latter a function of the way these authentication mechanisms work.

The only thing I’m having trouble with, at present, is getting things to work with LiveJournal. For starters, it seems that LiveJournal sees requests for ‘http://xxx.livejournal.com/’ and ‘http://xxx.livejournal.com’ as two different identities, and disallows the latter. The former returns an invalid authentication according to my library, but running the diagnostic at OpenIDEnabled doesn’t show any problems. Hopefully this doesn’t mean I’m going to need to switch to one of the more complex libraries.

Tomorrow I’ll have more information about the first public demo.


External Authentication

December 31, 2006

One of the plans is to allow users to login with as many different authentication services as possible, not just by registering for a PostFresh account. Today I spent some time reading up on the offerings from Google, Yahoo, Six Apart, and OpenID.

Slightly closer looks at Google’s and Yahoo’s authentication services led me to believe that they are primarily for accessing Google’s Calendars and Spreadsheets, and Yahoo Photos respectively. While these could be used for Authentication anyway, I decided, for now, to focus on the two services that are designed as authentication systems: TypeKey and OpenID.

It didn’t take long to find a little library that handled TypeKey from Ishinao (warning: very little english on that site). Two files, one class, and everything works as it should. (I had to port it from PHP5 to PHP4, but that was quick work) OpenID was a little bigger challenge. It seems that most of the implementations of the OpenID API are huge, bloated, and more complex than I was hoping for. OpenID seems to want to steer people towards the one particular library, which happens to be the largest, most bloated of them. I settled on this one, which comprises one file, which is well commented and documented. Quick. Easy. And it works.

We’ll revisit using Yahoo and Google libraries some other time, unless I run across some clever way to use them as authentication gateways.


Preview On For Tomorrow

December 27, 2006

Tomorrow at 3:30pm eastern time the main page will be replaced with a login prompt. Invitees should have already received their login information. If not, send me an email (pete.holiday@gmail.com).

The final design and branding is still being worked on and will be implemented early in January. The preview will be focusing on functions and, as a result, will not be as pretty as the final product. While the preview will also be a little light on killer features, the primary goal is to serve as a more easily understandable explanation of what, exactly, liveblogging will become once PostFresh launches.

Remote Blog Integration: One feature that will not be ready by the preview is the ability to host events on your own blog. PostFresh will allow you to insert a small piece of code into one of your own blog entries which will basically embed a PostFresh event right there on your blog. When it’s all over, you’ll be able to to download the event transcript to toss into the blog entry. To make things even easier, PostFresh will also support a number of popular blog system APIs so that the whole process can be automated.