Brainstorm

From Helioviewer Wiki

Jump to: navigation, search

Helioviewer Brainstorm

Contents

Helioviewer Project

Usability

Meta

  • Status page showing the status of each of our services, e.g., is the JPIP server working? Is the tiling server working? Are we transferring files from LMSAL? Are we writing files locally and are those files being transferred?

Helioviewer.org

Features/Events

  • The feature/event accordion allows you to navigate to a given event time. update observation date time to that of the feature/event?
  • Add animation to event marker icons so that when mouse becomes relatively close, they enlarge and become easier to click. For hv.org, this could be done using something like jQuery Approach.
  • Use event marker size or transparency to indicate closeness to observation date? (that way you can draw user's attention to most relevant events).
  • Server-side or client-side interpolation between event date and image date to more accurately plot event markers.

Usability

  • Enable automated and simple bug submitting using the Launchpad API. (Currently unable to install required python modules on web-host).
  • Refocus viewport after resizing? (e.g. grab center coords before-hand, then use moveTo to re-center on that point, or, can keep track of size change in Width/Height).
  • Create a stack for message-queue items. DONE: MessageConsole Class/jGrowl.*
  • For new Helioviewer.org installations, have index.php display a welcome message and installation instructions. This could be done either by renaming the actual index.php to something else, or by having some flag in Config.ini (e.g. display_install_instructions) which is initially set to true and is turned off during the installation.

Performance

Client-side

  • Use CSS sprites for event icons, etc.
  • Optimize CSS Selectors
  • Optimize JavaScript $() Selectors - For CSS, simpler selectors perform better. How about in JS? For example, profile for-loop for $("div > .test") vs. $(".test").
  • Client-side tiling using canvas (example)
  • Investigate the possibility of using web workers to speed up certain actions.

Server-side

  • APC
  • Add support for JasPer and make it easy to chose either Kakadu/JasPer.

Monitoring

  • Create a daily "profiles" folder to monitor effects of changes in code on performance. Firebug, YSlow, and Google Pagespeed can all be used. Is it possible to automate the profiling & logging process?

Server-side/API's

  • Google Maps style API/Mashups

Other

JHelioviewer

Personal tools