Thread: Development of cross-platform GUI for Open Source DBs

Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
 Hello all

Let me introduce myself first. I am the ex-lead developer of SQLyog
(one  of the most popular GUI for MySQL which is Windows only and runs
on  Linux through WINE, more info at http://www.webyog.com).

===
New Project: wxWidgets based cross-platform GUI for Open Source databases
===

===
Motivation
===

I have recently shifted to US to study for MS (and hopefully PhD in Univ
of Iowa). I have also shifted to Mac OS X as my primary usage machine
(after lifetime of Windows devotion).

As part of my coursework, I work with MySQL and PostgreSQL
extensively. I searched but couldnt find any GUI which has similar
power like SQLyog by any means. I have tried (and have tried before
also) various GUIs for respective databases but somehow the features
in them are restrictive and are not powerful enough for developers
like me who writes lots of SQL queries and needs to get things done
fast.

We can say that we already have enough GUIs for all open source
databases (open source as well as commercial) available in the market
but are they powerful enough to suffice the needs of an experienced
SQL developer as well as newbies. The top three problems with existing
GUI managers are:

- Most of the usable/powerful GUIs are not open source which is one of
the most powerful motivation for us to look for an alternate solutions.

- 90% of such GUIs are DB specific. It becomes very hard for developers
who work with multiple DBs as part of their work. It forces them to
learn different user interface/softwares to work with the respective
databases.

- Of the few multiple-db GUIs, 99% (or probably 100%) use JDBC/ODBC
layer to connect and work with the databases and JAVA or some other kind
of high level toolkit/language to develop the GUI. This results in
applications being bulky and slow and never able to provide the speed
that a low level C/C++ client API provide and are supported by all of
the standard databases.

A simple to use GUI for all databases
===

The basic idea behind such a GUI is to develop a small footprint,
extremely fast, multilingual, cross platform administrator/development
tool for databases. One of the basic requirements thats this GUI will
fulfill is to allow a developer to efficiently execute/plan queries and
allow an administrator to quickly do jobs like backups/restores etc.
with fewest mouse clicks and across different databases.

Once the basic architecture has been set, I plan to extend it to support
advanced features like MS Access like form development,         query builder,
scheduled backups, data synchronization, configuration management,
replication manager, user manager etc.

wxWidgets
===

Since last couple of years, wxWidgets (formerly wxWindows) has
transformed itself into a highly powerful cross-platform GUI library
which when compiled gives the native look and feel of the host operating
system. This is something which other libraries like Qt, JAVA lack.

More info about wxwidgets can be found at: http://www.wxwidgets.org.


Yet unnamed DB management environment
===

I dont have the time nor the resources to do everything by myself. As I
see, there are too many things which are best distributed among
people/developers who are good at those specific things. E.g. I will
require good graphics designer to develop the icons for the tool, web
developer to keep the website updated, db specific veterans to best code
individual db management code etc.

Also, it would be a great way to learn some programming and show it as
part of your undergraduate/graduate project development requirement  :)

Is it viable?
===

I am not too big a fan of reinventing the wheel or work on a project
which will go bust in couple of years? So what I want is from you people
a little initial idea and discussion about such a tool. Is it viable? Is
it OK to develop such a tool? Will people use it?

I am cross posting this to various db mailing lists as well as relevant
newsgroups to get maximum idea about it. You can also contact me
directly at riteshn@gmail.com if you would be interested.

Waiting for your comments.

-- Ritesh

Re: Development of cross-platform GUI for Open Source DBs

From
Thomas Kellerer
Date:
> - Of the few multiple-db GUIs, 99% (or probably 100%) use JDBC/ODBC
> layer to connect and work with the databases and JAVA or some other kind
> of high level toolkit/language to develop the GUI. This results in
> applications being bulky and slow and never able to provide the speed
> that a low level C/C++ client API provide and are supported by all of
> the standard databases.

I am maintaining such an application and it is neither bulky nor slow. It's all
a matter of implementation.

Just an example: with the enhanced batching in Oracle's current JDBC driver
(yes, I know this is an Oracle list) I can even achieve the same import speed as
SQL*Loader when importing flat files.

Btw: coming from a Java world, I do consider HSQLDB and Derby belonging to the
list of "standard databases"

Thomas

Re: Development of cross-platform GUI for Open Source DBs

From
"Tomi NA"
Date:
2006/11/25, Ritesh Nadhani <rn.mailing@gmail.com>:
>  Hello all
>
> Let me introduce myself first. I am the ex-lead developer of SQLyog
> (one  of the most popular GUI for MySQL which is Windows only and runs
> on  Linux through WINE, more info at http://www.webyog.com).
>
> ===
> New Project: wxWidgets based cross-platform GUI for Open Source databases
> ===
>
> ===
> Motivation
> ===
>
> I have recently shifted to US to study for MS (and hopefully PhD in Univ
> of Iowa). I have also shifted to Mac OS X as my primary usage machine
> (after lifetime of Windows devotion).
>
> As part of my coursework, I work with MySQL and PostgreSQL
> extensively. I searched but couldnt find any GUI which has similar
> power like SQLyog by any means. I have tried (and have tried before
> also) various GUIs for respective databases but somehow the features
> in them are restrictive and are not powerful enough for developers
> like me who writes lots of SQL queries and needs to get things done
> fast.
>
> We can say that we already have enough GUIs for all open source
> databases (open source as well as commercial) available in the market
> but are they powerful enough to suffice the needs of an experienced
> SQL developer as well as newbies. The top three problems with existing
> GUI managers are:
>
> - Most of the usable/powerful GUIs are not open source which is one of
> the most powerful motivation for us to look for an alternate solutions.
>
> - 90% of such GUIs are DB specific. It becomes very hard for developers
> who work with multiple DBs as part of their work. It forces them to
> learn different user interface/softwares to work with the respective
> databases.
>
> - Of the few multiple-db GUIs, 99% (or probably 100%) use JDBC/ODBC
> layer to connect and work with the databases and JAVA or some other kind
> of high level toolkit/language to develop the GUI. This results in
> applications being bulky and slow and never able to provide the speed
> that a low level C/C++ client API provide and are supported by all of
> the standard databases.
>
> A simple to use GUI for all databases
> ===
>
> The basic idea behind such a GUI is to develop a small footprint,
> extremely fast, multilingual, cross platform administrator/development
> tool for databases. One of the basic requirements thats this GUI will
> fulfill is to allow a developer to efficiently execute/plan queries and
> allow an administrator to quickly do jobs like backups/restores etc.
> with fewest mouse clicks and across different databases.
>
> Once the basic architecture has been set, I plan to extend it to support
> advanced features like MS Access like form development,         query builder,
> scheduled backups, data synchronization, configuration management,
> replication manager, user manager etc.
>
> wxWidgets
> ===
>
> Since last couple of years, wxWidgets (formerly wxWindows) has
> transformed itself into a highly powerful cross-platform GUI library
> which when compiled gives the native look and feel of the host operating
> system. This is something which other libraries like Qt, JAVA lack.
>
> More info about wxwidgets can be found at: http://www.wxwidgets.org.
>
>
> Yet unnamed DB management environment
> ===
>
> I dont have the time nor the resources to do everything by myself. As I
> see, there are too many things which are best distributed among
> people/developers who are good at those specific things. E.g. I will
> require good graphics designer to develop the icons for the tool, web
> developer to keep the website updated, db specific veterans to best code
> individual db management code etc.
>
> Also, it would be a great way to learn some programming and show it as
> part of your undergraduate/graduate project development requirement  :)
>
> Is it viable?
> ===
>
> I am not too big a fan of reinventing the wheel or work on a project
> which will go bust in couple of years? So what I want is from you people
> a little initial idea and discussion about such a tool. Is it viable? Is
> it OK to develop such a tool? Will people use it?
>
> I am cross posting this to various db mailing lists as well as relevant
> newsgroups to get maximum idea about it. You can also contact me
> directly at riteshn@gmail.com if you would be interested.
>
> Waiting for your comments.
>
> -- Ritesh
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faq
>

The generalities of the project make sense to me: there really isn't a
very good tool that is cross-platform, cross-database and has a lot of
advanced options.
The feature list of sqlyog is rather comprehensive, although I think
that the missing relationship diagram editor leaves an obvious gap in
the company of the other advanced features.
Do I have time to contribute to the project? Depends. I don't have
time to hack the source, but do have a lot of advice to offer (what
people call consulting and usually charge a hefty sum for :)).
I don't think you'll like/agree with the bulk of my advice, though.

First of all, I'm sure that wxWidgets and also Qt and GTK+ are all
very nice frameworks to work with. C++? Great language, but is it the
right choice for this kind application?
As I don't intend to do any actual coding on the (possible) project I
really don't consider myself to have a vote on the subject, but it
seems to me a bit silly to go down that road when there's the NetBeans
platform and Eclipse RCP to build on.
Why sentence the programmers to writing another integrated help
system, actions and window management framework, options management,
updates management, modular architecture and module management and
message passing framework, just to name a few of the obvious
advantages of the two platforms?
As far as performance is concerned, a vanilla NetBeans-platform-based
application (i.e. justh the platform, no modules) uses about 5MB of
RAM and loads, well, not as fast as snapping your fingers, but fairly
close.
A quake2 engine was written in java and is within 20% of the framerate
of the original C-based game. And the mere mentioning of a jdbc driver
in the context of performance...I don't know...if you had thousands of
queries per second it might have made me take a pause for thought, but
I just don't see that kind of action happening in this kind of
application.
What's more, developing such a DB management tool as a set of NetBeans
of Eclipse modules leaves the option available to all the people using
one of these IDEs to complete their database tasks from the same IDE
they do their other programming in: it's a nice feat.

As for portability, I assume not a word need be said.

Native look and feel? Well, 1.5 swing-based apps don't offer a native
look and feel (although they can come fairly close), but the eclipse
UI is completely native and from what I've read, jdk 1.6 swing
applications will use native UI controls (at least on Longh...sorry,
Vista).

The fact that java is to be open sourced and that every new generation
of the jvm is really significantly faster (since 1.4) doesn't leave a
C++-based app much to boast.

On the other hand...if I were in your shoes, I would be very hard to
talk into dropping a language I know if favour of another. ;)

Have a nice weekend,
t.n.a.

Re: Development of cross-platform GUI for Open Source DBs

From
Richard Troy
Date:
Hi Ritesh,

I'm in support of Tomi's comments (especially those about consulting), and
have a few more thoughts to add. To wit:

First, as an aside, as I didn't know anything about SQLyog, I read your
post first, then went to the URL cited. Throughout your post, it wasn't
clear what the subject was exactly as it seemed you were talking in some
places about a database management interface and in other places some kind
of development environment for people to create cross-platform GUIs in. As
you expand your search for volunteers, you might consider making this more
clear - I'm sure I'm not the only one who doesn't/didn't know what SQLyog
is...

On Sat, 25 Nov 2006, Ritesh Nadhani wrote:
>
>  Hello all
>
> Let me introduce myself first. I am the ex-lead developer of SQLyog
> (one  of the most popular GUI for MySQL which is Windows only and runs
> on  Linux through WINE, more info at http://www.webyog.com).
>
> ===
> New Project: wxWidgets based cross-platform GUI for Open Source databases
> ===
>
> ===
> Motivation
> ===
>
> I have recently shifted to US to study for MS (and hopefully PhD in Univ
> of Iowa). I have also shifted to Mac OS X as my primary usage machine
> (after lifetime of Windows devotion).
>
> As part of my coursework, I work with MySQL and PostgreSQL
> extensively. I searched but couldnt find any GUI which has similar
> power like SQLyog by any means. I have tried (and have tried before
> also) various GUIs for respective databases but somehow the features
> in them are restrictive and are not powerful enough for developers
> like me who writes lots of SQL queries and needs to get things done
> fast.
>
> We can say that we already have enough GUIs for all open source
> databases (open source as well as commercial) available in the market
> but are they powerful enough to suffice the needs of an experienced
> SQL developer as well as newbies. The top three problems with existing
> GUI managers are:
>
> - Most of the usable/powerful GUIs are not open source which is one of
> the most powerful motivation for us to look for an alternate solutions.
>
> - 90% of such GUIs are DB specific. It becomes very hard for developers
> who work with multiple DBs as part of their work. It forces them to
> learn different user interface/softwares to work with the respective
> databases.

A few thoughts here; each db engine has its own;

- sql dialect, dispite the best efforts of SQL92 et al.

- sql query plan output mechanism and format

- naming restrictions (some know from context what table/attribute names
are while others absolutely demand reserved-words remain reserved, even
when they'll never be found in a particular context) - presuming you want
to provide, "works here but not there" advice.

- system catalogs

- index structures

- transaction log semantics

- lock management - presuming you wish to include a "which transaction has
the lock" functionality

- activity/error/security log systems - presuming you wish to provide
error resolution assistance

- maintenance tools suite, like Postgres' vacuum

- backup and recovery suite

>
> - Of the few multiple-db GUIs, 99% (or probably 100%) use JDBC/ODBC
> layer to connect and work with the databases and JAVA or some other kind
> of high level toolkit/language to develop the GUI. This results in
> applications being bulky and slow and never able to provide the speed
> that a low level C/C++ client API provide and are supported by all of
> the standard databases.

The reason - a reason - JDBC (and I presume ODBC) is so popular for these
purposes is that it helps resolve a handful - a large handful - of the
challenges of writing cross-database-platform.

>
> A simple to use GUI for all databases
> ===
>
> The basic idea behind such a GUI is to develop a small footprint,
> extremely fast, multilingual, cross platform administrator/development
> tool for databases. One of the basic requirements thats this GUI will
> fulfill is to allow a developer to efficiently execute/plan queries and
> allow an administrator to quickly do jobs like backups/restores etc.
> with fewest mouse clicks and across different databases.
>
> Once the basic architecture has been set, I plan to extend it to support
> advanced features like MS Access like form development,         query builder,
> scheduled backups, data synchronization, configuration management,
> replication manager, user manager etc.

...This is where your stated goals become confusing; What does MS Access
have anything to do with this subject? When you say data synchronization,
do you mean replication - then why mention it separately? (rhetorical
questions)

>
> wxWidgets
> ===
>
> Since last couple of years, wxWidgets (formerly wxWindows) has
> transformed itself into a highly powerful cross-platform GUI library
> which when compiled gives the native look and feel of the host operating
> system. This is something which other libraries like Qt, JAVA lack.
>
> More info about wxwidgets can be found at: http://www.wxwidgets.org.
>
>
> Yet unnamed DB management environment
> ===
>
> I dont have the time nor the resources to do everything by myself. As I
> see, there are too many things which are best distributed among
> people/developers who are good at those specific things. E.g. I will
> require good graphics designer to develop the icons for the tool, web
> developer to keep the website updated, db specific veterans to best code
> individual db management code etc.
>
> Also, it would be a great way to learn some programming and show it as
> part of your undergraduate/graduate project development requirement  :)
>
> Is it viable?
> ===
>
> I am not too big a fan of reinventing the wheel or work on a project
> which will go bust in couple of years? So what I want is from you people
> a little initial idea and discussion about such a tool. Is it viable? Is
> it OK to develop such a tool? Will people use it?

Because the distinctive features between RDBMSes I cited above - and
others I didn't cite - change with time, you don't want to hard-code them.
Nor, does it seem to me, do you wish to hard code which database engines
are supported. Therefore, it's clear to me that you want to develop a way
to support any new / new version RDBMS in a way that's easily extensible,
or configurable, if you will. I think it's a lot harder to do than might
sound.

>
> I am cross posting this to various db mailing lists as well as relevant
> newsgroups to get maximum idea about it. You can also contact me
> directly at riteshn@gmail.com if you would be interested.

Well, I think we expect you're still on our email list so you can receive
replies, yes? Not everybody replies to both list and author separately.
-shrug-

>
> Waiting for your comments.
>
> -- Ritesh

All that said, I'd use such a tool if one were available...


Richard


--
Richard Troy, Chief Scientist
Science Tools Corporation
510-924-1363 or 202-747-1263
rtroy@ScienceTools.com, http://ScienceTools.com/


Re: Development of cross-platform GUI for Open Source DBs

From
John DeSoi
Date:
> New Project: wxWidgets based cross-platform GUI for Open Source
> databases


You might also want to investigate XUL (http://en.wikipedia.org/wiki/
XUL). In addition to having low level C/C++, you can provide the
ability to create interfaces with XML and JavaScript. Applications
can run stand alone (XUL Runner) and perhaps interesting XUL browser
plugins would be possible.





John DeSoi, Ph.D.
http://pgedit.com/
Power Tools for PostgreSQL


Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
Hello

On 11/25/06, Thomas Kellerer <spam_eater@gmx.net> wrote:
> > - Of the few multiple-db GUIs, 99% (or probably 100%) use JDBC/ODBC
> > layer to connect and work with the databases and JAVA or some other kind
> > of high level toolkit/language to develop the GUI. This results in
> > applications being bulky and slow and never able to provide the speed
> > that a low level C/C++ client API provide and are supported by all of
> > the standard databases.
>
> I am maintaining such an application and it is neither bulky nor slow. It's all
> a matter of implementation.
>

Can I have a link to the application or more info on that? I would be
interested to take a look into it.

> Just an example: with the enhanced batching in Oracle's current JDBC driver
> (yes, I know this is an Oracle list) I can even achieve the same import speed as
> SQL*Loader when importing flat files.
>

I have nothing against JDBC or JAVA (did my words sounded petulant
towards it?) but 90% of the databases do provide lowest level APIs in
C. Having an app in C helps us to use very very less memory (this I
say from my experience where I could get million record from a remote
server to my client at much faster rates then a another app).  Lot of
times it has happened that the C API (atleast with MySQL and PGSQL C
API)  provides some extra information which when smartly used can make
things lot efficient.

Also, why I started a thread with wxWidgets was because C/C++ is what
I have been using all my life and from my experience of developing
couple of cross platform simple GUI, I fount wxWidgets to most mature
and easy to use.

But somebody in one of his replies suggested XUL. I will read about it tomorrow.

> Btw: coming from a Java world, I do consider HSQLDB and Derby belonging to the
> list of "standard databases"
>

I am sure there would be ways to provide for support for them too but
I am not sure as of now.

> Thomas
>

Ritesh

>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faq
>

Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
Hello

On 11/25/06, Richard Troy <rtroy@sciencetools.com> wrote:
>
> Hi Ritesh,
>
> I'm in support of Tomi's comments (especially those about consulting), and
> have a few more thoughts to add. To wit:
>
> First, as an aside, as I didn't know anything about SQLyog, I read your
> post first, then went to the URL cited. Throughout your post, it wasn't
> clear what the subject was exactly as it seemed you were talking in some
> places about a database management interface and in other places some kind
> of development environment for people to create cross-platform GUIs in. As
> you expand your search for volunteers, you might consider making this more
> clear - I'm sure I'm not the only one who doesn't/didn't know what SQLyog
> is...
>

Well, sorry if my words were confusing. I was thinking of an MS SQL
Query Analyzer, SQLyog, PGAdmin kind of tool to start with which will
provide a basic admin tool initially. And based upon that
layer/architecture we will provide more advanced tools like query
builder etc.

I think I jumped the boat far too quickly, I also meant a development
environment to be provided by this tool later on but come to think of
it, it is already provided by OpenOffice so we wont probably need to
think on that line.

So I guess, the tool that I have in mind is a database management
interface - something like Toad for Oracle (which probably everybody
knows).

> On Sat, 25 Nov 2006, Ritesh Nadhani wrote:
> >
> >  Hello all
> >
> > Let me introduce myself first. I am the ex-lead developer of SQLyog
> > (one  of the most popular GUI for MySQL which is Windows only and runs
> > on  Linux through WINE, more info at http://www.webyog.com).
> >
> > ===
> > New Project: wxWidgets based cross-platform GUI for Open Source databases
> > ===
> >
> > ===
> > Motivation
> > ===
> >
> > I have recently shifted to US to study for MS (and hopefully PhD in Univ
> > of Iowa). I have also shifted to Mac OS X as my primary usage machine
> > (after lifetime of Windows devotion).
> >
> > As part of my coursework, I work with MySQL and PostgreSQL
> > extensively. I searched but couldnt find any GUI which has similar
> > power like SQLyog by any means. I have tried (and have tried before
> > also) various GUIs for respective databases but somehow the features
> > in them are restrictive and are not powerful enough for developers
> > like me who writes lots of SQL queries and needs to get things done
> > fast.
> >
> > We can say that we already have enough GUIs for all open source
> > databases (open source as well as commercial) available in the market
> > but are they powerful enough to suffice the needs of an experienced
> > SQL developer as well as newbies. The top three problems with existing
> > GUI managers are:
> >
> > - Most of the usable/powerful GUIs are not open source which is one of
> > the most powerful motivation for us to look for an alternate solutions.
> >
> > - 90% of such GUIs are DB specific. It becomes very hard for developers
> > who work with multiple DBs as part of their work. It forces them to
> > learn different user interface/softwares to work with the respective
> > databases.
>
> A few thoughts here; each db engine has its own;
>
> - sql dialect, dispite the best efforts of SQL92 et al.
>
> - sql query plan output mechanism and format
>
> - naming restrictions (some know from context what table/attribute names
> are while others absolutely demand reserved-words remain reserved, even
> when they'll never be found in a particular context) - presuming you want
> to provide, "works here but not there" advice.
>
> - system catalogs
>
> - index structures
>
> - transaction log semantics
>
> - lock management - presuming you wish to include a "which transaction has
> the lock" functionality
>
> - activity/error/security log systems - presuming you wish to provide
> error resolution assistance
>
> - maintenance tools suite, like Postgres' vacuum
>
> - backup and recovery suite
>

Yes I know that. So we can make our architecture to be modular where
each db interface use its own most efficient way rather then a generic
way which would make things slow. And if a feature is not provided by
a DB, that option would be just turned off for that DB.

My motivation for the idea comes from the plauggable engine support
that MySQL provides.

> >
> > - Of the few multiple-db GUIs, 99% (or probably 100%) use JDBC/ODBC
> > layer to connect and work with the databases and JAVA or some other kind
> > of high level toolkit/language to develop the GUI. This results in
> > applications being bulky and slow and never able to provide the speed
> > that a low level C/C++ client API provide and are supported by all of
> > the standard databases.
>
> The reason - a reason - JDBC (and I presume ODBC) is so popular for these
> purposes is that it helps resolve a handful - a large handful - of the
> challenges of writing cross-database-platform.
>

As I replied in my previous two mails, my motivation for using
wxWidgets/C/C++ remains same.

> >
> > A simple to use GUI for all databases
> > ===
> >
> > The basic idea behind such a GUI is to develop a small footprint,
> > extremely fast, multilingual, cross platform administrator/development
> > tool for databases. One of the basic requirements thats this GUI will
> > fulfill is to allow a developer to efficiently execute/plan queries and
> > allow an administrator to quickly do jobs like backups/restores etc.
> > with fewest mouse clicks and across different databases.
> >
> > Once the basic architecture has been set, I plan to extend it to support
> > advanced features like MS Access like form development,         query builder,
> > scheduled backups, data synchronization, configuration management,
> > replication manager, user manager etc.
>
> ...This is where your stated goals become confusing; What does MS Access
> have anything to do with this subject? When you say data synchronization,
> do you mean replication - then why mention it separately? (rhetorical
> questions)
>

Nope. Data sync and replication are two different things. I will
explain it sometime soon. Atleast, that was my notion when I
developing a sync feature in SQLyog.

> >
> > wxWidgets
> > ===
> >
> > Since last couple of years, wxWidgets (formerly wxWindows) has
> > transformed itself into a highly powerful cross-platform GUI library
> > which when compiled gives the native look and feel of the host operating
> > system. This is something which other libraries like Qt, JAVA lack.
> >
> > More info about wxwidgets can be found at: http://www.wxwidgets.org.
> >
> >
> > Yet unnamed DB management environment
> > ===
> >
> > I dont have the time nor the resources to do everything by myself. As I
> > see, there are too many things which are best distributed among
> > people/developers who are good at those specific things. E.g. I will
> > require good graphics designer to develop the icons for the tool, web
> > developer to keep the website updated, db specific veterans to best code
> > individual db management code etc.
> >
> > Also, it would be a great way to learn some programming and show it as
> > part of your undergraduate/graduate project development requirement  :)
> >
> > Is it viable?
> > ===
> >
> > I am not too big a fan of reinventing the wheel or work on a project
> > which will go bust in couple of years? So what I want is from you people
> > a little initial idea and discussion about such a tool. Is it viable? Is
> > it OK to develop such a tool? Will people use it?
>
> Because the distinctive features between RDBMSes I cited above - and
> others I didn't cite - change with time, you don't want to hard-code them.
> Nor, does it seem to me, do you wish to hard code which database engines
> are supported. Therefore, it's clear to me that you want to develop a way
> to support any new / new version RDBMS in a way that's easily extensible,
> or configurable, if you will. I think it's a lot harder to do than might
> sound.
>
> >
> > I am cross posting this to various db mailing lists as well as relevant
> > newsgroups to get maximum idea about it. You can also contact me
> > directly at riteshn@gmail.com if you would be interested.
>
> Well, I think we expect you're still on our email list so you can receive
> replies, yes? Not everybody replies to both list and author separately.
> -shrug-

Hehehehe...my mistake. No need to double me :)

>
> >
> > Waiting for your comments.
> >
> > -- Ritesh
>
> All that said, I'd use such a tool if one were available...
>
>
> Richard
>

Ritesh
>
> --
> Richard Troy, Chief Scientist
> Science Tools Corporation
> 510-924-1363 or 202-747-1263
> rtroy@ScienceTools.com, http://ScienceTools.com/
>
>

Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
Thanks for the info. I will take a look at it soon.

On 11/25/06, John DeSoi <desoi@pgedit.com> wrote:
> > New Project: wxWidgets based cross-platform GUI for Open Source
> > databases
>
>
> You might also want to investigate XUL (http://en.wikipedia.org/wiki/
> XUL). In addition to having low level C/C++, you can provide the
> ability to create interfaces with XML and JavaScript. Applications
> can run stand alone (XUL Runner) and perhaps interesting XUL browser
> plugins would be possible.
>
>
>
>
>
> John DeSoi, Ph.D.
> http://pgedit.com/
> Power Tools for PostgreSQL
>
>

Re: Development of cross-platform GUI for Open Source DBs

From
Thomas Kellerer
Date:
Hi,

>> I am maintaining such an application and it is neither bulky nor slow.
>> It's all
>> a matter of implementation.
>>
> Can I have a link to the application or more info on that? I would be
> interested to take a look into it.

Sure: http://www.sql-workbench.net

> I have nothing against JDBC or JAVA (did my words sounded petulant
> towards it?) but 90% of the databases do provide lowest level APIs in
> C. Having an app in C helps us to use very very less memory (this I
> say from my experience where I could get million record from a remote
> server to my client at much faster rates then a another app).

That might be true, but then how often do you really *need* millions of records
on the client especially in a DB GUI where the primary task (at least that's how
I see it) is to run ad-hoc queries or check other results.

Which leads me to the (most important?) question: what do "we" understand under
the term "GUI for DB" is that a full featured data-entry where a normal end-user
can update data? Is that an admin tool for the DBA, which is intended to run
daily DBA taks? Or maybe even some kind of ETL tool?

 > Lot of
> times it has happened that the C API (atleast with MySQL and PGSQL C
> API)  provides some extra information which when smartly used can make
> things lot efficient.
That is true, but then a tool supporting multiple DBMS will (most probably) have
to comprise now and then. Otherwise you'll wind up writing one tool for each
DBMS and simply combining them under a common GUI.

> Also, why I started a thread with wxWidgets was because C/C++ is what
> I have been using all my life and from my experience of developing
> couple of cross platform simple GUI, I fount wxWidgets to most mature
> and easy to use.

As I already mentioned, I'm a Java developer and naturally I find Swing most
mature and easy to use ;)
Actually if I look at tools that are written with wxWidgets (not that often) I
tend to find they look less like native Windows apps as a well written Swing
application using a recent JDK (1.5 or 1.6)

But that is largely a matter of taste I'd say, and everybody tends to prefer the
environment that he/she is familiar with

Thomas



Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
Hello

On 11/26/06, Thomas Kellerer <spam_eater@gmx.net> wrote:
> Hi,
>
> >> I am maintaining such an application and it is neither bulky nor slow.
> >> It's all
> >> a matter of implementation.
> >>
> > Can I have a link to the application or more info on that? I would be
> > interested to take a look into it.
>
> Sure: http://www.sql-workbench.net
>

Thanks. If I ever start a project like I am thinking, your application
would be definitely of lot of help.  I have added the website in my
bookmark.

> > I have nothing against JDBC or JAVA (did my words sounded petulant
> > towards it?) but 90% of the databases do provide lowest level APIs in
> > C. Having an app in C helps us to use very very less memory (this I
> > say from my experience where I could get million record from a remote
> > server to my client at much faster rates then a another app).
>
> That might be true, but then how often do you really *need* millions of records
> on the client especially in a DB GUI where the primary task (at least that's how
> I see it) is to run ad-hoc queries or check other results.
>

Even I thought so but a newbie who works on couple of earlier project
do execute such queries and in the end it becomes a good marketing
paradigm also where you can show off that it can handle X million row
result also without any problem. Agreed, such people would be less
then 5% of the total userbase but it does gives us good
differentiating option then other GUIs.

> Which leads me to the (most important?) question: what do "we" understand under
> the term "GUI for DB" is that a full featured data-entry where a normal end-user
> can update data? Is that an admin tool for the DBA, which is intended to run
> daily DBA taks? Or maybe even some kind of ETL tool?
>

That is a very legitimate question. The project will start off as a
data entry app where a user can see all the DB objects like tables,
columns, indexes etc. Exceute queries, create db objects like table,
columns, etc. As the project becomes more mature, we add more features
for a DBA like backup, restore db, user management, log management
etc. And finally a good and state of the art query builder & designer
and if technology permits, a two-way query builder is what I intend to
target.

>  > Lot of
> > times it has happened that the C API (atleast with MySQL and PGSQL C
> > API)  provides some extra information which when smartly used can make
> > things lot efficient.
> That is true, but then a tool supporting multiple DBMS will (most probably) have
> to comprise now and then. Otherwise you'll wind up writing one tool for each
> DBMS and simply combining them under a common GUI.
>

Yes. That is exactly what I am thinking of. It definitely looks
daunting but with community support, I think it i possible. The first
and foremost thing that needs to be done is coming up with a very
flexible and pluggable architecture where I define a common set of
interface for all DBs and then what remains is to just fill in the gap
for individual databases.

This would be best done if inidividual DB expert takes up an interface
to code for their respective DB. This way we would be able to extract
the maximum juice from each DB.

> > Also, why I started a thread with wxWidgets was because C/C++ is what
> > I have been using all my life and from my experience of developing
> > couple of cross platform simple GUI, I fount wxWidgets to most mature
> > and easy to use.
>
> As I already mentioned, I'm a Java developer and naturally I find Swing most
> mature and easy to use ;)
> Actually if I look at tools that are written with wxWidgets (not that often) I
> tend to find they look less like native Windows apps as a well written Swing
> application using a recent JDK (1.5 or 1.6)

Fair enough. Maybe, there is a way where we could integrate wxWidgets
and JAVA Swing but I am not sure if its possible. Maybe, somebody can
put more pointer on this one.

>
> But that is largely a matter of taste I'd say, and everybody tends to prefer the
> environment that he/she is familiar with
>
> Thomas
>

Ritesh

>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: Don't 'kill -9' the postmaster
>

Re: Development of cross-platform GUI for Open Source DBs

From
Richard Troy
Date:
On Sun, 26 Nov 2006, Ritesh Nadhani wrote:
>
> Well, sorry if my words were confusing. I was thinking of an MS SQL
> Query Analyzer, SQLyog, PGAdmin kind of tool to start with which will
> provide a basic admin tool initially. And based upon that
> layer/architecture we will provide more advanced tools like query
> builder etc.
>
> I think I jumped the boat far too quickly, I also meant a development
> environment to be provided by this tool later on but come to think of
> it, it is already provided by OpenOffice so we wont probably need to
> think on that line.

There's room for something other than what OpenOffice provides, but a
morphed DB Admin tool certainly isn't it because they have very different
goals. I, for example, would like a toolset that helps take the drudgery
out of making a db-connected application and convert it into both/either a
more traditional client/application-server and/or a web application. I'm
sure there are a lot of people who'd like to see this, too, but these
application-perspective based needs are _dramatically_ different from
database admin needs. Combining them is bound to be more trouble than it's
worth as they have virtually nothing in common.

> So I guess, the tool that I have in mind is a database management
> interface - something like Toad for Oracle (which probably everybody
> knows).

Toad? No, everybody doesn't know. But the idea of going for a
cross-datrabase-platform db-admin tool is a fine one.

Also, repeating for emphasis my brief and incomplete "differences list:"

> > A few thoughts here; each db engine has its own;
> >
> > - sql dialect, dispite the best efforts of SQL92 et al.
> >
> > - sql query plan output mechanism and format
> >
> > - naming restrictions (some know from context what table/attribute names
> > are while others absolutely demand reserved-words remain reserved, even
> > when they'll never be found in a particular context) - presuming you want
> > to provide, "works here but not there" advice.
> >
> > - system catalogs
> >
> > - index structures
> >
> > - transaction log semantics
> >
> > - lock management - presuming you wish to include a "which transaction has
> > the lock" functionality
> >
> > - activity/error/security log systems - presuming you wish to provide
> > error resolution assistance
> >
> > - maintenance tools suite, like Postgres' vacuum
> >
> > - backup and recovery suite
> >
>
> Yes I know that. So we can make our architecture to be modular where
> each db interface use its own most efficient way rather then a generic
> way which would make things slow. And if a feature is not provided by
> a DB, that option would be just turned off for that DB.
>
> My motivation for the idea comes from the plauggable engine support
> that MySQL provides.

OK, "pluggable," but please read my words carefully and get the hint: If
you do _not_ provide features like accessing the query plans, finding lock
holders to sort out deadlocks, and these other database-specific items
listed above - and others I didn't list - you will NOT be providing
functionality that's worth the time.

Let me put it this way; Right now I have to support (at least) five
RDBMSes: Postgres, Informix, Sybase, DB2, Oracle - and we're considering
ANTS. The idea of a cross-dbms admin tool sounds great but is USELESS -
not worth my time - if it doesn't address these every-day-in-production
needs because, lets face it, I'll _still_ have to use those platform
specific mechanisms - and if I have to access them _anyway,_ why bother
with yet another tool that doesn't do the job?

The answer is, it won't have the user base you're looking for.

Seems to me, you need to get back to square one: What problem(s) are you
trying to solve? And an answer that says, "Oh, all this DBMS admin stuff
and - eventually! - an app builder too!" is not an answer I can believe as
it's too ambitious, and not focused on any core user group.

Good luck,
Richard

--
Richard Troy, Chief Scientist
Science Tools Corporation
510-924-1363 or 202-747-1263
rtroy@ScienceTools.com, http://ScienceTools.com/


Re: Development of cross-platform GUI for Open Source DBs

From
"Guy Rouillier"
Date:
Richard Troy wrote:
> Let me put it this way; Right now I have to support (at least) five
> RDBMSes: Postgres, Informix, Sybase, DB2, Oracle - and we're
> considering ANTS. The idea of a cross-dbms admin tool sounds great
> but is USELESS - not worth my time - if it doesn't address these
> every-day-in-production needs because, lets face it, I'll _still_
> have to use those platform specific mechanisms - and if I have to
> access them _anyway,_ why bother with yet another tool that doesn't
> do the job?

I missed the beginning of this thread, but I agree with Richard.  Not to
be a wet rag, but I think a cross-DBMS admin tool is doomed, other than
at a level that Aqua Data Studio already provides.  To provide the deep
functionality that work-a-day DB admins require, you'll have to provide
DBMS-specific functionality.  You've thought about that already - allow
plugins.  But do some graphical design that considers how all this will
fit together.  At a minimum, you'll need a general section or page *per
object type* that contains things that are consistent across DBMSs, then
you'll need a corresponding section or page *per object type* that
handle DBMS-specific extensions.   Once you start laying all that out,
you'll see why DBMS-specific admin tools exist.

As for language, I don't agree that Java is too restrictive.  "Millions
of rows" typically occur in the application space, not in the admin
space.  The only time admins encounter that type of volume is backups,
recoveries, copies, etc., which will likely be in the DBMS-specific
realm.

--
Guy Rouillier


Re: Development of cross-platform GUI for Open Source DBs

From
"Merlin Moncure"
Date:
On 11/25/06, Ritesh Nadhani <rn.mailing@gmail.com> wrote:
>  Hello all
>
> Let me introduce myself first. I am the ex-lead developer of SQLyog
> (one  of the most popular GUI for MySQL which is Windows only and runs
> on  Linux through WINE, more info at http://www.webyog.com).
>
> ===
> New Project: wxWidgets based cross-platform GUI for Open Source databases
> ===
>
> ===
> Motivation
> ===
>
> I have recently shifted to US to study for MS (and hopefully PhD in Univ
> of Iowa). I have also shifted to Mac OS X as my primary usage machine
> (after lifetime of Windows devotion).
>
> As part of my coursework, I work with MySQL and PostgreSQL
> extensively. I searched but couldnt find any GUI which has similar
> power like SQLyog by any means. I have tried (and have tried before
> also) various GUIs for respective databases but somehow the features
> in them are restrictive and are not powerful enough for developers
> like me who writes lots of SQL queries and needs to get things done
> fast.

I think you should look for inspiration in the EMS suite, which while
windows-only and closed source is a pretty feature packed and cross
(db) platform.  You are on very well traveled ground here.

IMO, I think the 'enterprise manager' style tool market is pretty well
saturated for most databases.  I also think dropping standard drivers
(jdbc) from your project is a mistake unless you think you can do
better.  Also now you are writing two projects.  I'm not trying to
discourage you...it's just a lot of work...ask Dave Page :-)  This is
coming from someone who implemented a driver of sorts from the ground
up for PostgreSQL, namely ISAM support.  Your efforts might be better
spent improving the standard driver you most feel comfortable with.

Another thing is that the current crop of gui admin tools focus on
wizards and dialogs and not so much on classic code management.  What
I personally would really want to see is a souped up text editor with
very smart code completion tools (auto completing tables, columns,
etc) sort of like ctags but optimized for sql.  I would avoid emphasis
of dialog based sql property editing which I consider orthogonal to
good sql development practices.

If these comments seem a bit generic, take a good look at Source
Insight (windows only, sigh) as a tool more geared towards code
management.  It's really quite amazing.

merlin

Re: Development of cross-platform GUI for Open Source DBs

From
"Harald Armin Massa"
Date:
Ritesh,

what you are trying to do sound very similiar to dabo:

http://dabodev.com/

Maybe have a look at it first?

best wishes

Harald



--
GHUM Harald Massa
persuadere et programmare
Harald Armin Massa
Reinsburgstraße 202b
70197 Stuttgart
0173/9409607
-
Python: the only language with more web frameworks than keywords.

Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
Hello Herald

Somebody mailed me earlier also regarding dabodev but its not what I
am talking about.

I took a look at dabo and it definitely serves one part of application
that I have in mind but more specifically I was thinking of starting
with a admin/developer tool like TOAD, MS Query Analyzer, MySQL GUI
tools rather then those form building but yes, in the long run - it
will be part of the tool or in form of another specific tool. Maybe we
can just integrate it with our tool line up later on.

All others, I will reply to you in could of days. I have two
assignments due in next 2 days so things are little crazy. Will reply
to each and every point.

On 11/27/06, Harald Armin Massa <haraldarminmassa@gmail.com> wrote:
> Ritesh,
>
> what you are trying to do sound very similiar to dabo:
>
> http://dabodev.com/
>
> Maybe have a look at it first?
>
> best wishes
>
> Harald
>
>
>
> --
> GHUM Harald Massa
> persuadere et programmare
> Harald Armin Massa
> Reinsburgstraße 202b
> 70197 Stuttgart
> 0173/9409607
> -
> Python: the only language with more web frameworks than keywords.

Re: Development of cross-platform GUI for Open Source DBs

From
Tony Caduto
Date:
Merlin Moncure wrote:
>
> I think you should look for inspiration in the EMS suite, which while
> windows-only and closed source is a pretty feature packed and cross
> (db) platform.  You are on very well traveled ground here.
>
>

Not to mention Lightning Admin for Postgresql  and MySQL:-)

(http://www.amsoftwaredesign.com)

Which does run great with WINE, so while not native cross platform it
does run well any where newer versions of
WINE do.

The EMS stuff is nice, but I found them to be to a little bloated and
cumbersome to work with during my research of competing products.

One could also use Mono 1.2 and any .net 1.1 IDE such as Borland Turbo
C# or Delphi.net (with npgsql .net data provider)  both of which you can
get for free here:
http://www.turboexplorer.com
or SharpDevelop which you can get here:  http://www.icsharpcode.com

You can take the exes these IDEs create and simply run them as is on
Linux or where ever Mono 1.2 does.
It really does work well. Much nicer than Java.  You do have to stick to
fully managed code when you develop your apps on win32 as any win32 API
pinvoke commands will not work in Mono.

Currently there is no IDE available on Linux or other Unix systems that
has the productivity of the tools mentioned above. (except for the
unfortunate Kylix IDE)

Sure you could use Wxwidgets with Python or whatever, but you
development time is going to be more than twice as long as compared to a
application built
with Delphi.  The closest to Delphi in a cross platform system is
NetBeans and even with their form designer it's still tedious working
with databases compared to
Delphi.  If you want to speak to the Oracle, you have to go to Delphi :-)

I have also tried MonoDevelop, but it has a way to go before being
really useful.

--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Development of cross-platform GUI for Open Source DBs

From
Thomas Kellerer
Date:
On 27.11.2006 17:36 Tony Caduto wrote:
> The closest to Delphi in a cross platform system is
> NetBeans and even with their form designer it's still tedious working
> with databases compared to Delphi.
What about Lazarus? It claims to be cross-platform, but I don't know how
it compares with regards to the data-aware controls.

Thomas

Re: Development of cross-platform GUI for Open Source DBs

From
"Olexandr Melnyk"
Date:
2006/11/27, Tony Caduto <tony_caduto@amsoftwaredesign.com>:
> One could also use Mono 1.2 and any .net 1.1 IDE such as Borland
> Turbo C# or Delphi.net (with npgsql .net data provider) both of which
> you can get for free here:
> http://www.turboexplorer.com
> or SharpDevelop which you can get here: http://www.icsharpcode.com

Mono/.NET is definately worth the consideration. However, I'd advice you not to go with Turbo C#, as it only supports .NET 1.*, so you won't be able to use such goodies as: generics and nullable types, which are quite handy, especially for the database-oriented applications.

But I'm not sure about .NET 2.0 support of the full-featured Delphi.NET.

> Sure you could use Wxwidgets with Python or whatever, but you
> development time is going to be more than twice as long as compared to > a application built with Delphi.

> I have also tried MonoDevelop, but it has a way to go before being
> really useful.

Initial development phase is really short with Delphi/VCL, I agree. But when project evolves, many problems appear, which show how odd VCL is in this or that place. The same, but to a lesser extent, applies to Windows.Forms.

I suggest going with some mature GUI platform, such as Gtk. It has bindings for .NET and is included in standard Mono download. With it you will get all benefits of layout-based GUI toolkit, like: you won't have to write extra code for rendering forms correctly when they are internationalised.

So my advice goes towards Mono/Gtk#. There is a bunch of programming languages for Mono/.NET to choose from, so choosing one of them mostly depends on your taste.

---------------------------------
Olexandr Melnyk,
http://omelnyk.net/


Re: Development of cross-platform GUI for Open Source DBs

From
Tony Caduto
Date:
Thomas Kellerer wrote:
> On 27.11.2006 17:36 Tony Caduto wrote:
>> The closest to Delphi in a cross platform system is NetBeans and even
>> with their form designer it's still tedious working with databases
>> compared to Delphi.
> What about Lazarus? It claims to be cross-platform, but I don't know
> how it compares with regards to the data-aware controls.
>
> Thomas
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
>
Yes,
Lazarus is not bad and very very similar to Delphi.  It does have issues
though.
It could be a good choice if you don't mind working around it's bugs. It
is getting better all the time.

--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Development of cross-platform GUI for Open Source DBs

From
Tony Caduto
Date:
Olexandr Melnyk wrote:
>
>
> Mono/.NET is definately worth the consideration. However, I'd advice
> you not to go with Turbo C#, as it only supports .NET 1.*, so you
> won't be able to use such goodies as: generics and nullable types,
> which are quite handy, especially for the database-oriented applications.
>
>
>
> Initial development phase is really short with Delphi/VCL, I agree.
> But when project evolves, many problems appear, which show how odd VCL
> is in this or that place. The same, but to a lesser extent, applies to
> Windows.Forms.
>
>
Mono 1.2 only fully supports .net 1.1 (for winforms)  so the Turbo C#
would be a good choice as would Delphi.net.
You would have to stick to the standard winforms controls, but you can
create a very rich application with just the stock controls.

What kind of problems have you seen with the VCL as a project matures?
I have never run into any issues and have several mature/large projects.

Later,

--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Only MONO/WinForms is a way to go

From
"Andrus"
Date:
>So my advice goes towards Mono/Gtk#. There is a bunch of programming
>languages for Mono/.NET to choose from, so choosing one of them mostly
>depends on your taste.


Here is some information missing from this thread:

1. Gtk# does not support data binding required for database application. It
even does not have grid control, uses treeview to emulate it.
WinForms controls have native data binding support.

2. Database table Grid requires a lot of memory management (alloc,free,
compacting).

This is performed faster when managed code in C# is used   rather in
plain-pointer C++
You cannot image that you re-implement MONO memoy manager in C++
application, don't you?

3. wxGrid does not allow to use up and down arrows to move previous/next
rows when data is edited in grid cells.  You cannot use arrows to move
prev/next row in pgAdmin when edititng data.
Second (in order of created code) pgAdmin developer, Andres hates wxGrid.

4. wxGrid does not support virtual grid. Whole dataset is rendered in memory
alwas.
.NET DataGridView has native virtual grid support. It can read new data from
Postgres database only when page down key is pressed.

5. Java is not LGPL and does not support Generic at bytecode level
Mono libraries are LGPL and it supports Generic at bytecode level.

6. Nowadays Microsoft controls Delphi and forces it to stop running in
Linux. Kylix has no upgrades.


Conclusion:

Only MONO/WinForms  is a way to go in any serious application.


Andrus.



Re: Only MONO/WinForms is a way to go

From
"Tomi N/A"
Date:
2006/11/28, Andrus <eetasoft@online.ee>:

> Only MONO/WinForms  is a way to go in any serious application.

Mono needs to show a lot more than beagle and f-spot to be even
considered interesting, let alone a platform to base industrial
strength applications on.
As long as that doesn't radically change for the better (possibly
never, but then again maybe as soon as a year or two), .net will still
be a golden cage, and "multiplatform .net" an oxymoron. That's if you
don't mind all the ethical mumbo-jumbo (easier to dismiss it when you
call it a name like that) of dealing with a company like MS and
securing plentiful licence sales for them through your product.

Cheers,
t.n.a.

Re: Development of cross-platform GUI for Open Source DBs

From
"Olexandr Melnyk"
Date:
2006/11/28, Tony Caduto <tony_caduto@amsoftwaredesign.com>:
> Mono 1.2 only fully supports .net 1.1 (for winforms)

Yes. But it already supports most of the .NET 2.0 features (not talking of WinForms here) including the ones metioned above and has a C# 2.0 compiler.

> What kind of problems have you seen with the VCL as a project matures?

As I've already mentioned, it's not layout-based. Anchors only partially solve the task, so problems can still appear when adding extra languages interfaces to the application. Also, VCL is quite incomplete. Say, how much sense does it make for button not to have color property, while other components, like edit, label and check box have it? There are similar situations with other objects, when it seems odd, why it doesn't have a certain feature/property.

--------------------------------
Olexandr Melnyk,
http://omelnyk.net/

Re: Only MONO/WinForms is a way to go

From
"Joshua D. Drake"
Date:
On Tue, 2006-11-28 at 17:31 +0000, Tomi N/A wrote:
> 2006/11/28, Andrus <eetasoft@online.ee>:
>
> > Only MONO/WinForms  is a way to go in any serious application.
>
> Mono needs to show a lot more than beagle and f-spot to be even
> considered interesting, let alone a platform to base industrial
> strength applications on.

Not to mention that Mono is largely developed (controlled) by Novell..

*cough*

> As long as that doesn't radically change for the better (possibly
> never, but then again maybe as soon as a year or two), .net will still
> be a golden cage, and "multiplatform .net" an oxymoron. That's if you
> don't mind all the ethical mumbo-jumbo (easier to dismiss it when you
> call it a name like that) of dealing with a company like MS and
> securing plentiful licence sales for them through your product.
>
> Cheers,
> t.n.a.
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faq
>
--

      === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate




Re: Only MONO/WinForms is a way to go

From
"Joshua D. Drake"
Date:
>
> Conclusion:
>
> Only MONO/WinForms  is a way to go in any serious application.

Py/QT? Py/GTK?

Joshua D. Drake


>
>
> Andrus.
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: In versions below 8.0, the planner will ignore your desire to
>        choose an index scan if your joining column's datatypes do not
>        match
>
--

      === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate




Re: Only MONO/WinForms is a way to go

From
John DeSoi
Date:
On Nov 28, 2006, at 12:17 PM, Andrus wrote:

> Only MONO/WinForms  is a way to go in any serious application.


Funny. Did you read the original post? The poster wanted a *cross-
platform* GUI and his primary development environment was OS X. Mono
might run on a Mac after you install thousands of packages (see
instructions below), but the applications won't look like a native
Mac application. There are supposedly some native Mono toolkits for
the Mac, but I have yet to see any Mac application that uses it.

As I mentioned previously, XUL is worth a look for cross platform
applications. I would call FireFox, Mozilla, and Thunderbird serious
applications. And check out Komodo, an excellent cross platform
development environment built on this framework.



John DeSoi, Ph.D.
http://pgedit.com/
Power Tools for PostgreSQL




While MacOS X has its own GUI toolkit (Aqua/Cocoa), it also includes
support for X11 (Quartz accelerated). Gtk# (http://mono-project.com/
GtkSharp), Mono's cross platform graphical toolkit runs on MacOS X
but packages are not yet available for it or its dependencies (which
are numerous).

Today, if you want to run or develop Gtk# applications, Fink (http://
fink.sourceforge.net) is the best way to install all necessary
dependencies (gnome-desktop and all others). Installing GTK# on MacOS
is still a little effort intensive (instructions from Geoff Norton):

Install the latest Mono.framework
Install Fink (http://fink.sourceforge.net)
Update fink to CVS (fink selfupdate-cvs)
Update fink to unstable
Update all fink core packages (fink update-all)
Install Apple X11
Install gnome and gtkhtml3 from fink (fink install bundle-gnome
gtkhtml3 gtkhtml3-dev gtkhtml3-shlibs)
Have a coffee / nap / go for a walk while fink installs Gnome.
Install Gtk# from source to the prefix /Library/Frameworks/
Mono.framework/Versions/Current (You will need to set the following
environment variables: PKG_CONFIG_PATH=/sw/lib/pkgconfig:/usr/X11R6/
lib/pkgconfig:/Library/
Frameworks/Mono.framework/Versions/Current/lib/pkgconfig)


Re: Development of cross-platform GUI for Open Source DBs

From
"Merlin Moncure"
Date:
On 11/28/06, Olexandr Melnyk <omelnyk@gmail.com> wrote:
> 2006/11/28, Tony Caduto <tony_caduto@amsoftwaredesign.com>:
> > Mono 1.2 only fully supports .net 1.1 (for winforms)
>
> Yes. But it already supports most of the .NET 2.0 features (not talking of
> WinForms here) including the ones metioned above and has a C# 2.0 compiler.
>
> > What kind of problems have you seen with the VCL as a project matures?
>
> As I've already mentioned, it's not layout-based. Anchors only partially
> solve the task, so problems can still appear when adding extra languages


> interfaces to the application. Also, VCL is quite incomplete. Say, how much
> sense does it make for button not to have color property, while other
> components, like edit, label and check box have it? There are similar
> situations with other objects, when it seems odd, why it doesn't have a
> certain feature/property.

there are many components that solve this.  I was quite astounded when
windows.forms came out that it did not have a functional grid
component.  While mono/c# is nice, I greatly prefer the TDataset
interface to ado.net middleware.  There are some VCL based database
middlewares, like zeos, which completely outclass odbc.

For a general purpose language, lately I've been taking a really good
look at 'D', which looks to be an amazing language.  Has anybody tried
to hook up postgresql to D?

merlin

Re: Only MONO/WinForms is a way to go

From
"Joshua D. Drake"
Date:
On Tue, 2006-11-28 at 13:52 -0500, John DeSoi wrote:
> On Nov 28, 2006, at 12:17 PM, Andrus wrote:
>
> > Only MONO/WinForms  is a way to go in any serious application.
>
>
> Funny. Did you read the original post? The poster wanted a *cross-
> platform* GUI and his primary development environment was OS X.

I didn't see that in my post either... py/qt will draw to native widgets
I believe.

Joshua D. Drake

--

      === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate




Re: Only MONO/WinForms is a way to go

From
Tony Caduto
Date:
John DeSoi wrote:
>
>
> As I mentioned previously, XUL is worth a look for cross platform
> applications. I would call FireFox, Mozilla, and Thunderbird serious
> applications. And check out Komodo, an excellent cross platform
> development environment built on this framework.
>
They are serious applications, but they don't exactly have a lot of
forms and look how long Mozilla was in development.
Sure XUL might be cross platform, but how productive is it?
The reason there is no highly productive IDE for Linux/Mac with a nice
forms designer and robust data binding is because in the grand scheme of
things there are not a lot of
desktop users for anything other than win32.  Sure there are lots of
geeks that use Linux for their desktop, but not everyday users.
Everyday users are the ones companies etc want to make software for and
Linux etc just does not have those kind of users yet.
The mac does, but they are small  in number
CodeGear(Borland devtools group) will make a IDE for Mac or Linux when
they can make a viable return on investment.  They experimented with
Kylix, but it failed because they initially priced it to high and many
open source users will not pay even a reasonable amount for a IDE.

--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Only MONO/WinForms is a way to go

From
Rich Shepard
Date:
On Tue, 28 Nov 2006, Tony Caduto wrote:

> The reason there is no highly productive IDE for Linux/Mac with a nice
> forms designer and robust data binding is because in the grand scheme of
> things there are not a lot of desktop users for anything other than win32.
> Sure there are lots of geeks that use Linux for their desktop, but not
> everyday users.

   Hello? Where have you been the past few years? This is one of the most
amusing mis-statements I've read in a long time.

   I know a software engineer with more than 25 years experience who works
with the KDE IDE for multi-language development, and he deploys these
applications on multiple platforms.

   But, wait, ... you'd classify him with the geeks.

   How about municiple workers in Munich, Germany? Are they not everyday
non-geeks? The city dumped Microsoft for linux a couple of years ago. So
havs Brazil, China, and a host of other countries. Many schools -- including
a large number in Oregon and Washington -- run linux for both students and
administrators using the Linux Terminal Server Project (LTSP/K12).

   Well, that's enough. If you look around you, you'll recognize how silly
that reads. At least, I hope that you do.

Rich

--
Richard B. Shepard, Ph.D.               |    The Environmental Permitting
Applied Ecosystem Services, Inc.(TM)    |            Accelerator
<http://www.appl-ecosys.com>     Voice: 503-667-4517      Fax: 503-667-8863

Re: Development of cross-platform GUI for Open Source DBs

From
Rich Shepard
Date:
On Tue, 28 Nov 2006, Merlin Moncure wrote:

> For a general purpose language, lately I've been taking a really good look
> at 'D', which looks to be an amazing language.  Has anybody tried to hook
> up postgresql to D?

   No, I haven't. But, if you want a cross-platform language and GUI toolkit,
consider Python and wxPython.

--
Richard B. Shepard, Ph.D.               |    The Environmental Permitting
Applied Ecosystem Services, Inc.(TM)    |            Accelerator
<http://www.appl-ecosys.com>     Voice: 503-667-4517      Fax: 503-667-8863

Re: Only MONO/WinForms is a way to go

From
Thomas Kellerer
Date:
Andrus wrote on 28.11.2006 18:17:
> 5. Java is not LGPL and does not support Generic at bytecode level
I have heard this "Java is not open source" over and over again.
What's the issue with wanting the language to be open source? Where is the
problem with using Java from a license perspective? You are (and always have
been) free to bundle the JRE with your app. And besides: Java just went
OpenSource with (AFAIK) very liberal license.

And who cares if my bytecode knows something about Generics as long as the
application runs at a good speed?

Thomas

Re: Only MONO/WinForms is a way to go

From
Tony Caduto
Date:
Rich Shepard wrote:
> On Tue, 28 Nov 2006, Tony Caduto wrote:
>
>> The reason there is no highly productive IDE for Linux/Mac with a nice
>> forms designer and robust data binding is because in the grand scheme of
>> things there are not a lot of desktop users for anything other than
>> win32. Sure there are lots of geeks that use Linux for their desktop,
>> but not
>> everyday users.
>
>   Hello? Where have you been the past few years? This is one of the most
> amusing mis-statements I've read in a long time.
>
>   I know a software engineer with more than 25 years experience who works
> with the KDE IDE for multi-language development, and he deploys these
> applications on multiple platforms.
>
>   But, wait, ... you'd classify him with the geeks.
>
>   How about municiple workers in Munich, Germany? Are they not everyday
> non-geeks? The city dumped Microsoft for linux a couple of years ago. So
> havs Brazil, China, and a host of other countries. Many schools --
> including
> a large number in Oregon and Washington -- run linux for both students
> and
> administrators using the Linux Terminal Server Project (LTSP/K12).
>
>   Well, that's enough. If you look around you, you'll recognize how silly
> that reads. At least, I hope that you do.
>
> Rich
>
It's not silly, world wide the vast majority is still win32 and it's
over 90 percent.
Munich Germany is what 20,000 desktops?  again small numbers in the
grand scheme of things.
Do you think companies like Adobe etc are going to port their win32 only
software for the Munich Germany users?
Can you name a significant number of LARGE corps that uses Linux
Desktops besides IBM or Novell?

I don't like M$ , but the cold hard fact of the matter is they still own
the desktop market and that's why
commercial companies like Adobe, Intuit etc don't write software for
Linux or other non windows desktops.
Also when I say everyday users I mean people at home, the moms, the
dads, the 8 year old kids etc etc

Go into any retail store and try and find commercial shrink wrapped
software, guess what there isn't any. (at least here in Milwaukee)

You will find a few Linux users here and there, for example the city of
Kenosha here in Wisconsin uses it a lot, Burlington Coat Factory uses
it, but in each of these cases they have not been able to fully switch
because some apps would not run on Linux.
If I go into almost any business/corp in the downtown Milwaukee area
they all us M$ products many do have Linux or FreeBSD servers, but they
are limited to things like email gateways, database servers etc.

Later,

--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Only MONO/WinForms is a way to go

From
Tony Caduto
Date:
Thomas Kellerer wrote:
>
>
> And who cares if my bytecode knows something about Generics as long as
> the application runs at a good speed?
>
I totally agree about generics, nice to have but not really needed.

In case not everyone is up to speed about generics, this article is
really good:

http://www.artima.com/intv/generics.html


--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Only MONO/WinForms is a way to go

From
"Merlin Moncure"
Date:
On 11/28/06, Tony Caduto <tony_caduto@amsoftwaredesign.com> wrote:
> Thomas Kellerer wrote:
> >
> >
> > And who cares if my bytecode knows something about Generics as long as
> > the application runs at a good speed?
> >
> I totally agree about generics, nice to have but not really needed.

I dont like generics as much as c++ templates, but both are far better
than inheritance style oo, imo. c++ with STL, more than any other
language (except for possibily D, which I'm looking at) allows me to
write fast code with minimum effort.

merlin

Re: Only MONO/WinForms is a way to go

From
John DeSoi
Date:
On Nov 28, 2006, at 2:05 PM, Tony Caduto wrote:

> They are serious applications, but they don't exactly have a lot of
> forms and look how long Mozilla was in development.

I think the various interfaces in something like Thunderbird shows it
can do all the standard GUI stuff pretty well.

> The reason there is no highly productive IDE for Linux/Mac with a
> nice forms designer and robust data binding is because in the grand
> scheme of things there are not a lot of
> desktop users for anything other than win32.  Sure there are lots
> of geeks that use Linux for their desktop, but not everyday users.
> Everyday users are the ones companies etc want to make software for
> and Linux etc just does not have those kind of users yet.
> The mac does, but they are small  in number
> CodeGear(Borland devtools group) will make a IDE for Mac or Linux
> when they can make a viable return on investment.  They
> experimented with Kylix, but it failed because they initially
> priced it to high and many open source users will not pay even a
> reasonable amount for a IDE.
>

There are highly productive IDEs for the Mac with all the goodies you
mention. But few are cross-platform.

Your statement about Windows desktop market share is correct, but it
is not the relevant point. Many people are interested in cross-
platform tools because they want to serve the Windows desktop market,
but not have to give up Linux or OS X to do it.




John DeSoi, Ph.D.
http://pgedit.com/
Power Tools for PostgreSQL


Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
Hello All

Sorry for the late reply. Been a little busy with my assignments.

I will try to answer all the queries in this mail.

The reason I don't want to develop the project in wxWindows or a C/C++
based toolkit is that in the end I would be able to compile a binary
which will have least dependency and can be bundled for downloaded in
a single binary. With my experience while developing and selling
SQLyog, I came across many customers who were working on a slow dial
up connection for whom downloaded a 10MB package was also a pain. I
have had customers who just had plain vanilla Win98 machines and
SQLyog used to run great on it.

Another reason why suggested wxWidgets is because I have worked with
it before and I am comfortable with the system. As somebody suggested,
even wxPython looks good as Python greatly increases the speed of
implementation.

Also, IDEs like Delphi etc. are out of question as I cant afford to
buy the licenses.

I have no experience with XUL but it looks good. I am not sure, how
easy is to design GUI with lots of forms etc, with XUL. Writing an
initial prototype in XUL will make things more clear.

Even though I am not related to Webyog (developer of SQLyog) anymore,
I had started a project up there called SQLyog Max (which didn't work
due to time constraints rather then technological constraints) and we
even released one BETA release that had support for both MySQL and
PostgreSQL.

I believe developing an actual prototype would help our cause more
then just deciding upon which tool kit to use. My semester gets over
on 15th December. I plan to sit with it after that. Right now I am
thinking of an architecture which can support something like this.

If you have any idea how something like should be designed or
architectured, please provide me with your invaluable suggestions.

In other related question, my primary desktop of usage is Mac OS X but
I will be buying a Ubuntu box soon so expect decent development
parallely in Mac and Linux. I am not sure about Windows but if we
write correct wxWidgets/wxPython code, it should be a 0 issue to get
it compiled in Windows.

Ritesh

On 11/28/06, Rich Shepard <rshepard@appl-ecosys.com> wrote:
> On Tue, 28 Nov 2006, Merlin Moncure wrote:
>
> > For a general purpose language, lately I've been taking a really good look
> > at 'D', which looks to be an amazing language.  Has anybody tried to hook
> > up postgresql to D?
>
>    No, I haven't. But, if you want a cross-platform language and GUI toolkit,
> consider Python and wxPython.
>
> --
> Richard B. Shepard, Ph.D.               |    The Environmental Permitting
> Applied Ecosystem Services, Inc.(TM)    |            Accelerator
> <http://www.appl-ecosys.com>     Voice: 503-667-4517      Fax: 503-667-8863
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faq
>

Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
Hey

Sorry for the critical mistake. Pressed the SEND button too early. In
the first para I meant:

The reason I *want* to develop the project in wxWindows or a C/C++
based toolkit is that in the end I would be able to compile a binary
which will have least dependency and can be bundled for downloaded in
a single binary. With my experience while developing and selling
SQLyog, I came across many customers who were working on a slow dial
up connection for whom downloaded a 10MB package was also a pain. I
have had customers who just had plain vanilla Win98 machines and
SQLyog used to run great on it.

instead of:

The reason I *don't want* to develop the project in wxWindows or a C/C++
based toolkit is that in the end I would be able to compile a binary
which will have least dependency and can be bundled for downloaded in
a single binary. With my experience while developing and selling
SQLyog, I came across many customers who were working on a slow dial
up connection for whom downloaded a 10MB package was also a pain. I
have had customers who just had plain vanilla Win98 machines and
SQLyog used to run great on it.

Ritesh

On 11/28/06, Ritesh Nadhani <rn.mailing@gmail.com> wrote:
> Hello All
>
> Sorry for the late reply. Been a little busy with my assignments.
>
> I will try to answer all the queries in this mail.
>
> The reason I don't want to develop the project in wxWindows or a C/C++
> based toolkit is that in the end I would be able to compile a binary
> which will have least dependency and can be bundled for downloaded in
> a single binary. With my experience while developing and selling
> SQLyog, I came across many customers who were working on a slow dial
> up connection for whom downloaded a 10MB package was also a pain. I
> have had customers who just had plain vanilla Win98 machines and
> SQLyog used to run great on it.
>
> Another reason why suggested wxWidgets is because I have worked with
> it before and I am comfortable with the system. As somebody suggested,
> even wxPython looks good as Python greatly increases the speed of
> implementation.
>
> Also, IDEs like Delphi etc. are out of question as I cant afford to
> buy the licenses.
>
> I have no experience with XUL but it looks good. I am not sure, how
> easy is to design GUI with lots of forms etc, with XUL. Writing an
> initial prototype in XUL will make things more clear.
>
> Even though I am not related to Webyog (developer of SQLyog) anymore,
> I had started a project up there called SQLyog Max (which didn't work
> due to time constraints rather then technological constraints) and we
> even released one BETA release that had support for both MySQL and
> PostgreSQL.
>
> I believe developing an actual prototype would help our cause more
> then just deciding upon which tool kit to use. My semester gets over
> on 15th December. I plan to sit with it after that. Right now I am
> thinking of an architecture which can support something like this.
>
> If you have any idea how something like should be designed or
> architectured, please provide me with your invaluable suggestions.
>
> In other related question, my primary desktop of usage is Mac OS X but
> I will be buying a Ubuntu box soon so expect decent development
> parallely in Mac and Linux. I am not sure about Windows but if we
> write correct wxWidgets/wxPython code, it should be a 0 issue to get
> it compiled in Windows.
>
> Ritesh
>
> On 11/28/06, Rich Shepard <rshepard@appl-ecosys.com> wrote:
> > On Tue, 28 Nov 2006, Merlin Moncure wrote:
> >
> > > For a general purpose language, lately I've been taking a really good look
> > > at 'D', which looks to be an amazing language.  Has anybody tried to hook
> > > up postgresql to D?
> >
> >    No, I haven't. But, if you want a cross-platform language and GUI toolkit,
> > consider Python and wxPython.
> >
> > --
> > Richard B. Shepard, Ph.D.               |    The Environmental Permitting
> > Applied Ecosystem Services, Inc.(TM)    |            Accelerator
> > <http://www.appl-ecosys.com>     Voice: 503-667-4517      Fax: 503-667-8863
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 3: Have you checked our extensive FAQ?
> >
> >                http://www.postgresql.org/docs/faq
> >
>

Re: Only MONO/WinForms is a way to go

From
"Ritesh Nadhani"
Date:
Hello John

I see that pgEdit is for both Windows and Mac. Which toolkit did you
use to develop it and what are your primary development environment?

Ritesh

On 11/28/06, John DeSoi <desoi@pgedit.com> wrote:
>
> On Nov 28, 2006, at 2:05 PM, Tony Caduto wrote:
>
> > They are serious applications, but they don't exactly have a lot of
> > forms and look how long Mozilla was in development.
>
> I think the various interfaces in something like Thunderbird shows it
> can do all the standard GUI stuff pretty well.
>
> > The reason there is no highly productive IDE for Linux/Mac with a
> > nice forms designer and robust data binding is because in the grand
> > scheme of things there are not a lot of
> > desktop users for anything other than win32.  Sure there are lots
> > of geeks that use Linux for their desktop, but not everyday users.
> > Everyday users are the ones companies etc want to make software for
> > and Linux etc just does not have those kind of users yet.
> > The mac does, but they are small  in number
> > CodeGear(Borland devtools group) will make a IDE for Mac or Linux
> > when they can make a viable return on investment.  They
> > experimented with Kylix, but it failed because they initially
> > priced it to high and many open source users will not pay even a
> > reasonable amount for a IDE.
> >
>
> There are highly productive IDEs for the Mac with all the goodies you
> mention. But few are cross-platform.
>
> Your statement about Windows desktop market share is correct, but it
> is not the relevant point. Many people are interested in cross-
> platform tools because they want to serve the Windows desktop market,
> but not have to give up Linux or OS X to do it.
>
>
>
>
> John DeSoi, Ph.D.
> http://pgedit.com/
> Power Tools for PostgreSQL
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: In versions below 8.0, the planner will ignore your desire to
>        choose an index scan if your joining column's datatypes do not
>        match
>

Re: Only MONO/WinForms is a way to go

From
John DeSoi
Date:
Hi Ritesh,

On Nov 28, 2006, at 8:53 PM, Ritesh Nadhani wrote:

> I see that pgEdit is for both Windows and Mac. Which toolkit did you
> use to develop it and what are your primary development environment?

pgEdit is written in Lisp with LispWorks (http://www.lispworks.com).
It has a pretty nice cross-platform toolkit. There is a Linux
version, but unfortunately the only window manager it supports is
Motif. LispWorks is great, but probably not the right tool for an
open source project :).


John



John DeSoi, Ph.D.
http://pgedit.com/
Power Tools for PostgreSQL


Re: Only MONO/WinForms is a way to go

From
Marcus Engene
Date:
John DeSoi skrev:

> There are highly productive IDEs for the Mac with all the goodies you
> mention. But few are cross-platform.
>
> Your statement about Windows desktop market share is correct, but it is
> not the relevant point. Many people are interested in cross-platform
> tools because they want to serve the Windows desktop market, but not
> have to give up Linux or OS X to do it.

Personally, I bothered with cross platform for my product because
I wanted to develop it in Windows/Visual studio. I have found nothing
that comes near it on Linux and I'm to old to waste time with emacs
for idealistic reasons. Emacs serves a purpose but not mine.

Best regards,
Marcus


Re: Development of cross-platform GUI for Open Source DBs

From
John McCawley
Date:
I have been struggling with this problem for a few years.  I have
written a basic relational database design tool:

http://www.hardgeus.com/pgdesigner/

I have completely rewritten this program 3 times.  I initially
implemented it in Fltk, but ran into a bunch of limitations in the API.
I rewrote it in WxGTK and was pretty happy with the results -- until I
ported to Windows.  My program was so abysmally broken in Windows that I
threw the code away and vowed never again to use WxWidgets.  I recently
ported the entire codebase over to QT4 and have been VERY happy with it.

Unfortunately, my love for QT4 has put my project into a bit of a
limbo...Most versions of Linux don't "play nice" with multiple versions
of the same API on the machine, and most Linux distros use QT3 since
that's the underlying API of KDE.    I already get a ton of mail from
people trying to compile the old versions of PGDesigner, I'd hate to
think what would happen if I tried to release my QT4 version now...My
build setup is pretty nuts, to say the least:

http://www.hardgeus.com/index.php?ndailyupdateid=685

It sucks, because I use pgDesigner almost every day to visualize my
Postgres databases, but QT4 just isn't "there" enough for me to support it.

Anyway, you didn't ask for a novel...I would recommend QT3 for your
project.  I am not entirely certain how much I am using is QT4 specific,
but I have been very happy with the signal/slot architecture, clean
database handling, and very robust variant-like variable handling (i.e.
I don't have to have giant bloated type-checking when copying data out
of my database into a local variable).


Ritesh Nadhani wrote:

> Hey
>
> Sorry for the critical mistake. Pressed the SEND button too early. In
> the first para I meant:
>
> The reason I *want* to develop the project in wxWindows or a C/C++
> based toolkit is that in the end I would be able to compile a binary
> which will have least dependency and can be bundled for downloaded in
> a single binary. With my experience while developing and selling
> SQLyog, I came across many customers who were working on a slow dial
> up connection for whom downloaded a 10MB package was also a pain. I
> have had customers who just had plain vanilla Win98 machines and
> SQLyog used to run great on it.
>
> instead of:
>
> The reason I *don't want* to develop the project in wxWindows or a C/C++
> based toolkit is that in the end I would be able to compile a binary
> which will have least dependency and can be bundled for downloaded in
> a single binary. With my experience while developing and selling
> SQLyog, I came across many customers who were working on a slow dial
> up connection for whom downloaded a 10MB package was also a pain. I
> have had customers who just had plain vanilla Win98 machines and
> SQLyog used to run great on it.
>
> Ritesh
>
> On 11/28/06, Ritesh Nadhani <rn.mailing@gmail.com> wrote:
>
>> Hello All
>>
>> Sorry for the late reply. Been a little busy with my assignments.
>>
>> I will try to answer all the queries in this mail.
>>
>> The reason I don't want to develop the project in wxWindows or a C/C++
>> based toolkit is that in the end I would be able to compile a binary
>> which will have least dependency and can be bundled for downloaded in
>> a single binary. With my experience while developing and selling
>> SQLyog, I came across many customers who were working on a slow dial
>> up connection for whom downloaded a 10MB package was also a pain. I
>> have had customers who just had plain vanilla Win98 machines and
>> SQLyog used to run great on it.
>>
>> Another reason why suggested wxWidgets is because I have worked with
>> it before and I am comfortable with the system. As somebody suggested,
>> even wxPython looks good as Python greatly increases the speed of
>> implementation.
>>
>> Also, IDEs like Delphi etc. are out of question as I cant afford to
>> buy the licenses.
>>
>> I have no experience with XUL but it looks good. I am not sure, how
>> easy is to design GUI with lots of forms etc, with XUL. Writing an
>> initial prototype in XUL will make things more clear.
>>
>> Even though I am not related to Webyog (developer of SQLyog) anymore,
>> I had started a project up there called SQLyog Max (which didn't work
>> due to time constraints rather then technological constraints) and we
>> even released one BETA release that had support for both MySQL and
>> PostgreSQL.
>>
>> I believe developing an actual prototype would help our cause more
>> then just deciding upon which tool kit to use. My semester gets over
>> on 15th December. I plan to sit with it after that. Right now I am
>> thinking of an architecture which can support something like this.
>>
>> If you have any idea how something like should be designed or
>> architectured, please provide me with your invaluable suggestions.
>>
>> In other related question, my primary desktop of usage is Mac OS X but
>> I will be buying a Ubuntu box soon so expect decent development
>> parallely in Mac and Linux. I am not sure about Windows but if we
>> write correct wxWidgets/wxPython code, it should be a 0 issue to get
>> it compiled in Windows.
>>
>> Ritesh
>>
>> On 11/28/06, Rich Shepard <rshepard@appl-ecosys.com> wrote:
>> > On Tue, 28 Nov 2006, Merlin Moncure wrote:
>> >
>> > > For a general purpose language, lately I've been taking a really
>> good look
>> > > at 'D', which looks to be an amazing language.  Has anybody tried
>> to hook
>> > > up postgresql to D?
>> >
>> >    No, I haven't. But, if you want a cross-platform language and
>> GUI toolkit,
>> > consider Python and wxPython.
>> >
>> > --
>> > Richard B. Shepard, Ph.D.               |    The Environmental
>> Permitting
>> > Applied Ecosystem Services, Inc.(TM)    |            Accelerator
>> > <http://www.appl-ecosys.com>     Voice: 503-667-4517      Fax:
>> 503-667-8863
>> >
>> > ---------------------------(end of
>> broadcast)---------------------------
>> > TIP 3: Have you checked our extensive FAQ?
>> >
>> >                http://www.postgresql.org/docs/faq
>> >
>>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
>               http://www.postgresql.org/docs/faq


Re: Only MONO/WinForms is a way to go

From
"Joshua D. Drake"
Date:
On Wed, 2006-11-29 at 08:29 +0100, Marcus Engene wrote:
> John DeSoi skrev:
>
> > There are highly productive IDEs for the Mac with all the goodies you
> > mention. But few are cross-platform.
> >
> > Your statement about Windows desktop market share is correct, but it is
> > not the relevant point. Many people are interested in cross-platform
> > tools because they want to serve the Windows desktop market, but not
> > have to give up Linux or OS X to do it.
>
> Personally, I bothered with cross platform for my product because
> I wanted to develop it in Windows/Visual studio.

The closest I think you would find is Eclipse or maybe KDevelop.


>  I have found nothing
> that comes near it on Linux and I'm to old to waste time with emacs
> for idealistic reasons. Emacs serves a purpose but not mine.

There is zero reason for you to have to even justify not wanting to
waste time with emacs.

Sincerely,

Joshua D. Drake


>
> Best regards,
> Marcus
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faq
>
--

      === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate




Re: Only MONO/WinForms is a way to go

From
Tony Caduto
Date:
Joshua D. Drake wrote:
> The closest I think you would find is Eclipse or maybe KDevelop.
>
>
>
Actually NetBeans 5.5 is the closest thing I have seen for Java that is
even close to visual studio or Delphi.
The visual web add on  package they have for 5.5 is actually pretty
amazing, it's a tech preview but still amazing.

Later,

--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
Hello

I have been working with wxWidgets and I didnt face a problem. What
specific thing were broken in wxWidgets for Windows?

Ritesh

On 11/29/06, John McCawley <nospam@hardgeus.com> wrote:
> I have been struggling with this problem for a few years.  I have
> written a basic relational database design tool:
>
> http://www.hardgeus.com/pgdesigner/
>
> I have completely rewritten this program 3 times.  I initially
> implemented it in Fltk, but ran into a bunch of limitations in the API.
> I rewrote it in WxGTK and was pretty happy with the results -- until I
> ported to Windows.  My program was so abysmally broken in Windows that I
> threw the code away and vowed never again to use WxWidgets.  I recently
> ported the entire codebase over to QT4 and have been VERY happy with it.
>
> Unfortunately, my love for QT4 has put my project into a bit of a
> limbo...Most versions of Linux don't "play nice" with multiple versions
> of the same API on the machine, and most Linux distros use QT3 since
> that's the underlying API of KDE.    I already get a ton of mail from
> people trying to compile the old versions of PGDesigner, I'd hate to
> think what would happen if I tried to release my QT4 version now...My
> build setup is pretty nuts, to say the least:
>
> http://www.hardgeus.com/index.php?ndailyupdateid=685
>
> It sucks, because I use pgDesigner almost every day to visualize my
> Postgres databases, but QT4 just isn't "there" enough for me to support it.
>
> Anyway, you didn't ask for a novel...I would recommend QT3 for your
> project.  I am not entirely certain how much I am using is QT4 specific,
> but I have been very happy with the signal/slot architecture, clean
> database handling, and very robust variant-like variable handling (i.e.
> I don't have to have giant bloated type-checking when copying data out
> of my database into a local variable).
>
>
> Ritesh Nadhani wrote:
>
> > Hey
> >
> > Sorry for the critical mistake. Pressed the SEND button too early. In
> > the first para I meant:
> >
> > The reason I *want* to develop the project in wxWindows or a C/C++
> > based toolkit is that in the end I would be able to compile a binary
> > which will have least dependency and can be bundled for downloaded in
> > a single binary. With my experience while developing and selling
> > SQLyog, I came across many customers who were working on a slow dial
> > up connection for whom downloaded a 10MB package was also a pain. I
> > have had customers who just had plain vanilla Win98 machines and
> > SQLyog used to run great on it.
> >
> > instead of:
> >
> > The reason I *don't want* to develop the project in wxWindows or a C/C++
> > based toolkit is that in the end I would be able to compile a binary
> > which will have least dependency and can be bundled for downloaded in
> > a single binary. With my experience while developing and selling
> > SQLyog, I came across many customers who were working on a slow dial
> > up connection for whom downloaded a 10MB package was also a pain. I
> > have had customers who just had plain vanilla Win98 machines and
> > SQLyog used to run great on it.
> >
> > Ritesh
> >
> > On 11/28/06, Ritesh Nadhani <rn.mailing@gmail.com> wrote:
> >
> >> Hello All
> >>
> >> Sorry for the late reply. Been a little busy with my assignments.
> >>
> >> I will try to answer all the queries in this mail.
> >>
> >> The reason I don't want to develop the project in wxWindows or a C/C++
> >> based toolkit is that in the end I would be able to compile a binary
> >> which will have least dependency and can be bundled for downloaded in
> >> a single binary. With my experience while developing and selling
> >> SQLyog, I came across many customers who were working on a slow dial
> >> up connection for whom downloaded a 10MB package was also a pain. I
> >> have had customers who just had plain vanilla Win98 machines and
> >> SQLyog used to run great on it.
> >>
> >> Another reason why suggested wxWidgets is because I have worked with
> >> it before and I am comfortable with the system. As somebody suggested,
> >> even wxPython looks good as Python greatly increases the speed of
> >> implementation.
> >>
> >> Also, IDEs like Delphi etc. are out of question as I cant afford to
> >> buy the licenses.
> >>
> >> I have no experience with XUL but it looks good. I am not sure, how
> >> easy is to design GUI with lots of forms etc, with XUL. Writing an
> >> initial prototype in XUL will make things more clear.
> >>
> >> Even though I am not related to Webyog (developer of SQLyog) anymore,
> >> I had started a project up there called SQLyog Max (which didn't work
> >> due to time constraints rather then technological constraints) and we
> >> even released one BETA release that had support for both MySQL and
> >> PostgreSQL.
> >>
> >> I believe developing an actual prototype would help our cause more
> >> then just deciding upon which tool kit to use. My semester gets over
> >> on 15th December. I plan to sit with it after that. Right now I am
> >> thinking of an architecture which can support something like this.
> >>
> >> If you have any idea how something like should be designed or
> >> architectured, please provide me with your invaluable suggestions.
> >>
> >> In other related question, my primary desktop of usage is Mac OS X but
> >> I will be buying a Ubuntu box soon so expect decent development
> >> parallely in Mac and Linux. I am not sure about Windows but if we
> >> write correct wxWidgets/wxPython code, it should be a 0 issue to get
> >> it compiled in Windows.
> >>
> >> Ritesh
> >>
> >> On 11/28/06, Rich Shepard <rshepard@appl-ecosys.com> wrote:
> >> > On Tue, 28 Nov 2006, Merlin Moncure wrote:
> >> >
> >> > > For a general purpose language, lately I've been taking a really
> >> good look
> >> > > at 'D', which looks to be an amazing language.  Has anybody tried
> >> to hook
> >> > > up postgresql to D?
> >> >
> >> >    No, I haven't. But, if you want a cross-platform language and
> >> GUI toolkit,
> >> > consider Python and wxPython.
> >> >
> >> > --
> >> > Richard B. Shepard, Ph.D.               |    The Environmental
> >> Permitting
> >> > Applied Ecosystem Services, Inc.(TM)    |            Accelerator
> >> > <http://www.appl-ecosys.com>     Voice: 503-667-4517      Fax:
> >> 503-667-8863
> >> >
> >> > ---------------------------(end of
> >> broadcast)---------------------------
> >> > TIP 3: Have you checked our extensive FAQ?
> >> >
> >> >                http://www.postgresql.org/docs/faq
> >> >
> >>
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 3: Have you checked our extensive FAQ?
> >
> >               http://www.postgresql.org/docs/faq
>
>

Re: Only MONO/WinForms is a way to go

From
"Joshua D. Drake"
Date:
On Wed, 2006-11-29 at 10:17 -0600, Tony Caduto wrote:
> Joshua D. Drake wrote:
> > The closest I think you would find is Eclipse or maybe KDevelop.
> >
> >
> >
> Actually NetBeans 5.5 is the closest thing I have seen for Java that is
> even close to visual studio or Delphi.

I forgot that NetBeans was open source now... but Eclipse gives you
multi language support.

> The visual web add on  package they have for 5.5 is actually pretty
> amazing, it's a tech preview but still amazing.

I will take a look.

Joshua D. Drake

>
> Later,
>
--

      === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate




Re: Development of cross-platform GUI for Open Source DBs

From
Richard Troy
Date:
On Wed, 29 Nov 2006, Ritesh Nadhani wrote:
>
> Hello
>
> I have been working with wxWidgets and I didnt face a problem. What
> specific thing were broken in wxWidgets for Windows?
>
> Ritesh

PLEASE take this offline - it's not even close to Postgres related.

Richard

--
Richard Troy, Chief Scientist
Science Tools Corporation
510-924-1363 or 202-747-1263
rtroy@ScienceTools.com, http://ScienceTools.com/


Re: Development of cross-platform GUI for Open Source DBs

From
John McCawley
Date:
Well, to be fair, I was using fairly low-level functionality.  If you
look at the screenshot from my app, I am just using the raw window class
and handling all of the dragging etc. manually.  In addition, my foreign
key drawing is handled by directly painting on the background, and my
own click and drag handling, so it is pretty sensitive to nuanced
differences in behaviors in the platforms.  It is worth noting, however,
that the QT4 version, which is implemented very similarly, works fine
(although I am allowing QT to handle window dragging and resizing).

In wxWidgets, all of my dragging, window placement, foreign key drawing,
etc. were so hopelessly broken in windows that the app was completely
unusable...It was even difficult to tell what was supposed to be going
on.  I dug around in the code quite a bit, but the low-level behaviors I
was getting in Windows were so different than in wxGTK that I just
decided that my approach was flawed.

Even in QT4 I am having to revise my approach.  I am currently using an
MDI window interface for everything, and doing my foreign key drawing
low-level as I was before.  I plan on moving to the (brand new) QT4
canvas widget, which is intended for user-created window behaviors like
this.  Sometimes I think that I would have been better off rendering the
whole UI in OpenGL or something :P

Ritesh Nadhani wrote:

> Hello
>
> I have been working with wxWidgets and I didnt face a problem. What
> specific thing were broken in wxWidgets for Windows?
>
> Ritesh
>
>>

Re: Development of cross-platform GUI for Open Source DBs

From
"Joshua D. Drake"
Date:
On Wed, 2006-11-29 at 08:42 -0800, Richard Troy wrote:
> On Wed, 29 Nov 2006, Ritesh Nadhani wrote:
> >
> > Hello
> >
> > I have been working with wxWidgets and I didnt face a problem. What
> > specific thing were broken in wxWidgets for Windows?
> >
> > Ritesh
>
> PLEASE take this offline - it's not even close to Postgres related.

You are absolutely correct, that is why this is a PostgreSQL mailing
list. ;)

The discussion of development toolkits for Open Source databases *is*
PostgreSQL (there is no Postgres here) related.

Sincerely,

Joshua D. Drake


--

      === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate




Re: Only MONO/WinForms is a way to go

From
"Tomi N/A"
Date:
2006/11/29, Joshua D. Drake <jd@commandprompt.com>:
> On Wed, 2006-11-29 at 10:17 -0600, Tony Caduto wrote:
> > Joshua D. Drake wrote:
> > > The closest I think you would find is Eclipse or maybe KDevelop.
> > >
> > Actually NetBeans 5.5 is the closest thing I have seen for Java that is
> > even close to visual studio or Delphi.
>
> I forgot that NetBeans was open source now... but Eclipse gives you
> multi language support.

You say that as if NetBeans doesn't provide instant internationalization. :)
Seriously, NetBeans' sore point with respect to Eclipse is a
characteristic hard to demonstrate using flash tutorials, but one
nevertheless very important: working with java source code.
Supposedly, it's going to be a lot better with NB 6.0, but I'll see it
when I believe it.

Cheers,
t.n.a.

Re: Only MONO/WinForms is a way to go

From
"Joshua D. Drake"
Date:
On Wed, 2006-11-29 at 17:31 +0000, Tomi N/A wrote:
> 2006/11/29, Joshua D. Drake <jd@commandprompt.com>:
> > On Wed, 2006-11-29 at 10:17 -0600, Tony Caduto wrote:
> > > Joshua D. Drake wrote:
> > > > The closest I think you would find is Eclipse or maybe KDevelop.
> > > >
> > > Actually NetBeans 5.5 is the closest thing I have seen for Java that is
> > > even close to visual studio or Delphi.
> >
> > I forgot that NetBeans was open source now... but Eclipse gives you
> > multi language support.
>
> You say that as if NetBeans doesn't provide instant internationalization. :)

I meant multi programming language support.

Joshua D. Drake

> Seriously, NetBeans' sore point with respect to Eclipse is a
> characteristic hard to demonstrate using flash tutorials, but one
> nevertheless very important: working with java source code.
> Supposedly, it's going to be a lot better with NB 6.0, but I'll see it
> when I believe it.
>
> Cheers,
> t.n.a.
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
>
--

      === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate




Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
Thanks to all for their suggestions and ideas. I believe that there is
indeed a scope for such a tool.

My semester ends on 15th December and I get a one month break between
next semester. I will write a simple app in wxWidgets (that is what I
am comfortable with right now) to show what I am trying to do. From
there on, we can take this forward. If the prototype seems
interesting, we can take it forward and I am even willing to change
the toolkit/language if I find a much better viable alternative.

On 11/29/06, Joshua D. Drake <jd@commandprompt.com> wrote:
> On Wed, 2006-11-29 at 08:42 -0800, Richard Troy wrote:
> > On Wed, 29 Nov 2006, Ritesh Nadhani wrote:
> > >
> > > Hello
> > >
> > > I have been working with wxWidgets and I didnt face a problem. What
> > > specific thing were broken in wxWidgets for Windows?
> > >
> > > Ritesh
> >
> > PLEASE take this offline - it's not even close to Postgres related.
>
> You are absolutely correct, that is why this is a PostgreSQL mailing
> list. ;)
>
> The discussion of development toolkits for Open Source databases *is*
> PostgreSQL (there is no Postgres here) related.
>
> Sincerely,
>
> Joshua D. Drake
>
>
> --
>
>       === The PostgreSQL Company: Command Prompt, Inc. ===
> Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
> Providing the most comprehensive  PostgreSQL solutions since 1997
>              http://www.commandprompt.com/
>
> Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
>
>
>
>

Re: Development of cross-platform GUI for Open Source DBs

From
Tony Caduto
Date:
Ritesh Nadhani wrote:
> Thanks to all for their suggestions and ideas. I believe that there is
> indeed a scope for such a tool.
>
> My semester ends on 15th December and I get a one month break between
> next semester. I will write a simple app in wxWidgets (that is what I
> am comfortable with right now) to show what I am trying to do. From
> there on, we can take this forward. If the prototype seems
> interesting, we can take it forward and I am even willing to change
> the toolkit/language if I find a much better viable alternative.
>
I can't remember if you intended for this to be open source, but why
don't you just work with pgAdmin III
i.e. enhance it .  It already uses WXwidgets and you wouldn't have to
start from scratch.

If you are thinking commercial, it's a tough racket with at least 6
competitors in the market.

Later,

--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Only MONO/WinForms is a way to go

From
"Tomi N/A"
Date:
2006/11/29, Joshua D. Drake <jd@commandprompt.com>:
> On Wed, 2006-11-29 at 17:31 +0000, Tomi N/A wrote:
> > 2006/11/29, Joshua D. Drake <jd@commandprompt.com>:
> > > On Wed, 2006-11-29 at 10:17 -0600, Tony Caduto wrote:
> > > > Joshua D. Drake wrote:
> > > > > The closest I think you would find is Eclipse or maybe KDevelop.
> > > > >
> > > > Actually NetBeans 5.5 is the closest thing I have seen for Java that is
> > > > even close to visual studio or Delphi.
> > >
> > > I forgot that NetBeans was open source now... but Eclipse gives you
> > > multi language support.
> >
> > You say that as if NetBeans doesn't provide instant internationalization. :)
>
> I meant multi programming language support.

There's at least a C/C++ pack available, but yes, eclipse has a
reacher set of plugins to support other languages.

t.n.a.

Re: Development of cross-platform GUI for Open Source DBs

From
"Joshua D. Drake"
Date:
On Wed, 2006-11-29 at 13:00 -0600, Tony Caduto wrote:
> Ritesh Nadhani wrote:
> > Thanks to all for their suggestions and ideas. I believe that there is
> > indeed a scope for such a tool.
> >
> > My semester ends on 15th December and I get a one month break between
> > next semester. I will write a simple app in wxWidgets (that is what I
> > am comfortable with right now) to show what I am trying to do. From
> > there on, we can take this forward. If the prototype seems
> > interesting, we can take it forward and I am even willing to change
> > the toolkit/language if I find a much better viable alternative.
> >
> I can't remember if you intended for this to be open source, but why
> don't you just work with pgAdmin III
> i.e. enhance it .  It already uses WXwidgets and you wouldn't have to
> start from scratch.
>
> If you are thinking commercial, it's a tough racket with at least 6
> competitors in the market.

At least? Your forgetting many of them :).

Joshua D. Drake


>
> Later,
>
--

      === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate




Re: Development of cross-platform GUI for Open Source DBs

From
"Ritesh Nadhani"
Date:
pgAdmin III is only for PgSQL. I plan on a multidb one. Thats my idea
from the beginning. Atleast, support Mysql and PgSQL and and then
support other DB as time progresses.

On 11/29/06, Joshua D. Drake <jd@commandprompt.com> wrote:
> On Wed, 2006-11-29 at 13:00 -0600, Tony Caduto wrote:
> > Ritesh Nadhani wrote:
> > > Thanks to all for their suggestions and ideas. I believe that there is
> > > indeed a scope for such a tool.
> > >
> > > My semester ends on 15th December and I get a one month break between
> > > next semester. I will write a simple app in wxWidgets (that is what I
> > > am comfortable with right now) to show what I am trying to do. From
> > > there on, we can take this forward. If the prototype seems
> > > interesting, we can take it forward and I am even willing to change
> > > the toolkit/language if I find a much better viable alternative.
> > >
> > I can't remember if you intended for this to be open source, but why
> > don't you just work with pgAdmin III
> > i.e. enhance it .  It already uses WXwidgets and you wouldn't have to
> > start from scratch.
> >
> > If you are thinking commercial, it's a tough racket with at least 6
> > competitors in the market.
>
> At least? Your forgetting many of them :).
>
> Joshua D. Drake
>
>
> >
> > Later,
> >
> --
>
>       === The PostgreSQL Company: Command Prompt, Inc. ===
> Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
> Providing the most comprehensive  PostgreSQL solutions since 1997
>              http://www.commandprompt.com/
>
> Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
>
>
>
>

Re: Only MONO/WinForms is a way to go

From
Thomas Kellerer
Date:
Joshua D. Drake wrote on 29.11.2006 17:30:
> I forgot that NetBeans was open source now...
Now? It has been open source way before Eclipse even dawned ;)

Thomas

Re: Only MONO/WinForms is a way to go

From
"Guy Rouillier"
Date:
John DeSoi wrote:
> There are supposedly some native Mono toolkits for
> the Mac, but I have yet to see any Mac application that uses it.

I'm aware there is substantial anti-Java bias here, but the Standard
Widget Toolkit (SWT) uses native widgets on all platforms.  I've never
had occasion to use it, but that would seem to be an attractive option
for a cross-platform GUI.

--
Guy Rouillier


Re: Only MONO/WinForms is a way to go

From
"Tomi N/A"
Date:
2006/11/29, Guy Rouillier <guyr@masergy.com>:
> John DeSoi wrote:
> > There are supposedly some native Mono toolkits for
> > the Mac, but I have yet to see any Mac application that uses it.
>
> I'm aware there is substantial anti-Java bias here, but the Standard
> Widget Toolkit (SWT) uses native widgets on all platforms.  I've never
> had occasion to use it, but that would seem to be an attractive option
> for a cross-platform GUI.

<notreally disclaimer="possibly a year and a half outdated information">
No, not really.
It should really be called the Standard Windows Toolkit so that it
reflects the fact that it's far from industrial quality on any other
platform (except possibly Mac). Unless things have changed, it should
be easy to see what I mean if you create a simple benchmark of GUI
operations speed.
Furthermore, I'm not sure SWT exist for platforms other than Win32,
Mac and Linux.
</notreally>

t.n.a.

Re: Development of cross-platform GUI for Open Source DBs

From
Tony Caduto
Date:
Ritesh Nadhani wrote:
>
>
> Also, IDEs like Delphi etc. are out of question as I cant afford to
> buy the licenses.
>
You can get Turbo Delphi Explorer for free and the license
allows commercial development.  It really is sweet.
Check it out here: http://www.turboexplorer.com/

The explorer version come in C#, Delphi.net and native win32.

The C# OR Delphi.net versions can be used to develop Mono 1.2
applications and work great
with the any .net data provider assembly such as Npgsql  which you can
get at www.pgfoundry.org.

Later,

--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Development of cross-platform GUI for Open Source DBs

From
Tony Caduto
Date:
Ritesh Nadhani wrote:
> Hello All
>
> Sorry for the late reply. Been a little busy with my assignments.
>
> I will try to answer all the queries in this mail.
>
> The reason I don't want to develop the project in wxWindows or a C/C++
> based toolkit is that in the end I would be able to compile a binary
>
> Another reason why suggested wxWidgets is because I have worked with
> it before and I am comfortable with the system. As somebody suggested,
> even wxPython looks good as Python greatly increases the speed of
> implementation.
You do know that wxWindows and wxWidgets are the same thing right?

The big problem with all the solutions mentioned (besides Delphi,
SharpDevelop etc) is that they
take a LOT of time to develop complex GUI applications with.

I looked at Python etc, but it would have taken me 10 times (or more)
longer to create Lightning Admin
using something other than Delphi.

How long do you think it would take you to create a grid with features
like this:
http://www.devexpress.com/Products/VCL/ExQuantumGrid/

or even like this freeware one:http://www.scalabium.com/smdbgrid.htm

That is the beauty of Delphi, there are simply thousands and thousands of
3rd party components that make your life so much easier.

Need a free super nice syntax highlighting editor with full support for
code completion and param hinting?
Check out: http://mh-nexus.de/unisynedit.htm

Need unicode control support? check out:
http://www.tntware.com/delphicontrols/unicode/

Just my opinion on the matter :-)  No flames please.

--
Tony Caduto
AM Software Design
http://www.amsoftwaredesign.com
Home of PG Lightning Admin for Postgresql
Your best bet for Postgresql Administration


Re: Development of cross-platform GUI for Open Source DBs

From
"Joshua D. Drake"
Date:
> The big problem with all the solutions mentioned (besides Delphi,
> SharpDevelop etc) is that they
> take a LOT of time to develop complex GUI applications with.
>
> I looked at Python etc, but it would have taken me 10 times (or more)
> longer to create Lightning Admin
> using something other than Delphi.

Huh? I seriously doubt that is the case if you were to use something
like Py/QT. Sure if you are command lining all the code  but that is
certainly not what has to happen.

Sincerely,

Joshua D. Drake


--

      === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate




Re: Development of cross-platform GUI for Open Source DBs

From
John McCawley
Date:
I can't speak for wxPython etc., but regarding using QT from C++, your
speed of development depends on your C++ skills.  I wrote a
full-featured Point of Sale system in Visual Basic that has been in
active use for about 4 years.  The original development effort (screens,
grids, etc.) took about 3 weeks.  I got tired of supporting an app that
I had to lug out my Windows/VB laptop for, so I decided to port it to
C++ so I could develop on my Linux box.  I ported the entire thing over
to C++/QT in about a week.

QT is *extremely* good.  My speed with developing GUI applications in
C++ is now on par with my abilities in VB...And I can't think of a tool
on earth faster than VB for cranking out quick-n-dirty apps :P

> The big problem with all the solutions mentioned (besides Delphi,
> SharpDevelop etc) is that they
> take a LOT of time to develop complex GUI applications with.
>
> I looked at Python etc, but it would have taken me 10 times (or more)
> longer to create Lightning Admin
> using something other than Delphi.
>

Re: Development of cross-platform GUI for Open Source DBs

From
"Merlin Moncure"
Date:
On 11/30/06, John McCawley <nospam@hardgeus.com> wrote:
> I can't speak for wxPython etc., but regarding using QT from C++, your
> speed of development depends on your C++ skills.  I wrote a
> full-featured Point of Sale system in Visual Basic that has been in
> active use for about 4 years.  The original development effort (screens,
> grids, etc.) took about 3 weeks.  I got tired of supporting an app that
> I had to lug out my Windows/VB laptop for, so I decided to port it to
> C++ so I could develop on my Linux box.  I ported the entire thing over
> to C++/QT in about a week.
>
> QT is *extremely* good.  My speed with developing GUI applications in
> C++ is now on par with my abilities in VB...And I can't think of a tool
> on earth faster than VB for cranking out quick-n-dirty apps :P

having used both, I can tell you that delphi is much better than vb
for developing database applications.  you also can use the quixotic
hybrid in c++ builder which is a curious mixture of rad technology and
c++ power.  however with each release since delphi 5 or so, borland
seems to be unable to do much more than add bugs to the product, and
so the market has moved on.  also the kylix project was a complete
failure.

btw, I agree that qt is where it's at.  great stuff.

merlin