La Vida

No te entretengas en tonterías y vete a buscar lo que te haga feliz, que el tiempo corre muy deprisa

25 ene 2010

Las marcas de Estados Unidos desaparecerán en 20 años dice el fundador de Acer

Las maracas de computadoras Estadounidense desaparecerán en los próximos 20 años, debido a que no pueden cumplir las demandas del mercado ya que se ven en la incapacidad de fabricar computadoras a bajo costo.

El año pasado Acer supero a Dell convirtiéndose en la segunda marca de computador más vendida en el mundo y para el 2011 espera superar a HP.

Pero no todas las empresas Estadounidense corren con esta suerte ya que Apple en la actualidad es la empresa número uno en celulares con su marca Iphone y se pretende que en un futuro la venta de televisores.

Actualmente en un mundo donde la tecnología está a la mano de todos los habitantes, es muy comprensible que las empresas que se dedican a la fabricación de productos como las computadoras deben cumplir los requerimientos de sus clientes y estos son buena calidad a bajo precio, es por eso que los productos asiáticos están apoderándose del mercado.

Consumo de Servicios Web Usando PHP 5

Con REST: URL + verbo HTTP->Respuesta XML

REST en teoría:

SQL

REST

CREATE

Post

SELECT

Get

UPDATE

Put

DELETE

Delete

En la práctica en REST solo se utiliza GET para todas las operaciones.

RESET+GET: URL + query string, prueba en Firefox, se procesa en XML.

Flickr+GET: requiere la autenticación del desarrollador.

REST+POST: URL+POST data, no se puede hacer en Firefox, el cuerpo del POST puede ser cualquier cosas, los datos de retorno son XML.

Flickr+POST: Requiere autentificación del usuario y la del desarrollador.

SOAP: Conversión trazada de los tipos de datos nativos a los tipos del esquema de XML y viceversa. Es Independiente del HTTP. El API esta descrito usando WSDL.

TECNOLOGÍAS API REST VS API SOAP

Al implantar una API, se lo puede hacer mediante tres opciones: REST, SOAP, o ambos.

API de REST:

Son fáciles y rapidas de desarrollar pero, la solicitud se envía independientemente del tipo de cifrado utilizado. Cuando se recibe la petición REST, la información vendrá a través del método GET, en una URL que es codificada durante la transmisión. Probablemente se quera descifrar antes de someterlo a un proceso. Diferentes tipos de solicitudes deben dirigirse a diferentes puntos finales (URL). Se puede utilizar un único script de comandos para manejar todas las solicitudes, o configurar el servidor web para asignar criterios de valoración.

API SOAP

Es más compleja, requiere un mayor esfuerzo para generar la respuesta y atender la solicitud, pero permiten una mayor flexibilidad al añadir soporte de espacio de nombres.

Cuando llega una solicitud SOAP, lo primero que se hacer es asegurar que cumple con el formato especificado por el documento WSDL. La mayoria de APIs de SOAP usa cierto framework que se encarga en gran parte del trabajo pesado al manejar solicitudes. API SOAP utiliza un criterio de valoración único para todas las solicitudes.

Representational State Tansfer (REST)

Es una técnica de arquitectura software para sistemas hipermedia distribuidos como la World Wide Web. Un concepto importante en REST es la existencia de recursos, que pueden ser accedidos utilizando un identificador global. Para manipular estos recursos, los componentes de la red (clientes y servidores) se comunican a través de un interfaz estándar (HTTP) e intercambian representaciones de estos recursos (los ficheros que se descargan y se envían), una representación de un recurso es normalmente un documento que recoge el estado actual o prevista de un recurso. Los sistemas que siguen los principios REST se llaman con frecuencia RESTful. REST a través de HTTP trabaja y aprovecha las características que este posee, permitiéndole realizar funciones adicionales en la red tales como almacenamiento en caché de HTTP y la aplicación de seguridad.

REST tiene seis características muy importantes:

1. Cliente-Servidor: Los clientes y los servidores se encuentran separados mediante una interfaz uniforme, esto es que a ninguno de los dos les interesa ya sea el almacenamiento o la interfaz del otro.

2. Stateless: Cada solicitud de cualquier cliente contiene toda la información necesaria para atender la solicitud, y cualquier estado se mantiene en el cliente.

3. Cacheable: si un cliente hace una petición esta se queda almacena en memoria con el objetivo que si otro cliente hace la misma petición sea atendido de manera inmediata.

4. Sistemas de Capas: Un cliente no está conectado directamente al servidor, ni a un intermediario. Los intermediarios puede mejorar la escalabilidad del sistema y hacen cumplir las políticas de seguridad.

5. Código por demanda (opcional) : La funcionalidad de un cliente se puede extender con código trasmitido por el servidor (como: applets de Java y scripts del lado del cliente como JavaScript).

6. Interfaz Uniforme

RESTful Web Services: También se llama RESTful API Web, es un simple servicio web que utiliza HTTP y los principios básicos de REST.

  • El URI base para el servicio web, como http://example.com/resources/
  • El tipo de MIME de los datos admitidos por el servicio Web. Esto es a menudo JSON, XML o YAML.
  • El conjunto de las operaciones soportadas por el servicio Web, utilizando los métodos HTTP (por ejemplo, POST(crea nuevos recursos), GET(lista un recurso), PUT(reemplaza un recurso por otro) y DELETE(borra un recurso)).

24 ene 2010

Envio de Tweets a tu cuenta en Twitter mediante PHP

INTRODUCCIÓN:

Esta práctica de laboratorio se indicara como enviar un mensaje a tu cuenta en Twitter consumiendo el API, se describirá paso a paso lo que debemos hacer para poder llegar a implementar nuestro proyecto. En primer lugar se hablaran de los requisitos tanto del sistema operativo como los que se necesitaran para la aplicación, luego empezaremos con la descripción de nuestro proyecto.

PREREQUISITOS

  • Tener conocimientos de PHP y HTML

REQUERIMIENTOS DEL SISTEMA

  • Sistema Operativo: Windows Vista/XP, Solaris 8/9, Linux, MacOS

REQUISITOS

  • Instalar un servidor que soporte PHP, para esta aplicación instalaremos el servidor WAMP.
  • Tener una cuenta en Twitter.
1. Creación de una página HTML

Lo que se debe crear es un cuadro de texto y un botón, de ahí usted puede agregar títulos, cambiar color al cuerpo, lo que usted desee para mejorar el aspecto de su página.


2. Manipulación del API mediante PHP

Twitter nos proporciona el acceso a su API mediante una librería, esta tiene muchos métodos el que se va a utilizar es statuses/update, esta librería está disponible en http://apiwiki.twitter.com/Libraries#PHP.

  • Lo primero que vamos hacer es copiar esa librería en la carpeta de servidor WAMP, para ellos tenemos que ir a C:wamp/www y pegamos ahí la librería.
  • Ahora volvemos a nuestra pagina html y comenzamos con el código PHP para ello debemos escribir ?> al inicio de del código de nuestra pagina html. Dentro de ?> de debe escribir el resto de código para realizar nuestra aplicación.
  • Primero debemos llamar a la librería de la siguiente manera include_once('2.php');
  • Luego deberemos crear un objeto de tipo Twitter, esto se hace mediante la siguiente sentencia el cual debe tener por atributos el usuario y contraseña de tu cuenta en twitter, $curTwitter =new twitter("usuario", "contraseña");
  • Para modificar el estado en Twitter, es decir enviar lo que hemos escrito en el campo Text Field se lo hace mediante la siguiente sentencia $twitter_status = $_POST['twitter_stat'];
  • Luego se comprueba que no se envíen mensajes en blanco, mediante la siguiente sentencia if(strlen($twitter_status) > 0)


23 ene 2010

TWITTER


Que es Twitter??
Es un servicio gratuito de microblogging que permite a sus usuarios enviar micro entradas basadas en texto, denominadas "tweets", de una longitud máxima de 140 caracteres. El envío de estos mensajes se puede realizar tanto por el sitio web de Twitter, como vía SMS (short message service) desde un teléfono móvil, desde programas de mensajería instantánea, o incluso desde cualquier aplicación de terceros.
API de TWITTER
Uno de los mayores éxitos de Twitter ha sido proporcionar una API funcional desde sus inicios, esto permite que otras personas extiendan las características que twitter ofrece.

DETALLES GENERALES DEL API
La API de Twitter esta desarrollada en base a la arquitectura REST (Representational State Transfer).
La llamada a los métodos se hace por medio de peticiones HTTT GET o POST, según sea el caso.
Para los métodos los datos se devolverán en formato XML, JSON, RSS o ATOM.
Un punto muy importante es que al trabajar con el API, se tiene un limite de 70 peticiones por cada hora , por cada usuario (no por aplicación/IP). Los métodos públicos y los que requieren una petición POST no cuentan con este limite.

20 ene 2010

Drupal CMS

Y si siguiendo con los CMS, hoy hablaremos de Drupal es otro gestor de contenidos con una interfaz muy similar a Moodle, es especialmente idóneo para construir y gestionar comunidades en Internet. Este programa nos permite crear cursos, con sus respectivos usuarios, asignación de roles a los usuarios, crear foros, blogs, etc.
Su instalación es muy sencilla, solo tienen que descargar el software desde su pagina oficial http://drupal.org.es/, luego a este lo deberán descomprimir en el directorio raíz de su servidor (www), es importante mencionar que el servidor debe soportar PHP y MySQL ya que este programa esta escrito en este lenguaje y MySQL se necesita para la base de datos que se debe crear para poder instalar Drupal. Una vez hecho esto procedemos a la instalación de manera similar a la explicada anteriormente en Moodle.




19 ene 2010

Moodle (CMS)

Instalación de Moodle

Antes de empezar con la instalación, es importante saber que Moodle es un sistema gestor de aprendizaje de código abierto, es una herramienta gratuita muy utilizada por los educadores.

Ahora si voy ha describirles paso a paso la instalación de Moodle, el único requisito que se necesita es un servidor que soporte PHP y MySQL, yo les recomiendo el servidor wamp el cual se lo pueden descargar desde esta pagina http://wamp-server.softonic.com, en caso de que no tengan ya uno instalado.

  • Debemos descargarnos el sofware de Moodle , lo obtendremos en la página http://moodle.org
  • Al archivo que descargamos, lo descomprimes en el directorio raíz de tu servidor, es decir en la carpeta www.
  • Arrancamos el servidor, y accedemos a localhost mediante nuestro browser para ingresar a carpeta de Moodle.
  • Se necesita crear el archivo config.php de moodle para esto:
    • Accedemos a la carpeta y nos aparecerá la pagina inicial (index.php) para proceder a nuestra instalación, en la cual se escogerá el idioma que utilizaremos.
    • De ahí se verificara si cumple con los requisitos el servidor, los cuales fueron mencionados en un inicio principio. Una vez que todo esta bien de click en continuar.
    • La siguiente pantalla que se les desplegara es donde les pide el nombre de la base de datos que utilizara Moodle, para esto debemos crear una base de datos en MySQL (create database moodle;), también les pedirá el usuario y la contraseña para esa base de datos, esto lo pueden hacer gráficamente desde su servidor en phpmyadmin que les resultara mas sencillo. Colocamos los datos que nos pide y damos click en el botón continuar.
  • Una vez creado el archivo la config.php al intentar acceder a la página principal de su sitio se encontrará con la página "administración" para continuar con el resto de la configuración.
  • La primera vez que acceda a la página de administración, se le presentará el acuerdo de licencia debe estar acuerdo antes de continuar con la instalación. En este momento, Moodle empezará configurando la base de datos y creando las tablas para guardar los datos. Cuando se hayan creado todas las tablas correctamente demos click en el botón continuar.
  • Ahora usted debería ver un formulario para definir más variables de configuración para su instalación, tales como el idioma por defecto, el servidor SMTP, etc. De click en el botón guardar cambios.
  • Finalmente deberá crear un usuario y contraseña para la administración del sitio (Es muy importante que recuerde el usuario y contraseña).



3 ene 2010

Se feliz... no mueras lentamente

A mi me fascina la poesía en especial esta, creo que nos dice cosas muy importantes, es por eso que publico este poema.. No nos dejemos morir lentamente vivamos cada dia como si fuera el ultimo disfrutando cada instante, luchando por cumplir nuestros sueños, compartiendo cada momento con los seres que amamos.. La vida no es fácil pues esta llena de buenos y malos momentos pero lo importante es disfrutar de las victorias y aprender de nuestras derrotas... Espero que cuando lean este poema mediten sobre su vida y se den cuenta de lo importante que es cada día de vida.. La vida no es el numero de alientos que respiras.. son los momentos que te quitan el aliento
Muere lentamente quien no viaja,
quien no lee,
quien no oye música,
quien no encuentra gracia en sí mismo.
Muere lentamente
quien destruye su amor propio,
quien no se deja ayudar.
Muere lentamente
quien se transforma en esclavo del hábito
repitiendo todos los días los mismos
trayectos,
quien no cambia de marca,
no se atreve a cambiar el color de su
vestimenta
o bien no conversa con quien no
conoce.
Muere lentamente
quien evita una pasión y su remolino
de emociones,
justamente estas que regresan el brillo
a los ojos y restauran los corazones
destrozados.
Muere lentamente
quien no gira el volante cuando esta infeliz
con su trabajo, o su amor,
quien no arriesga lo cierto ni lo incierto para ir
detrás de un sueño
quien no se permite, ni siquiera una vez en su vida,
huir de los consejos sensatos...
¡Vive hoy!
¡Arriesga hoy!
¡Hazlo hoy!
¡No te dejes morir lentamente!
¡NO TE IMPIDAS SER FELIZ!

Pablo Neruda

2 ene 2010

Aplicaciones Web

Introducción:

Se denomina aplicación web a aquellas aplicaciones que los usuarios pueden utilizar accediendo a un servidor web a través de Internet o de unaintranet mediante unnavegador. Una aplicación web se codifica en un lenguaje soportado por los navegadores web (HTML, JavaScript, Java, asp.net,php, etc.) en la que se confía la ejecución al navegador.

Una página Web puede contener elementos que permiten una comunicación activa entre el usuario y la información. Esto permite que el usuario acceda a los datos de modo interactivo, gracias a que la página responderá a cada una de sus acciones, como por ejemplo rellenar y enviar formularios.

Conceptos básicos:

WWW (World Wide Web)

WWW es un sistema hipermedia interactivo desarrollado sobre Internet. Se asienta sobre el protocolo HTTP (Hyper Text Transfer Protocol) y sobre el lenguaje de definición de documentos hipermedia HTML (HyperText Markup Language).

HTTP (Hyper Text Transfer Protocol)

Es un protocolo del nivel de aplicación para sistemas de información multimedia distribuidos. Es un protocolo no orientado a estado que puede ser utilizado para más propósitos que para manejar ficheros HTML.

Lenguaje HTML

HTML, siglas de HyperText Markup Language (Lenguaje de Marcas de Hipertexto), es el lenguaje de marcadopredominante para la construcción de páginas web. Es usado para describir la estructura y el contenido en forma de texto, así como para complementar el texto con objetos tales como imágenes.

Cliente

Es una aplicación, quien solicita la información.

Servidor

Es un programa el cual presta servicios a otras aplicaciones, son accedidos concurrentemente.

Tecnología y Servidor:

Cada de la tecnología tienes su respectivo servidor:

Servidores Tecnologías

Apache PHP

Tomcat JSP,Servlets

IIS Aspx (Asp.net)

Sistema Administrador de Contenidos

Un sistema de gestión de contenidos (en ingles content management system, abreviado CMS) es un programa que permite crear una estructura de soporte (Framework) para la creación y administración de contenidos, principalmente en páginas web, por parte de los participantes.

Consiste en una interfaz que controla una o varias bases de datos donde se aloja el contenido del sitio. El sistema permite manejar de manera independiente el contenido y el diseño. Así, es posible manejar el contenido y darle en cualquier momento un diseño distinto al sitio sin tener que darle formato al contenido de nuevo, además de permitir la fácil y controlada publicación en el sitio a varios editores. Un ejemplo clásico es el de editores que cargan el contenido al sistema y otro de nivel superior (directorio) que permite que estos contenidos sean visibles a todo el público (los aprueba).

Blog

Es un sitio sitio web periódicamente actualizado que recopila cronológicamente textos o artículosde uno o varios autores, apareciendo primero el más reciente, donde el autor conserva siempre la libertad de dejar publicado lo que crea pertinente.

Habitualmente, en cada artículo de un blog, los lectores pueden escribir sus comentarios y el autor darles respuesta, de forma que es posible establecer un diálogo. No obstante es necesario precisar que ésta es una opción que depende de la decisión que tome al respecto el autor del blog, pues las herramientas permiten diseñar blogs en los cuales no todos los internautas -o incluso ninguno- puedan participar.

Portal Web

Este término significa puerta grande, cuyo objetivo es: ser el punto de partida de un usuario que desea entrar y realizar búsquedas en la web, además de obtener información importante de él. Un portal brinda servicios para la navegación en el internet, logrando incrementar la intensidad de tráfico en el mismo.

Un portal de Internet puede ser un Centro de contenido intermediario entre compradores y vendedores de rubros específicos, estos se pueden complementar con herramientas que le ayuden a identificar empresas que satisfagan necesidades de un comprador, visualizar anuncios de vendedores, ofrecer cotizaciones, brindar correos electrónicos, motores de búsqueda, etc.

Android

Android es un sistema operativo para dispositivos móviles y computadoras basado en el núcleo Linux.

Esta plataforma permite el desarrollo de aplicaciones por terceros (personas ajenas a Google). Los desarrolladores deben escribir código gestionado en lenguaje de programación Java a través de SDK proporcionada por el mismo Google. Una alternativa es el uso de la NDK (Native Development Kit) de Google para hacer el desarrollo en C en código fuente. Es importante mencionar que este es un sistema de código abierto.

Mashup

Una aplicación web híbrida es un sitio web que usa contenido de otras aplicaciones Web para crear un nuevo contenido completo, consumiendo servicios directamente, siempre a través de protocolo http.

El contenido de un mashup normalmente proviene de sitios web de terceros a través de una interfaz pública o usando un API.

Los mashups están revolucionando el desarrollo web del mismo modo que los weblogs han revolucionado la publicación en línea.

Los mashups permiten que cualquiera combine, de forma innovadora, datos que existen en diferentes páginas web. Requieren pocos conocimientos técnicos, las APIs existentes son sencillas y potentes y los mashups son relativamente fáciles de diseñar.