Now I am in Frankfurt airport waiting for a flight going to Dubai. I was supposed to be in another flight going to Bangalore. Well, I am not complaining anything. I guess this kind of things will happen.
When we started our flight from Dallas Fort Worth airport, the climate suddenly changed. Until I reach airport it was fine. It was heavily raining and very cloudy. Then our flight delayed for 2 and 1/2 hours. When I reached here, the connection flight's boarding was completed. Anyway, they arranged another flight for me which goes through Duabi and then Bangalore. I will be reaching 9 am morning on Friday in Bangalore. I hope my luggage also will reach there.
Update from Dubai: I reached in Dubai two and half hours before,
I need to wait 2 more hours here. Here Internet is free unlike Frankfurt and US.
In Bangalore airport also, internet is free, but we need to register using a mobile.
I statrted 12.00 pm CDT from Dallas, so my total travel time will be more than 35 hours when I reach bangalore. I need to go to Kerala from there, yet another 9 hour jouney in Bus.
Another thing I am waiting in Bangalore is Swine flu checking, Since I am travelling from Texas, it's very likely that they will do it. I don't know how much time these all going to take.
When we started our flight from Dallas Fort Worth airport, the climate suddenly changed. Until I reach airport it was fine. It was heavily raining and very cloudy. Then our flight delayed for 2 and 1/2 hours. When I reached here, the connection flight's boarding was completed. Anyway, they arranged another flight for me which goes through Duabi and then Bangalore. I will be reaching 9 am morning on Friday in Bangalore. I hope my luggage also will reach there.
Update from Dubai: I reached in Dubai two and half hours before,
I need to wait 2 more hours here. Here Internet is free unlike Frankfurt and US.
In Bangalore airport also, internet is free, but we need to register using a mobile.
I statrted 12.00 pm CDT from Dallas, so my total travel time will be more than 35 hours when I reach bangalore. I need to go to Kerala from there, yet another 9 hour jouney in Bus.
Another thing I am waiting in Bangalore is Swine flu checking, Since I am travelling from Texas, it's very likely that they will do it. I don't know how much time these all going to take.
I was looking to improve the web presence of Buildout by updating
some content in http://www.buildout.org . I got the motivation to
look into it again after reading Jacob Kaplan-Moss's latest blog
series about Buildout. I have added links to his blog from buildout.org now. I
also added his quote: "Buildout is an exceedingly civilized way to
develop an app." into the main page itself ! I think, from marketing
point of view, some good quotes will help. So, if you find any good
quotes about buildout, please let me know.
BTW, I have already collected few quotes there.
P.S: Next week I am returning to India :) Here in Dallas, it looks
like summer is approaching. I attended Dallas Python user group
meetings two times with Brad and Jeff Rush, they are very active.
some content in http://www.buildout.org . I got the motivation to
look into it again after reading Jacob Kaplan-Moss's latest blog
series about Buildout. I have added links to his blog from buildout.org now. I
also added his quote: "Buildout is an exceedingly civilized way to
develop an app." into the main page itself ! I think, from marketing
point of view, some good quotes will help. So, if you find any good
quotes about buildout, please let me know.
BTW, I have already collected few quotes there.
P.S: Next week I am returning to India :) Here in Dallas, it looks
like summer is approaching. I attended Dallas Python user group
meetings two times with Brad and Jeff Rush, they are very active.
Check it out here: http://www.buildout.org
Thanks to Jim Fulton for developing this great tool.
Thanks to all contributors to the site.
Please send your suggestions and comments to me.
Thanks to Jim Fulton for developing this great tool.
Thanks to all contributors to the site.
Please send your suggestions and comments to me.
I reached here in Chicago day before yesterday evening.
Yesterday we visited field museum, shedd aquarium and
walked a lot in Downtown. Now attending some tutorials.
I will be here till 2nd April and planning to attend Zope and friends sprint
Today morning I attended Working with Excel Files in Python by
Chris Withers.
Now attending Eggs and Buildout Development by Jeff Rush (now break time).
Yesterday we visited field museum, shedd aquarium and
walked a lot in Downtown. Now attending some tutorials.
I will be here till 2nd April and planning to attend Zope and friends sprint
Today morning I attended Working with Excel Files in Python by
Chris Withers.
Now attending Eggs and Buildout Development by Jeff Rush (now break time).
Today RMS visited Bangalore again. This is for the first time I am
seeing him. I am bit tired after today's programs. So, I will try to
proide a brief summary of the program. I hope you know what RMS will
be talking about, so I am not going to those details :)
His talk was at NMKRV college in Jayanagar (Bangalore) which was very
near to our office. I reached there with Jayesh around 10 am. I
have seen his talks in video and today also it was a typical RMS
talk. At the end of session, during questions time, I also asked one
question :) I asked him: "Many free software follows release early,
release often philosophy...". He interupted me, "No, that is not the
case, and that is just a development methodology...". I continued my
question like "Why GNU Emacs releases taking so much time...". He
said, "That is due to technical reasons, you can also come and fix it
(laugh) as it is free software and all the code is available in
Savannah..." (Discaimer: This is not his exact wording)
Jayesh left earlier due to some important office works. I was also
about to return home, then, Anivar suggested to go to the second
program of RMS. After lunch we went to the Ambedkar Community
Computing Center. This is a place where many poor people live. They
were using free software for all their computing needs. All the
peoples gathered there was really celebrating his visit.
After this program, my friends Sujith and Anivar was accompanying RMS
to his hotel, they arranged some interview with press persons there.
Again, as I had no other option, I also joined them. While
travelling RMS' friend, Hareesh, Anivar & Sujith was talking about
Dalits, Hiduism, Politcs etc. RMS also expressed his opinions
sometimes.
We stopped in one hotel for tea and net browsing. He was sitting
opposite to me. I was surprised to see that he was ordering an Indian
cool drink very easily, "One cold badam milk" :) Hmm.. he had come to
India many times, so he must be familiar with it. We spend almost
one hour there. Later, I returned to my home and they proceeded to
their hotel.
Here are few pictures I have taken today:

1. RMS just Arrived at RV college

2. Welcome talk by Renuka Prasad

3. "Free as in Freedom"

4. St. iGNUcious is getting ready!

5. With common Indians

6. Ambedkar smiling at Stallman from wall.

7. RMS releasing a book

8. Tea with a song

9. Hacking after a cold Badam milk at hotel
seeing him. I am bit tired after today's programs. So, I will try to
proide a brief summary of the program. I hope you know what RMS will
be talking about, so I am not going to those details :)
His talk was at NMKRV college in Jayanagar (Bangalore) which was very
near to our office. I reached there with Jayesh around 10 am. I
have seen his talks in video and today also it was a typical RMS
talk. At the end of session, during questions time, I also asked one
question :) I asked him: "Many free software follows release early,
release often philosophy...". He interupted me, "No, that is not the
case, and that is just a development methodology...". I continued my
question like "Why GNU Emacs releases taking so much time...". He
said, "That is due to technical reasons, you can also come and fix it
(laugh) as it is free software and all the code is available in
Savannah..." (Discaimer: This is not his exact wording)
Jayesh left earlier due to some important office works. I was also
about to return home, then, Anivar suggested to go to the second
program of RMS. After lunch we went to the Ambedkar Community
Computing Center. This is a place where many poor people live. They
were using free software for all their computing needs. All the
peoples gathered there was really celebrating his visit.
After this program, my friends Sujith and Anivar was accompanying RMS
to his hotel, they arranged some interview with press persons there.
Again, as I had no other option, I also joined them. While
travelling RMS' friend, Hareesh, Anivar & Sujith was talking about
Dalits, Hiduism, Politcs etc. RMS also expressed his opinions
sometimes.
We stopped in one hotel for tea and net browsing. He was sitting
opposite to me. I was surprised to see that he was ordering an Indian
cool drink very easily, "One cold badam milk" :) Hmm.. he had come to
India many times, so he must be familiar with it. We spend almost
one hour there. Later, I returned to my home and they proceeded to
their hotel.
Here are few pictures I have taken today:
1. RMS just Arrived at RV college
2. Welcome talk by Renuka Prasad
3. "Free as in Freedom"
4. St. iGNUcious is getting ready!
5. With common Indians
6. Ambedkar smiling at Stallman from wall.
7. RMS releasing a book
8. Tea with a song
9. Hacking after a cold Badam milk at hotel
Oh, it's almost 5 months I have written anything in my journal! Well, there
is no specific reason for that :) But, now I can't stop writing this.
I am just coming back from a two day Python workshop conducted at R.V
College of Engineering, Bangalore.
More than 50+ students attended this program. This was my first
experience conducting a workshop. Thanks to Renuka Prasad and his
students for organizing this workshop. Five of my colleagues and
my friend Jayesh accompanied me, thanks to all.
The program was well organized. Students were sitting in two near
by computer labs. The labs also was well equipped. They provided
projectors and audio support in both halls. My friends were walking
from one desktop to another, without them it won't be impossible
for me to conduct this. Thanks to ZeOmega for allowing 5 persons
to accompany me for this workshop.
I have some pictures also:

1. Ready to start !

2. In action.

3. Ok, everything is fine.

4. With Jayesh.

5. My right and left wings.

6. With Renuka Prasad and Jayesh.
is no specific reason for that :) But, now I can't stop writing this.
I am just coming back from a two day Python workshop conducted at R.V
College of Engineering, Bangalore.
More than 50+ students attended this program. This was my first
experience conducting a workshop. Thanks to Renuka Prasad and his
students for organizing this workshop. Five of my colleagues and
my friend Jayesh accompanied me, thanks to all.
The program was well organized. Students were sitting in two near
by computer labs. The labs also was well equipped. They provided
projectors and audio support in both halls. My friends were walking
from one desktop to another, without them it won't be impossible
for me to conduct this. Thanks to ZeOmega for allowing 5 persons
to accompany me for this workshop.
I have some pictures also:
1. Ready to start !
2. In action.
3. Ok, everything is fine.
4. With Jayesh.
5. My right and left wings.
6. With Renuka Prasad and Jayesh.
In India some organizations say that they are "producing open
source software" and follow a cathedral style development model !
People who produce these so-called "open source" in India presume,
"code" is everything and it can be released once everything is
ready. But they fail to understand that free software is not only
code but also a community of developers and users around it.
How to build & sustain this community is very crucial to the
success of any free software project.
Well, this may be true in other countries also. But recently I noticed
this in some organizations especially few government funded
projects.
Recently when I was traveling from Calicut to Bangalore
in a night bus. I happened to meet an old fried of mine
who is working with a government funded organization.
Most of his work was software projects which they release
under some free software license. One interesting thing I
noticed is that they do a lot of duplicate works and unnecessary
forks of existing free software projects.
Another thing which I inferred from our conversation is
about their development model. The couldn't yet adapt the style of
free software projects, which follows release often and release
early culture, building a community around the software etc.
Update: One of my friend asked me whether I am targeting free software
based custom software. No, I am not. A custom software may not be released
at all.
source software" and follow a cathedral style development model !
People who produce these so-called "open source" in India presume,
"code" is everything and it can be released once everything is
ready. But they fail to understand that free software is not only
code but also a community of developers and users around it.
How to build & sustain this community is very crucial to the
success of any free software project.
Well, this may be true in other countries also. But recently I noticed
this in some organizations especially few government funded
projects.
Recently when I was traveling from Calicut to Bangalore
in a night bus. I happened to meet an old fried of mine
who is working with a government funded organization.
Most of his work was software projects which they release
under some free software license. One interesting thing I
noticed is that they do a lot of duplicate works and unnecessary
forks of existing free software projects.
Another thing which I inferred from our conversation is
about their development model. The couldn't yet adapt the style of
free software projects, which follows release often and release
early culture, building a community around the software etc.
Update: One of my friend asked me whether I am targeting free software
based custom software. No, I am not. A custom software may not be released
at all.
There is a bug in GNOME bugzilla regarding a rendering bug in
Malayalam ( http://bugzilla.gnome.org/show_bug.c gi?id=441654 ). This is
the last major rendering bug in GNOME related to Malayalam. If any
programmers can fix it, that would be a great contribution to
Malayalam computing. Please go through the bug and see if you can
help.
Behdad, the mantainer of Pango is looking for a good explanation of
current patch. Otherwise a better patch is required based on his
suggestion.
Malayalam ( http://bugzilla.gnome.org/show_bug.c
the last major rendering bug in GNOME related to Malayalam. If any
programmers can fix it, that would be a great contribution to
Malayalam computing. Please go through the bug and see if you can
help.
Behdad, the mantainer of Pango is looking for a good explanation of
current patch. Otherwise a better patch is required based on his
suggestion.
(A comment to blog post by Tres Seavor -- I can't figure out how to add comment there, so this post.)
Buildout is build tool which can be used for any Python packages and
not something only for Zope. Since it is created Jim Fulton, the Zope
Pope, naturally there are many early adopters from Zope community.
Buildout itself may not be enough for all purposes, but it can be
extended using "recipes", the extension mechanism provided by
Buildout. Buildout use setuptools, but it's not for replacing it.
You can make use all features of setuptools while using Buildout. So,
all the strengths of setuptools are available for Buildout also.
A buildout.cfg of a Python need not to have duplicate information
given in setup.py . For example, a typical configuration file for a
package will be like this:
As you can see above there is no additional detail, the only
information given is the packages required to be developed.
(Here . means package in the current directory)
As you know any build system should have some kind of configuration,
if you think its a clutter, well I don't know what to say.
Most of the packages are setuptools based and so you can run any
command provided by setuptools. But if you want to get the benefits
of using Buildout you should learn the Buildout system. Then you will
be able to overcome the "foreign feeling".
As I said, Buildout doesn't prevent you from running any setuptools
command. For example if your package's setup.py is configured to run
'test' command, you can run it. There are some buildout recipe which
helps you to run tests in some weired way, but that is not a problem
of buildout ! That recipe may have it's own reason for doing it that
way, like handle extra dependencies, be more explicit, use a
particular test runner etc.. If you don't want this recipe, it's OK,
use your old setuptools test mechanism.
Buildout is build tool which can be used for any Python packages and
not something only for Zope. Since it is created Jim Fulton, the Zope
Pope, naturally there are many early adopters from Zope community.
Buildout itself may not be enough for all purposes, but it can be
extended using "recipes", the extension mechanism provided by
Buildout. Buildout use setuptools, but it's not for replacing it.
You can make use all features of setuptools while using Buildout. So,
all the strengths of setuptools are available for Buildout also.
A buildout.cfg of a Python need not to have duplicate information
given in setup.py . For example, a typical configuration file for a
package will be like this:
[buildout] develop = . parts =
As you can see above there is no additional detail, the only
information given is the packages required to be developed.
(Here . means package in the current directory)
As you know any build system should have some kind of configuration,
if you think its a clutter, well I don't know what to say.
Most of the packages are setuptools based and so you can run any
command provided by setuptools. But if you want to get the benefits
of using Buildout you should learn the Buildout system. Then you will
be able to overcome the "foreign feeling".
As I said, Buildout doesn't prevent you from running any setuptools
command. For example if your package's setup.py is configured to run
'test' command, you can run it. There are some buildout recipe which
helps you to run tests in some weired way, but that is not a problem
of buildout ! That recipe may have it's own reason for doing it that
way, like handle extra dependencies, be more explicit, use a
particular test runner etc.. If you don't want this recipe, it's OK,
use your old setuptools test mechanism.
This is for the first time I am writing about Malayalam language in my
blog. Unfortunately, this is about a catastrophe going to happen for
our language :( . I created this blog for writing about my interests
(Python,Zope etc.). I hope you will excuse this cross posted blog.
By breaking Unicode's basic principle, that, it will only inlclude
basic characters of a language, now they are going to add charaters
which are formed from other basic characters in Malayalam. You can
read more about the issue here:
http://fci.wikia.com/wiki/SMC/AtomicChil luIsUnacceptable
and in this document:
http://www.rachanamalayalam.org/docs/Chi lluEncodingIsWrong.pdf .
The changes are added to draft version of Unicode 5.1.0, so we still have some
hope that it can be reverted. Please support us !
Some background: I started the Swathanthra Malayalam Computing project
almost 7 years back while studying at NIT Calicut. Later, when Free
Software Foundation of India started working on this project, I joined
them to work on this project (as a Job). After I left FSF India, some
others continued that project. Two years back a
new team started working on this project, you can see details
about this team at their wiki: http://fci.wikia.com/wiki/SMC . This
is such a great team with good leaders. Now they are touching all areas
of Malayalam computing: i18n,l10n and other software tools for
Malayalam. I am no more involved in this project, but I used to follow
up the developments.
blog. Unfortunately, this is about a catastrophe going to happen for
our language :( . I created this blog for writing about my interests
(Python,Zope etc.). I hope you will excuse this cross posted blog.
By breaking Unicode's basic principle, that, it will only inlclude
basic characters of a language, now they are going to add charaters
which are formed from other basic characters in Malayalam. You can
read more about the issue here:
http://fci.wikia.com/wiki/SMC/AtomicChil
and in this document:
http://www.rachanamalayalam.org/docs/Chi
The changes are added to draft version of Unicode 5.1.0, so we still have some
hope that it can be reverted. Please support us !
Some background: I started the Swathanthra Malayalam Computing project
almost 7 years back while studying at NIT Calicut. Later, when Free
Software Foundation of India started working on this project, I joined
them to work on this project (as a Job). After I left FSF India, some
others continued that project. Two years back a
new team started working on this project, you can see details
about this team at their wiki: http://fci.wikia.com/wiki/SMC . This
is such a great team with good leaders. Now they are touching all areas
of Malayalam computing: i18n,l10n and other software tools for
Malayalam. I am no more involved in this project, but I used to follow
up the developments.
After a long time, we had a BangPypers meet yesterday at ThoughtWorks
office (thanks to ThoughtWorks for hosting us). Pradeep gave us an
excellent introduction to Django using a TODO list application he
created. This application used SQLite (RDBMS), jQuery (JS framework)
and BluePrint (CSS framework). He will publish this code soon in his
site.
office (thanks to ThoughtWorks for hosting us). Pradeep gave us an
excellent introduction to Django using a TODO list application he
created. This application used SQLite (RDBMS), jQuery (JS framework)
and BluePrint (CSS framework). He will publish this code soon in his
site.
Philipp, Martin & Kevin: I used to read planet.plone.org using an
offline feed agregator. I really like your blog posts (I never
missed a single one). I have one request, could you add full
content to your feeds for planets ?
I could have asked this question offline, but I thought other
bloggers who only give a link or part of content to planets may
add their full content to their feeds.
I wonder whether there is any other aspect which I don't
see which prevents them from adding full content to feeds.
One issue which I can see is that, very long posts may clutter
the planets, but I think planets can fix it with a new design
which only shows a part of the content and a link to view full
content.
(Feel free to make comments here)
offline feed agregator. I really like your blog posts (I never
missed a single one). I have one request, could you add full
content to your feeds for planets ?
I could have asked this question offline, but I thought other
bloggers who only give a link or part of content to planets may
add their full content to their feeds.
I wonder whether there is any other aspect which I don't
see which prevents them from adding full content to feeds.
One issue which I can see is that, very long posts may clutter
the planets, but I think planets can fix it with a new design
which only shows a part of the content and a link to view full
content.
(Feel free to make comments here)
Grok project created a new simple,informative and great looking website:
http://grok.zope.org/
Congratulations to the team !
http://grok.zope.org/
Congratulations to the team !
Thanks to Alan Runyan for adding the ZCA book in plone.org:
http://plone.org/documentation/books
http://plone.org/documentation/books/gui de-to-zca/
I hope this will help to increase the readership of the book.
Recently I started working on a case study chapter.
The source of application can be downloaded from here:
http://www.muthukadan.net/downloads/zca lib.tar.bz2
This is a PyGTK application which use PySQLite & ZODB as pluggable storages.
Looking forward to your suggestions and feedbacks :)
http://plone.org/documentation/books
http://plone.org/documentation/books/gui
I hope this will help to increase the readership of the book.
Recently I started working on a case study chapter.
The source of application can be downloaded from here:
http://www.muthukadan.net/downloads/zca
This is a PyGTK application which use PySQLite & ZODB as pluggable storages.
Looking forward to your suggestions and feedbacks :)
Last month I purchased my ZCA book from Lulu. Today it arrived in my
desk. Print quality, cover design and paper are very good. So far I am
the only purchaser of my book ;) The cost of book is $8.75 and
shipping cost to India will be another 6 USD. The book's PDF is available
from my site. If you want to purchase is it for some reason, you can
get it from here.
desk. Print quality, cover design and paper are very good. So far I am
the only purchaser of my book ;) The cost of book is $8.75 and
shipping cost to India will be another 6 USD. The book's PDF is available
from my site. If you want to purchase is it for some reason, you can
get it from here.
* My FOSS.IN/2007 talk about Zope went well, There was about 40
people for my talk.
* FOSS.IN/2007 was a great experience, even though there was no Python
talk, Python was everywhere. I heard people mentioning Python
during many talks. There was three Zope related talks. The
lightning talks timer program was created in Python, there was many
BangPypers wandering around the place. Unfortunately, we couldn't
arrange one BoF.
* ZCA book has a new French translation.
I also self published this book at Lulu.
* An interview with me and some other Python programmers.
people for my talk.
* FOSS.IN/2007 was a great experience, even though there was no Python
talk, Python was everywhere. I heard people mentioning Python
during many talks. There was three Zope related talks. The
lightning talks timer program was created in Python, there was many
BangPypers wandering around the place. Unfortunately, we couldn't
arrange one BoF.
* ZCA book has a new French translation.
I also self published this book at Lulu.
* An interview with me and some other Python programmers.
(This post's target audience are readers of Python, Zope & Plone
planets.)
This year's FOSS.IN/2007 is coming up next month from December 4th to
8th at National Science Symposium Centre, Indian Institute of Science,
Bangalore, India. FOSS.IN is one of the world's largest FOSS events, held annually in India.
The event's main focus is on development and contributions to FOSS from India.
So, most of the talks are related to FOSS contributions. I also will be presenting a
talk about contributing to Zope project. Well, my original talk I submitted was
a general Python talk, which got rejected, so I also ended up with a
talk like this.
There is another talk related to Zope and Plone by Sreekanth S.R.
During the event, BangPypers will be conducting some BOF sessions. We
welcome all Python programmers to BangPypers BOF sessions.
Me & Nikhil N (last year GSoC student who worked on Python 2.5 porting
of Zope 3) planing to work on some Zope projects at hack center. Any
one intereted in Zope are welcome :)
BTW, this is for the first time I am going to meet Nikhil in person.
It was a nice exprience working with him during GSoC project. He is
also from my native place, Kerala. So, most of our discussions were in
our native language, Malayalam.
planets.)
This year's FOSS.IN/2007 is coming up next month from December 4th to
8th at National Science Symposium Centre, Indian Institute of Science,
Bangalore, India. FOSS.IN is one of the world's largest FOSS events, held annually in India.
The event's main focus is on development and contributions to FOSS from India.
So, most of the talks are related to FOSS contributions. I also will be presenting a
talk about contributing to Zope project. Well, my original talk I submitted was
a general Python talk, which got rejected, so I also ended up with a
talk like this.
There is another talk related to Zope and Plone by Sreekanth S.R.
During the event, BangPypers will be conducting some BOF sessions. We
welcome all Python programmers to BangPypers BOF sessions.
Me & Nikhil N (last year GSoC student who worked on Python 2.5 porting
of Zope 3) planing to work on some Zope projects at hack center. Any
one intereted in Zope are welcome :)
BTW, this is for the first time I am going to meet Nikhil in person.
It was a nice exprience working with him during GSoC project. He is
also from my native place, Kerala. So, most of our discussions were in
our native language, Malayalam.
This is a section I added to ZCA book recently. I am not a pattern guru,
so please correct me if anthing is not correct or required more explanation.
Thanks !
so please correct me if anthing is not correct or required more explanation.
Thanks !
Adapter pattern ~~~~~~~~~~~~~~~ The adapter concept in Zope Component Architecture and the classic `adapter pattern` as described in Design Patterns book are very similar. But the intent of ZCA adapter usage is more wider than the `adapter pattern` itself. The intent of `adapter pattern` is to convert the interface of a class into another interface clients expect. This allows classes work together that couldn't otherwise because of incompatible interfaces. But in the `motivation` section of Design Patterns book, GoF says: "Often the adapter is responsible for functionality the adapted class doesn't provide". ZCA adapter has more focus on adding functionalities than creating a new interface for an adapted object (adaptee). ZCA adapter lets adapter classes extend functionality by adding methods. (It would be interesting to note that `Adapter` was known as `Feature` in earlier stage of ZCA design. ) [#feature]_ The above paragraph has a quote from Gang of Four book, it ends like this: " ...adapted class doesn't provide". But in the next sentence I used "adapted object" instead of "adapted class", because GoF describes about two variants of adapters based on implementations. The first one is called `class adapter` and the other one is called `object adapter`. A class adapter uses multiple inheritance to adapt one interface to another, on the other hand an object adapter relies on object composition. ZCA adapter is following object adapter pattern, which use delegation as a mechanism for composition. GoF's second principle of object-oriented design goes like this: "Favor object composition over class inheritance". For more details about this subject please read Design Patterns book. The major attraction of ZCA adapter are the explicit interface for components and the component registry. ZCA adapter components are registered in component registry and looked up by client objects using interface and name when required. .. [#feature] Thread discussing renaming of `Feature` to `Adapter`: http://mail.zope.org/pipermail/zope3-dev/2001-December/000008.html
Lorenzo Gil Sanchez (Gazpacho fame) is working on a Spanish
translation of ZCA book (PDF). It was a surprise for me to see a new bzr
branch at Launchpad for Spanish translation. Kent Tenney was also
excited, keep up the good work, Lorenzo ! I have published his
translation in my site (PDF). If anyone want to help him with
this translation or start a new translation to another language, you can
simply create bzr branch there and start working it.
Since I am involved in Zope 3, I become a heavy svn user. Now, after
I started using bzr for this project I realized the power of bzr (This
may be applicable to other DVCS). Currently we have three active
branches, the feature I like very much is merging from other branches
(Oh ! it's really cool). Thanks to Canonical for providing such a nice
hosting for bzr. After all Launchpad is a ZCA based application, then
how it won't be cool ? ;)
Since I published this work in last month, there was almost 5000 hits
for ZCA book. Also I got good comments and feedbacks in my journal
and through mail. It looks like people are also interested in
translating this work to other languages. To coordinate all these
efforts, I have created a google group. So, if you are interested to
help me in any way to finish this work, you can join me there.
Well, this is not a general discussion list for ZCA itself, you can
use zope3-users list for that.
translation of ZCA book (PDF). It was a surprise for me to see a new bzr
branch at Launchpad for Spanish translation. Kent Tenney was also
excited, keep up the good work, Lorenzo ! I have published his
translation in my site (PDF). If anyone want to help him with
this translation or start a new translation to another language, you can
simply create bzr branch there and start working it.
Since I am involved in Zope 3, I become a heavy svn user. Now, after
I started using bzr for this project I realized the power of bzr (This
may be applicable to other DVCS). Currently we have three active
branches, the feature I like very much is merging from other branches
(Oh ! it's really cool). Thanks to Canonical for providing such a nice
hosting for bzr. After all Launchpad is a ZCA based application, then
how it won't be cool ? ;)
Since I published this work in last month, there was almost 5000 hits
for ZCA book. Also I got good comments and feedbacks in my journal
and through mail. It looks like people are also interested in
translating this work to other languages. To coordinate all these
efforts, I have created a google group. So, if you are interested to
help me in any way to finish this work, you can join me there.
Well, this is not a general discussion list for ZCA itself, you can
use zope3-users list for that.