Bienvenidos a CódiGeek

Donde el Desarrollo y las buenas practicas son nuestra razón de ser.

Todo sobre Desarrollo

Tips, consejos, experiencias y más.

El futuro esta en tus manos

Aprende tecnicas, trucos para sacarle provecho a tu trabajo.

Pages

miércoles, 30 de enero de 2013

Utilizando Gmail

Desde hace algunos años vengo utilizando Gmail y la verdad me parece un gestor de correo muy completo. Si bien para algunos esto no es sorpresa, debemos centrarnos en los comienzos de Gmail. Tuve la dicha de ser uno de los primeros en probarlo, cuando cree mi cuenta solo se podía ingresar por invitación y la capacidad era de 1GB. al principio dije: "bueno, otra cuenta de correo mas...", era común poseer varias cuentas de distintos servidores (Hotmail, Yahoo, etc). Una de las características relevantes era la capacidad (recordemos que para ese entonces Hotmail solo tenia 25MB ) y lo mejor es que aumenta continuamente, llegando ahora a un poco mas de 10GB. Ahora lo que era un correo secundario para mi, se ha convertido en mi correo principal. La única razón por la cual uso mi cuenta en Hotmail es porque con ese correo creé mi cuenta en facebook.

Pero un servidor de correo no es solo capacidad, también debe proveerte herramientas para la facilidad de su uso, sobre todo cuando se maneja un gran volumen de entradas. Las características principales de Gmail es el manejo de etiquetas, así como marcar correos como destacados o asignarlos como importantes. También es de gran ayuda la integración con todos los servicios de Google, principalmente con Google docs, G+ y Google Groups, formando el conjunto un sistema integrado agradable para el usuario. Gmail nos ofrece la posibilidad de trabajar off-line y cuenta con un chat integrado (Gtalk).

En el control de configuración podemos encontrar varias funcionalidades que permiten personalizar nuestras bandejas de entrada editando la apariencia con un tema de preferencia. En esta sección se destaca la creación de filtros personalizados que nos ayudan a organizar de una manera eficaz nuestros correos electrónicos. En la sección de Labs encontramos algunos experimentos creados los cuales se pueden habilitar o inhabilitar de acuerdo al uso de cada persona. por mi parte recomiendo habilitar "Deshacer el envió" si en algún momento nos arrepentimos de enviar un correo o si no falto adjuntar el archivo (como me ha ocurrido frecuentemente).

Cabe mencionar que el manejo de correo, específicamente el control de spam, posee un control inteligente parecido al motor de búsqueda de Google. el usuario puede "entrenar" al algoritmo de selección marcando cuales correos son considerados spam y cuales no, consiguiendo así un control personalizado para cada cuenta.

Por ultimo pero no menos importante, quiero mencionarles algunos detalles de las búsquedas avanzadas. En ellas podemos buscar correos con características muy especificas mediante el uso de diversos controles, para los informáticos se asemeja mucho a una consulta en una base de datos (de hecho lo es, aunque simplificada). Quizás algunos no conocían este detalle y otros no le verán gran utilidad pero les aseguro que si están buscando un correo en especifico esta opción es la diferencia de un par de minutos de búsqueda a un buen rato pasando varias paginas...

les incluyo la lista completa de todos los operadores:

OperadorDefiniciónEjemplos
from:Se emplea para especificar el remitente.Ejemplo: from:ana
Hace referencia a todos los mensajes que provienen de Ana.
to:Se emplea para especificar el destinatario.Ejemplo: to:david
Hace referencia a todos los mensajes que tú u otro usuario habéis enviado a David.
subject:Permite buscar palabras en la línea de asunto.Ejemplo: subject:cena
Hace referencia a los mensajes que tienenla palabra “cena” en el asunto
ORPermite buscar mensajes que coincidan con el término A o B*. 
*El parámetro OR debe escribirse en mayúsculas.
Ejemplo: from:ana OR from:david
Hace referencia a los mensajes que provienen de Ana o David.
-
(guión)
Se emplea para excluir mensajes de la búsqueda.Ejemplo: cena -película
Hace referencia a los mensajes que contienen la palabra “cena”, pero no contienen la palabra “película”.
label:Buscar mensajes por etiqueta*
*No existen operadores para buscar mensajes sin etiqueta.
Ejemplo: from:ana label:amigos
Hace referencia a todos los mensajes que provienen de Ana. que contienen la etiqueta “amigos”Ejemplo: from:david label:mi-familia
Hace referencia a los mensajes que provienen de Davidque tienen la etiqueta “Mi familia”
has:attachmentPermite buscar mensajes que contienen archivos adjuntos.Ejemplo: from:david has:attachment 
Hace referencia a los mensajes que provienen de David y que contienen unarchivo adjunto .
list:Buscar mensajes en listas de correoEjemplo – list:info@example.com 
Hace referencia a los mensajes que contienen las palabras info@example.com en los encabezados, enviados a o desde esta lista
filename:Permite buscar un archivo adjunto por nombre o tipo.Ejemplo: filename:tareadefísica.txt
Hace referencia a los mensajes con un archivo adjunto llamado “tareadefísica.txt”
Ejemplo: label:trabajo filename:pdf
Hace referencia a los mensajes etiquetados “trabajo” que también contienen un archivo PDF como archivo adjunto
” “
(comillas)
Se emplean para buscar una frase exacta*.
*No se distingue entre mayúsculas y minúsculas.
Ejemplo: “voy a tener suerte”
Hace referencia a los mensajes que contienen la frase “voy a tener suerte” o “voy a tener suerte”
Ejemplo: subject:”cena y una película”
Hace referencia a los mensajes que contienen la frase “cena y una película” en el asunto
( )Se emplea para agrupar palabras.
Se utiliza para especificar términos que no deben excluirse.
Ejemplo: from:ana(cena OR película)
Hace referencia a todos los mensajes que provienen de Ana que contienen la palabra “cena” o la palabra “película”
Ejemplo: subject:(cena película)
Lo que significa: mensajes en los cuales el asunto contiene la palabra “cena” y la palabra “película”
in:anywherePermite buscar mensajes en cualquier lugar de Gmail*.
*Los mensajes que se encuentran en Spam Papelera se excluyen de las búsquedas de forma predeterminada.
Ejemplo: in:anywhere película 
Hace referencia a los mensajes en Todos,Spam y Papelera que contienen la palabra “película”.
in:inbox
in:trash
in:spam
Permite buscar mensajes en las carpetas RecibidosPapelera oSpam.Ejemplo: in:trash from:ana 
Hace referencia a los mensajes que provienen de Ana y que se encuentran en la Papelera .
is:starred
is:unread
is:read
Permiten buscar mensajes destacados, leídos y no leídos.Ejemplo: is:read is:starred from:David
Hace referencia a los mensajes que provienen de David que se han leído y se han marcado con una estrella.
cc:
bcc:
Se emplean para especificar destinatarios en los campos CC: oCCO:*.
*Buscar en CCO: no permiten recuperar mensajes si usted figura en dicho campo.
Ejemplo: cc:David 
Hace referencia a los mensajes enviados que incluyen a David en el campo CC.
after:
before:
Permite buscar mensajes enviados dentro de un período de tiempo concreto.*
*El formato de las fechas debe ser aaaa/mm/dd.
Ejemplo: after:2004/04/16 before:2004/04/18 
Hace referencia a los mensajes enviados entre el 16 de abril de 2004 y el 18 de abril de 2004*.
*Más exacto: los mensajes enviados después de las 12:00 AM (o 00:00) del 16 de abril de 2004 y antes del 18 de abril de 2004.
is:chatPermite buscar mensajes del chat.Ejemplo: is:chat mono
Hace referencia a los mensajes del chat que incluyan la palabra “mono”.



domingo, 27 de enero de 2013

Lenguajes de Programación: JAVA




Buenas este es mi primer post, pienso compartirles de manera breve que es, el lenguaje de programación Java.


Java es un lenguaje de programación de alto nivel (a esto me refiero con que otros niveles, como están el eléctrico que utiliza circuitos, compuertas dispositivos etc, el lenguaje máquina conocido como Assembler), orientado a objetos, que ejecuta los comandos en lenguaje máquina de forma invisible para el programador, lo que nos permite ahorrar varias lineas de código ya que java se encarga del trabajo mas engorroso por nosotros, Existen varios IDES(Herramientas, Compiladores) con los que podemos trabajar en Java, entre los que he trabajado están Netbeans y Eclipse, yo uso Netbeans ya que me parece una herramienta bastante completa que nos brinda un gran campo para trabajar; una de las ventajas que me gustan mas de Netbeans es que cuando cometemos algún error programando, nos falte un " ; " o que hallamos copiado mal la sintaxis de algún comando; nos marca la linea en rojo indicando que tenemos un error de sintaxis, fue la primera herramienta que conocí que tenia esta ventaja.




En java existen varias funciones que ya vienen con las herramientas normalmente que nos pueden facilitar el trabajo o una parte de el, que estemos realizando, entre las cuales puedo mencionar, .Split que es una función que te permite separar el contenido de una cadena, indicándole que signo debe considerar para separar un ejemplo rápido tenemos un String mensaje = "hola que tal"; si le aplicamos el split a mensaje podríamos tener ejemplo un vector o 3 variables en las que tendremos en la primera "hola", en la segunda "que", y en la tercera "tal", la explicare mejor en mi siguiente post, funciones que nos permiten cambiar el tipo de dato de una variable por otro, ejemplo de String a Int, de Float a String etc, funciones que permiten cortar una cadena asta cierto punto(substr), comparación entre cadenas, alequal(); otras que nos permiten llevar un número a binario etc, también para programadores mas avanzados, que les guste o necesiten trabajar con comunicación entre computadores la implementación de sockets es mas sencilla de utilizar.

 Un detalle si que posee es que no permite trabajar punteros, ¿porque? porque Java se encarga de proteger tu computador y no te deja manipular abiertamente la memoria interna de la misma; claro esta que lo que necesites hacer con punteros ya existen funciones o métodos que nos permiten hacer lo mismo, también a diferencia de otras herramientas, cuando lo ejecutas muchas veces algún programa que desarrolles, si utilizas vectores, matrices, objetos, vectores de objetos o cualquier otra que necesite memoria del ordenador, no te pondrá la maquina lenta, ya que en otros lenguajes o herramientas si no liberas esa memoria, la maquina podría asta colgarce sino dispone de mucha memoria, las herramientas que utilizan Java vienen con un Destructor por defecto, que así no lo programes el ya lo trae, que libera la memoria de las funciones vectores o demás métodos de manejo de memoria, si por casualidad se te olvida hacerla, así no tienes que preocuparte por este detalle.

Bueno eso ha sido todo por ahora para los que les interese empesar a trabajar en este lenguaje, les dejare los links de la pagina de Sun, donde podrán descargar Netbeans y el componente que necesita para funcionar que es el JDK.

http://netbeans.org/

en mi próximo post publicare como utilizar algunas de estas funciones que mencione antes entre otras cosas.

sábado, 26 de enero de 2013

Sublime Text 2, mucho más que un editor de texto


Sublime Text 2 en Ubuntu 12.04
Muy bien, hoy les hablare un poco de Sublime Text 2 el editor de texto preferido por los desarrolladores, el cual esta disponible tanto para Windows, Linux y Mac. Esta editor de texto nos permite el trabajar realmente rápido, no es nada pesado y es portable aunque eso si nada barato. Y es que si deseas sacarle el máximo provecho deberás invertir 59$  pero descuida, la versión de prueba no nos limita demasiado y solo tendremos que sufrir la aparición de un mensaje de cómprame cada 10 guardadas, sin embargo si tienes la posibilidad no te vas arrepentir.


Costo en la Web Oficial
Este potente editor de texto nos permite programar para prácticamente cualquier lenguaje, cuenta con: Plugins, Snippet y Sistema de construcción de códigos como los ZenConding que tanto facilita nuestro trabajo. Ademas de poder utilizar los Snippet ya creados puedes descargarlos o crearlos tu mismo, facilitando y haciendo más veloz tu trabajo.

Sublime trae algunas características geniales como la Multiselección, Multicursor, Minimapa, Búsquedas Dinámicas, acceso rápido a linea o archivos entre muchas más novedades.

Personalmente esta herramienta me ha ayudado hacer mi trabajo más rápido y limpio, gracias a sus diferentes plugins y la manera tan intuitiva para su utilización. Su amplio número de atajos por el tecleado hace que al principio nos podamos sentir un poco perdidos, pero es cuestión de uso para aprender a utilizarlo de manera correcta y fácil.

Algunos atajos que deberiamos conocer son:

Linea de comando: Ctrl + Shift + P dentro de esta podemos, instalar nuevos plugins, snippets y utilizarlos o buscar algún ZedinCoding que no recordemos.

Movernos por el código: Ctrl + P, podemos crear, ver o editar nuestros archivos. Ctrl + G, escribe el número de la linea y ve directamente a ella. Ctrl + P y escribe # para ver todas las etiquetas de un documento HTML.

MultiCursor: Ctrl + Click en la linea donde deseamos posicionarnos.

Pantalla completa: Shift + F11.

Copia y pega este código en la consola de comando de Sublime Text 2, para poder instalar paquetes:


import urllib2,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf282' + 'd0e7a3098092775ccb37ca9d6b2e4b7d'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')

Algunos de los ZedinConding que debes instalar si eres programador son:

Emmet: Permite agilizar la escritura, como ul>li>a+tab. 

Prefixr: Nos ayudara a ajustar nuestra hoja de estilo con todo los navegadores, y funciona seleccionando la linea + Ctrl + Alt + x.

ColorPicker: Creo que le nombre más o menos ya nos dice que una paleta de colores, y la vemos con Ctrl+Shitf+t.

ClipBoard: Podemos llevar el historia de la papelera, retroceder u adelantas.

A partir del próximo vídeo intentare explicar mas funcionalidades y dar ejemplo de algunas de la que ya se encuentran aquí.



Instalación:


Descarga desde la Web principal
Aunque no necesita instalarse, ya que es portable y solo basta con descomprimir y usar, si deseas instalarlo ve a Sublime Text. Allí encontraras las diferentes versiones, tanto portable como las que requieren instalación como en Linux si quieres tenerlo como un programa más y no como un ejecutable.

Aquí les dejo el repositorio PPA de Linux:


sudo add-apt-repository ppa:webupd8team/sublime-text-2
sudo apt-get update
sudo apt-get install sublime-text-2

miércoles, 23 de enero de 2013

Como instalar Ubuntu 12.10 (Modo algo más/Más Opciones) y no morir en el intento


Instalar cualquier sistema operativo de Linux por primera vez, puede resultar un proceso engorroso(comparándolo con un sistema operativo como Windows en sus ultimas versiones). Sin embargo el podemos realizar una instalación en Linux (nuestro caso Ubuntu 12.10) limpia y libre de errores.

 Advertencia: Se recomienda realizar una copia de seguridad de nuestros archivos personales, por cualquier percance en la instalación, estos suelen ser muy poco probables pero es mejor prevenir que lamentar. 

Instalar Ubuntu 12.10 en 3 pasos:

Primer paso:

Nos vamos a la página principal de Ubuntu para descargar la versión que instalaremos, en nuestro caso Ubuntu 12.10: Ubuntu.com 

Segundo Paso(Importante para quienes instalan Ubuntu por primera vez junto a Windows):

Este viene siendo uno de los métodos más sencillos que conozco, pero no es el único(en proximas entradas espero traerle las diferentes formas de particionar nuestro disco duro) .

Ten en cuenta primero que nada formatear la partición de la cual tomaremos prestado disco para la posterior instalación de Ubuntu, esto nos ayudara a evitar problemas al momento de la instalación.

Primero que nada necesitaremos nuestro LiveCD(Así es como se le llama al CD de instalación), con este ya quemado en un CD o con un pendriver Booteado procederemos a arrancar la PC desde donde tenemos la imagen del Ubuntu.  Una vez dentro, iremos a donde dice probar Ubuntu, y buscaremos en el menú Sistema/Administración/Editor de particiones (Gparted). Una vez aquí adentro procederemos con los siguientes pasos. 

Buscamos entre las particiones, aquellas con formato NTFS(Sistema de archivo de utilizado por windows) si de casualidad encontramos varias, podemos guiarnos por el tamaño del disco, lo más seguro es que la partición NTFS de mayor tamaño sea en la que tienes instalado Windows, la seleccionamos y buscamos la opción Redimensionar/Mover.

Dentro de esta ventana tendremos la opción grafica para disminuir nuestra partición de windows, o incluso utilizar todo el disco. Por razones obvias solo disminuiremos el espacio que utiliza windows. Recuerda que sistemas operativos como Ubuntu(o cualquier otro de Linux) no necesitan tanto espacio de disco, así que si no deseas gastar mucho espacion de tu otra partición, Ubuntu solo nos pide 5,6GB aproximadamente 6. Sin embargo particularmente te recomiendo utilizar entre 15 y 35GB, ya que más de esta cantidad representaría un desperdició. Una vez disminuido el espacio, haremos click en Redimensionar/Mover. Si posees un disco duro demasiado grande, puede que demore unos minutos este proceso.

Una vez este listo el proceso, veremos una parte de nuestra partición de Linux en gris a la cual procederemos con el botón derecho del mouse, y elegimos donde dice Nuevo, después de esto haremos una partición extendida, marcándola en donde dice "Crear como" y procedemos a hacer click en añadir.

Una vez tenemos separada la parte gris como una partición aparte, volvemos a buscar encima de esta con botón derecho Nuevo y procederemos a crear la siguientes particiones una por una:

SWAP: Esta será el área de intercambio que habrá en caso de que la memoria RAM de nuestros PCs se desbolde por así decirlo. He escuchados muchas personas que dicen que esta debe ser la mitad de nuestra RAM verdadera, lo cual no es de todo cierto y los más aconsejable es que esta varia entre los siguientes parámetros:

RAM <= 512, 1GB de SWAP ó RAM >=1GB, también 1GB pero si tienes mas de 1GB, tu SWAP "Debería teóricamente" ser la mitad de tu RAM. Teóricamente, ya que en los computadores modernos, de 4GB en adelante, lo más seguro es que nunca la utilices. 

Y lo mas importante, debes marcala como Lógica...

Raiz:  Aquí será donde instalara nuestro sistema operativo como tal, normalmente es recomendable más de 5.4, 6 o un poquito más, recuerda elegir como sistema de ficheros ext3.

/home: Aquí es donde tendrás todos tus archivos, deberías colocar un tamaño acorde a el uso que le vas a dar. Al igual que en el paso anterior, recuerda seleccionar en sistema de ficheros como ext3.

Después de esto, solo nos resta aplicar los cambios en el menú principal de Gparted. Selecciona aplicar en la parte superior. Si no ves el botón de Aplicar, veras al lado de Deshacer (una flecha mirando hacia abajo), da click ahí y luego aplicar. Nos aparece un mensaje, alertando de nuestros cambios, lo cuales aceptaremos y esperaremos algunos minutos a que se produzcan los cambios.

Tercer paso 3:

Ya en esta parte procederemos a instalar Ubuntu como sistema operativo, solo tendremos que volver a iniciar la PC desde nuestro CD o pendriver, seleccionar nuestro idioma y hacer clip en instalar Ubuntu. Una vez hecho esto te saldrá una ventana diciendote si estas o no conectado a la red o si deseas descargar las actualizaciones, personalmente opino, que si vives en Venezuela y tu internet es el estandar, no la descargues ya que esto lo podrás hacer después de forma fácil y tal vez sin tanta prisa, damos continuar y esperamos la proxima pantalla.

Una vez aquí te mostrara diferentes opciones para la instalación  como: Instalar Ubuntu junto a windows, borrar disco e instalar Ubuntu o Más opciones/algo más...

La primera de estas(instalar junto a windows, viene siendo la forma más fácil y consiste en siguiente, siguiente, siguiente... muy parecido a windows) pero no es el caso de mi explicación. La segunda opción es si queremos migrar definitivamente y dejar las ataduras de windows en el pasado. Por ultimo la tercera, el "algo más/Más Opciones" es la que nos interesa y la que marcaremos para continuar con nuestra instalación.

Una vez aquí, ya nos deben salir las particiones creadas en el paso anterior, y solo debes marcar (con el chulito) la partición de Raiz (/) y proceder a instalar ahora... En este menú también puedes realizar todos los paso ya hechos en el paso dos, más considere que seria más sencilla esta forma (en proximas entradas explicare otras formas de hacer las particiones, como esta)

Y llegamos a la parte bonita del cuento, solo nos queda "Coser y Cantar..." en esta solo debes elegir opciones como zona horaria, idioma del teclado, y poner o no seguridad a tu Ubuntu... Después de esto solo nos queda esperar a que se lleve acabo la instalación y guala, a disfrutar del mundo de Linux con esta distro(Distribución) bastante sencilla, para los primeros pasos.

Esto ha sido todo por esta oportunidad...

domingo, 20 de enero de 2013

Kim Dotcom vuelve con su "Mega" idea un año después


Y es que a muy pocas personas en el mundo no les sonara el nombre de Kim Dotcom, el creador del tan conocido MegaUpload(Servicio de alojamiento de archivos en la red) quien después de largos meses de confrontaciones legales con el gobierno de los Estados Unidos, tras el cierre del servicio web utilizado por millones de personas a nivel mundial y su absorción por parte del gobierno de su país, vuelve un año después con Mega.

Mega es un nuevo servicio de alojamiento de archivos en la nube, el cual contara con miles de servidores dispersos por el mundo y  que contara con un sistema de cifrado RSA de 2048bit para la protección de la información de sus usuarios, la llave para el acceso al servicio se generan en el cliente lo cual implica que Mega no estaría rompiendo ninguna ley.

La gran demanda del servicio en estás primeras horas, ha hecho difícil el acceso Mega, quien ofrece una cuenta gratuita de 50GB, que se puede extender a 500GB, 2T, 4T por un costo de 10€, 20€ y 30€ respectivamente. Con estos planes Mega de Kim Dotcom está de vuelta, y va con todo para recuperar el número uno en los servicios en la Nube.

Ya se avecinan versiones para los diferentes sistemas operativos, lo cual puede poner en apuro a los servicios como Google Docs o el mismo Dropbox, sin duda será una gran oportunidad para ver nuevas ofertas por parte de estos tres servicios por la sima de los servicios de almacenamiento en la Nube.

Fuente: El Nacional

viernes, 18 de enero de 2013

Bienvenidos a CodiGeek

Este Blog tiene como finalidad compartir información, conocimientos e ideas, las cuales hemos venido adquiriendo a lo largo de nuestra carrera y que pueden llegar a ser de mucha utilidad cuando apenas se esta dando los primeros pasos en el mundo de la Informática o incluso si ya tienes tiempo en esta profesión, puedas retroalimentar tus conocimientos con la información proporcionada. 

 Este nuevo proyecto nació de la necesidad de dar a conocer nuestras habilidades, y que estas puedan ser útiles para otras personas mediante tips o consejos, los cuales permitan crecer tanto en pensamiento lógico como abstracto, para así lograr un estilo de programación mas optimo y eficiente.

Licencia Creative Commons