Monday, October 19, 2015

Tips and Tricks (or Treats) for Orion

OK, fall is here and I'm getting excited about going to ECE. This is the teaser post for my talk "Bringing first class JavaScript and web tooling to Orion". At ECE I'll be showing off the tooling work that the Winnipeg Wonders Mike Rennie and Curtis Windatt have been slaving away at so if you're at ECE be sure to come see ! This is on top of the work that we've already done over the last year...see the N&N's here  and here.

Rather than fill this post with spoilers for the ECE talk I'll instead take a look at a few of the lesser known (but quite useful) features of the Orion editor. Aside from all the language tooling work we've been making a lot of progress on the polish of Orion. We have a completely new look, performance optimizations for clients with many projects and new additions to the 'views' available in the UI...

The 'Breadcrumb' has moved:

As you can see from the above comparison we've removed the line that used to show the breadcrumb
in order to give the space back to the editor. You can now access the breadcrumb from hovering over file name in the header of the editor.

Search Scoping:

One of the great things about having Orion be used in Bluemix is that it exposes us to a variety
of enterprise customers, some having many projects (some of those rather large). As part of the ongoing efforts to improve the performance of Orion we identified that in these cases our default
of searching the complete workspace was causing severe performance issues. We've since adopted a
strategy whereby the client can choose to scope their searches to only the same project as that of  the editor they're viewing, greatly speeding not only the performance of user initiated searches but also the searches that our tooling has to perform.

Global Search:

Also as part of the search refactoring we've combined the old 'Quick Search...' to re-use the existing search panel in the UI rather than its own dialog (the panel didn't exist when quick search was implemented). The search panel is more flexible and has the great advantage of maintaining the list of 'hits' so you can look at different results without having to re-run the search (which was a major UX problem with the original approach).

Problems 'View':

OK we have terminology issues here in that Orion seems to have come up with a different paradigms;
'Side Panels' and 'Slideouts' but they're essentially views in the eclipse sense. This is a truly hidden piece of our UI, one that deserves better visibility. It's basically a cousin of the eclipse Problems View. It shows you all the Errors / Warnings that exist in a particular folder. Unfortunately since it's folder based the only access to it is through the context menu of the navigator.

This comes with a few useful options:
  •   Filter by message or file name
  •   Sort the results grouped by files or errors/warnings
  •   Show the full path of the resource

Note that we expect to extend this view to allow access to all the defined 'quick fixes', giving the client an easy way to clean up their code.

Moving Forward:

We're also just starting a push to make sure that our tooling is capable of helping our clients with meeting the new web accessibility standards. This is of real importance now that governments are becoming much more stringent on these requirements as more functionality moves to the web. As usual we'll be using our own tooling to fix any accessibility issues in Orion...;-).