jueves, 24 de marzo de 2011

10 razones para cambiarse a Linux.

Buen día,


En esta ocasión quisiera expresarles mi completa satisfacción con la plataforma Linux especialmente la de Ubuntu. Y es que despues de ya varios años de estar trabajando con Windows, por fin encontré algo novedoso, eficiente y sobre todo gratuito.






Por esta razón les presentaré mis 10 razones por las cuales recomendaría cambiarse a Linux, o por lo menos particionar su disco y tener mitad y mitad (Win y Linux). Aqui vamos:


  1. Es libre y gratuito, no tengo que andar buscando formas de crackearlo ni desactivando las actualizaciones automaticas para que no me caiga el WGA.
  2. Es intuitivo en su mayoría, no es cierto que Linux sea un Sistema Operativo para genios informáticos tiene un ambiente gráfico amigable para cualquier tipo de usuario.
  3. Es eficiente, carga mucho más rápido, trabaja mucho más rápido y se apaga mucho más rápido que cualquier versión de Windows.
  4. Es innovador, sale una nueva versión cada 6 meses y no pagas ni un cinco por las actualizaciones, puedes configurarlo como quieras y tunearlo a tu gusto.
  5. Hay muchísima información en la web, si no sabes hacer algo seguro en internet encuentras algo que te de la pista para poder hacer eso que buscas.
  6. Es seguro, olvidate de los virus, en Windows estabas acostumbrado a tener que andar buscando un antivirus para desinfectar tu sistema, tus dispositivos extraíbles y demás.
  7. Puedes correr lo que sea, mmm será? pues casi, digamos que si necesitas correr algo en Linux (en mi caso Ubuntu) que trabaja solo en Windows utilizas un software llamado Wine el cual te permite virtualizar las aplicaciones como si corrieran en windows. Y si esto es muy lento, para eso existen multiples software de Virtualización (VMWare, Virtual Machine, etc.).
  8. Es de código libre, ¿Ah, y esto? simple, si eres programador y tienes agallas modifica tu sistema operativo con lo que te guste o quitale lo que no te guste, el código esta abierto para que cualquiera haga los cambios que necesite realizar. Asi contribuyes a la comunidad linuxera.
  9. Utiliza muy pocos recursos, a diferencia de Microsoft que piensa en equipos más modernos para correr sus pesados y buggeados sistemas operativos Linux te corre en equipos con un hardware modesto lo que te permite usar tu máquina viejita para trabajar o estudiar.
  10. Es LiveCD, mmm... asi es, sino te gusta no lo instales simplemente usalo cuando desee desde el CD.
 Esas son algunas de las razones por las que alguien pueda migrarse a Linux (en mi caso), son algunas pocas hay muchas más. Si no te convence busca en otros foros o sitios donde la gente pueda darte otra opinión, esta solo es la opinión que yo tengo.


Les dejo unos links relacionados al tema:


Ubuntu
Linux
Debian
Kernel


Bienvenidos al mundo del software libre.

Administradores de Bases de Datos.

Buen día,


En esta ocasión quisiera presentarles algunos de los administradores de bases de datos más útiles. Por lo general, cuando instalamos un gestor de base de datos, sea cual sea este (Oracle, Mysql, SQL Server, PostgreSQL, Sybase, etc) buscamos una forma sencilla de manejar neustros datos y gráficamente. Este post esta dedicado a ayudarles para que su elección no sea tan complicada.


DBVisualizer.
Hecho en Java por DbVis Software, cuenta con versión Free (con alguno que otro inconveniente) y la versión comprada que cuenta con soporte de la empresa. Esta herramienta esta muy completa, acepta una infinidad de gestores de base de datos como mysql, oracle, postgresql.






Solamente como prerequisito necesitas tener la JVM instalada en tu equipo para que pueda correr y como cualquier aplicación Java puede correr en MacOs, en Linux y en Windows sin problemas.


Sitio Oficial


Toad.
La empresa Quest es la que distribuye esta fabulosa herramienta. Es una aplicación que permite el desarrollo y la administración de bases de datos de manera muy sencilla y gráfica. Toad es compatible con todas las plataformas de Windows de 32-bits con un par de pasos adicionales también puede trabajar en versiones de 64-bits.








Una gran ventaja de Toad respecto a sus competidores es que tiene soporte para varios gestores de bases de datos como podemos mencionar: Oracle, Sybases, SQLServer, DB2, MySQl, y actualmente puede pegarse a las cloud DB.


Toad te permite conectarte a tus bases de datos, permite crear, destruir y alterar tus DLL. Además te permite trabajar con tus DML de manera eficaz e inclusive sin tanto código; Toad viene con una serie de Wizards que te facilitan la vida.


Toad es un software pagado, pero también tiene su versión gratuita, si no me equivoco es un trial como de 90 días.


Sitio oficial


SQL Developer.
Un excelente administrador de bases de datos creado por Oracle, es completamente gratuito y también te permite conectarte a distintas bases de datos. SQL Developer esta escrito completamente en Java y corre en la JVM (que significa esto: <<Write once, run anywhere>> como solia decir Sun Microsystems).


SQL Developer te permite trabajar con diferentes bases de datos como lo son: IBM DB2, MS Acces, MySQL, MS SQLServer, Sybase, Teradata DB y por supuesto las de su creador Oracle.

Sitio oficial


Aqua Data Studio.
Es un completo entorno de desarrollo integrado (IDE) para bases de datos de consulta, administración y desarrollo. Es compatible con todos los proveedores de bases de datos importantes, obras en múltiples sistemas operativos y se localiza a más de 20 idiomas. Este administrador fue creado por Aqua Fold y segun ellos mismos es utilizado en 90 países del mundo.






Corre en sistemas Windows, Linux, Mac Os, Solaris. Es un software de pago, con la posiblidad de adquirir descuentos para Usuarios Academicos Calificados y para Desarrolladores de Software libre. Soporta casi todos los gestores de bases de datos lo que lo hace único en su especie.


Sitio oficial


phpMyAdmin
Es una herramienta de software libre escrito en PHP para manejar la administración de MySQL a través de la World Wide Web. phpMyAdmin es compatible con una amplia gama de operaciones con MySQL. Las operaciones más utilizadas son compatibles con la interfaz de usuario (manejo de bases de datos, tablas, campos, relaciones, índices, usuarios, permisos, etc), esta disponible en 62 idiomas.






Como funciona un navegador web solo necesitas tener uno compatible, una versión de php de acuerdo a la versión. Este Administrador solamente trabaja para MySQL.


Sitio oficial


SQL Server Management Studio


SQL Server Management Studio es un entorno integrado para obtener acceso a todos los componentes de SQL Server, configurarlos, administrarlos y desarrollarlos. SQL Server Management Studio combina un amplio grupo de herramientas gráficas con una serie de editores de script para ofrecer acceso a SQL Server a programadores y administradores de todos los niveles de especialización.






Unicamente corre en Sistemas Operativos Windows y solamente permite adminsitrar bases de datos SQL Server. Existe una versión Express y también la versión pagada.


Sitio Oficial 

Se irán agregando más administradores, por el momento les muestro un poco de finormación sobre estos.

miércoles, 16 de marzo de 2011

SQL: Encontrando datos de columnas duplicadas en una tabla.

Esto me ocurrió con una base de datos Oracle 10G aunque creo que el código puede ser utilizado en cualquier otra base de datos que utilize SQL.

Alguna vez han querido encontrar los datos duplicados dentro de una columna que pertenece a alguna tabla de su base de datos? Bueno a mi si me sucedió alguna vez, recuerdo que fue para un sistema de facturación que al momento de hacer cortes de caja buscaba en la tabla de productos valores únicos y por algún problema en dicha base de datos había duplicados. La situación se pone mas tensa si estamos hablando de un conjunto de miles de productos donde los "order by asc" o "order by desc" ya no nos permiten ver gráficamente que productos son los repetidos.

Para esta ocasión les presento una forma de encontrar estos "duplicados" en una determinada columna perteneciente a la misma tabla, para el ejemplo jugaremos con una tabla llamada "clientes" y encontraremos los duplicados  en la columna nom_cliente (nombre del cliente).

_____________________________________________________________
QUERY_UTILIZADO_____________________________________________


SELECT nom_cliente, 
 COUNT(nom_cliente) AS Repeticiones
FROM clientes
GROUP BY nom_cliente
HAVING ( COUNT(nom_clientel) > 1 )




_______________________________________________________________

Explicando a detalle el código tenemos lo siguiente:


Select nom_cliente


Seleccionamos la fila nom_cliente, que sería la que registra los nombres de los clientes.


COUNT(nom_cliente) AS Repeticiones


count es una función SQL que retorna el número de filas que concuerdan con un determinado criterio. Hemos guardado la columna nom_cliente dentro del count, este sería nuestro criterio, y le hemos asignado un alias llamado Repeticiones para retornar el valor númerico en una fila.


FROM clientes


Valores de la tabla clientes.


GROUP BY nom_cliente


Agrupamos por nom_cliente.


HAVING ( COUNT(nom_clientel) > 1 )


Esta línea es clave, ya que es la que le permite a la base de datos contar los nombres repetidos, por eso le decimos que encuentre los mayores a 1.


Cualquier consulta al respecto pueden comentar.

El primer post.

Bueno en esta ocasión quisiera presentarme , presentar mi idea con este blog y comenzar con un poco de información relevante.

En cuanto a mí:
Tengo 22 años, estudio ingeniería en sistemas en la UFG (El Salvador) y actualmente estoy sacando un diplomado en Java en el ITCA, llevo ya un par de años metido en el área de informática aproximadamente unos 6 años metido en este rollo. En cuanto a sistemas operativos tengo experiencia con Servidores Windows, Sistemas Operativos de escritorio Windows, un poco de Linux Ubuntu. En la parte de desarrollo tengo un poco de experiencia VB 6.0, VB .Net, un poco de ASP.Net, Visual Fox Pro, Visual C++, un poco de Oracle Forms Developer 6i, un poco de Java. En bases de datos estoy bastante familiarizado con Oracle, un poco con SQL Server, un poco de MySQL. En otras áreas podemos mencionar las redes en Windows, Testing de Aplicaciones, Soporte tipo Helpdesk, inglés técnico, Implementaciones con casos de uso.

En cuanto al blog:
Espero que este blog le sea útil a las personas que están empezando en el área de informática, que descubran que en esta área no hay imposibles más que la imaginación (como decía el buen Einstein: “La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no”). Es bueno siempre conocer distintos puntos de vista, porque sabemos que una meta puede tener diferentes caminos, algunos más largos que otros.

Entonces los invito a visitar el blog cuando tengan tiempo y dar sus puntos de vista a las temáticas que aquí se tratarán.