الأحد، 4 نوفمبر 2012

Trabajando con IBM Lotus 8.5

En este año tuve la oportunidad de trabajar con entornos nuevos hasta entonces para mi, uno de ellos IBM Lotus.

Lotus es una arquitectura para la colaboración cliente servidor, es en gran medida la contraparte o la alternativa a SharePoint de Microsoft. Lotus es mas antiguo que su competencia y como suele suceder para los usuarios normales o los promedio no es muy conocido, sin embargo en las grandes empresas si lo es y tiene una gran aceptación.

En latinoamérica se utiliza mucho, mas lo hacen en Europa, tengo datos que se lo utilizan en centroamérica, salvador, honduras, en costa rica las entidades del estado lo utilizan, como el el MOPT y el CONAVI, ademas de otras empresas privadas, en Nicaragua lo utiliza el BAC y la asamblea nacional, aunque es de reciente adquisición. Lo que he observado en muchas de estas empresas es que lo utilizan principalmente solo cliente y servidor de correo e IM feature subutilizandolo, y no solo los usuarios, también los desarrolladores.

NOTA: Aunque una solución de IBM Lotus se puede adquirir  a un precio inferior a las de Microsoft legalmente, en latinoamérica pierde por el alto indice de uso piratas. Otra desventaja es la poca oferta de personal cualificado.


Mas información técnica, características e historia la encontraran en la red, este articulo se centra en ser una referencia y principalmente notas de mi experiencia.


 

EL ecosistema de Lotus.

LOTUS es una solución corporativa colaborativa, aunque por cuestiones de marketing la venden separadas pero fácil de integrar. Cada parte creada para interactuar con las demás de forma nativa y transparente. Utiliza una base documental por defecto aunque actualmente se puede conectar a una base de datos externa principalmente DB2.

El ecosistema incluye pero no limitado a: servidor y cliente de correo, suite ofimática, mensajeria instantenea, conectores/middleware para colaboracion en tiempo real, solucion para conferencias, clientes para smartphones, entre otras.

El enlace, midleware o conector para colaboracion de documentos es una de las soluciones menos compradas, la falta de conocimiento o el impetu de ahorrarse unos cuantos dolares hace seguir trabajando con documentos de forma antigua.

Notes: Es el cliente de Domino, que es el servidor, pero por legacy o legado los usuarios veteranos le llaman a todo el conjunto LOTUS.

Domino: Es el servidor, brinda las conexiones, controla partiendo de LDAP (Directorio de Acceso) las cuentas de usuario partiendo de estas la seguridad y luego la comunicación o enlace con los demás servicios como: mensajería instantánea, correo electrónico, y el acceso a todas las base de datos/aplicaciones creadas, también controla que todas las copias o replicas estén debidamente sincronizadas según los parámetros establecidos.

Symphony: Es la suit o solucion ofimatica, es un fork de OpenOffice, con algunas caracteristicas propias de IBM, al comprar el paquete de colaboracion ofimatica en tiempo real, varios usuarios pueden estar editando el mismo documento al mismo tiempo.

SameTime: Es el cliente de mensajeria instantanea, permite todo lo que se espera de tal: llamadas de audio y video, conferencias, enviar y recibir archivos. Tiene clientes para los principales S.O. de los smartphone: iOs de iPhone, Android y blackberry.


Para que sirve?

Permite crear aplicaciones standalone o distribuidas, a cada aplicacion se le llama base de datos, y se distribuye como un solo archivo. Las aplicaciones que crear tienen nivel de acceso por usuario o perfil altamente personalizable y estricto una vez establecido.

La ventaja es que puede acceder desde un solo cliente el Notes, a todas las funciones: e-mails, la mensajería instantánea, herramientas ofimáticas y por supuesto las aplicaciones creadas y desde estas puede controlar todo lo antes mencionado. Permite crear desde una misma interfaz de desarrollo crear una capa de interacción tanto de escritorio (RCP), como WEB, y rich web.
 
 El problema es que muchos lo compran nomas porque se lo vendieron bonito y luego no se sienten cómodos y/o no saben como explotarlo apropiadamente.

Algunos adquieren IBM Portal y luego exigen portlets creados en lotus, pero al hacerlo de la forma incorrecta solo estan utilizando LOTUS como un almacén de datos, para este caso lo mejor es utilizar otra solución, les seria mas rentable. 

Puntos a Favor

1. Colaboracion. Es la razón de ser, pero irónicamente para la colaboración completa se debe adquirir un conector aparte que es el menos comprando.

2. Seguridad. Uno de los pilares de Lotus.

3. Integración. Con la suit completa y una buena implementación la integración es tan que es transparente para el usuario logrando una sensación que todo es lo mismo.

4. Precio. Siendo legales, es mas asequible que Microsoft.


Puntos en Contra

1. Una de las principales debilidades es a como todos los productos de IBM su lento mantenimiento y actualización, su ultima release fue en 2009, la version 8.5.3. Impidiéndole tener acceso a tecnologías de reciente lanzamiento rápidamente, forzando en algunos casos a comprar soluciones a terceros.

2. Desarrollo. Puede ser confuso, si no se sigue un patrón y se deja constancia de ello(un documento), puede ser una pesadilla para el próximo desarrollador que le de mantenimiento a un sistema existente.

4. A Symphony aun le faltan algunas funciones para competir en el feeling o comodidad contra MS Office.

5.

El desarrollo

 Desarrollar aplicaciones para lotus puede parecer complicado al principio, la curva de aprendizaje es horizontal al principio.

Muchos desarrolladores terminan por hacerlo de un modo incorrecto, puesto que les parece limitado y complicado la forma de hacerlo correctamente.

En lotus, cada pantalla o ventana es un formulario o documento y es único, y los datos almacenados en ese formulario o documento corresponden a una tabla con ese nombre, si quieres crear diferentes interfaces para los mismos datos no puedes crear otro formulario y esperar conectar los datos, se puede pero es mas difícil y poco recomendable, lo que se hace es crear todas las variantes en el mismo formulario, cada detalle, cada boton, sea para una interfaz de escritorio, web o de móvil, debe ser programado en el mismo archivo, en el mismo espacio de trabajo, motivo por el cual el formulario se puede volver caótico, aparentar que no tiene forma, todo esta revuelto.

Debido a esto hay comunidades como esta:

Los formularios tienen un esquema de eventos y propiedades, para programar visualmente, se puede colocar código para un cliente web, o para el cliente RCP o ambos. 

Al programar de la forma correcta muchos programadores se sienten limitados o incapaces de resolver en tiempo, ademas algunas cosas son tecnicamente imposibles de hacer con las herramientas que brinda por defecto, asi que terminan utilizando lotus como un almacen de datos y desarrollan una interfaz  accesible solo via web con un framework para web Rich como : Extjs. Muchos incluso pegan codigo HTML completo dentro de los formularios para hacer una pagina. Esto tiene sus desventajas, por ejemplo la integracion con el ecosistema se hace un poco mas difícil. Ademas en una actualización de plataforma puede presentarles serios problemas de compatibilidad, la seguridad también se puede comprometer y por ultimo en un esfuerzo por tratar de cumplir con todo puedes crear un FrankStain poco atractivo para el usuario.

 Recomendaciones para desarrollar con LOTUS.

1. Utilizar equipos potentes. siempre es bueno esto, los equipos viejos aunque seguros hacen tener mucho lack de desarrollo que al sumarlo no nos conviene.

2. Utilizar pantalla grande widescreen. una pantalla grande permite desarrollar mas cómodamente y aumenta la productividad.

3. Recordar que esta utilizando Eclipse, puede incluso utilizar versiones mas recientes de eclipse y agregarle el soporte a lotus.

4. Hacer copias de su base de datos constantemente, cada una o dos horas o en su defecto activar el control de versiones, aunque para algunos esto puede ser difícil. Contrario a lo que te pueda decir tu jefe, resuelve siempre que puedas y tengas el tiempo conectarlo a un sistema de control de versiones.

5. Planear bien el alcance y la escalavilidad para poder extenderlo sin dejar de utilizar todo el potencial de lotus, desde el punto de vista de la integración y la seguridad, que es la esencia, de no ser así, mejor se buscan otra plataforma.


Enlaces Recomendados (Desarrollo)

 OpenNTF
 Xpages
Blog particular acerca de Lotus

Conclusión:

...

الاثنين، 24 سبتمبر 2012

Utileria de escritorio para enviar mensajes de texto desde movistar.com.ni

(Estado Actual:  En mantenimiento) 
En ciertas ocaciones cuando estamos laburando requerimos enviar un mensaje de texto, y Movistar ofrece la opcion de enviarlo desde el website. He creado una utilieria para enviarlo sin entrar a la pagina de movistar.

La pagina web de Movistar Nicaragua tiene un deseño feo y poco practico,  es angosta y muy grande, para poder ver lo que necesitas hay que desplazarse hacia abajo y se refresca constantemente, ademas ofrece poca información, fuera de eso tiene una gran utilería como es el envío de mensajes de texto, muchos lo utilizan, es una alternativa muy buena si:
1. Quieres ahorrarte unos centavos.
2. No tienes el telefono a mano.
3. Estas fuera del pais.
4. El telefono se descompuso.
5. Quieres escribir comodamente.

Pero tiene sus inconvenientes: no guarda el numero con el que se esta comunicando, como dije, se refresca demasiado, no tienes tus contactos guardados.

Es por esta razon que he creado un wrapper para brindar todas estas facilidades:
1. Puedes crear tu Directorio Telefonico,
2. puedes escribir todo lo que quieras y la utiliria partira el mensaje en n mensajes necesarios
3. Se minimiza en el SystTray(Bandeja de sistema)


HAGO Efacis en:
1. Esta utileria solo es un wrapper, asi que no reemplaza al sitio de movistar.
2. depende completamente del sitio de movistar.com.ni.
3. Depende del acceso a internet.
4. Debe tener una cuenta de movistar.com.ni valida

Capturas de Pantalla
1. Pantalla Principal


2. Aplicacion minimizada en Windows.

 3. El menu se activa con el menu contextual (Boton derecho del Mouse)


 4. Ventana de Administración de Contactos.


* ** En Planes hacer una version para Android.



Enlaces : (Estan en Google Drive) [Actualizado el 02 de Octubre]
ZIP (Contiene Ejecutable para windows y lanzador  para Linux)
zip


SOLO JAR (X Plataforma)
JAR


Esta versión no funciona por ahora, estoy creando una mejor version.

الاثنين، 10 سبتمبر 2012

Como cargar Datos en un GRID de GWT con GXT, how to load datas into grid of GWT when use GXT (Ext-GWT)

GWT es un poderoso framework de rapido desarrollo tiene muchos seguidores y varios detractores, siguiendo la norma del universo, del Ying y del Yang tiene sus lados buenos y malos.

En esta ocacion a peticion de un amigo presento que pasos y consideraciones debes seguir para poder cargar datos en un control GRID de Extj-GWT (  de www.sencha.com) .

Esto es para la version 4 de GWT y 3 de GXT.


Consideraciones:
 1. GWT utiliza el motor AJAX para el intercambio de datos y al utilizar GXT (GXT = ExtGWT de sencha.com ) por encima nos da dos formatos de datos para trabajar: XML y JSON.

2. Al utilizar GXT y MVC utilizamos una clase midleware POJO de definicion de datos, es esta clase en la que se definen el tipo de datos a intercambiar.

3. Definir bien el set y caracteristicas de datos a intercambiar, cuando los datos proceden de varias fuentes como datos de factura y detalle de factura para mostrar una lista es logico pensar que podrian pasar una coleccion de clases que contienen otras clases, pero esto es mas dificil/tardado por lo que se puede optar a crear una definicion de datos para ese grid en particular y solo pasar registros planos, es decir que no contienen subClases.

Pasos:

1. Creamos la Deficion de datos que vamos a intercambiar es decir que los datos que seran enviados desde el servidor al Control GRID del lado del cliente. Esto se hace en el paquete de la seccion shared del GWT. Se sugiere en esta seccion crear un paquete llamado model o modelo, donde se almacenan los modelos o POJOs de las clases de datos. La nuestra clase debe extender la clase BaseModelData.

2. Creamos el servicio para la entrega de los datos. Este es el metodo que solicitara los datos desde el cliente al servidor, con o sin parametros, el plugin automáticamente crea una llamada a un servlet en el web descriptor del proyecto. Esto se hace en la seccion "Client" del GWT se aconseja un paquete llamado DAO, que se explica por si solo.

Este paquete se dispara/activa desde el control cliente en el navegador y hace una peticion via AJAX al servidor utilizando un endPoint de servlet, revisa la respuesta y  en caso de ser correcta la entrega al GRID para que la muestre.


3. En la clase del formulario:
a) Instanciar los servicios remotos. Puede hacerlo antes o despues de pintar el grid.
b) Definiendo el GRID
     - Crear la definicion de las columnas
     - Crear los cargadores de los datos
     - Definir el Store
     - crear el objeto grid pasandole como parametro las columnas y el store creado.
     - Cargar los datos, esto lo puede hacer para que lo haga automaticamente cuando termine de dibujarse o para que sea manual mediante algun boton.

// Comment
package ni.com.empresa.client.vista.catalogos;

import java.util.ArrayList;
import java.util.List;

import ni.com.empresa.client.dao.LineanavieraDAO;
import ni.com.empresa.client.dao.LineanavieraDAOAsync;
import ni.com.empresa.client.vista.comunes.Mensajes;
import ni.com.empresa.client.vista.recursos.Resources;
import ni.com.empresa.client.vista.widget.Reporte;
import ni.com.empresa.shared.modelo.Lineanaviera;

import com.extjs.gxt.ui.client.data.BaseListLoader;
import com.extjs.gxt.ui.client.data.ListLoader;
import com.extjs.gxt.ui.client.data.RpcProxy;
import com.extjs.gxt.ui.client.event.ButtonEvent;
import com.extjs.gxt.ui.client.event.Events;
import com.extjs.gxt.ui.client.event.GridEvent;
import com.extjs.gxt.ui.client.event.Listener;
import com.extjs.gxt.ui.client.event.SelectionListener;
import com.extjs.gxt.ui.client.store.ListStore;
import com.extjs.gxt.ui.client.widget.LayoutContainer;
import com.extjs.gxt.ui.client.widget.MessageBox;
import com.extjs.gxt.ui.client.widget.Window;
import com.extjs.gxt.ui.client.widget.button.Button;
import com.extjs.gxt.ui.client.widget.form.FieldSet;
import com.extjs.gxt.ui.client.widget.form.FormPanel;
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
import com.extjs.gxt.ui.client.widget.grid.Grid;
import com.extjs.gxt.ui.client.widget.grid.GroupSummaryView;
import com.extjs.gxt.ui.client.widget.layout.FormData;
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.rpc.ServiceDefTarget;

public class LineasNavierasCatalogoFrm extends LayoutContainer {

// Controles
LayoutContainer contenedor = new LayoutContainer();

// Proxys
RpcProxy> proxyNavieras = null;

// Servicios
final LineanavieraDAOAsync daoNavieras = (LineanavieraDAOAsync) GWT.create(LineanavieraDAO.class);

// Variables
List configs = new ArrayList();
GroupSummaryView view = null;
ColumnModel cm = null;
Lineanaviera nav = null;

// Aqui definimos el Control GRID lo ponemos como propiedad para que sea alcanzado desde cualquier parte de la clase.
private Grid gridNavieras;

//Constructor de la clase que pinta el GRID.
public LineasNavierasCatalogoFrm() {
initServicios();
iniciaPintar();
//metodo para cargar los datos en el grid automaticamente.
gridNavieras.getStore().getLoader().load();
}

//Metodo Instanciador de servicios de Servicios
void initServicios() {
// Servicio de Consignatarios/Clientes
ServiceDefTarget epConsignatario = (ServiceDefTarget) daoNavieras;
String uriConsignatario = GWT.getModuleBaseURL() + "LineanavieraDAO";
epConsignatario.setServiceEntryPoint(uriConsignatario);

// Carga de Consignatarios
proxyNavieras = new RpcProxy>() {
@Override
protected void load(Object loadConfig, AsyncCallback> callback) {
daoNavieras.getList(callback);
}
};

}

@SuppressWarnings({ "rawtypes", "unchecked" })
void iniciaPintar() {

setWidth("755px");

FormPanel frmpnlNaiveras = new FormPanel();
frmpnlNaiveras.setHeaderVisible(false);
frmpnlNaiveras.setPadding(2);
frmpnlNaiveras.setFrame(true);
frmpnlNaiveras.setSize("755", "330");
frmpnlNaiveras.setHeading("Catalogo de Navieras");

FieldSet fldstNavieras = new FieldSet();

LayoutContainer Contenedor = new LayoutContainer();

//Establecemos las configuraciones de las columnas
configuracionDeColumnas();

ListLoader> listNavieras = new BaseListLoader(proxyNavieras);
ListStore storeNavieras = new ListStore(listNavieras);

cm = new ColumnModel(configs);
gridNavieras = new Grid(storeNavieras, cm);
gridNavieras.setLoadMask(true);
gridNavieras.setAutoExpandMax(600);

gridNavieras.addListener(Events.RowDoubleClick, new Listener() {
@Override
public void handleEvent(GridEvent e) {
nav = ((Lineanaviera) e.getModel());

final Window window = new Window();
window.setSize(470, 275);
window.setResizable(false);
window.setPlain(true);
window.setModal(true);
window.setResizable(false);
window.setBlinkModal(true);
window.setHeading("Edicion Naviera");
window.add(new LineasNavierasFrm(nav));
window.show();
}
});
gridNavieras.addListener(Events.RowClick, new Listener() {
@Override
public void handleEvent(GridEvent e) {
nav = ((Lineanaviera) e.getModel());

}
});

Contenedor.add(gridNavieras);
gridNavieras.setSize("715", "220");
fldstNavieras.add(Contenedor);
Contenedor.setBorders(true);
frmpnlNaiveras.add(fldstNavieras, new FormData("100%"));
fldstNavieras.setHeading("Consignatarios");

ToolBar toolBar = new ToolBar();
toolBar.setBorders(true);
toolBar.setEnableOverflow(false);

Button btnNuevo = new Button("Nuevo ");
btnNuevo.setIcon(Resources.ICONS.add());
btnNuevo.addListener(Events.Select, new Listener() {

@Override
public void handleEvent(ButtonEvent be) {
final Window window = new Window();
window.setSize(470, 275);
window.setResizable(false);
window.setPlain(true);
window.setResizable(false);
window.setModal(true);
window.setBlinkModal(true);
window.setHeading("Nueva Naviera");
window.add(new LineasNavierasFrm());
window.show();

}
});

Button btnRefrescar = new Button("Refrescar ");
btnRefrescar.setIcon(Resources.ICONS.task());
btnRefrescar.addListener(Events.Select, new Listener() {

@Override
public void handleEvent(ButtonEvent e) {
gridNavieras.getStore().getLoader().load();

}
});
toolBar.add(btnRefrescar);
toolBar.add(btnNuevo);

Button btnConsultar = new Button("Consultar ");

btnConsultar.setIcon(Resources.ICONS.form());
btnConsultar.addListener(Events.Select, new Listener() {

@Override
public void handleEvent(ButtonEvent e) {

if (nav != null) {

LineasNavierasFrm frmNaviera = new LineasNavierasFrm(nav);
frmNaviera.btnSalvar.setEnabled(false);

final Window window = new Window();
window.setSize(470, 275);
window.setResizable(false);
window.setResizable(false);
window.setPlain(true);
window.setModal(true);
window.setBlinkModal(true);

window.setHeading("Consulta Naviera");

window.add(frmNaviera);
window.show();

} else {
MessageBox.alert("Error de Seleccion", "No ha seleccionado una Naviera", null);
}
}
});
toolBar.add(btnConsultar);

Button btnEliminar = new Button("Eliminar");
btnEliminar.setIcon(Resources.ICONS.delete());
btnEliminar.addSelectionListener(new SelectionListener() {
@Override
public void componentSelected(ButtonEvent ce) {
}
});

btnEliminar.addListener(Events.Select, new Listener() {
@Override
public void handleEvent(ButtonEvent e) {
if (nav != null) {
LineanavieraDAOAsync serviceConsignatarios = LineanavieraDAO.Util.getInstance();

serviceConsignatarios.delete(nav.getIdlineanaviera(), new AsyncCallback() {
@Override
public void onFailure(Throwable caught) {
Mensajes.error(caught.getMessage());
}

@Override
public void onSuccess(Void result) {
Mensajes.deleteOK("Naviera Eliminada!");
gridNavieras.getStore().getLoader().load();
}
});

} else {
MessageBox.alert("Error de Seleccion", "Seleccione Naviera a Eliminar!", null);
}

}
});
toolBar.add(btnEliminar);

Button btnVistaPreliminar = new Button("Vista Preliminar");
btnVistaPreliminar.addListener(Events.Select, new Listener() {
@Override
public void handleEvent(ButtonEvent e) {

Window w = new Window();
w.setSize(900, 600);
w.setModal(true);

w.add(new Reporte(21, Reporte.PDF, "", false));
w.show();
}
});
btnVistaPreliminar.setIcon(Resources.ICONS.print01());
toolBar.add(btnVistaPreliminar);
frmpnlNaiveras.add(toolBar, new FormData("100%"));
add(frmpnlNaiveras);
}

//Metodo para definir las caracteristicas de las columnas
private void configuracionDeColumnas() {
configs = new ArrayList();

ColumnConfig idlineanaviera = new ColumnConfig("idlineanaviera", "Id", 80);
configs.add(idlineanaviera);

ColumnConfig nombrenaviera = new ColumnConfig("nombrenaviera", "Naviera", 150);
configs.add(nombrenaviera);

ColumnConfig nombrecontacto = new ColumnConfig("nombrecontacto", "Contacto", 150);
configs.add(nombrecontacto);

ColumnConfig telefonoscontacto = new ColumnConfig("telefonoscontacto", "Telefono", 100);
configs.add(telefonoscontacto);

ColumnConfig clmncnfgEmail = new ColumnConfig("email", "Email", 100);
configs.add(clmncnfgEmail);

ColumnConfig estatus = new ColumnConfig("estatus", "Estatus", 70);
configs.add(estatus);

ColumnConfig idpais = new ColumnConfig("pais", "Pais", 70);
configs.add(idpais);

}

}



الجمعة، 25 مايو 2012

Movistar Nicaragua APN WAP MMS datos configuracion

Configure your smarPhone, android, nokia, iPhone, etc,  modems 3G, tabletas, etc.


APN: internet.movistar.ni

Movistar's connection data:
Dial up number: *99#
User: movistarni
Password: movistarni
APN: internet.movistar.ni

Movistar's Connection Data WAP
Connection Name: Movistar WAP o como quiera
APN : wap.movistar.ni
Para la conexion a Internet FULL el APN es: internet.movistar.ni
User: movistarni
Password: movistarni
Proxy010.012.023.001
Port:80/8080

Movistar's Conntecion data MMS
Connection Name: Movistar MMS
APN : mms.movistar.ni
User: movistarni
Password: movistarni
Authenticacion : normal
Proxy010.012.023.001
Port:80
mmsc: http://mms.movistar.ni

Si es un en el mismo dispositivo, configurar todo en el mismo APN.

Actualizacion(2013)
En algunos dispositivos se puede adquirir la configuracion desde la operadora  enviando el mensaje de texto "activame" o "internet" al 5981

الخميس، 24 مايو 2012

APN Claro Nicaragua Configuracion

El servicio al cliente de Claro apesta, pero bueno ...
Configuración para el servicio o paquete de datos de CLARO NICARAGUA.

APN       : web.emovil
USER     :  webemovil
CLAVE   : webemovil

Les preguntamos varias veces al servicio de claro y después de dos horas llamando, contestaron para tardar otros 15 minutos y decir que no saben, no pudieron dar las indicaciones, o no quisieron.
Estos datos fueron tomados de la configuración que hacemos la gente de LINUX.
Fundacion Zamora Teran >> One Laptop Per Children.

الأربعاء، 16 مايو 2012

Android Dual SIM Pio C7 SmartPhone Italy Electronic (Review)

Teléfono Dual SIM con Android, veloz, grande y un poco elegante, pero con algunas limitaciones. (REVIEW)



En el saturado mercado de los smartPhone aparece una nueva opción, un equipo de gama media pero totalmente funcional y con algunas ventajas. A precio relativamente bajo se compara con algunos teléfonos como el HTC Sense o HTC Desire.

Me lo vendieron como competidor del SANSUNG GALAXY, con sistema operativo 2.3.5, actualizable al 4, procesador a 800 MHz. Pero la verdad es otra.



 CARACTERÍSTICAS
- 5 bandas de trabajo, CDMA y GSM, 3G.
- cámara frontal y trasera, permite video llamada, malas calidad, pero lo permite.
- Sensores de aproximación, no se que hace con ellos, pero los tiene.
- Flash posterior, ayuda.
- Cámara externa de 8M, ratio de 4:3 no versión ancha, y son un poco oscuras, sin brillo.
-  ARM v6 rev 7 (V6l). Procesador a 668MHZ
- El sistema operativo es Android 2.3.5, una variante CHINA.

VENTAJAS
Agradable tamaño, liviano, screen o pantalla capacitiva 4.3 pulgadas de tamaño, multitouch (4 puntos), de rápido ejecución al principio.

- La pantalla grande ayuda mucho.tanto para escribir como para leer.


DESVENTAJAS o PROBLEMAS
- La brújula no me funciono
- Las fotos son un poco opacas
- la ROM es pequeña.
- No permiten acceso ROOT, por lo que no se pueden activar otras características. Eso seria bueno.
- Las llamadas de video vía Skype no funcionan. Solo funciono la video llamada de Yahoo!
- El vendedor insiste en que el procesador es de 800MHZ, pero el sistema indica y funciona a 66MHZ.
- Algunas aplicaciones no son compatibles.Pero eso pasa en muchos teléfonos.

- No funciona el GTalk


COSAS QUE PODRÍAN MEJORAR
- Deduzco que por el precio no pueden mejorar mucho la cámara, pero ya que dan dos baterías, deberían dar un cargador externo que no dependa de poner la batería en el teléfono.
- En el webSite no ponen los precios.
- En el website mienten al poner que tienen el ultimo S.O. diciendo que es el 2.3, cuando es el 4.0.


CONCLUSIÓN
Si importa el DUAL SIM, entonces esta bien.
Si NO importa el DUAL SIM, entonces NO lo recomiendo.
En costa rica me costo 320 US$ el de 4GB de SD Card, luego compre un Xperia Play mucho mejor, por 360 US$ en Nicaragua.
- Revisar todos los sensores antes de llevarlo a casa.
- Revisar las otras características con Android Asistente u otra aplicación que de información del sistema.
- Si lo quiere con la versión 4 de Android solicitarlo y llegar por al dia siguiente.
- No encontré en el mercado otro teléfono por ese precio con una pantalla tan grande.


ATENCIÓN AL CLIENTE
Existen varios vendedores, pero solo uno se adjudica la creación o empresa propietaria, al principio trataron bien mis consultas, aunque me trataron como ignorante en el tema, como usuario novato que nada sabe del tema, cuando expuse mas claras mis consultas y cuestioné las características y productos al parecer se molestaron conmigo, no le gusto que le dijera que es una copia de x teléfono aunque solo fue una referencia. Desde hace casi un mes que no contestan mis e-mails.

Esta empresa también vende laptops y minilaptops y tabletas, al parecer podrían soportar algo de personalización, si ofrecen ese servicio, seguro les ira muy bien, solo necesitan algo mas de publicidad. Aunque el precio tabletas y mini-laptops me parecieron algo alto.


DATOS DE CONTACTOS
web: http://italyelectronicstyle.com/
E-mails:
italyelectronicgerencia@gmail.com,
info@italyelectronicstyle.com


الخميس، 5 أبريل 2012

La Dieta de un informatico, geek o adicto a las computadoras.


Esto no esta dirigido a todos los que trabajan en TICs, la mayoría lo hacen por obligación, a las 17 horas del dia se van a su casa y no tocan computador, sino para aquellos que pasamos mas de 12 diarias frente al computador, trabajando, investigando, creando, procrastinando, cambiando el mundo, resumiendo: divirtiéndose.
 
Encontraran mucha información, dietas y mas que te dirán que es lo mas saludable, lo correcto, bla, bla, pero casi siempre o no tenemos opción o dinero o no se comercializa cerca de donde estamos.

Estas son recomendaciones, no tienen porque limitarse a esto, es excelente disfrutar del arte culinario o gastronomía, esto es solo un guía para que te ayude a seguir mas horas frente al computador hasta que termines o avances lo suficiente para darte un descanso y disfrutar de todo el dinero que debes estar devengando.

A. Consideraciones.
1. El cuerpo humano es una maquina bioquímica.
2. El cuerpo humano requiere energía para trabajar.
3. La mejor fuente de energía para el cuerpo humano, mas fácil, mas eficiente, es el azúcar.
4. El cuerpo humano almacena la energía que no utiliza, la convierte en grasa.
5. Para el cuerpo humano es mas fácil obtener la energía desde el estomago que desde la grasa acumulada.
6. Cuando no se ha comido, falta la azúcar en la sangre, lo que se llama hipoglucemia lo que en algunas personas causa dolor de cabeza, inanición o ira.
7. Importante: El cerebro consume la tercera parte de la energía consumida.
8. El trabajar con un computador es por lo general una actividad sedentaria ergo la energía consumida la utiliza el cerebro, el resto sera almacenada, ergo grasa, ergo gordo.
9. La des-hidratacion es confundida muchas veces con hambre, toma gua primero.
10. El azúcar es energía para uso de inmediato.
11. Las proteínas despiertan el cerebro lo activan, lo estimulan, mejoran la concentración.
12. El carbohidrato es energía para uso posterior, tiende a adormecer la mente.
13. El estres causa ansiedad, la ansiedad a muchos les da hambre.
14. El agua ayuda funcionar mejor al cerebro.
15. El deterioro de los nervios afecta el estomago, causando ulceras o gastritis.
16. La astenia es una enfermedad real, que médicos de países subdesarrollados no aceptan aun.
17. Con hambre es mas fácil hacer actividades físicas que intelectuales, el cerebro requiere mas energía y mas rápido.
18. El desvelo causa deficiencia de vitamina B12 que genera problemas nerviosos.
19. Solo para mayores de 18:Tener sexo con frecuencia ayuda mucho.
20 Aprende a comer escuchando y conociendo tu cuerpo, si eres informático eres inteligente y aprenderas como.


Consecuencias de una mala alimentación para informático.
Al ser una vida en su mayoría sedentaria, y las molestias de levantarse, muchos programadores jóvenes de recursos medios, tienden a no tomar agua adecuadamente, comer mucha azúcar, mucha sal, comida rápida, que como todo no es mala, pero al no utilizarlo adecuadamente se torna peligrosa. Las consecuencias son: Retención de liquido, obesidad, gastritis, colitis, muchos adquieren el vicio de fumar, astenia, lo que después genera padecimientos del corazón, circulación, estreñimiento que produce hemorroides, etc, etc, etc.







NUNCA OLVIDES
1. El cuerpo de cada persona es diferente. Nunca lo olvides, conocí a un tipo de casi dos metros, jugador de baseball, aparentemente fuerte que no podía desvelarse 3 o 2 horas, porque daba pena al dia siguiente, era mejor que no llegara a trabajar.
2. El cuerpo joven es mas resistente y poderoso. Ante soportábamos mas de 3 días sin dormir sin consecuencias.
3. Men sana incorpore sana. El ejercicio físico es fundamental para una vida mas saludable, aunque sentimos que nos quita tiempo, se podría comprar algún aparato eléctrico que ayude, pero es importante.


B. LA DIETA. Esta dieta esta pensada para estimular el cerebro, no para adelgazar, lo importante es mantener el flujo de energía y la sensación de satisfacción en el estomago, lo que nos permitiría trabajar mejor.
1. Esta demás, pero: toma agua con frecuencia.
2. Ingiere primero proteínas. La carne, la solla y las algas contienen mucha proteína. Los mariscos son buenos siempre y cuando no sean fritos.
3. Con una dosis apropiada de azúcar, no mucha, la coca cola, pepsi y otros jugos, tienen demasiada para dos días.
4. Un combo de Hamburguesa es rápido y es bueno, tiene proteína: la carne, pan para hacer sentir satisfecho, azúcar: el bebible, lo único malo que le veo son las papas fritas y el queso amarillo. La Hamburguesa no es mala per se, lo malo es lo que le ponen comercialmente.
5. Después de comer consume una infusión caliente preferiblemente menta para la digestión, o manzanilla, y despues otra infusión de Te Verde o mate en su defecto.
6. No consumas mucho carbohidratos, ejemplo: arroz, puré de papa, pan, elije solo uno sino causara soñolencia.
7.  Fruta o un batido en la mañana, o cualquier cosa que tenga proteína. Hay batido que incluye proteína de soya.
8. Una goma de mascar ayuda en dos formas: azúcar que es energía para pensar y movimiento cinético que mejora la circulación en la cabeza.
9. Si comes mucho sea por una celebración, alguna ocacion especial, o por mero gusto, siempre consume un digestivo, una infusión caliente siempre ayuda, preferiblemente menta, es 10 veces mas efectiva que la manzanilla y no es diurético como el café o la manzanilla.
10. Las frituras de plátano mantendrán el potasio apropiadamente que ayudaran a evitar los calambres y la sal es un antidepresivo natural.



C. Los complementos o sumplementos a tomar/consumir.
Debido a la mala alimentación y el desvelo y la falta de ejercicio generan deficiencia en el cuerpo por tanto se debe tomar complementos:
1. Vitamina B12. Es fundamental para el sistema Nervioso. Despues de desvelarse ayuda mucho.
2. Complejo B. Es fundamental para los músculos, nervios y estado de animo.
3. Cualquier otro complemento sera bueno que contenga multi vitaminas, zinc, ácido-glutamico, hierro, etc, etc, etc, elijan el que mejor les convenga o les guste.
4. Consumir Creatina. Ayuda  a mantener la tonalidad muscular.
5. La sargenor ayuda a reducir la astenia.
6. Comsume Omega3, una capsula. Sistema circulatorio
Algunos Nootropicos
7. Gin-seng, rojo, Koreano, siberiano.
8. Maca
9. Hierro.
10.  Gingo-Biloba, es bueno para la mente.
11. Bacopa monnieri



D. El ejercicio.
Siempre que se pueda hazlo, ayuda a mantener la lucidez además de ayudar la resistencia en el sexo.

E. Otros datos que serán de utilidad.
1. Como superar o recuperarse del desvelo de varios días.
2. La anorexia mental
3. La dieta del Hacker



Te sirve esto para bajar de peso? Si eres lo suficiente buen programador o informático encontraras que sí. 




Fuentes:
Mi experiencia.