UTF8 tags, Database Abstract

0 views
Skip to first unread message

Daniel Mendes

unread,
Apr 30, 2006, 10:08:41 AM4/30/06
to Joomla! Developer Documentation
Hi all,

Just joined the team, this is my first post,

I read the
http://dev.joomla.org/index.php?option=com_jd-wiki&Itemid=31&id=guidelines:utf-8
and found a bit strange that the tags used are:

<install>
<sql>
<mysql-4.1.2>install.utf.sql</mysql-4.1.2>
<mysql-3.2.0>install.nonutf.sql</mysql-3.2.0>
</sql>
</install>

I find it strange for 2 reasons:
1) The reference to version numbers in the tags.
2) The reference to a specific database system (MySQL).

I think that the tags should be more generic, especially since there
are also projects (at least under the code of summer 2006) to expand
database support to Cross-Database Support ( to databases like
postgreSQL).

I believe that the more generic version should look something like
this:

<install>
<sql>
<utf8>install.utf.sql</utf8>
<nonutf8>install.nonutf.sql</nonutf8>
</sql>
</install>

Or perhaps even more generic, if other database differences exist that
require different SQL statements to be abstracted.

Also I must also express some concern for the lack of
abstraction/generality of not only certain parts of the joomla project,
but on the majority of the extensions, most extensions are very task
specific, and we end up with 4 or 5 extensions that do basically the
same thing using different terminology.

I think there needs to be an effort to introduce some sort of
guidelines, or direction to 3pd to develop their system in a generic
and extendable way... perhaps wend we have more documentation done, we
should focus on making documentation about ways to bring abstraction
and generic examples to the 3pd and the community at large.

As mentioned I am the "new kid" on the project, and perhaps this
has already been discussed, if not I think it really should be, if we
want to keep being on the cutting edge of CMS systems, making it more
flexible and easy to use.

All the Best,
Dan

Mitch Pirtle

unread,
Apr 30, 2006, 1:39:13 PM4/30/06
to joomla-d...@googlegroups.com
On 4/30/06, Daniel Mendes <daniel...@yahoo.com> wrote:
>
> Hi all,
>
> Just joined the team, this is my first post,

Welcome aboard :-)

> I think that the tags should be more generic, especially since there
> are also projects (at least under the code of summer 2006) to expand
> database support to Cross-Database Support ( to databases like
> postgreSQL).

I agree wholeheartedly, however there are things that must be coded
specifically for each database. For example, just having
install.utf.sql with ANSI standard SQL would make the tables, but
someone using DB2, Oracle or PostgreSQL would want an entirely
different set of constraints and indexes as opposed to your garden
variety MySQL system.

If someone is using MySQL, then we have to assume they could be
running on minimal, shared hardware - so as few indexes as possible
are needed; and if someone is using a biggie, we have to assume they
are on big iron, and as such are more interested in clean data than
just raw speed.

This is the challenge that we must face in order to support multiple
databases *well*. Anyone can support multiple databases poorly ;-)

We originally were looking at AXMLS, however there were some
shortcomings that led us to believe we would be better off on our own.
It is my hopes personally that the SoC efforts will get that topic
back to the front of the list, and we end up actually making some
decisions and an implementation will become part of the core.

> Also I must also express some concern for the lack of
> abstraction/generality of not only certain parts of the joomla project,
> but on the majority of the extensions, most extensions are very task
> specific, and we end up with 4 or 5 extensions that do basically the
> same thing using different terminology.
>
> I think there needs to be an effort to introduce some sort of
> guidelines, or direction to 3pd to develop their system in a generic
> and extendable way... perhaps wend we have more documentation done, we
> should focus on making documentation about ways to bring abstraction
> and generic examples to the 3pd and the community at large.

Poor 3PD applications is apparently the biggest fear and failing of
Joomla!, at least when it comes to businesses and organizations that
are looking at open source CMS platforms. I have had no less than ten
conversations from large organizations that either decided against
Joomla! or had serious misgivings, as a result of lousy 3PD
applications.

I also agree that we need to provide better tools, better
documentation, better resources altogether for the 3PD community - and
we have taken a huge step in the right direction with the developer
portal. I am also working on an article for International PHP Magazine
(introducing the 1.5 API), and hope that the next article I write for
them will be targeted directly at the issue of good 3PD applications
and how they should be written.

Back on topic, every time I have an interview or write an article I
gush about how great our developer resources are. I sure hope this is
as high a priority to everyone else ;-)

--
Mitch Pirtle
Joomla! Core Developer
Open Source Matters

Johan Janssens

unread,
Apr 30, 2006, 4:54:31 PM4/30/06
to Joomla! Developer Documentation
Hi Dan,

First of all welcome to the documentation team. Good to see skilled
people joining to help us write quality documenation.

To answer your questions/remarks about the component install xml file.
We have explicilty choosen to use this naming convention as those
install sql files are only meant to be used by mysql. They where
introduced to solve the difference between MyDSL 3.2 and 4.1 syntax.
This approach makes sure that components can be transparently
compatible with both MySQL versions.

Cheers,

Johan Janssens
Joomla! Lead Developer

Daniel Mendes

unread,
May 1, 2006, 8:13:54 AM5/1/06
to Joomla! Developer Documentation
Thanks for the welcome guys...

After taking a good look at the possible solutions for php database
abstraction that are out there, and also implemented on other CMS
systems, I think it is probably best to leave further investigation to
the person who takes the job of doing the summer of code project...
simply because there are so many solutions out there that is very hard
to evaluate them without some serious research and prototyping.

Also i think the new syntax that Andrew Eddie posted is better than the
current solution because it not only solves the utf8 problem but is
less MySQL specific and will be easier to extend, so until someone
takes the challenge of the summer of code its probably the best not to
commit to much to a particular solution.

Another factor is that considering that MySQL is so popular, the target
that would benefit of heavy research on that topic will be very small,
not worth spending 10% of the development effort if only 10% of the
community will benefit from it.

Daniel Mendes

unread,
May 5, 2006, 12:15:44 PM5/5/06
to Joomla! Developer Documentation
Mitch Pirtle wrote:
> I also agree that we need to provide better tools, better
> documentation, better resources altogether for the 3PD community - and
> we have taken a huge step in the right direction with the developer
> portal. I am also working on an article for International PHP Magazine
> (introducing the 1.5 API), and hope that the next article I write for
> them will be targeted directly at the issue of good 3PD applications
> and how they should be written.

Is there any way to make that article availabe online? or to submit it
here, i would really like to read it, and don't have access to the
magazine, so if this is a possibility that would be great :)

All the Best,
-Dan

Reply all
Reply to author
Forward
0 new messages