At the end of last summer, my friend and co-worker, Tom Fennelly 
<https://github.com/tfennelly>, along with the help of Kevin Burke 
<https://github.com/kevinburke>, Daniel Beck 
<https://github.com/daniel-beck>, and others began the first steps of 
improving and modernizing the Jenkins user experience. In addition to some 
of the superficial enhancements, these changes are meant to add a bit of 
responsiveness and cross-device usability to the Jenkins GUI, as well as 
adding a means of creating and swapping new CSS based display themes. This 
effort is best summarized by this article from Jenkins-ci.org, and this 
thread from the Jenkinsci-users group:

   - *User Interface Refresh 
   <http://jenkins-ci.org/node/501#disqus_thread>:* 
   http://jenkins-ci.org/node/501#disqus_thread
   - *Any comments on the UI changes in 1.572 
   
<https://groups.google.com/forum/#!searchin/jenkinsci-users/ui$20tom/jenkinsci-users/ULEV87g9iac/LaTt5J2tHV8J>:*
 
   
https://groups.google.com/forum/#!searchin/jenkinsci-users/ui$20tom/jenkinsci-users/ULEV87g9iac/LaTt5J2tHV8J

As part of our second wave effort here at CloudBees, I am looking at ways 
of improving the usability of the Jelly based form controls used in the 
item creation and configuration pages and the responsiveness and 
interactivity of the main dashboard grid control.

In my investigations so far, I believe there are essentially 3 
non-exclusive paths forward for enhancing these elements:

   1. *CSS only --* Building on the last round of enhancements, we can 
   offer a set of theme extensions that will allow the Jenkins users and 
   community to customize basic layout, iconography, and typeface to tailor 
   Jenkins to their own tastes.
   2. *UI component expansion and refactoring --* By modifying and adding 
   to the existing set of Jelly files and their corresponding data binding 
   rules we can significantly modernize the way Jenkins views and configs draw 
   themselves and potentially streamline plugin creation.
   3. *Client side MVC veneers --* In a manner similar to what CloudBees 
   has recently done with the new Workflow visualization, we can rethink our 
   approach to new feature UIs by using a REST API based architecture coupled 
   with client-side rendering widgets. This would allow us to use newer 
   framework libraries like Angular.js and newer component libraries like 
   Bootstrap and JQuery UI to add greater richness to the Jenkins user 
   experience.
   
These are likely not the only paths forward, but merely the first I can 
think of.  With that reality in mind, I am hoping to reach out to you the 
Jenkins community to help ground and sculpt our thinking about what is both 
possible and desirable. 

If you are at all interested in the Jenkins user experience, I would love 
to get your feedback of any sort on this thread, which could be as simple 
as a "+1" or as involved as a PHD thesis or as much as you have time to 
type into a response box.

To the extent that it helps conversation along, I also have a handful of 
questions to which I would love responses:

   1. For plugin builders, can you tell me a bit about creating the UI 
   portion of your plugin (did you use the data binding form controls, what 
   was hard, what did you have to invent)?
   2. For regular Jenkins users, what are the UX areas of Jenkins you would 
   most like to see improved (I think it is the item create/config and the 
   dashboard/job list grid, but would love to hear others and general 
   feedback)?
   3. For UXers and other Jenkins contributors, how do my 3 forward paths 
   seem (are there others, do you have experience with any yourself, do any 
   seem scary)?
   4. Has anyone tried to make their own themes with the new capabilities 
   Tom has added or would you appreciate and handful of canned options to 
   choose between?
   5. Has anyone started using Workflow on a regular basis, and in 
   particular used the new workflow progress visualization enough to offer 
   feedback?
   

Again, if any of you all are at all interested in the Jenkins UX, we at 
CloudBees are interested in helping move this ball forward and would love 
to hear your feedback.

Thanks for your help,
Gus

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/1959f2f8-770e-4eef-81a6-6c88360ef104%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to