Archive for 15 junio 2010

¿Por qué un gobierno debe migrar a Software Libre?

junio 15, 2010

Ya en la carta que respondió el congresista Villanueva de Perú a Microsoft Perú hace unos años se pueden encontrar argumentos más que contundentes del porqué se debe utilizar Software Libre en la administración pública.

En este video, Juan Carlos Rodríguez Ibarra, ex-presidente de la Junta de Extremadura (España), explica porqué decidieron migrar a Software Libre.

Menciona que en España, se pagan 1,500 millones de dólares en pago de licencias de software privativo en la administración pública. ¿Cuánto estaremos pagando en México? (y digo estaremos pagando porque se paga de nuestros impuestos, es decir, lo pagamos todos los mexicanos), aunque pensandolo bien no estoy muy seguro de querer saberlo, ya que puedo asegurar que sin duda es una cifra que indignaría a cualquiera.

Aunque como ya he mencionado en otros post, la motivación del precio no debe ser la motivación principal, por eso, el menciona también razones democráticas, éticas, etc. La verdad es un discurso corto pero muy claro, ojalá y lo entendieran los políticos en México y más personas en general.

Eliminar caracteres de una cadena en Java

junio 12, 2010

La siguiente función recibe dos parámetros de tipo String. La primer cadena es la cadena de la cual queremos remover cualquier caracter que se encuentre en la segunda cadena.

public String EliminaCaracteres(String s_cadena, String s_caracteres)
{
  String nueva_cadena = "";
  Character caracter = null;
  boolean valido = true;

  /* Va recorriendo la cadena s_cadena y copia a la cadena que va a regresar,
     sólo los caracteres que no estén en la cadena s_caracteres */
  for (int i=0; i<s_cadena.length(); i++)
      {
       valido = true;
       for (int j=0; j<s_caracteres.length(); j++)
           {
            caracter = s_caracteres.charAt(j);

            if (s_cadena.charAt(i) == caracter)
               {
                valido = false;
                break;
               }
           }
       if (valido)
           nueva_cadena += s_cadena.charAt(i);
      }

  return nueva_cadena;
}
public String EliminaCaracteres(String s_cadena, String s_caracteres)
{
String nueva_cadena = “”;
Character caracter = null;
boolean valido = true;

/* Va recorriendo la cadena s_cadena y copia a la cadena que va a regresar,
sólo los caracteres que no estén en la cadena s_caracteres */
for (int i=0; i<s_cadena.length(); i++)
{
valido = true;
for (int j=0; j<s_caracteres.length(); j++)
{
caracter = s_caracteres.charAt(j);

if (s_cadena.charAt(i) == caracter)
{
valido = false;
break;
}
}
if (valido)
nueva_cadena += s_cadena.charAt(i);
}

return nueva_cadena;
}