» tagged pages
» logout

sorted by: recent | see : popular
Content Tagged with service + Development

Gist — GitHub

GIT versioned code snippet

git: del.icio.us tag/git

Chandler Hub 1.0 Detail View

A big piece of upgrading the Hub in recent months has been moving more of our UI to dojo and sprucing up the detail view was one of the main areas we focused on. Travis did most of the work of moving ui code to dojo, and most of the detail view work. I did a final touch-up, standing on the shoulders of giants.

The detail view effort aimed to simplify what users see as they create and edit their data. Now, a simple note looks like this:

A simple note

We’ve moved the Remove and Save buttons to the top, so they don’t shift around as the detail view size changes. We’ve also simplified the UI for adding the “star” stamp (which used to be called task) and adding to the calendar.

Throughout the new UI, we make use of dojo’s elaborate support for fades, which help make expand and disappear changes easier to follow.

One of these fade-ins happens if you click on “ADD TO CALENDAR” or the event icon.

Beginning to create an event

To reduce clutter, we’ve used more hint-text in widgets and fewer permanent labels. We also hide event related widgets that don’t apply to the current event. So, for example, “anytime” events which don’t have a start time don’t need a timezone, so we don’t display a timezone picker until you choose a start time for your event.

We’ve also made a much-clamored for addition for events, a date picker. Happily, dojo gave us this for free.

New date picker

Once you fill in a start-date, end-date defaults to start-date.

Finally, we’ve moved our notes field to dojo’s expanding text area. So if you’ve got three pages of notes, the notes field (and the entire detail view pane) will automatically expand to give you room to type everything.

Expanding notes field

For reference, here’s a snapshot of the old detail view.

Old versus New Detail View

Chandler: OSAF group blog

Collection Sharing with Chandler Server

After our preview release last year we heard quite a bit of feedback related to the sharing workflows in the Chandler Web UI. Many people seemed to immediately grasp how useful it is to be able to send links to friends and collaborators that can be plugged into Chandler Desktop or directly into a web browser for instant view-only or view-and-edit access to the contents of a collection. Unfortunately, until Chandler Server 0.15, released in May of this year, actually getting at these links was pretty difficult.

The solution to this problem, the collection sharing dialog you can find on Chandler Hub today, solves this problem and more. Any time you’d like to share your Chandler Hub data with other people or even just other applications you use, this starting point will make everything else easier.

Today we’ll two follow users, Adam and Zed, as they run through a sharing worflow we think you’ll find useful.

Invite Collaborators

Adam and Zed are coaching their sons’ soccer team, the Beagles. Adam has been using Chandler at work, and creates a new collection to help with the mountain of organization that will need to take place. He has published this collection to http://hub.chandlerproject.org and would like Zed to give him some feedback on a proposed practice schedule.

After logging into the Hub Web UI, Adam clicks on the pulldown arrow next to “Soccer” to bring up the collection sharing dialog.

Soccer Collection

He then clicks on the “invite” button to generate two sharing links.

Finally, he right clicks on the “View and Edit” sharing link and selects Send link…. He could also just copy the link location and paste it manually into the email or instant message program of his choice.

Soccer Send Link

When Zed gets the link he can paste it into his favorite web browser and instantly review and edit Adam’s practice schedule. What’s more, if he wants to start using the Chandler Desktop client, he can use this link to subscribe to this collection there.

Collaborate with iCal

Zed’s not ready to take the Chandler Desktop plunge. It’s not that he doesn’t like Chandler, but he’s been a die-hard Apple iCal fan for years. Fortunately, iCal and Chandler work great together. Once Zed pastes the link he received from Adam into his web browser, he’s excited to see a big green button on the left side of the screen labeled “Apple iCal, Google.” He clicks it and follows the instructions in the dialog that appears to add this collection to iCal. Unfortunately, due to underlying technical restrictions he won’t be able to edit the collection or add new events from iCal. Fortunately, Zed has bookmarked the link Adam sent him, and can do all the editing he needs there.

Sky’s the Limit

Hub interoperability doesn’t end with support for Apple iCal. Several other clients, including the Lightning Calendaring Extension for Mozilla Thunderbird, have built in support for CalDAV, a calendar sharing standard. Hundreds of feed readers, usually used for keeping track of blogs and news, can subscribe to the Atom based collection feeds provided by Chandler Hub. Instructions for each of these methods can be found in the collection sharing dialog and the Chandler Project wiki.

Chandler: OSAF group blog

Use Google Calendar to get daily agenda emails for Chandler collection

I’ve been working on a Chandler Server feature that allows users to setup and receive a daily/weekly agenda via email that would include upcoming items for the day/week and also a list of items with a triage status of NOW. While this work isn’t done, I’ve discovered a way to get a daily agenda for a collection shared on Chandler Hub using Google Calendar. So in the mean time if you want an easy way to get a daily agenda via email (or SMS) you can do the following:

  1. Log in to Chandler Hub and open collection details for collection you want to receive notifications for (click on down arrow next to collection name in collection list):

    collection settings

  2. If it hasn’t been done already, click [Invite] to generate sharing links.
  3. Right-click or Cmd-Click (Mac) on either one of the [Invite] link to Copy Link. (Note Collections you subscribed to will only display 1 “Invite” link, the link you used to subscribe.)
  4. Log in to your Google Calendar account
  5. In your calendar list, click on [Add] pulldown and select Add by URL

  6. Paste the URL obtained in step 2 into Public Calendar Address field, changing “pim” to “webcal”. The URL should look something like: https://hub.chandlerproject.org/pim/collection/215715b0-5a0b-11dd-92a1-e12efc62301d?ticket=26htadc0
  7. Click [Add]
  8. In the calendar list, click on the down arrow and select Notifications

  9. Setup daily agenda email or SMS

You are done! Google Calendar will automatically refresh the URL every few hours and will send a daily agenda to you at 5am every morning.

Of course there are some limitations. The email will go to your gmail account, the agenda only includes events, there is a possibility of data being out of date, there is no triage status information, and no way to link back to the original items on Chandler Hub. Of course, this is why we are currently developing these features for the server!

Chandler: OSAF group blog

bit.ly, a simple small url service

de tailles d'URL avec une API complète (compression, décompression, Json). Il propose des fonctions de statistiques ainsi que la possibilité de

json: del.icio.us/tag/json

OSGi Service tutorial

Informationen zum ServiceTracker und ServiceRegistration, um Boilerplate zu vermeiden

OSGi: del.icio.us/tag/OSGi

OSGi Service tutorial

Informationen zum ServiceTracker und ServiceRegistration, um Boilerplate zu vermeiden

User:jeyrb: del.icio.us/subscriptions/jey

Accelerating Software Development | Assembla

free workspaces with unlimited team size and integrated tools like wiki, discussion, alerts, chat, ticketing, Trac, Git and Subversion

git: del.icio.us tag/git

Chandler Server Powered By Dojo 1.0.2

The 0.14.0 release of Chandler Server, pushed live to our open service Chandler Hub on Friday, boasts few obviously new features. Instead we’ve taken this release to merge a branch of development that has been open for several months which moves us to the 1.0 line of the Dojo Javascript Toolkit. Hopefully Hub users have already noticed improved load times and a generally snappier interface as a result of this upgrade, but unsurprisingly the most exciting improvements are in the code.

The first changes I’m excited about are, like our latest release, less wholesale modifications than improvements and commitments to stable APIs with performance enhancement sugar to sweeten the deal. Dojo’s internationalization (i18n) and event APIs have matured to the point where developers can expect to rely on them without fearing a future change like the one we’ve just experienced. As a result we’ve begun the process of migrating our custom i18n code to Dojo’s API, away from the custom, backend dependent code we’ve used in the past. We’ve also started streamlining our use of Dojo’s topic APIs to make our code easier to read and understand. Both these processes are works in progress, so keep an eye on this space for more detailed information in the future.

Several components have also seen essentially complete overhauls, most prominently the XMLHttpRequest wrappers and Dijit, the full featured HTML/CSS UI toolkit built on Dojo Core. Instead of using dojo.io.bind and passing callback functions, method, and header information dojo.xhrGet, dojo.xhrPost and a handful of other methods accept a variety of arguments, make HTTP requests and return dojo.Deferred objects. This return value, a port of the asynchronous task management API introduced by Python’s Twisted networking library, provides an easy way for developers to manage complex sets of asynchronous actions like server requests. Since our Web UI data APIs already used dojo.Deferred internally, this change led to a very nice code reduction.

Dojo’s user interface building API, Dijit, has been greatly improved since Dojo 0.4. In addition to moving to its own namespace as part of Dojo’s overall API flattening, Dijit is better streamlined, better tested, and easier to use. A number of Chandler Server UI components have been ported to the Dijit APIs, and are, as a result, better tested, more modular, and closer to being embeddable outside of our Web UI.

The Dojo team has also been hard at work putting together the next generation of Javascript tools to support high performance rich applications on top of the Open Web. Two of these tools are already finding their way into heavy use within our code base, and are poised to become critical pieces of our infrastructure over the next year.

The first, dojo.data, is “uniform data access layer” that allows UI components to be built without worrying about backend data formats. Our user administration interface has been essentially completely rewritten, but required almost no new UI code. All we had to do was implement a dojo.data store on top of the Cosmo Management Protocol (CMP) and hook it up to Dojo’s Grid widget to get full in-place user field editing, “infinite scrolling” for handling large numbers of users and a handful of other goodies. While our end-user calendar and item list UIs have not been moved to this API, the ongoing web widget project is being built on a new dojo.data store that we hope to eventually integrate into our current UI.

The second piece of new functionality that I’m excited about is dojo.query. This do-it-all CSS query function is the go-to guy for finding pieces of DOM to manipulate. The beauty of this and other query functions is that they are based on features most web developers eventually expect to be supported natively by all major web browsers. By allowing developers to start using these features now we can build advanced web applications that will get trivially more performant with time, and motivate browser developers to continue implementing this critical functionality.

In addition to improving the tools we use to build our Web UI, Dojo’s 1.0 line has introduced some major infrastructure improvements in the form of a DOH, a new Dojo-independent testing harness, and a from-scratch rewrite of the Dojo build system. We’ve managed to port all of our tests to DOH by writing some wrappers to avoid a completely rewrite, which has allowed us to take advantage of the very nice test harness bundled with Dojo. Nearly as important as this test framework is the build system that plays a key role in transforming over 1MB of Javascript into a much more digestible 138K loaded in several different stages. The Dojo 1.0 line makes this process much cleaner and easy to understand, as well as offering advanced functionality like layering, which allows us to break our Javascript into large chunks appropriate to different pieces of our UI.

Dojo has been an integral part of our project to build a new kind of information and knowledge management ecosystem and we are lucky to be able to rely on a vibrant community of developers producing a first class piece of software. If you’re interested in digging deeper and helping us integrate even more of the exciting new functionality provided in its latest release, Dojo 1.1, please don’t hesitate to ask questions on our development list, or via IRC on irc.freenode.net in the #cosmo channel.

Chandler: OSAF group blog

Chandler Hub updated to Chandler Server 0.14.0

Chandler Hub has been updated to the latest version of Chandler Server 0.14.0. This release incorporates a major update to Dojo, the toolkit used to build our Web UI. Please report any problems.

Chandler: OSAF group blog

Page 1 | Next >>