viernes, 26 de diciembre de 2014

Nuevo Grupo Android Más Relax !!

Estimados:

Quedan cordialmente invitados a unirse a este nuevo grupo acerca de Android:


Para seguir el grupo por correo:

androidmasrelax@googlegroups.com

La idea es aprender las cuestiones de desarrollo para móviles con Android, en un ambiente más relajado.

Tengan en cuenta que solo los apoyo con el emprendimiento, en vista de la necesidad de incorporarse al desarrollo en los mercados móviles que cada uno tiene.

Saludos!

jueves, 31 de julio de 2014

¿Qué lenguaje debo elegir?

¿Qué lenguaje de programación debo elegir?...

Esta es una pregunta que ha quedado en el pasado.

En la actualidad existen lenguajes del lado servidor (Back End) como:

  • Java
  • Asp.net (Eligiendo C# o Vb.net como Codebehind o lenguaje del lado servidor)
  • PHP
  • Javascript, a través de un framework como NodeJS.
  • Python, a través de un framework como Django.
  • Ruby, a través de un framerwork como Ruby on Rails.
  • Etc.

Índices de Popularidad de lenguajes de programación: Tiobe.com  langpop

Y lenguajes del lado cliente (que suele ser el navegador), llamados lenguajes para el Front End como:

  • HTML, HTML5, que son los lenguajes para el maquetado de la página o sitio web.
  • CSS, CSS3, que son los lenguajes para añadir los estilos.
  • Javascript, que dota al html de las características que no posee y se encuentran en cualquier lenguaje de programación estándar, tales como el uso de variables, arreglos, ciclos, etc.
  • Jquery, Mootools, Ext Js, Back Bone.js, Ember.js, Angular.js, etc., que son librerías o frameworks que facilitan el uso de Javascript.

Mas sobre Back End y Front End

Por lo que se ve, ahora es prácticamente imposible usar un solo lenguaje para llevar a cabo un proyecto de tipo web y sin importar el lenguaje que se elija del lado servidor siempre se tiene que lidiar con los lenguajes de la parte del front end.

Para desarrollos tipo Desktop aún existen opciones como las de .net (C# o Vb.net), Delphi y otras.

Para móviles existe Java(Android), Objective-C(iOS), Etc.

Como se ve, el tutti frutti de lenguajes que un desarrollador de la actualidad debe aprender es desesperante. Adicionalmente, hay que elegir los llamados frameworks que contemplan una serie de clases, otras herramientas ya creadas y una metodología que facilita (al menos en teoría) el trabajo.

Y tú, ¿qué lenguajes estás pensando aprender?...

lunes, 30 de junio de 2014

Primeros pasos con Python y WxPython

Existen dos ramas del intérprete de python: la 2.7.x y la 3.x .

Existen ventajas y desventajas en cada rama. Se debería evaluar qué es lo conveniente en cada caso.

Para descargar Python puedes hacerlo desde aquí:


WxPython no es más que una interface gráfica para python, y para ello se debe instalar la última versión estable unicode que hasta hace poco era la la 2.8.x.x

Para instalar WxPython ve aquí:

Descargar WxPython

Existe un manual de WxPython traducido al Español aquí:

Manual WxPython en Español


Al parecer ya no existen la versión unicode y la Ansi, solo la unicode.

Para que Python funcione en tu S.O. debes teclear cada vez el set path=%path%;C:\python27 en el simbolo del sistema.

O bien establecerlo de forma permanente según lo indicado en este enlace:


Solo es asunto de modificar la variable del sistema Path y agregar ;C:\python27

Para comprobar que ya está, en el prompt teclear:

echo %path%

Ahora, haremos una prueba para probar que los códigos funcionan:

Con un editor como Sublime Text 2 guarde el codigo de este archivo con la extensión .pyw




Tenga cuidado con las comillas ya que en ocasiones dan problemas. Si es necesario, prueba a teclearlas manualmente en lugar de copiar y pegar códigos.

Para el codificado del archivo poner esta línea al inicio de cada programa:

# -*- coding: utf-8 -*-

En ocasiones hay que anteponer una u al frente de los strings (unicode). Por ejemplo, u"Menú simple" , para que no aparezcan errores como el siguiente:




Ejemplo:

self.SetTitle(u'Menú simple')

La razón que me explicaron es que WxPython en modo unicode hace la conversión automáticamente de str a unicode, pero en modo ansi (el modo tipico), no. Asi que hay que poner la u, y de esta manera enviar a WxPython un objeto unicode y no string.

Otra es que hay que tener mucho cuidado con la indentación o el sangrado ya que en Python los códigos no corren si no tienen la indentación correcta.


viernes, 6 de junio de 2014

¿Por qué evitar el Cyberbullying o Acoso Virtual?

Con los medios informáticos cada vez más al alcance de la población, que incluye a niños, adolescentes, e incluso personas de la tercera edad, es necesario estar alerta para no ser víctimas del llamado Ciberacoso o Cyberbullying.

¿Qué es el ciberacoso?

Es el uso de información electrónica y medios de comunicación tales como correo electrónico, redes sociales, blogs, mensajería instantánea, mensajes de texto, teléfonos móviles, y websites difamatorios para acosar a un individuo o grupo, mediante ataques personales u otros medios.

El cyberbullying tiene al menos 3 elementos para ser considerado como tal:

1. Frecuencia.
2. Continuidad en el tiempo.
3. Concurrencia de los hechos de acoso.

A diferencia de un comentario descortés, que puede causar cierto estrés momentáneo en quien lo recibe, el ciberacoso puede tener consecuencias mucho más graves sobre la salud, la dignidad, la autoestima, la capacidad de integración con la sociedad, etc. de quien lo sufre.

En algunos casos, puede incluso llegar a afectar de por vida a la víctima o puede incluso llevar al suicidio a la misma.

Si usted es padre de familia, debería supervisar la conducta de sus hijos en el mundo virtual o estar alerta a cualquier cambio en sus hábitos o personalidad.

Si usted usa con frecuencia las redes sociales, los grupos o foros, sea consciente del peligro y trate de evitar envolverse en discusiones sin sentido que suelen darse en los mismos. Contribuya a mantener las conversaciones en un ambiente técnico o cordial.

Siga siempre las llamadas Reglas de Etiqueta de Internet

De esa forma, sabrá sacar provecho de lo que ofrece el mundo virtual y evitará convertirse quizás sin querer en un acosador virtual, o bien ser víctima de cyberbullying.




jueves, 29 de mayo de 2014

Instalar Whatsapp sobre Android x86 para PC

Si has seguido los tutoriales anteriores ya tendrás Android x86 en tu PC sobre tu Virtual Box.

Ahora bien,

Para instalar Whatsapp hay que hacerlo a través de Aptoide.

Este Aptoide no es más que un programa igual que el de Play Store, con la diferencia que se pueden tener más opciones de descarga y quizás gratuitas.

En el programa de tu tablet busca dentro de los iconos una rueda dentada, que tiene que ver con los ajustes o configuraciones de la tablet.

Busca dentro de la opción Seguridad, la opción Instalar aplicaciones desde orígenes desconocidos.

Luego, entra a tu navegador de la tablet y ve a la página de Aptoide que debe ser esta:


Ahora ve a la sección descargas en tu simulador de tablet Android x86 e instala desde ahi el archivo .apk

Una vez instalado aptoide busca whatsapp desde la aplicación aptoide y descargarlo. Recuerda descargar la versión más nueva, para tener por lo menos un año de servicio gratuito.

Ahora ve nuevamente a la sección descargas en tu simulador de tablet Android x86 e instala desde ahi el archivo .apk, o bien si te pregunta, permite que Aptoide descargue e instale automáticamente el Whatsapp.

Ahora entra a la aplicación de Whatsapp que aparece en la pantalla principal.

Nota. Para activar whatsapp hay que suministrar un numero de cualquier celular sms que tengas a la mano, aunque dicen que también funciona poniendo un número de casa.

Al celular te llegará un código whatsapp que deberás teclear cuando te lo solicite. En ocasiones es necesario pulsar el botón Llámame y esperar a que llegue el mensaje con el código whatsapp.

El resto es finalizar las configuraciones que te vaya solicitando el asistente de Whatsapp.

Recuerda que solo podrás utilizar el whatsapp con un solo dispositivo, en este caso, solo con tu PC. No se podrá usar el mismo número con el teléfono y la PC. Tienen que ser números diferentes.

Si tienes otro teléfono, aunque este no tenga Android, podrás usar ese número para activar tu whatsapp en la PC.

Espero que este post te haya sido de utilidad!



martes, 13 de mayo de 2014

Primeros pasos con las clases CSS


Alguna vez me hice líos con este tema sencillo de los divs de las CSS.

Voy a intentar explicártelo como hubiera querido que alguien me lo explicara por primera vez.

En este punto supongo que ya sabes algo de html y si no, puedes darle un vistazo a esto:


Guarda el siguiente codigo en un block de notas como tipo de archivo .html

div.html

<html
  <head
    <title>Mi Primera Web Con DIVs</title>
    <link media=all href="estilo-a001.css" type=text/css rel=stylesheet>
  </head>
  <body>
    <div id=global>
      <div id=bartolo>
        <p>Este es mi primer DIV llamado bartolo</p>
      </div>
      <div id=catalina>
        <p>Este es mi segundo DIV llamado catalina</p>
      </div>
      <div id=perico>
        <p>Este es mi tercer DIV llamado perico></p>
      </div>
    </div>
  </body>
</html>

Luego guarde el siguiente codigo con el nombre estilo-a001.css

body{background-color:yellow; text-align:center}
#global {background-color:#FF9900; margin:0px auto 0px auto; padding:2px 2px 2px 2px; width:800px; border:#000 1px solid}
#bartolo {background-color:#00CC00; margin:0px 2px 0px 0px; width:80px; float:left; border:#000 1px solid; text-align:left}
#catalina {background-color:#00CCFF; margin:0px 0px 0px 0px; width:712px; float:left; border:#000 1px solid; text-align:center}
#perico {background-color:#00CCFF ; margin:2px 0px 0px 0px; width:712px; float:left; border:#000 1px solid; text-align:justify}
p {padding:10px 10px 10px 10px}


La extension .css es obligatoria a menos que use un editor como notepad++ y elija el tipo de archivo al guardar.

Explicación: el código html solo sirve para maquetar o esquematizar el contenido de una página web, mientras que el código css se encarga de dar formato o estilo al contenido.

Dentro del código css verá algo como lo siguiente:

id="bla" -> #bla
class="bla" -> .bla


id es para elementos únicos y class para grupos de elementos.


Veo que cuando se declara en la clase css algo como #mielementounico se manda a llamar desde el html con los parametros id="mielementounico".


Y cuando se declara en la clase css algo que lleve un puntito .miestiloparagrupos se manda a llamar desde el html con los parametros class="miestiloparagrupos"


Si me hubiera tocado explicarlo lo hubiera puesto al revés:


Código en el CSS ---> Código en el  HTML


#bla           --->                 id="bla"


.bla              --->               class="bla"



Ejemplo 1:


<!DOCTYPE html>
<html>
<head>
<style>
#para1
{
text-align:center;
color:red;
}
</style>
</head>


<body>
<p id="para1">Hello World!</p>
<p>This paragraph is not affected by the style.</p>
</body>
</html>


Ejemplo 2:


<!DOCTYPE html>
<html>
<head>
<style>
.center
{
text-align:center;
}
</style>
</head>


<body>
<h1 class="center">Center-aligned heading</h1>
<p class="center">Center-aligned paragraph.</p>
</body>
</html>

Mas información (Inglés):

CSS Id and Class
3 Formas de insertar las CSS

Hasta la próxima !

Primeros pasos con Javascript

Antes que nada te invito a conseguir un editor de textos como Notepad++ o Sublime Text 2.


Guarda un archivo como tipo de archivo .html y coloca el siguiente código para insertar código Javascript:



<SCRIPT LANGUAGE="JavaScript" type="text/javascript">

document.write("Hola Mundo");

</SCRIPT>


El w3c acerca de estándares web recomienda el uso de type, para la compatibilidad con los diversos navegadores.


Pero también se podría insertar código javascript así:

Dentro de un html :


<html>
  <head>
  </head>
  <body>
    <script language="javascript">
      document.write('Mi primer texto en la pantalla con Javascript');
    </script>
  </body>
</html>


La explicación del código está por aquí:




Conceptos básicos acerca de Javascript:




Cosas a tener en cuenta:

1. Existe un Tutorial Basico Javascript que consta de 32 lecciones en youtube.

Se recomienda ampliamente ese tutorial del youtube, ya que el autor explica las cosas desde 0 y con gran sencillez.

2. En ese tutorial a partir de la lección 21 viene el manejo de programación orientada a objetos con JS.

Por ejemplo, en el hola mundo de arriba vio esta linea:

 document.write('Mi primer texto en la pantalla con Javascript');


Document, es un objeto en realidad, y se refiere a la pantalla del navegador, es decir al body de la página html. (Si me equivoco al decir esto, échenle la culpa al tipo que hizo los tutoriales de javascript del youtube, ya que solo repito lo que me pareció mas relevante del tutorial ;-) )

Al hacer document.Write();

Se estaría llamando al método Write(), del objeto document.

3. Según lo que investigué, hasta ahora no existe una documentación oficial de Javascritp... Qué pena.. Pero de que hay documentación sobre JS, sí que la hay..

4. También se puede insertar código JS en el Head, no solo en el body del html.

5. De preferencia, deben ejecutarse las llamadas a las funciones Javascript, después o debajo de la etiqueta de cierre </script>, ya que si van dentro de las etiquetas del script  el código puede ejecutarse inmediatamente al cargar la página html.

6. Debes asegurarte de que la opción "Ejecutar javascript" esté habilitada en tu navegador de preferencia.


Espero que pueda ser útil para iniciar con el tema!

lunes, 28 de abril de 2014

Instalar Apache, MySql, Gnome, Phpmyadmin en CentOS 6.5 Minimal

Esto fue algo que descubrí por error al intentar instalar Apache con Mysql en el CentOS 6.5


¿Por qué por error? Porque lo recomendable era instalar los daemons (servicios de Apache y Mysql) eligiéndolos desde el instalador de CentOS 6.5


Para mi desgracia (o fortuna quizás..) escogí la instalación llamada minimal, la cual prácticamente no instala gran cosa y hay que instalar casi todo vía línea de comandos.


Este fue el tutorial que seguí en su momento para hacer la instalación minimal:




Esto al final no fue tan malo ya que permite aprender un poco de Linux sobre la marcha.


Aunque existe la opción de usar un paquete instalador como Lamp, parece que hay ventajas de instalar todo a mano.

Una vez que tengas instalada la máquina virtual con el CentOS 6.5 como lo indiqué en los anteriores tutoriales:



Lo primero que hay que hacer es actualizar el CentOS desde la línea de comandos. Una vez iniciar la sesión del usuario root, teclear lo siguiente:

yum -y update

Esto permite que nuestro CentOS no tenga bugs y otros problemas que han sido corregidos.

Lo siguiente es crear un usuario adicional al root, que tenga privilegios de root, tecleando:


/usr/sbin/adduser nuevousuario
Y asignarle una contraseña:
passwd nuevapwd

Cuando se utiliza un usuario que no es root, se debe anteponer la palabra sudo antes de cada orden.

Para agregar el nuevo usuario hay que editar la configuración de sudo mediante el editor predeterminado en CentOS, llamado vi.
/usr/sbin/visudo

Luego encontrar la sección:

# User privilege specification
En mi caso no vi esa sección pero si encontré estas lineas:
root ALL=(ALL) ALL
Nada más agregue la nueva cuenta de usuario debajo


nuevousuario ALL=(ALL) ALL





Este tutorial en Inglés me sirvió de guía:

Initial Server Setup with Centos 6




Y para las órdenes del editor vi usé esta guía:




Ahora para instalar Apache y MySql, loguearse con el usuario que no es root pero que ahora tiene privilegios de root y teclear lo siguiente:


sudo yum install mysql mysql-server httpd php* -y


Luego intente correr los daemons de apache y mysql con:


sudo /sbin/service httpd restart

sudo /sbin/service mysqld restart


Luego hay que instalar phpmyadmin. Este tutorial tiene lo necesario:




Basicamente,

/usr/share/phpMyAdmin

yum install phpMyAdmin



Puedes agregar un pasword si lo deseas



En mi caso agregué un archivo index.html a "/var/www/html"
Tambien agregué un archivo info.php con el siguiente código de php:
<?php
  phpinfo();
?>
Al teclear en el navegador:
o
Decía servidor no encontrado.
Si accedía directo a la carpeta htdocs, lógico que si abre el html y el info.php queda en blanco. Significa que el Apache no funcionaba.
Leyendo por ahi en el enlace:
Configuración servidor web Centos
Encontré que se podía cambiar la directiva ServerName y para probar en el httpd.conf le puse:
ServerName localhost:8080
Luego funcionaba correctamente tecleando esto en el navegador:
http://localhost:8080/index.html  ==> Se ve el "Hola Mundo" que puse en el html.
http://localhost:8080/info.php  ==> Se ejecuta el script de php y muestra la info del sistema.

Se recomienda dejar el ServerName en 80  y así no tienes que teclear el puerto luego del localhost.
Si te aburriste de usar el editor vi, también puedes Instalar el editor Vim que incorpora color en los textos, siguiendo esto:
Para cambiar el ServerName haz lo siguiente:
sudo vim /etc/httpd/conf/httpd.conf
Y cambia el valor de la directiva a:
#Listen xx.xx.xx.xx:8080 Listen 80
Y cambia la directiva ServerName a:
ServerName localhost:80
Con eso ya corre normal desde el navegador con:
También funciona tecleando 127.0.0.1 en lugar de la palabra localhost.
La cosa es que en el lenguaje del famoso Linux como hay un gran tutifruti te confunde un poco que a veces se usen otras órdenes. 
En este enlace:
Uno de los comentarios dice que hay que hacer lo siguiente:
su - gedit /etc/phpMyAdmin/config.inc.php
Lo que en mi idioma CentOS y las herramientas que tengo por acá sería:
sudo vim /etc/phpMyAdmin/config.inc.php
Hay que editar ese archivo y buscar la parte donde dice:
$cfg['Servers'][$i]['AllowNoPassword']
Y cambiarla de FALSE a TRUE y que quede asi:
$cfg['Servers'][$i]['AllowNoPassword'] = TRUE;

Después de reiniciar los daemons (servicios) de apache y mysql,  con solo eso ya permite que tecleando http://localhost/phpMyAdmin se pueda ingresar a lo interfaz de phpmyadmin autentificándose como root y dejando en blanco la pwd.
Para instalar la GUI Gnome puedes hacerlo siguiendo esto:
Inicia en modo consola, pon las credenciales de login, y ya dentro teclea startx y se lanza la GUI.
Desde ahi puedes acceder al firefox y antes abres con la gui una sesión de la "terminal" y en ella tecleas:
sudo /sbin service httpd restart y todo va bien. Se inicia el daemon de apache.
Si por algún caso no ves el navegador, abre una sesión de la Terminal e instala Firefox siguiendo este tutorial, para tener la ultima versión:

Install latest Firefox on Centos 6.5


En mi caso falló algo al instalarse la GUI y supongo que borró algo del phpmyadmin, porque una vez que me identificaba volvía a aparecer la ventana pidiendo el nombre de usuario y contraseña del phpmyadmin.Quedaba en ciclo..
Al final, me di cuenta que no existía el archivo menciona aquí:
/etc/httpd/conf.d/phpMyAdmin.conf   <== Ese no existía, porque al abrirlo estaba en blanco.
Así que volví a correr esto:
/usr/share/phpMyAdmin
yum install phpMyAdmin


Y ahora si ya puedo entrar a editar el archivo phpMyAdmin.conf y presenta los opciones que se ven en el enlace.
Tambien voy con la GUI al sistema de archivos, usr, share y ahora ya se ve la famosa carpeta phpMyAdmin
Sin cambiar nada, ahora pongo esto en el navegador:
Y ya me pide nombre de usuario y contraseña

Bueno, un poco enredado todo esto pero algo se aprende..

lunes, 21 de abril de 2014

Como correr un script php con Xampp

Veo que a muchos nos interesa el tema web, pero muchos ni siquiera sabemos como empezar.

Algo que ayuda a ir comprendiendo la idea es instalar un paquete integrador para montar un servidor web.

Uno de esos paquetes es Xampp, que significa:

 Para cualquier SO.
Instalación del servidor web Apache.
M  Instalación de Mysql como servicio.
Instalación del intérprete de PHP.
Lenguaje de scripts Perl.

Puedes descargarlo de su sitio oficial:  Xampp

Si estás usando una PC normalita, debes descargar el que dice Xampp for windows.

Durante la instalacion activa las casillas de instalar los servicios de Apache y MySql.


La carpeta que será visible desde el navegador es generalmente la que se encuentra en la siguiente ruta:

C:\Xampp\htdocs.


Suponiendo que tengas un archivo llamado hola.php dentro de una carpeta llamada pruebasphp, deberás copiar esa carpeta dentro de htdocs.



Una vez instalado el Xampp, ve al panel de control de Xampp al lado del reloj de windows, activa los servicios de apache y Mysql para que marquen running.

Ahora podrás acceder desde tu navegador tecleando la siguiente ruta:




Por lógica, si apagamos el servicio de apache e intentamos correr el script hola.php, no se ejecutará correctamente el código php contenido en el mismo.



Ahora a los hechos..

Graba el siguiente archivo con el nombre helloworld como tipo de archivo php con la ayuda de un programa como Notepad++ o Sublime text 2 y guárdalo en la siguiente ruta:

C:\xampp\htdocs

<html>
 <head>
  <title>Ejemplo PHP</title>
 </head>
 <body>
 <?php echo '<p>Hola Mundo</p>'?> 
 </body>
</html>

Códigos como este los puedes conseguir en la documentación de php: Código Hola Mundo PHP

Ahora ejecútalo entrando al navegador y tecleando:





Recuerda que el web server Apache debe estar prendido, si no no funcionará.

Hasta la próxima. Saludos!