Events on the Developer Network

Events calendar We’ve just deployed another major feature on CDN - support for events. The Developer Network already had an events system, EventCentral, but it became difficult to maintain and enhance it. In particular, we wanted to add the rich document support and role-based workflow features of GetPublished. By integrating this functionality into GetPublished events also gained support for other GetPublished features, such as multi-site support, country-specific content, mapping events to multiple areas, and tagging. As with EventCentral, the new calendar is open to the public: you can post any event you think is useful to the developer community using GetPublished.

The "Events on the Developer Network" article on CDN provides a complete overview of this new functionality, but I wanted to mention some of the other features and improvements we added either to support this functionality or just while working on it:

  • We already had product information in GetPublished, which is used to display shop links. We now use this information for events, and have added icons for most products. You can expect more product-related functionality in the future.
  • When displaying calendars and calculating date ranges for events, we needed to know the first day of the week in the user’s location. This is now a setting in GetPublished’s location record. Right now, most locations have their first day of the week set to Monday. If this isn’t correct for your location, let us know.
  • It is now possible to easily copy an article or event simply by clicking a "Copy Article" button in GetPublished’s "Edit Article" page. This one took us a while to implement, partly because articles have lots of associated data to copy, but mostly because articles can also have attachments and embedded images. We needed to correctly parse the HTML and fix all the links without damaging the markup.
  • Users can now set their preferred time zone in their account settings, or directly on CDN. This allows us to display events in the user’s time zone. We wrote some classes for listing and converting times between time zones that work in both .NET and Win32, so we’ll be able to support this functionality in other CDN applications as needed.
  • At some point, the borland.com links to our sites will probably stop working. We’ve expanded our redirection logic to support permanent redirects to let search engines know the old URLs should no longer be used.
  • We’ve also made some significant performance improvements. First, we moved the database to a new machine with more memory. The old machine was having a hard time coping with some of our more complicated queries, and this was slowing down all of the sites. Second, we added lots of caching for frequently accessed data. This meant logging certain data changes so we can determine whether a cache has gone stale. Since we already had an audit log for certain critical data elements, we used the same logic to track changes in cached data.
  • Even with these performance improvements, events do require more data to be retrieved from the database. We now use AJAX to delay loading certain elements, so users can see the page without waiting for all queries to finish. The event navigation calendar, for example, highlights days with events, but this is handled in a separate AJAX request that is only sent after the full page has loaded.
Posted by Yorai Aminov on July 29th, 2008 under CDN, GetPublished |


Leave a Comment


Server Response from: BLOGS1

 
Copyright© 1994 - 2010 Embarcadero Technologies, Inc. All rights reserved. Contact Us   Legal Notices   Privacy Policy   Report Software Piracy