jueves, 12 de noviembre de 2009

el futuro del internet

Internet de las cosas, inteligencia artificial, singularidad, web semántica, naturaleza de la conciencia, con autores como Kurtzweill, Kevin Kelly y muchos otros sobre web 3.0, futuro de la web, de los que hemos hablado aquí en ocasiones y que trataré en Virtual Educa 2009, en Buenos Aires, en unos meses:

4 Vídeos imprescindibles para entender la web 3.0

1. The future Internet: Service 3.0 Video será presentado en el Web 3.0 Event en pocas semanas. Ha sido un descubrimiento reciente y creo que es, simplemente, lo mejor de la serie para entender la evolución de la web. No he podido encontrar el código para embeberlo, así que os dejo enlace:

servicios-3

2. Entender la web semántica: Lo utilizo y comento en mis presentaciones porque creo que, al estilo de los de Common Craft, ayuda a entender de forma simple y amena el concepto:

3. Kevin Kelly, de Wired, una de las publicaciones digitales más antiguas: Los próximos 5000 días de la web, también en inglés pero insustituible como introducción a lo que vendrá:

4. El futuro de Internet: El vídeo, hecho por Simón Hergueta, trata sobre singularidad tecnológica, esa inteligencia sobrehumana de la que habla, también Kevin Kelly y que seguro que es posible si no la entendemos como nada más que eso, inteligencia, sin voluntad, conciencia y algunas otras de las cosas que hacen del ser humano algo distinto.

Ha generado bastante polémica (también en Los sueños de la razón y estoy de acuerdo en cuestionarlo si supone que el aumento de conexiones podría hacer surgir de forma espontánea la conciencia.


javascript MVC

JavaScript sigue siendo el centro de la web, con presencia en prácticamente todos los proyectos que aparecen continuamente. Al igual que con HTML, sus orígenes eran mucho más limitados y su constante crecimiento obliga a un replanteamiento de su uso. La aparición de ROR, aunque no se ha convertido en el estándar que muchos esperaban, sí ha hecho que las arquitecturas MVC se hayan extendido a la mayoría de los lenguajes de programación. Y JavaScript no podía ser menos. En A List Apart incluyen un excelente artículo sobre la implementación MVC para JavaScript como medio de organización del código.

viernes, 6 de noviembre de 2009

php 5.3

Aqui obtendrás información acerca de migrar de php 5.2 a 5.3 http://es2.php.net/migration53
Aqui todo lo relacionado con php 5.3 http://php.net/releases/5_3_0.php

jueves, 5 de noviembre de 2009

Comparando paradigma estructurado con POO

Encontre la info por la red, un experto escribe

El tema de entender porque pasar a POO es comprender el mundo y los cambios del mismo, ya que algo en estructurado para ti son 200 lineas y en POO son 500 lineas, y entonces que ventaja tiene hacer POO si terminas escribiendo mas ?

Hay muchas formas de explicarlo, y mi forma de hacerlo cambio durante los años, yo comencé a programar cuando no existía otra forma, pero quien hoy enseña formalmente en estructurado, realmente no sabe de trataesto de programar.

Existen muchas formas de armar un sistema, como por ejemplo el modelo vista controlador (MVC), un modelo de capas de datos, entidades, interfaces, etc.

Al comienzo cuando en 1994 comencé a ver el tema, no había otra que hacerlo por gusto, o para re-utilizar, ya que pascal, y clipper que usaba en esos tiempos y luego visual basic, realmente no podían aprovechar las ventajas.

La idea de programar en objetos, es simplemente tratar de facilitar tanto la manera de pensar un sistema, como la de reutilizar partes.

Por ejemplo si creas una clase persona:

Persona {
nombre string;
apellido string;
}

puedes crear objetos heredados de esa clase:

Empleado hereda de Persona {
sueldo double;
}

con solo eso, tu puedes crear un objeto de la clase empleado, algo así:

e = new Empleado();

y luego usar ese objeto, por ejemplo para mostrar los datos:

echo e.nombre;
echo e.apellido;
echo e.sueldo;

como ves si bien Persona tiene 2 campos, en realidad Empleado tiene 3 porque heredo y le agregamos uno.

Esto es posible hoy día y significa muchas ventajas. Imagina un sistema de ventas, donde tu creas tu clase Persona, haces tus métodos set y get y ademas los métodos para guardar, en la base, obtener de la base, mostrar en pantalla (o dispositivos), etc.

Eso 20 o 30 procedimientos tu los haces en Persona, pero con solo heredarlos los puedes usar en:

Empleados hereda Persona {}

Vendedores hereda Persona {}

Clientes hereda Persona {}

Proveedores hereda Persona {}

o sea que personas en estructurado ocupa 100 lineas, en POO seguramente 200 o 300, pero realmente con poder re-utilizar ganas un sistema que en vez de 5 mil lineas, tiene 1500 smile.gif

Por otra parte si hay algún cambio, lo haces en un solo logar y eso se repara para todos sus heredados.

Esta es la primer ventaja de POO.

Otra cosa que en principio parece fea, y un largo camino para hacer algo sencillo son lo de los metodos get y set, es obvio que hacer:

e.nombre = "pepe";

y echo e.nombre;

es sencillo, pero no es lo optimo, siempre es mejor crear metodos set y get, algo simple como:

setNombre(n string) {
nombre = n;
}

y

getNombre() string {
return nombre;
}

y lo usaras así:

e.setNombre("pepe");

y

echo e.getNombre();

es mas largo, y parece poco útil, pero imagina que el nombre, DNI, cedula, pasaporte deba tener cierto formato smile.gif, solo heredas y en la función SET modificas o verificas ese contenido.

La suma de todo esto nos hacen posible crear modelos como el MVC y de Capas, y vamos a un poco de historia.

Al comienzo, cuando programaba en clipper, no tenia mas que usar dbase o un derivado de este para base de datos, y mi programa lo miraban en una pantalla CGA 256 colores, en DOS o Windows. El esquema era este:

[DBASE - SISTEMA]

O sea todo en uno, y el mismo sistema contenía el manejador de base de datos.

Esa realidad ya no es así, el motivo es que existen un montón de bases de datos, un montón de sistemas operativos, un montón de dispositivos donde verlo.

Con el viejo sistema, se tenia que hacer un programar para windows, otro para linux, otro para SQL, otro para DBase, etc, todo aparte.

Si programamos en capas podemos tener:

[servidor base de datos] <=> [driver de datos] <=> [adaptador de datos] <=> [entidades de datos] <=> [sistema o reglas de negocio] <=> [interfaz]

o sea un sistema de múltiples capas, explico brevemente:

servidor de datos, es SQL, MySQL, Oracle, etc

driver de datos, es el que ejerce la conexión, por ejemplo un driver mysql para java windows, o un driver mysql para java linux, o un driver mysql para .net o php, etc

adaptador de datos, es un modulo hecho por ti, que conociendo el driver va a guardar y obtener datos desde la base, como única misión, y dejarlo disponible para tusistema.

entidades de datos, son tus clases que mantienen la info en memoria para que la utilice tu sistema, luego de obtenerla en la base, y antes de presentarla en pantalla

reglas de negocio, es un modulo que hace lo que el sistema debe hacer, calcular sueldos, preparar datos para recibos, etc

intefaz, es tu pagina web, o pantalla DOS, o windows, o en un dispositivo móvil.

Como ves, muchas piezas, pero gracias a POO puedes programarlas independiente una de otra.

En un sistema POO bien ideado, y construido ninguna capa molesta a la otra, por el contrario la potencia.

Esto quiere decir, que con solo modificar la capa de acceso a datos, tu sistema pasa de ser para SQL a MySQL u ORACLE, cambiando solo esas pocas lineas, o incluso funcionar con cualquiera de las bases de datos si lo programas de esa forma.

Lo mismo pasa con la interfaz, solo cambiando esto, todo tu sistema pasa de ser utilizado en web, red local, a ser utilizado en móviles, linux o windows.

Esa es la idea general y posibilidades de la programación orientada a objetos.

Cada lenguaje tiene frameworks o librerías que permiten utilizarse en sustitución de cada capa.

Por ejemplo en .net, acostumbro a crear un modulo de datos, para 2 o 3 tipos de base de datos (SQL, MySQL, Oracle), que con solo seleccionar el sistema funciona con cualquiera de las 3, pero todo mi sistema es re utilizable sin mas cambios. Lo mismo para que el sistema corra en LAN, Web, o Windows, o linux si MONO fuera lo que debe ser.

En PHP, lo mismo ahí utilizo ADODB para la capa de datos y driver de acceso a datos. Y smarty para la interfaz web, para lograr independencia del diseño.

sábado, 31 de octubre de 2009

Animaciones en la que puedes interactuar con un Router Cisco 2600 series. Y te permite configurar e ingresar ciertos comandos desde teclado.


Configuring BGP


Integration IGRP


Directed - Broadcast - Handling


Configuring Basic BGP


Creating a BGP Route Reflector


Configuring BGP Connection Wheight


Modifying Redist. Admin. Distances


Redistribution with Route Filters


Route Map Creation


IP Helper - Address Command

martes, 27 de octubre de 2009

mega coleccion cisco

Hola amigos, juntando info por la red, pude conseguir todo esto, ahora tienen que estudiar pa aprobar el curso del ing Nixo, saludos

MEGA COLECCION CISCO
Parte 1
Calculo_manual_de_subredes
Fundamentos de Unix v2.0 Español (CISCO)
Fundamentos de Wireless LANs v1.0
Guía de Preparación para el Examen de Certificación CCNA
redes y routers
Código:
http://rapidshare.com/files/281838176/a_d_c_1.rar
Parte 2
CCNA Examenes Final todos los modulos Version 4.0
Cisco 4.0 (laboratorios y teoria)
libro de ccna 1,2,3,4 en pdf
Código:
http://rapidshare.com/files/281842229/a_d_c_2.part1.rar
http://rapidshare.com/files/281827341/a_d_c_2.part2.rar
Parte 3
CCNA 1 EXPLORATION 4.0 en pdf y el ejecutable, en donde se instala el curso oficial, en español
Código:
http://rapidshare.com/files/281924733/c_4_e_1.part1.rar
http://rapidshare.com/files/281886877/c_4_e_1.part2.rar
Parte 4
CCNA 2 EXPLORATION 4.0 en pdf y el ejecutable, en donde se instala el curso oficial, en español
Código:
http://rapidshare.com/files/281942593/c_4_e_2.part1.rar
http://rapidshare.com/files/281923356/c_4_e_2.part2.rar
Parte 5
CCNA 3 EXPLORATION 4.0 el ejecutable, en donde se instala el curso oficial, en español
Código:
http://rapidshare.com/files/282296533/c_4_e_3.rar
Parte 6
CCNA 4 EXPLORATION 4.0 el ejecutable, en donde se instala el curso oficial, en español
CCNA 4 V 4.0 Exploration - Examen Final Modulo 4 [61 preguntas].pdf
Código:
http://rapidshare.com/files/282306559/c_4_e_4.part1.rar
http://rapidshare.com/files/282284948/c_4_e_4.part2.rar