On Sat, 2 Jan 2016, Anthony Walter wrote:

Michael,

Just FYI currently there is no "fpddmssql.pp" (the dd is for data
dictionary I suppose) so no, it's not as easy as just adding a unit name to
the project source. New units must be created and a register function must
be create for mssql to appear in the connections list.

I have just committed initial support for this.


And as far as your surprise at my lack of research goes, you need to
rethink about discovery. The first thing your app does is show a blank list
view of data dictionaries rather than help users create a database
connection first. Next after switching to the connections tab you have to
know to right click in the blank list view to get a context menu which
gives you the option to create a connection. Forcing users to find your
hidden options by using right click context menus is terrible design. Next
we get to the point where these is no option for mssql. You say you simply
include a unit, but in reality no mssql connection register unit currently
exists, so it's not that simple.

I was writing in the belief this unit existed. I was wrong, but this is now remedied.

When you despair if people "didn't investigate very deeply", how far do you
want users to go? You need to understand that most people are not going to
go through a deep investigation before trying to resolve problems deciding
if your tool suits them or even works for their needs.

Before a _seasoned developer_ (I would say you qualify?) starts writing his own tool, I do expect him to investigate, yes.

Let me explain:

- It should be clear what the database desktop is for (more or less).
  It's clearly not a browser or image viewer.

- That being the case, if it still doesn't do something you want,
  then that is a reason for at least investigating.

- If the code is not clear: ask on the mailing list, this IS open source.

I cannot imagine that this is more work than reimplementing it from scratch.

To improve your tool I'd suggest:

If there is no stored connection, you should have a database connection
setup screen as the first thing users see when launching your app.

Well, I have added a popup saying what to do. I don't believe starting the
dialog as once as you suggest is the right thing to do, so I offer people
the choice. Clicking one of the 2 'Ok' buttons take them to the appropriate
dialog, as you suggest.

If there are any hidden right click menus, you should supplement them with
items in a menu menu or a toolbar with appropriate icons and tooltips.

As I said in a previous mail: The item in the menu was there, since day one.
This, and this alone, prompted my remark about depth of investigation.

That it is not there in the toolbar was indeed a lack which has now been 
remedied.

Provide in the sources code at least a comment about how to add additional
database providers.

Done.

Also calling database providers (what the rest of the world calls them)
"dictionaries" (RegisterDictionaryEngine) isn't helping the situation any.

The name is there simply because of the architecture of the tool:
the intent was (and still is, though secondary) to promote the use of the dictionary in DB apps. They make life easier. You cannot add a connection type without a corresponding data dictionary engine.

I have made the connections more prominent by putting them first.

I hope that recent commits convince you that we do want people to work with
these tools, and that we're open for suggestions.

I repeat: comments, suggestions, patches are welcome.

Certainly where UI design is concerned, which is - admittedly - not my forte.

Michael.

--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to