blog de Darwin Betancourt

Copiar datos de una tabla a otra en MySQL

MySQL

Image via Wikipedia

Este post va dirigido para cuando utilizamos MySQL en Linux o Windows y tenemos la necesidad de migrar ciertos datos de una tabla a otra es decir ciertos campos en la misma base de datos. Como sabemos MySQL es un motor de base de datos con licencia open source. Aquí les pongo como hacerlo: La estructura de la <mitabla> es: campo1 int(2), campo2 varchar (25), campo3 varchar (10) Y la estructura de <mitabla1> es: campo1 int(2), campo2 int (2), campo3 varchar (25) INSERT INTO <mitabla> (campo1, campo2) SELECT campo1, campo3 FROM <mitabla1> Espero les sirva de mucho. Saludos
Zemanta Pixie
Secciones: 

Obama elige OpenOffice

Según PcWorld una de las primeras iniciativas de Barack Obama seria la de estandarizar todas las oficinas federales a la suite ofimática OpenOffice ya que con esto se economizaría muchos millones de dolares. Al menos hasta ahora ya sabes que una de las fuertes empresas de EE.UU no votara por este candidato. Aquí les pongo el link en donde se encuentra la noticia completa: http://blogs.pcworld.com/communityvoices/archives/2008/06/your_second_eco.html Microsoft Office fueraOpenOffice es gratis, robusto, estable y mas que suficiente para el 99% del trabajo de gobierno, Si cualquier oficina del gobierno particular requiere Microsoft Office, ellos serán capaces de comprarlo -- después de explicar porque OpenfOffice es insuficiente para sus necesidades. Que es lo que conseguirá cuando todas las oficinas federales estandaricen a OpenOffice? El efecto de esto es un segundo estimulo económico. Conseguirá incrementar la productividad a bajo costo. mas que eso. Incrementara la productividad sin costo. -- Como que esto ya lo hemos escuchado antes pero en nuestro país.. no hace mucho según el decreto 1014 del gobierno de Rafael Correa se establece la misma iniciativa que ha optado el candidato demócrata a la presidencia de EE.UU alguien mas que se une al nuevo cambio.. El articulo además menciona que luego de que se estandaricen la oficinas federales..este rumbo se vendra a Escuelas, colegios, Universidades ya que ellos seguirían el cambio propuesto por el gobierno. Un gran aporte para la comunidad de Software Libre y de paso una gran motivación para que otros estados y gobiernos del mundo tomen esta iniciativa, se nos vienen mejores dias. Cabe mencionar que en la institución en la cual trabajo ya hace 2 años hemos venido emprendiendo este cambio, en mi cuidad se puede decir que somos los pioneros al impulsar el uso de Software Libre y específicamente OpenOffice, la secretaria con la que contamos se adapto sin ningún problema, ya que como sabemos el editor prácticamente es el mismo, me refiero a las barra de herramientas y a uno que otro shortcut, es claro que todo cambio trae resistencia pero hemos logrado avanzar con esta filosofía.. aunque sea a empujones pero hemos avanzado.(Nunca faltan 2 o 3 medios lentones que no les da la gana de aprender sino que se complican en sencilleces y ponen excusas de lo mas tontas para justificar el uso de Microsoft Office). Y ahora que es lo que hara nuestro amigo Bill Gates y su equipo de Microsoft ? se te vienen dias negros Bill o mejor dicho se te viene el negro... jajajaja. Saludos.. que viva el software libre !!!!
Secciones: 

Obama elige OpenOffice

Según PcWorld una de las primeras iniciativas de Barack Obama seria la de estandarizar todas las oficinas federales a la suite ofimática OpenOffice ya que con esto se economizaría muchos millones de dolares. Al menos hasta ahora ya sabes que una de las fuertes empresas de EE.UU no votara por este candidato. Aquí les pongo el link en donde se encuentra la noticia completa: http://blogs.pcworld.com/communityvoices/archives/2008/06/your_second_eco.html Microsoft Office fueraOpenOffice es gratis, robusto, estable y mas que suficiente para el 99% del trabajo de gobierno, Si cualquier oficina del gobierno particular requiere Microsoft Office, ellos serán capaces de comprarlo -- después de explicar porque OpenfOffice es insuficiente para sus necesidades. Que es lo que conseguirá cuando todas las oficinas federales estandaricen a OpenOffice? El efecto de esto es un segundo estimulo económico. Conseguirá incrementar la productividad a bajo costo. mas que eso. Incrementara la productividad sin costo. -- Como que esto ya lo hemos escuchado antes pero en nuestro país.. no hace mucho según el decreto 1014 del gobierno de Rafael Correa se establece la misma iniciativa que ha optado el candidato demócrata a la presidencia de EE.UU alguien mas que se une al nuevo cambio.. El articulo además menciona que luego de que se estandaricen la oficinas federales..este rumbo se vendra a Escuelas, colegios, Universidades ya que ellos seguirían el cambio propuesto por el gobierno. Un gran aporte para la comunidad de Software Libre y de paso una gran motivación para que otros estados y gobiernos del mundo tomen esta iniciativa, se nos vienen mejores dias. Cabe mencionar que en la institución en la cual trabajo ya hace 2 años hemos venido emprendiendo este cambio, en mi cuidad se puede decir que somos los pioneros al impulsar el uso de Software Libre y específicamente OpenOffice, la secretaria con la que contamos se adapto sin ningún problema, ya que como sabemos el editor prácticamente es el mismo, me refiero a las barra de herramientas y a uno que otro shortcut, es claro que todo cambio trae resistencia pero hemos logrado avanzar con esta filosofía.. aunque sea a empujones pero hemos avanzado.(Nunca faltan 2 o 3 medios lentones que no les da la gana de aprender sino que se complican en sencilleces y ponen excusas de lo mas tontas para justificar el uso de Microsoft Office). Y ahora que es lo que hara nuestro amigo Bill Gates y su equipo de Microsoft ? se te vienen dias negros Bill o mejor dicho se te viene el negro... jajajaja. Saludos.. que viva el software libre !!!!
Secciones: 

Ejemplo de termometro en Java

TermometroExisten muchas de las veces en que nos proponemos programar un termómetro para darle mas pinta a nuestras aplicaciones en un caso especifico he utilizado la librería gratuita de java jfree lo he utilizado para graficar los niveles de tanques de agua en la empresa en donde trabajo. Este es un ejemplo muy básico de lo que se puede hacer con esta muy útil librería. He intentado explicar lo que me parece un poco difícil de entender pero bueno si tienes alguna dificultad con el código solamente tienes que escribir. Aquí les pongo un ejemplo sencillo de como lo pueden hacer y mostrando algunas de sus funcionalidades .. al ejemplo lo he modificado de su author original Bryan Scott quitandole algunas cosas del código que el programo para hacerlo un poco mas entendible al inicio para mi y ahora para Uds. El código es el siguiente: /* ====================================== * JFreeChart : a free Java chart library * ====================================== * * Project Info: http://www.jfree.org/jfreechart/index.html * Project Lead: David Gilbert (david.gilbert@object-refinery.com); * * (C) Copyright 2000-2003, by Object Refinery Limited and Contributors. * * This library is free software; you can redistribute it and/or modify it under the terms * of the GNU Lesser General Public License as published by the Free Software Foundation; * either version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with this * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, * Boston, MA 02111-1307, USA. * * -------------------- * ThermometerDemo1.java * -------------------- * (C) Copyright 2002, 2003, by Australian Antarctic Division and Contributors. * * Original Author: Bryan Scott (for Australian Antarctic Division). * Contributor(s): David Gilbert (for Object Refinery Limited); * * $Id: ThermometerDemo1.java,v 1.2 2003/05/29 15:23:35 mungady Exp $ * * Changes (since 24-Apr-2002) * --------------------------- * 24-Apr-2002 : added standard source header (DG); * 17-Sep-2002 : fixed errors reported by Checkstyle 2.3 (DG); * 07-May-2008 : Modify for taller * */ import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.GridLayout; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text.DecimalFormat; import javax.swing.BorderFactory; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JPanel; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.JThermometer; import org.jfree.data.general.DefaultValueDataset; /** * A demonstration application for the thermometer plot. * Un demostracion para la aplicacion de un termometro * * @author Bryan Scott * @mofify by Darwin Betancourt Castillo */ public class ThermometerDemo1 extends JPanel implements ActionListener { /** Options for the value label position combo box. */ protected static final String[] OPTIONS = {"Ninguna", "Derecha", "Izquierda","Centro"}; /** Panel 1. */ private JPanel jPanel1 = new JPanel(); /** Borderlayout 3. */ private BorderLayout borderLayout3 = new BorderLayout(); /** Panel 2. */ private JPanel jPanel2 = new JPanel(); /** Decrement button for thermometer ?. */ private JButton btnDown = new JButton(); /** Increment button for thermometer ?. */ private JButton btnUp = new JButton(); /** Grid layout 1. */ private GridLayout gridLayout1 = new GridLayout(); /** Thermometer 2. */ private JThermometer thermo2 = new JThermometer(); /** Borderlayout 1. */ private BorderLayout borderLayout1 = new BorderLayout(); /** Panel 3. */ private JPanel jPanel3 = new JPanel(); /** Grid layout 3. */ private GridLayout gridLayout3 = new GridLayout(); /** Combo box 2 for value label position. */ private JComboBox pickShow2 = new JComboBox(OPTIONS); /** Borderlayout 4. */ private BorderLayout borderLayout4 = new BorderLayout(); /** * Default constructor. */ public ThermometerDemo1() { try { jbInit(); } catch (Exception ex) { ex.printStackTrace(); } } /** * Controla los eventos de los botones * @param e ActionEvent */ public void actionPerformed(ActionEvent e){ if(e.getSource() instanceof JButton){ JButton boton = (JButton) e.getSource(); if(boton.getName().matches("btnUp")){ setValue(1); } if(boton.getName().matches("btnDown")){ setValue(-1); } } } /** * Initialises the class. * * @throws Exception for any exception. */ void jbInit() throws Exception { thermo2.setValue(0); thermo2.setOutlinePaint(null); thermo2.setUnits(0); thermo2.setForeground(Color.blue); thermo2.setBackground(Color.white); // Se establece el rango de 0 a 100 thermo2.setRange(0.0,100.0); // El numero inicial representa el color (Solo hay tres colores y el color por defecto gris) // 0 = verde, 1=anaranjado 2=rojo thermo2.setSubrangeInfo(2, 80.0, 100.0, 22.0, 40.0); thermo2.setSubrangeInfo(1, 50.0, 80.0, 18.0, 26.0); thermo2.setSubrangeInfo(0, 0.0, 50.0, 0.0, 100.0); thermo2.addSubtitle("Nivel del Tanque", new Font("SansSerif", Font.PLAIN, 16)); // Se establece el formato del valor del grafico //thermo2.setValueFormat(new DecimalFormat("#0.0")); thermo2.setValueFormat(new DecimalFormat("#0")); // Layout para el JPanel principal setLayout(gridLayout1); jPanel1.setLayout(borderLayout3); btnDown.setText("Bajar"); btnDown.setName("btnDown"); btnDown.addActionListener(this); btnUp.setText("Subir"); btnUp.setName("btnUp"); btnUp.addActionListener(this); pickShow2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { setShowValue(); } }); jPanel3.setLayout(gridLayout3); jPanel3.add(pickShow2,null); jPanel1.setBorder(BorderFactory.createEtchedBorder()); // Contenedor de los botones del panel 4 jPanel2.add(btnDown, null); jPanel2.add(btnUp, null); jPanel1.add(jPanel3, BorderLayout.NORTH); // Se agrega el thermometro al panel jPanel1.add(thermo2, BorderLayout.CENTER); // Contenedor del panel 4 jPanel1.add(jPanel2, BorderLayout.SOUTH); // Se agrega el panel del nivel add(jPanel1, null); } /** * Starting point for the demo application. * * @param args ignored. */ public static void main(String[] args) { final ThermometerDemo1 panel = new ThermometerDemo1(); JFrame frame = new JFrame(); frame.getContentPane().setLayout(new BorderLayout(5, 5)); frame.setDefaultCloseOperation(3); frame.setTitle("Ejemplo de Termometro en Java"); frame.getContentPane().add(panel, BorderLayout.CENTER); frame.setSize(400, 400); Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); frame.setLocation((d.width - frame.getSize().width) / 2, (d.height - frame.getSize().height) / 2); frame.setVisible(true); } /** * Sets the value of the thermometer. * * @param value Valor del nivel del termometro */ private void setValue(double value) { try { thermo2.setValue(thermo2.getValue().doubleValue() + value); }catch (Exception ex) { ex.printStackTrace(); } } /** * Sets the value label position for one of the thermometers. */ private void setShowValue() { thermo2.setValueLocation(pickShow2.getSelectedIndex()); } } Saludos y espero les sea de mucha utilidad
Zemanta Pixie
Secciones: 

Ejemplo de termometro en Java

TermometroExisten muchas de las veces en que nos proponemos programar un termómetro para darle mas pinta a nuestras aplicaciones en un caso especifico he utilizado la librería gratuita de java jfree lo he utilizado para graficar los niveles de tanques de agua en la empresa en donde trabajo. Este es un ejemplo muy básico de lo que se puede hacer con esta muy útil librería. He intentado explicar lo que me parece un poco difícil de entender pero bueno si tienes alguna dificultad con el código solamente tienes que escribir. Aquí les pongo un ejemplo sencillo de como lo pueden hacer y mostrando algunas de sus funcionalidades .. al ejemplo lo he modificado de su author original Bryan Scott quitandole algunas cosas del código que el programo para hacerlo un poco mas entendible al inicio para mi y ahora para Uds.


El código es el siguiente: /* ====================================== * JFreeChart : a free Java chart library * ====================================== * * Project Info: http://www.jfree.org/jfreechart/index.html * Project Lead: David Gilbert (david.gilbert@object-refinery.com); * * (C) Copyright 2000-2003, by Object Refinery Limited and Contributors. * * This library is free software; you can redistribute it and/or modify it under the terms * of the GNU Lesser General Public License as published by the Free Software Foundation; * either version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with this * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, * Boston, MA 02111-1307, USA. * * -------------------- * ThermometerDemo1.java * -------------------- * (C) Copyright 2002, 2003, by Australian Antarctic Division and Contributors. * * Original Author: Bryan Scott (for Australian Antarctic Division). * Contributor(s): David Gilbert (for Object Refinery Limited); * * $Id: ThermometerDemo1.java,v 1.2 2003/05/29 15:23:35 mungady Exp $ * * Changes (since 24-Apr-2002) * --------------------------- * 24-Apr-2002 : added standard source header (DG); * 17-Sep-2002 : fixed errors reported by Checkstyle 2.3 (DG); * 07-May-2008 : Modify for taller * */

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DecimalFormat;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.JThermometer;
import org.jfree.data.general.DefaultValueDataset;
/** * A demonstration application for the thermometer plot. * Un demostracion para la aplicacion de un termometro * * @author Bryan Scott * @mofify by Darwin Betancourt Castillo */

public class ThermometerDemo1 extends JPanel implements ActionListener {
/** Options for the value label position combo box. */
protected static final String[] OPTIONS = {"Ninguna", "Derecha", "Izquierda","Centro"}; /** Panel 1. */
private JPanel jPanel1 = new JPanel(); /** Borderlayout 3. */
private BorderLayout borderLayout3 = new BorderLayout(); /** Panel 2. */ private JPanel jPanel2 = new JPanel(); /** Decrement button for thermometer ?. */
private JButton btnDown = new JButton(); /** Increment button for thermometer ?. */
private JButton btnUp = new JButton(); /** Grid layout 1. */
private GridLayout gridLayout1 = new GridLayout(); /** Thermometer 2. */
private JThermometer thermo2 = new JThermometer(); /** Borderlayout 1. */
private BorderLayout borderLayout1 = new BorderLayout(); /** Panel 3. */
private JPanel jPanel3 = new JPanel(); /** Grid layout 3. */
private GridLayout gridLayout3 = new GridLayout(); /** Combo box 2 for value label position. */
private JComboBox pickShow2 = new JComboBox(OPTIONS); /** Borderlayout 4. */
private BorderLayout borderLayout4 = new BorderLayout(); /** * Default constructor. */

public ThermometerDemo1() { try { jbInit(); } catch (Exception ex) { ex.printStackTrace(); } }
/** * Controla los eventos de los botones
* @param e ActionEvent */

public void actionPerformed(ActionEvent e){
if(e.getSource() instanceof JButton){
JButton boton = (JButton) e.getSource();
if(boton.getName().matches("btnUp")){ setValue(1); }
if(boton.getName().matches("btnDown")){ setValue(-1); } } } /** * Initialises the class. * * @throws Exception for any exception. */
void jbInit() throws Exception {
thermo2.setValue(0);
thermo2.setOutlinePaint(null);
thermo2.setUnits(0);
thermo2.setForeground(Color.blue);
thermo2.setBackground(Color.white);
// Se establece el rango de 0 a 100 thermo2.setRange(0.0,100.0);
// El numero inicial representa el color (Solo hay tres colores y el color por defecto gris)
// 0 = verde, 1=anaranjado 2=rojo
thermo2.setSubrangeInfo(2, 80.0, 100.0, 22.0, 40.0);
thermo2.setSubrangeInfo(1, 50.0, 80.0, 18.0, 26.0);
thermo2.setSubrangeInfo(0, 0.0, 50.0, 0.0, 100.0);
thermo2.addSubtitle("Nivel del Tanque", new Font("SansSerif", Font.PLAIN, 16));
// Se establece el formato del valor del grafico
//thermo2.setValueFormat(new DecimalFormat("#0.0"));
thermo2.setValueFormat(new DecimalFormat("#0"));
// Layout para el JPanel principal setLayout(gridLayout1);
jPanel1.setLayout(borderLayout3);
btnDown.setText("Bajar");
btnDown.setName("btnDown");
btnDown.addActionListener(this);
btnUp.setText("Subir");
btnUp.setName("btnUp");
btnUp.addActionListener(this);
pickShow2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { setShowValue(); } });
jPanel3.setLayout(gridLayout3); jPanel3.add(pickShow2,null); jPanel1.setBorder(BorderFactory.createEtchedBorder());
// Contenedor de los botones del panel 4
jPanel2.add(btnDown, null); jPanel2.add(btnUp, null);
jPanel1.add(jPanel3, BorderLayout.NORTH);
// Se agrega el thermometro al panel
jPanel1.add(thermo2, BorderLayout.CENTER); // Contenedor del panel 4
jPanel1.add(jPanel2, BorderLayout.SOUTH);
// Se agrega el panel del nivel add(jPanel1, null); }
/** * Starting point for the demo application. * * @param args ignored. */
public static void main(String[] args) {
final ThermometerDemo1 panel = new ThermometerDemo1();
JFrame frame = new JFrame();
frame.getContentPane().setLayout(new BorderLayout(5, 5));
frame.setDefaultCloseOperation(3);
frame.setTitle("Ejemplo de Termometro en Java");
frame.getContentPane().add(panel, BorderLayout.CENTER);
frame.setSize(400, 400);
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
frame.setLocation((d.width - frame.getSize().width) / 2, (d.height - frame.getSize().height) / 2); frame.setVisible(true); }
/** * Sets the value of the thermometer. * * @param value Valor del nivel del termometro */
private void setValue(double value) {
try {
thermo2.setValue(thermo2.getValue().doubleValue() + value); }
catch (Exception ex) { ex.printStackTrace(); } }
/** * Sets the value label position for one of the thermometers. */
private void setShowValue() {
thermo2.setValueLocation(pickShow2.getSelectedIndex());
} }

Saludos y espero les sea de mucha utilidad
Zemanta Pixie
Secciones: 

Mensajes gratis a Movistar y Porta

Bueno este post creo que despertara la inquietud de muchos, pero de lo que en realidad se trata es de enviar mensajes desde tu correo a un teléfono Movistar en Ecuador no se si sirva en otros paises pero yo lo he probado aqui específicamente en la increíble Ciudad de Loja y definitivamente funciona... un poco tarde pero funciona. Es necesario aclarar que estos mensajes te llegan un poco tarde como a las 2 horas..

Para que nos serviría este servicio si no llega inmediatamente?

Bueno este servicio nos serviría para decirle a alguien que ya le enviamos cierto paquete a otra ciudad que lo reciba o para decir que enviamos un correo que lo revise cuando disponga de tiempo, o que le enviamos una tarjeta virtual a su correo... o que en la noche hay algún plansillo por ahí. en fin algo que no sea de urgencia.

Como lo hacemos?

Entra a tu cuenta de correo en cualquier servidor (hotmail. yahoo, gmail) crea un nuevo mensaje y en el destinatario pones el numero de destino sin necesidad de incluir el cero (0) es decir si tu teléfono es 098282268 podrías enviar un mensaje de la siguiente manera:

98282268@im.movistar.com.ec

Es decir desde cualquier correo pones el destinatario como te lo he explicado. --------------------------------

Como gasto mi saldo promocional ?

Muchas de las veces nos sucede que tenemos un saldo promocional de $20 los cuales quisiéramos gastar sin afectar nuestro saldo principal xq cuando marcamos un teléfono movistar primero nos consume nuestro saldo principal. Bueno para gastar tu saldo promocional movistar lo puedes hacer de la siguiente manera: Antepones el 10 al numero que deseas marcar obviamente va a ser otro movistar. 10-098282268 osea 10098282268 y listo comprueba y veras que funciona. Este servicio te funciona solamente si tienes un plan corporativo, no lo he probado en otros planes ni en prepago asi que puedes hacer la prueba .. de pronto funciona tambien en esos casos.

Enviando mensajes gratis a Porta

Bueno esta no me la sabia pero gracias a la colaboración de Cesar que nos describe como podemos enviar mensajes gratis a celulares porta es necesario aclarar que utilizamos la misma metodología que para movistar es decir los enviamos desde un correo electrónico ah y por supuesto llegan mas rápido que los de movistar. Ejm: Para enviar un mensaje al 092257178 enviamos el mismo numero excepto los dos primero es decir el 09 a la siguiente dirección

2257178@portafree.com

Espero les sirva de algo .. hay quienes no saben que se puede utilizar este servicio de esta manera. Saludos.
Secciones: 

Mensajes gratis a Movistar y Porta

Bueno este post creo que despertara la inquietud de muchos, pero de lo que en realidad se trata es de enviar mensajes desde tu correo a un teléfono Movistar en Ecuador no se si sirva en otros paises pero yo lo he probado aqui específicamente en la increíble Ciudad de Loja y definitivamente funciona... un poco tarde pero funciona. Es necesario aclarar que estos mensajes te llegan un poco tarde como a las 2 horas..

Para que nos serviría este servicio si no llega inmediatamente?

Bueno este servicio nos serviría para decirle a alguien que ya le enviamos cierto paquete a otra ciudad que lo reciba o para decir que enviamos un correo que lo revise cuando disponga de tiempo, o que le enviamos una tarjeta virtual a su correo... o que en la noche hay algún plansillo por ahí. en fin algo que no sea de urgencia.

Como lo hacemos?

Entra a tu cuenta de correo en cualquier servidor (hotmail. yahoo, gmail) crea un nuevo mensaje y en el destinatario pones el numero de destino sin necesidad de incluir el cero (0) es decir si tu teléfono es 098282268 podrías enviar un mensaje de la siguiente manera:

98282268@im.movistar.com.ec

Es decir desde cualquier correo pones el destinatario como te lo he explicado. --------------------------------

Como gasto mi saldo promocional ?

Muchas de las veces nos sucede que tenemos un saldo promocional de $20 los cuales quisiéramos gastar sin afectar nuestro saldo principal xq cuando marcamos un teléfono movistar primero nos consume nuestro saldo principal. Bueno para gastar tu saldo promocional movistar lo puedes hacer de la siguiente manera: Antepones el 10 al numero que deseas marcar obviamente va a ser otro movistar. 10-098282268 osea 10098282268 y listo comprueba y veras que funciona. Este servicio te funciona solamente si tienes un plan corporativo, no lo he probado en otros planes ni en prepago asi que puedes hacer la prueba .. de pronto funciona tambien en esos casos.

Enviando mensajes gratis a Porta

Bueno esta no me la sabia pero gracias a la colaboración de Cesar que nos describe como podemos enviar mensajes gratis a celulares porta es necesario aclarar que utilizamos la misma metodología que para movistar es decir los enviamos desde un correo electrónico ah y por supuesto llegan mas rápido que los de movistar. Ejm: Para enviar un mensaje al 092257178 enviamos el mismo numero excepto los dos primero es decir el 09 a la siguiente dirección

2257178@portafree.com

Espero les sirva de algo .. hay quienes no saben que se puede utilizar este servicio de esta manera. Saludos.
Secciones: 

Dibujo desde una foto con GIMP

Bueno este post va dirigido a aquellos usuarios de GIMP que han tenido la inquietud de hacer un dibujo a partir de una foto pero no desde photoshop.. jajajajaja. Bueno vamos a seguir los mismos pasos que el tutorial que se basa en photoshop pero utilizando nuestro GIMP.
  1. Vamos a elegir una foto cualquiera... en mi caso he elegido mi foto.Solamente vivir
  2. Luego hacemos una copia de la capa (Copia de Fondo) que contiene la imagen. Capa->Duplicar Capa
  3. Desaturamos esta capa (Copia de Fondo). Capa->Colores->Desaturar
  4. Detectamos los bordes de la imagen. Filtro->Detectar Bordes->Neon aqui elegimos los valores Radio=3, Cantidad=1
  5. Detectar Bordes
  6. Ahora procedemos a ir a los niveles para mostrar las lineas que mas resaltan de nuestra imagen. Herramientas->Herramientas de Color-> Niveles y en la sección ponemos el valor de 86 es decir quedarían los 3 casilleros con los siguientes valores 8-1-255
  7. Luego de esto invertimos la capa. Capa->Colores->Invertir
  8. Creamos una copia una copia de la (Copia de Fondo) a (Copia de Copia de Fondo)
  9. Le damos un efecto de desenfoque. Filtro->Desenfoque->Desenfoque Gausiano con los valores Horizontal 5 y Vertical 5.
  10. Imagen Invertida
  11. Y establecemos su Opacidad a 50
  12. Capas creadas
  13. Ahora en la capa (Copia de Fondo) cambiamos su modo a Solapar
  14. Y ahora ya tenemos nuestra foto como un Dibujo.
Resultado Espero te haya servido este pequeña analogía entre Photoshop y GIMP. Saludos y Buena suerte con futuras creaciones.

Dibujo desde una foto con GIMP

Bueno este post va dirigido a aquellos usuarios de GIMP que han tenido la inquietud de hacer un dibujo a partir de una foto pero no desde photoshop.. jajajajaja. Bueno vamos a seguir los mismos pasos que el tutorial que se basa en photoshop pero utilizando nuestro GIMP.
  1. Vamos a elegir una foto cualquiera... en mi caso he elegido mi foto.Solamente vivir
  2. Luego hacemos una copia de la capa (Copia de Fondo) que contiene la imagen. Capa->Duplicar Capa
  3. Desaturamos esta capa (Copia de Fondo). Capa->Colores->Desaturar
  4. Detectamos los bordes de la imagen. Filtro->Detectar Bordes->Neon aqui elegimos los valores Radio=3, Cantidad=1
  5. Detectar Bordes
  6. Ahora procedemos a ir a los niveles para mostrar las lineas que mas resaltan de nuestra imagen. Herramientas->Herramientas de Color-> Niveles y en la sección ponemos el valor de 86 es decir quedarían los 3 casilleros con los siguientes valores 8-1-255
  7. Luego de esto invertimos la capa. Capa->Colores->Invertir
  8. Creamos una copia una copia de la (Copia de Fondo) a (Copia de Copia de Fondo)
  9. Le damos un efecto de desenfoque. Filtro->Desenfoque->Desenfoque Gausiano con los valores Horizontal 5 y Vertical 5.
  10. Imagen Invertida
  11. Y establecemos su Opacidad a 50
  12. Capas creadas
  13. Ahora en la capa (Copia de Fondo) cambiamos su modo a Solapar
  14. Y ahora ya tenemos nuestra foto como un Dibujo.
Resultado Espero te haya servido este pequeña analogía entre Photoshop y GIMP. Saludos y Buena suerte con futuras creaciones.

Estrategias para desarrollo en Palm

Treo 650Bueno este post lo he pensado para todos quienes desarrollamos en dispositivo mobiles y tenemos problemas con los recursos o los típicos cuelgues xq el aparato ya no dispone de recursos, por supuesto que en este post va enfocado a lo que es desarrollo en j2me. Al momento de crear un programa tenemos que definir bien las estrategias y modelos a utilizar para optimizar de la mejor manera nuestros recursos que en este caso de nuestras dispositivos mobiles son muy limitados. Por lo general cuando empezamos a desarrollar para estos dispositivos nos desorientamos un poco por no decir bastante ya que como siempre desarrollamos aplicaciones de escritorio sobre computadores de hoy en dia son tan potentes tendemos a despreocuparnos un poco de lo que es el ahorro de recursos y utilización de la memoria. En fin mejor paso a destacar algunas ideas que he tomado de varios textos que me han servido para mi desarrollo y tambien al final voy a publicar los links para que Uds. mismos los lean. Las limitaciones que son inherentes en dispositivos pequeños requiere cambiar la forma de programar nuestras aplicaciones.

Simplificar la Aplicación

Una de las cosas mas obvias para simplificar nuestra aplicación es remover características innecesarias. Considerando cada característica de nuestra aplicación cuidadosamente. Luego de quitar características innecesarias procedemos a hacer el uso y reuso de interfaces gráficas tanto como StringItems, TextField, Forms entre otras mas. Con lo anterior me refiero que podemos utilizar un mismo botón para varias interfaces gráficas y asi mismo una forma con distintas formas de visualización es decir con diferentes objetos cargados. Intenta aprovechar cada oportunidad de aprovechar mejor tus interfaces gráficas esto haría que tu aplicación sea mas pequeña.

Usar menos memoria en tiempo de ejecución

La capacidad de memoria en tiempo de ejecución de un dispositivo pequeño puede ser limitado. Aveces estas limitaciones no son obvias. Por ejemplo, El sistema operativo de la palm define 2 tipos de memoria: dinámica y de almacenamiento. La memoria dinámica almacena los datos de la aplicación en tiempo de ejecución en particular, Esta en la pila y el monto de memoria en tiempo de ejecución. La memoria de almacenamiento es protección de escritura, memoria persistente. El monto de memoria dinámica disponible en una aplicación varia de 32K a 256K, y lo principal RAM del dispositivo es memoria de almacenamiento. Aunque si un dispositivo tiene 8MB de RAM, los 256K limite en la memoria dinámica es importante. Si mas memoria es requerida la aplicación usa la memoria de almacenamiento, que tiene un acceso mas lento debido a al protección de escritura. Lo siguiente son algunos tips y ejemplos de como reducir el monto de memoria en ejecución que nuestra aplicación java usa. - Usar tipos escalares - No depender solamente del Garbage Colector - Ayudar al Garbage Colector - Liberar Recursos con anterioridad - Reusar los objetos - Evitar Excepciones La configuracion del Equipo En la preferencias de tu máquina virtual de java instalada en tu palm tienes que aumentar los valores que te vienen por defecto es decir en las preferencias globales vas a activar tu el poder usar tu buffering doble es decir [Use double buffering] y la memoria máxima por defecto te viene en 2 Mb puedes ponerselo a 4Mb y el Set Maximum Java Thread Stack Size lo puedes poner tambien a 4Kb o a lo que tu gustes.

Documentos de Interés

  1. http://www.java-tips.org/java-me-tips/midp/
  2. http://www.javaperformancetuning.com/tips/j2me.shtml
  3. http://www.jasonlam604.com/books.php
  4. http://www.palowireless.com/java/tutorials.asp
Saludos y espero les sirva de mucho estos tips e ideas para el desarrollo de sus programas. :)
Secciones: