... Albringas.com : Programación y Desarrollo
Programación y desarrollo
(1) 2 3 4 »
25/10/2012 7:20:51 (978 Lecturas)
Promoting Firebird in the annual reunion CIAPEM 2012


CIAPEM 2012 is the annual reunion of the TI comitee for state and municipal public administration in Mexico.
It reunites the TI areas of states and municipalities in Mexico. This time the reunion is in Veracruz city, and i was invited to be in the CMD expositor stand. So i have been promoting both CMD services and Firebird as well.

There have been a lot of people interested in Firebird, and i have been giving them information about it. The people interested are mainly from TI areas in municipalities, states and educational institutes.

Today (thursday, october 25) is the second day of the reunion. I'll report by twitter what's going on in the stand and in the expositors area.

By the way, there are also big stands from big software (and database) companies in there. Some people has commented me that their institutions can't afford to pay big licenses accounts from those companies, so they're also interested in Firebird because of its low cost.

0 ID del Artículo : 19
30/9/2012 6:37:30 (1083 Lecturas)
Las herramientas que uso en desarrollos web

Para crear un desarrollo web, se requieren de varias herramientas, librerías de clases y funciones que permitan crear el desarrollo requerido.

He estado trabajando desde el año pasado con Codeigniter como framework de PHP, y me ha funcionado muy bien, y he ido adicionando otras herramientas que permitan conformar un desarrollo web adecuado.

Estas son las herramientas que utilizo en un desarrollo web:

Lenguaje: PHP
Base de datos: Firebird y MySQL
Framework PHP: Codeigniter
Framework Javascript: jQuery
Biblioteca de interfaz: jQuery UI
Generador de gráficas: Flot
Otras herramientas: Thickbox, DatePicker de Kelvin Luck

El editor de que estoy utilizando y que me gusta mucho por su rapidez y practicidad es Sublime Text, muy recomendable. También me ha gustado Aptana, aunque requiere de muchos recursos para funcionar ágilmente.



0 ID del Artículo : 18
19/4/2012 20:10:27 (6432 Lecturas)
Testing Codeigniter with Firebird

I’ve been using Codeigniter as my development platform and framework of choice since last year. Being a ten year PHP developer, Codeigner was a refreshing way of coding web apps with PHP.

The first ones developments I did with Codeigniter were using MySQL, a very used database. But since I’ve also been using Firebird SQL Database from ten or more years ago, I decided to give a try to the Codeigniter-Firebird duo.

So I downloaded the Firebird drivers for Codeigniter, written by Carlos Garcia, and installed in my Codeigniter application setup.

Everything went ok, in the first attempts to make a connection and display a table, the data was displayed as expected. But I noted some little differences in using Firebird, here’s the list:

a) You must use the array indexes of the result array of a query in capital letters. For instance, in this code:


$arr =  $this->db->query("select  id, field from table");
$data $arr->result_array();

When you refer to the content of the data array, you should do that in this way:
echo $data[0]['ID'];


By the way, in the query statement, you can use lower or uppercase letters.

NOTE: Still have not used the ActiveRecord Get methods that return objects for each row of the table, I’ll report them as soon as I use them.

b) When a query fetches a lot of records (sorry, I didn’t test the exact number), it throws an http ‘Internal server 500’ message. I also didn’t test if it’s my server setup. As I know I’ll be using pagination, the error disappeared when I used a 20 record page pagination in the display of the table.

c) I also had an error when making a SELECT * FROM TABLE statement, and if that table has a very large VARCHAR (or CHAR) fields. This was fixed when I specified only a few fields of the table.

d) Another thing I noted is that the num_rows method of a query always returns 1. Don’t know if it’s a bug or product of a special condition in my program. This was resolved by using the sizeof function of PHP, applying it to the result array. This way I know how many rows returned the query.

These are the things I have observed so far. I did my testing today, and plan to continue the application. I’ll report these issues to Carlos, and as he lives in the same city than I, maybe I’ll thank him (in the name of all Codeigniter/Firebird developers) his time and effort in development this piece of software with a pair of beers (maybe more).

Apart from these little issues, the Firebird driver for Codeigniter is working very well and it's very nice to make web applications with both development softwares.


You can download the Firebird Driver for Codeigniter in this URL:
https://github.com/cgarciagl/Firebird-for-Codeigniter

0 ID del Artículo : 17
9/4/2012 20:23:16 (2217 Lecturas)
Configurando Codeigniter para desarrollo en 10 minutos en Mac OSX

A continuación mostraré una manera rápida de tener un entorno de desarrollo Codeigniter, ya se para crear desarrollos o para aprender, todo esto en 10 minutos (dependiendo obviamente de la velocidad de descarga que tengas).

1.- Descarga MAMP de la dirección http://www.mamp.info
2.- Descarga el editor Aptana Studio desde la dirección: http://aptana.com
3.- Descarga el administrador de MySQL Sequel Pro desde: http://www.sequelpro.com
4.- Descargar la versión más reciente de Codeigniter: http://codeigniter.com
5.- Instalar MAMP, Aptana Studio y Sequel Pro.
6.- Crear una carpeta de desarrollo (puede ser en Documentos (documents) en nuestra Mac)
7.- Iniciar MAMP, escribir la contraseña de administrador para que inicien los servidores (MySQL y Apache).
8.- Detener los servidores, y cambiar la configuración (botón Preferencias…) poner los puertos 80 en Apache y 3306 en MySQL. En la pestaña Apache, seleccionar la carpeta creada en el punto 6. Dar click en OK.
Haga Clic para ver la Imagen original en una ventana nueva
9.- Reiniciar los servidores (punto 7).
10.- Desempaquetar Codeigniter en la carpeta de desarrollo.
11.- Abrir el archivo database.php que se encuentra en la carpeta Applications/Config de Codeigniter
12.- Modificar las líneas de configuración:

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'root';
$db['default']['database'] = 'ejemplo';
$db['default']['dbdriver'] = 'mysql';


Donde la línea que indica la base de datos, debe contener el nombre de una base de datos a crear.
13.- Crear la base de datos “ejemplo”, usando Sequel Pro, conectándose al servidor con estas configuraciones:
Haga Clic para ver la Imagen original en una ventana nueva

14.- Una vez conectado, y utilizando el botón Choose Database, seleccionar la opción Add Database.
Haga Clic para ver la Imagen original en una ventana nueva
15.- Escribir el nombre de la base de datos (en este caso, ejemplo).
16.- Listo, ya tenemos un entorno para una aplicación Codeigniter. Lo siguiente es crear modelos, controladores y vistas.

0 ID del Artículo : 16
4/4/2012 14:42:02 (1133 Lecturas)
Refactorizando una aplicación de Cartera

He estado refactorizando en estos días una aplicación de cartera que hice hace algún tiempo. Esta aplicación realiza el control de préstamos (créditos), generación automática de intereses, control de documentación a entregar del cliente, un pequeño y sencillo sistema de contabilidad que controla las entradas y salidas del sistema de cartera, permitiendo obtener reportes contables de las operaciones de la empresa.

Asímismo cuenta con un sistema de control de usuarios que permite establecer permisos de acceso a los datos a cada tipo de usuario, así como limitar las opciones del menú a ciertos usuarios aparte de su control de acceso a datos. También cuenta con un registro de acciones que permite saber quién realiza cada acción en el sistema y en qué momento, y así poder tener un control de las cosas que realiza cada usuario. También permite realizar reportes personalizables, etc.

El asunto es que debido a que se realizó para una empresa en especial, cuenta (o contaba) con algunas cosas muy particulares para esa empresa, por lo que la estoy refactorizando para dejarla más sencilla y a la vez más personalizable para un abanico mayor de empresas.

Haga Clic para ver la Imagen original en una ventana nueva

En cuestiones técnicas, los cambios han sido estos:


  • Pasar de la versión de Delphi 7 donde fue originalmente desarrollada a la versión Delphi 2010, que es la versión más reciente que tengo.

  • Cambio de la versión 2.0 de Firebird a 2.1 (estoy considerando también la versión 2.5)

  • Cambio de los componentes de conexión de FIBPlus a Devart IBDAC



Haga Clic para ver la Imagen original en una ventana nueva

Está quedando muy bien y más estable esta refactorización del código, sin embargo como siempre las limitantes son el tiempo disponible para realizar este trabajo, y el presupuesto (en este caso, cero) por lo que si hay algún patrocinador, será bienvenido.

Haga Clic para ver la Imagen original en una ventana nueva

Más pantallas, en el texto extendido del artículo.

0 ID del Artículo : 15
(1) 2 3 4 »



Sobre el autor

En este blog encontrarás una recopilación de artículos que he escrito sobre programación y desarrollo desde 10 años a la fecha. Al ser también un blog personal, mostraré también algunas otras cosas de mi interés que no tienen que ver con mi profesión.

Actualmente me dedico al desarrollo de software, principalmente sistemas de información usando Firebird, PHP (Codeigniter), Delphi y en ocasiones MySQL. He sido promotor de Firebird al crear la página de Firebird en Español (http://www.firebird.com.mx) en el año 2000, y usando esa base de datos en casi todos los trabajos que realizo.