1 |
PHP Extension for OpenIsis (a personal experience with the OpenIsis project) |
2 |
|
3 |
|
4 |
Extensión PHP para OpenIsis (una experiencia personal con el proyecto OpenIsis) |
5 |
|
6 |
|
7 |
* history of the PHP extension |
8 |
- Problem: creation of a library module for PostNuke |
9 |
- CGI has a high overhead |
10 |
- PHP easier to maintain than WWWISIS |
11 |
- OpenIsis the better solution: C-lib |
12 |
|
13 |
We needed to develop a library module for PostNuke using ISIS databases. CGI |
14 |
has a high overhead associated with creating the script process and then |
15 |
executing the image of the CGI script (not for high availability). Also PHP |
16 |
is easier to learn than WWWISIS and its formatting language, therefore the code |
17 |
is easier to maintain for new employees (better software engineering). After |
18 |
evaluating several solutions the most attractive was to create a PHP extension |
19 |
capable of using the OpenIsis library. |
20 |
|
21 |
|
22 |
* historia de la extensión PHP |
23 |
- Problema: crear un módulo para bibliotecas en PostNuke |
24 |
- CGI tiene muchos costos |
25 |
- PHP es más fácil de mantener que WWWISIS |
26 |
- OpenIsis la mejor solución: C-lib |
27 |
|
28 |
Necesitábamos desarrollar un módulo para bibliotecas en PostNuke utilizando |
29 |
bases de datos ISIS. CGI tiene un costo muy alto asociado con la creación del |
30 |
proceso y luego la ejecución de su imágen (no es para alta disponibilidad). |
31 |
Además PHP es más fácil de aprender que WWWISIS y su lenguaje de formateo, por |
32 |
lo tanto el código es más fácil de mantener para empleados nuevos (mejor |
33 |
ingeniería de software). Luego de evaluar varias soluciones la más atractiva |
34 |
fue la de crear una extensión de PHP capaz de utilizar la biblioteca de |
35 |
funciones OpenIsis. |
36 |
|
37 |
|
38 |
* achievements |
39 |
- API for reading ISIS databases using PHP |
40 |
- PHP extension for Unix and Win32 |
41 |
- PECL including of the extension |
42 |
|
43 |
After one month of development we had a first functional prototype of the |
44 |
extension with all the basic functions. Since, the development has been |
45 |
improved, has been corrected of bugs, and most important runs on different |
46 |
platforms using PHP. Also there has been an effort to include the extension |
47 |
into PECL. |
48 |
|
49 |
|
50 |
* logros |
51 |
- API para leer bases de datos ISIS utilizando PHP |
52 |
- Extensión PHP para Unix y Win32 |
53 |
- Inclusión en PECL de la extensión |
54 |
|
55 |
Luego de un mes de desarrollo tuvimos un primer prototipo funcional de la |
56 |
extensión con todas las funciones básicas. Desde entonces, el desarrollo |
57 |
ha sido mejorado, corregido de errores, y aún más importante corre en |
58 |
diferentes plataformas utilizando PHP. También ha habido un esfuerzo para |
59 |
incluir la extensión en PECL. |
60 |
|
61 |
|
62 |
* future of the PHP extension |
63 |
- Extension for PHP5 |
64 |
- New OO API for the extension, with procedimental backward compatibility |
65 |
- Add writing of ISIS databases |
66 |
|
67 |
The new version of PHP will feature: New object oriented model, Integration |
68 |
with external object oriented models, such as COM and Java, Exception handling |
69 |
and Stack tracing. Therefore upgrading the extension to this model will be a |
70 |
priority, since PHP will be suitable for larger, high-traffic, |
71 |
mission-critical web applications. Also the writing of ISIS databases will be |
72 |
included. |
73 |
|
74 |
|
75 |
* futuro de la extensión PHP |
76 |
- Extensión para PHP5 |
77 |
- Nueva API OO para la extensión, con compatibilidad procedimental |
78 |
- Agregar la escritura de bases de datos ISIS |
79 |
|
80 |
La nueva versión de PHP tendrá características como: un nuevo modelo orientado |
81 |
a objetos, integración con modelos externos orientados a objetos como COM y |
82 |
Java, manejo de excepciones y rastreo de la pila. Por lo tanto actualizar la |
83 |
extensión a este modelo será una prioridad, dado que PHP será adecuado para |
84 |
aplicaciones web de misión crítica, de gran tamaño y de alto tráfico. Además |
85 |
se incluirá la escritura de bases de datos ISIS. |
86 |
|
87 |
|
88 |
* BIG lesson learned (my own experience) |
89 |
- Open Source development can lead to human development (IMHO) |
90 |
- <img src="http://www.bsolano.com/images/opensource.gif"/> |
91 |
|
92 |
Open Source can be one of the different tools used for human development. |
93 |
Since Software Development is not an extensive activity but an intensive one, |
94 |
it can be very productive with less resources. There is a very strong cicle |
95 |
between learning and development when we participate in Open Source projects. |
96 |
The feature "Open" can attract people from around the world to our development. |
97 |
If this is true also for large scale projects we must use this approach for our |
98 |
Latinamerican countries (we need human development). |
99 |
|
100 |
|
101 |
* GRAN lección aprendida (mi propia experiencia) |
102 |
- El desarrollo de Código Abierto puede llevar al desarrollo humano |
103 |
- http://www.bsolano.com/images/opensource.gif |
104 |
|
105 |
El Código Abierto puede ser una de las diferentes herramientas utilizadas para |
106 |
el desarrollo humano. Dado el Desarrollo de Software no es una actividad |
107 |
extensiva, sino más bien una actividad intensiva, puede ser muy productiva con |
108 |
menos recursos. Hay un fuerte ciclo entre el aprendizaje y el desarrollo de |
109 |
software cuando se participa en un proyecto de Código Abierto. La |
110 |
característica "Abierto" puede atraer muchas personas de alrededor del mundo |
111 |
hacia nuestros desarrollos. Si esto es cierto también para proyectos a gran |
112 |
escala debemos utilizar este enfoque en nuestros países latinoamericanos |
113 |
(necesitamos desarrollo humano). |
114 |
|
115 |
|
116 |
--- |
117 |
$Id: CubaPHP.txt,v 1.2 2003/02/10 19:51:43 kripke Exp $ |