Обсуждение: [pgadmin-hackers] [PlumAdmin][Weekly Design Update]

Поиск
Список
Период
Сортировка

[pgadmin-hackers] [PlumAdmin][Weekly Design Update]

От
Shirley Wang
Дата:

Hello all!


This is the first design weekly update from the Plumadmin team at Pivotal. Our goal with these emails is to share out what the design/product team is working on and gather your feedback before we begin development. We'll send these out roughly every Wednesday.

Our process is iterative, meaning we start with assumptions about user behavior and continue to validate those assumptions. This is done through conversations or with feedback on wireframes. Typically, design work runs ahead of development work to minimize the risk of building the wrong thing for users. In this period, we also work closely with engineers to make sure the designs are feasible and lean. We want to do the smallest amount of work that leads to the largest value for users.

The structure of the email includes our current work, future work, and blockers we are facing. We'd love to get your input on the designs, as well as suggestions on how to unblock us.


Shirley


2.22.17 Weekly Update

Current Work

History : Enabling users to be able to see their full queries within the history panel

What we know

  • Users want to reuse queries when they are iterating upon previously run queries

  • When the changes are small, retyping queries is a painful and time consuming process

  • Users tend to use the text editor as their history, choosing not to delete each query after running it, or type out full queries in another application and copy/paste it into pgAdmin when they need to run it.


Current Design [WORK IN PROGRESS]

1. See history after running query

Columns should be fixed width. Red highlight indicates if query was able to run Users can click on each row to see details.

2. Expand history v1

Users expand/collapse each row by clicking on the drop down arrow to the left. Full query should appear, with the ability to scroll to see entire query.

Questions:

  • Is the drop down arrow affordance enough for users to know how to collapse/expand?

  • What happens if users scroll down a very long query and want to go back up?



3. Expand history v2

Panel slides to the left to show query details.

Questions:

  • Do users need to see query details in context of the other queries?



What we’re working to validate

  • Do users need to compare two previously run queries? (Is this an edge case we need to account for?)

  • What value does seeing time offer? If it’s to see how long ago I ran this query, how might we better display time to enable this?

  • What is the best way for displaying a 1000+ line query?





Autoformat: Enabling users to quickly organize unformatted code into something readable

What we know

  • Users need to quickly be able to organize it for scanning and reading.



Current Design [WORK IN PROGRESS]

1. Place unformatted query into editor



2. Autoformat tip appears after highlighting text v1

Highlight would appear below selection of text. Users have option of clicking ‘Autoformat SQL’ or using the keyboard shortcut. If they no longer want to see the tip, they can select ‘Don’t show again’.

Yellow was chosen because it is differentiated enough from purple and blue to be noticeable by users. We wanted to introduce a new color to indicate that this pop up was different from the other notifications that appear.

3. Autoformat tip appears after highlighting text v2

Same notification as v1, with the placement being in the bottom right corner.

What we’re working to validate

  • Users need to see how to autoformat after they highlight a section of text

  • Where autoformat function can be placed to be useful with minimal distraction



_______________________

Future work [Needs User Validation]


Redesign Dashboard: Enable Greenplum users to see only relevant info

What we know:

  • We assume that the graphs on the dashboard are not necessary for users of Greenplum to see

  • Dashboard elements are useful for other users and they need to view it


What we’re working to validate

  • If removing the graph will impact the experience negatively for Greenplum users




Starting up on pgAdmin: Upon opening pgAdmin, enable users to quickly get set up to begin querying databases

What we know

  • The current process for getting to the query editor tool is a multi-step task that involves the user clicking into the browser for the right table.

  • Most users have said their purpose for using pgAdmin is to write queries, so we want to get users to that point as fast as possible.


How we will validate

  • Interviews with pgAdmin users on their needs when opening pgAdmin

  • Testing wireframes

____________________

Potential Blockers

  • No established pool of users to talk to, very ad hoc

  • Unknown technical feasibility + constraints






Вложения

Re: [pgadmin-hackers] [PlumAdmin][Weekly Design Update]

От
Dave Page
Дата:
Hi

On Wed, Feb 22, 2017 at 4:29 PM, Shirley Wang <swang@pivotal.io> wrote:

Hello all!


This is the first design weekly update from the Plumadmin team at Pivotal. Our goal with these emails is to share out what the design/product team is working on and gather your feedback before we begin development. We'll send these out roughly every Wednesday.

Our process is iterative, meaning we start with assumptions about user behavior and continue to validate those assumptions. This is done through conversations or with feedback on wireframes. Typically, design work runs ahead of development work to minimize the risk of building the wrong thing for users. In this period, we also work closely with engineers to make sure the designs are feasible and lean. We want to do the smallest amount of work that leads to the largest value for users.

The structure of the email includes our current work, future work, and blockers we are facing. We'd love to get your input on the designs, as well as suggestions on how to unblock us.


Shirley


2.22.17 Weekly Update

Current Work

History : Enabling users to be able to see their full queries within the history panel

What we know

  • Users want to reuse queries when they are iterating upon previously run queries

  • When the changes are small, retyping queries is a painful and time consuming process

  • Users tend to use the text editor as their history, choosing not to delete each query after running it, or type out full queries in another application and copy/paste it into pgAdmin when they need to run it.


Current Design [WORK IN PROGRESS]


Why don't you use the subnode control that we use when expanding rows in other grids? That will provide consistency in design which is key to a good user experience.
 

Questions:

  • Is the drop down arrow affordance enough for users to know how to collapse/expand?

  • What happens if users scroll down a very long query and want to go back up?


With the subnode control you can scroll both the grid with the expanded row (or rows), and the text within a control on the subnode panel.
 


What we’re working to validate

  • Do users need to compare two previously run queries? (Is this an edge case we need to account for?)


I've never seen anyone ask for that, though in pgAdmin 3 it was easily done with the scratch pane. Maybe we should consider adding that again.
 
  • What value does seeing time offer? If it’s to see how long ago I ran this query, how might we better display time to enable this?


I've never heard of anyone asking for that either.
 
  • What is the best way for displaying a 1000+ line query?


A scrolling textbox/div? I don't see how else you would do it.

FYI, the users I've spoken to that are interested in historical queries have all been asking for the 'recent queries' combo box from pgAdmin 3 to be re-implemented. I've not heard of anyone wanting to restore queries from the history tab (though I can see the value in that as well).
 





Autoformat: Enabling users to quickly organize unformatted code into something readable

What we know

  • Users need to quickly be able to organize it for scanning and reading.



Current Design [WORK IN PROGRESS]


Same notification as v1, with the placement being in the bottom right corner.


I prefer that layout.
 

Redesign Dashboard: Enable Greenplum users to see only relevant info

What we know:

  • We assume that the graphs on the dashboard are not necessary for users of Greenplum to see

  • Dashboard elements are useful for other users and they need to view it


What we’re working to validate

  • If removing the graph will impact the experience negatively for Greenplum users


I can't speak for GP users needs, but have no objection if you want to design alternate dashboards specifically for GP connections.
 


Starting up on pgAdmin: Upon opening pgAdmin, enable users to quickly get set up to begin querying databases

What we know

  • The current process for getting to the query editor tool is a multi-step task that involves the user clicking into the browser for the right table.

  • Most users have said their purpose for using pgAdmin is to write queries, so we want to get users to that point as fast as possible.


How we will validate

  • Interviews with pgAdmin users on their needs when opening pgAdmin

  • Testing wireframes


Connecting and choosing a database via the treeview gives us the context needed to create the database connection. We could potentially prompt for that info if we don't already have it, but I wouldn't want us to always prompt if we have context already.

Another option is allowing users to only start the query tool, and not use the browser at all. pgAdmin 3 had command line switches for that, and used a small dialogue to allow the user to choose the connection and database details (or they could be specified on the command line). In pgAdmin 4, that could be a login page option in server mode. In desktop mode it could be command-line switches again, that could be passed through from the runtime. 


--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

Re: [pgadmin-hackers] [PlumAdmin][Weekly Design Update]

От
Shirley Wang
Дата:
Thanks, Dave!

On Thu, Feb 23, 2017 at 4:23 AM Dave Page <dpage@pgadmin.org> wrote:
Hi

On Wed, Feb 22, 2017 at 4:29 PM, Shirley Wang <swang@pivotal.io> wrote:

Why don't you use the subnode control that we use when expanding rows in other grids? That will provide consistency in design which is key to a good user experience.

I'm not sure what the subnode control is, would you be able to attach an image of what you mean?
 
...
 
 


What we’re working to validate

  • Do users need to compare two previously run queries? (Is this an edge case we need to account for?)


I've never seen anyone ask for that, though in pgAdmin 3 it was easily done with the scratch pane. Maybe we should consider adding that again.

Potentially! This was something that came up within our team as a possible use case. Good to know that the scratch pane is a potential solution if this a frequent scenario we need to account for.
 
 
  • What value does seeing time offer? If it’s to see how long ago I ran this query, how might we better display time to enable this?


I've never heard of anyone asking for that either.

Same, this was another perspective we got from the team. I think we need to dive deeper into conversations with users and understand why time is important to them. However, it doesn't seem to be a huge pain so I think it can be deprioritized and be displayed in the same way until we learn it is a problem.
 

FYI, the users I've spoken to that are interested in historical queries have all been asking for the 'recent queries' combo box from pgAdmin 3 to be re-implemented. I've not heard of anyone wanting to restore queries from the history tab (though I can see the value in that as well).
 

Yep, from our interviews we found that the reason people want to see recent queries is to iterate on it. So being able to see the full query and manipulate it somehow is important. 
 

I prefer that layout.

Any particular reason why?



Connecting and choosing a database via the treeview gives us the context needed to create the database connection. We could potentially prompt for that info if we don't already have it, but I wouldn't want us to always prompt if we have context already.

Another option is allowing users to only start the query tool, and not use the browser at all. pgAdmin 3 had command line switches for that, and used a small dialogue to allow the user to choose the connection and database details (or they could be specified on the command line). In pgAdmin 4, that could be a login page option in server mode. In desktop mode it could be command-line switches again, that could be passed through from the runtime. 


Gotcha, I didn't know command line switches existed in pgAdmin3. We were thinking in addition to enabling users to do this via command line, we should also be able to do this through the GUI as well. It would be useful for people who are less comfortable with command line. All that to say we're not sure what the workflow will be yet -ie when to ask for login credentials.


Re: [pgadmin-hackers] [PlumAdmin][Weekly Design Update]

От
Dave Page
Дата:
Hi

On Thu, Feb 23, 2017 at 5:09 PM, Shirley Wang <swang@pivotal.io> wrote:
> Thanks, Dave!
>
> On Thu, Feb 23, 2017 at 4:23 AM Dave Page <dpage@pgadmin.org> wrote:
>>
>> Hi
>>
>> On Wed, Feb 22, 2017 at 4:29 PM, Shirley Wang <swang@pivotal.io> wrote:
>>
>> Why don't you use the subnode control that we use when expanding rows in
>> other grids? That will provide consistency in design which is key to a good
>> user experience.
>
>
> I'm not sure what the subnode control is, would you be able to attach an
> image of what you mean?

See attached. It's the panel that expands when the Edit icon on a row
is clicked (in this case, the c1 column). We discussed it in our call
last week.

> Yep, from our interviews we found that the reason people want to see recent
> queries is to iterate on it. So being able to see the full query and
> manipulate it somehow is important.
>
>>
>>
>> I prefer that layout.
>
>
> Any particular reason why?

It seems like a more natural position - away from the text so it's not
intrusive, but still highly visible.

Regards, Dave.

-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

-- 
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers

Вложения

Re: [pgadmin-hackers] [PlumAdmin][Weekly Design Update]

От
Adam Brusselback
Дата:
I just wanted to chime in because both of these features are things I used heavily in previous jobs with different DBMS. 

History : Enabling users to be able to see their full queries within the history panel


What we know

  • Users want to reuse queries when they are iterating upon previously run queries

  • When the changes are small, retyping queries is a painful and time consuming process

  • Users tend to use the text editor as their history, choosing not to delete each query after running it, or type out full queries in another application and copy/paste it into pgAdmin when they need to run it.

 
...


What we’re working to validate

  • Do users need to compare two previously run queries? (Is this an edge case we need to account for?)

  • What value does seeing time offer? If it’s to see how long ago I ran this query, how might we better display time to enable this?

  • What is the best way for displaying a 1000+ line query?


I absolutely love the idea behind this, but the old PGAdmin3 implementation left a lot to be desired.

I think the most useful implementation of a "history" feature  i've used can be found in an extension for Sql Server Management Studio (SSMS) called SSMS Tools: http://www.ssmstoolspack.com/Features?f=3
That is one of the things I miss most about using SSMS for database development.  It saves both window history, and query execution history, and both are put in a single searchable location, as well as the current window history feature that's been discussed.  I heavily used the date search in my workflow.
In my old job, I was responsible for assigning all of my time to tasks in our ticketing system.  If I ever had time that wasn't assigned at the end of the week, the history in SSMS Tools is how I would figure out what I was doing on Monday from 2pm - 4pm.  

It was also helpful if I wrote an "adhoc" script that I didn't save because it wasn't something that should have had to be used again, but then a week later someone wants the same thing slightly tweaked.  Since it saved window / execution history for an arbitrary amount of time, you could set it to save the last 6 months of history if you wanted.  We had 10 developers on my team, and every single one had that extension installed and used it heavily.


Autoformat: Enabling users to quickly organize unformatted code into something readable

What we know

  • Users need to quickly be able to organize it for scanning and reading.



What we’re working to validate

  • Users need to see how to autoformat after they highlight a section of text

  • Where autoformat function can be placed to be useful with minimal distraction


Here is another area where I had missed.  I used to use a tool called SQL Assistant: https://www.softtreetech.com/sqlassist/index.htm

It had very configurable formatting options, so you didn't have a one-size-fits-all solution. If you liked your commas in a select list before or after, there was a setting for that.  Do you like each join condition on a new line? How much should it be indented? Etc... I have my fingers crossed that any implementation is open to that type of customization.



Anyways, thank you for all the work that you're putting into the project, it's not going unappreciated.