viernes, 22 de noviembre de 2013

Melodias de Wolfgang Amadeus Mozart

Sé que algunos programadores son un poco excéntricos y tratan de ser diferentes implementando distintas técnicas de programación, escuchan música diferente y esto es lo que hace que un trabajo sea diferente al resto de los demás, como si trataran de dejar un sello personal y plasmar la lógica de su pensamiento.

Estarán de acuerdo con migo que existe música para todos los gustos y para un sin fin de acctividades que realicemos, por ejemplo hay musica para bailar, cantar, dormir, parrandear, para llevar serenatas e incluso hasta para hacer el amor, no sé si existan melodías para programar, sin embargo yo en lo particular cuando se trata de tirar código y concentrarse prefiero escuchar música tranquila que ejerza un efecto positivo en mis neuronas como las melodias de Wolfgang Amadeus Mozart.

Si eres de una persona que te relajas con estas melodías te dejo el link para que puedas escuches las Melodias de Wolfgang Amadeus Mozart.



Si deseas decargar los archivos de audio puedes utilizar HTTrack Website Copier es una herramienta fenomenal de uso libre con licencia GPL y multiplataforma, que permite facilmente descargar sitios web completos a un direcotorio local para navegar sin conexión.

Aqui les dejo estas capturas de pantalla.
 
Venta Principal del Asistente para Descarga.
Configurando  la pagina de descarga y el direcotorio local.




martes, 22 de octubre de 2013

Creación de Contraseñas Seguras

Me he dado cuenta que como usuarios de servicios de internet la protección de la información personal es los mas importante y lo que más nos preocupa cuando se trata asegurar la fidelidad de acceso a los servicios web.

La mayoría de los usuarios cuando nos familiarizamos con el uso de los servicios web (correo electrónico, compras en línea, transacciones bancarias, almacenamiento de información, etc.) nos olvidamos por completo de las reglas básicas de seguridad sin imaginar que nuestra información podría estar al acecho de algún delincuente informático.

Es recomendable tener siempre presente que para proteger cualquier información en la web, es importante contar con una buena contraseña y para ayudarte con esa tarea que para algunos de nosotros podrá resultar abrumador y aburrido, aquí les dejo los links que en lo personal son de los mejores generadores de contraseñas online que he encontrado.



http://password.es/ (Español)
Disponible en español permite configurar unos sencillos parámetros para generar contraseñas con diferentes nivel de seguridad. Lo más interesante de esta web es su comprobador de contraseñas.
Comprobador de Contraseñas



http://www.clavesegura.org/ (Español)
Este sitio web simplemente es una manera fácil de generar contraseñas seguras para usar en diversas webs, tiendas online, o cualquier otro lugar en el que puedas necesitar una clave. El sistema permite escoger el tipo y la longitud. Es especialmente recomendable la posibilidad de crear una clave sencilla de recordar, mediante un algoritmo que escoge de Internet fragmentos de palabras al azar, generando una contraseña única y fácilmente recordable.


Este es un generador de contraseñas Fuertes muy simple de usar: básicamente no tenemos que seleccionar nada y el generador se encargará de hacer todo el trabajo. Podemos elegir dos cosas: el tipo –letras y números, sólo números, caracteres especiales- y la longitud –de 4 a 20 caracteres.

https://www.passwordlive.com/ (Inglés)

Este servicio es relativamente novedoso, nos permite usar una palabra clave secreta y una palabra para que servicio sera utilizada la contraseña, las cuales se utilizaran como base para generar una contraseña entre 8 y 64 caracteres.

Nosotros podemos personalizar la cantidad de caracteres, y si tendrá o no números, mayúsculas, y caracteres especiales, entre otros.

http://passwordbird.com/  (
Inglés)
Es una aplicación que genera contraseñas al azar según la información que le proporciones. Muy similar a la anterior tu introduces un nombre personal significativo para ti,  así mismo una palabra y una fecha de nacimiento, muy útil,  y luego se crea la contraseña, difícil de adivinar y a la vez te será familiar y fácil de recordar. Los datos que introduces son: un nombre, una palabra y una fecha que sean especial para ti, estos tres datos conforman un código particular. a partir de estas palabras genera una clave realizando una combinacion aleatoria.


viernes, 18 de octubre de 2013

Programadores y horarios. El karma del programador.

Dicen las leyendas urbanas que los programadores somos aves nocturnas y que nos gusta más trabajar por la noche. No voy a desmentir esta leyenda ya que es cierto, lo que voy a hacer desde estas lineas es intentar explicar, y hacer comprender a los escépticos, las causas que llevan a que ocurra eso.

Posiblemente, otras personas, como diseñadores, escritores, creativos, publicistas, arquitectos, ingenieros, etc. se vean reflejados en estas lineas y me deje, desde su punto de vista, cosas en el tintero. Yo conozco mi profesión, me conozco un poquito a mi mismo y conozco a algunos colegas, y desde ese conocimiento es por el que escribo esto. Mil perdones si algo me olvido: ponlo en los comentarios y compártelo con todos nosotros. Gracias.

Si, es cierto, los programadores trabajamos mejor y somos más productivos por la noche, una vez se han ido todos a dormir, el ruido de la calle cesa y no hay posibilidad de interrupciones constantes de la concentración.

Hay estudios que demuestran que un programador tarda entre 15 y 30 minutos en encontrar su “punto de comodidad” en el que consigue su nivel personal de concentración, abstracción y total despreocupación por el mundo exterior. Una vez conseguido este “punto de comodidad”, el programador puede permanecer así por mucho tiempo, hay algunos colegas que se han olvidado de comer, ir al baño e incluso de dormir. El “punto de comodidad” no se refiere a que el programador se encuentre cómodamente sentado, el “punto de comodidad” es cuando se juntan todos los factores de silencio, armonía, orden y relajación. Es como el “karma del programador”: el mundo se reduce a lo que está haciendo y sus pensamientos (incluso su persona queda fuera de este mundo).

Pero ¿por qué por la noche? 
Durante el día todas las personas tenemos compromisos que cumplir: llevar niños al colegio, hacer de comer, ir al mercado, atender a otras personas, ordenar y recoger la casa y/o la oficina, el condenado teléfono que siempre suena en el momento más inoportuno, la visita inesperada, hacer recados que parecen no acabar nunca, reuniones imprevistas …

Como se puede ver, es imposible que un programador que tenga esos compromisos pueda conseguir su karma nirvana personal para poder rendir al máximo. Puede, desde luego, aparcar todas esas tareas y ponerse a trabajar, lo que le suele acarrear un montón de problemas con las personas de su entorno (familia, amigos, compañeros de trabajo, jefes, autoridades …) y todos esos problemas conllevan su propia carga emocional que también influye en el estado de ánimo del programador para realizar su trabajo.

Así que, como durante el día hay que hacer innumerables tareas totalmente inconexas, el programador opta por no meterse en su karma nirvana y esperar al momento propicio para hacerlo, ya que si lo hace (y esto lo sabemos los programadores con mucha experiencia) puede ocurrir que, o bien se olvide de hacer las tareas (con sus problemas añadidos), o bien tenga que detener el transcurso de su pensamiento para hacerlas, lo que suele ser tremendamente doloroso ya que, para recuperar de nuevo su karma nirvana, la concentración y el hilo de lo que estaba haciendo, precisará de entre 35 y 90 minutos.

Este motivo lleva a que el programador espere a la noche, cuando nada le puede molestar, para realizar su trabajo con comodidad. Aunque hay noches que el cansancio del día no le permite conseguir su karma nirvana y debe sucumbir a la necesidad de descanso.

¿Son vagos los programadores?
Otra de las leyendas urbanas que corren por ahí sobre los programadores es que son unos vagos, que trabajan poco, que no cumplen con los compromisos y que no se puede confiar en su palabra.

Nada más falso. Si leemos con detenimiento el párrafo anterior nos daremos cuenta que los programadores se pasan la vida buscando el momento de su karma nirvana para poder realizar su trabajo y cuando no lo consiguen se pasan los días y el proyecto no se acaba nunca (a veces ni se empieza). Entonces el programador es vago, ¿no?.

Pues no, si al programador se le deja trabajar y se le descarga de las tareas que le restan tiempo para desarrollar su trabajo, se demuestra fácilmente que el programador es todo lo contrario: es una máquina de producir. Muchas veces podemos ver al programador sentado en el sofá, paseando o acostado (echado), y si nos acercamos descubriremos que no está durmiendo ni descansando, está concentrado en su tarea de encontrar la solución óptima para resolver algo; el programador no está todo su tiempo sentado ante el ordenador machacando las teclas. Otras veces lo podemos ver navegando por Internet, mirando páginas de redes sociales, o chateando con gente (generalmente, otros programadores), lo que no significa que haya perdido su karma nirvana, simplemente está relajando la mente para poder pasar de un problema a otro.

¿Los programadores son ariscos, respondones y malhumorados?
Jajaja. Sí. Si interrumpimos a un programador cuando está en su
karma nirvana, ya sea sentado ante el ordenador, o pensando, nos podemos llevar la impresión de que es un sieso, una persona arisca, respondona y malhumorada. ¿Has intentado molestar a un perro cuando duerme? Pues lo mismo con los programadores que están en su karma nirvana: no son ellos, como he comentado antes, el programador abandona su cuerpo para ser sólo mente, problemas, soluciones y líneas de código. Así que cuando veas a un programador trabajando, déjalo terminar si no quieres llevarte una mala impresión.

¿Horario de trabajo? ¿De verdad? Mire, Vd. no quiere un programador, quiere un “picacódigo”.
Es cierto que por las necesidades de la organización empresarial de nuestra sociedad, es necesario que los negocios se rijan por determinado horario de trabajo, y que todo el personal, incluidos los programadores, se ajusten a él. Pero nada más lejos de la realidad, cuando se impone un horario a un programador es lo mismo que ponerle grilletes en las manos e impedirle que trabaje. Las empresas que contratan programadores para programar y conocen su forma de funcionar, saben que no deben imponerles horarios ni tareas que les agobien, aunque sí deben especificar un plan de entrega de tareas lo sufucientemente flexible para que el programador haga su trabajo.

Las empresas que contratan a programadores y desde el primer día lo ponen a dar soporte técnico a los clientes, para aprovechar de esta forma que el programador asuma las dos tareas, no saben que lo que están haciendo es matar el espíritu del programador. Una de dos, o le dejan programar u organizan un horario de atención telefónica durante el cual no se programa, y el horario de programación hay que respetarlo. Incluso en el caso de reuniones urgentes, hay que respetar que el programador está en su karma si se desea obtener de él todo su potencial.

Como en todas las profesiones, en el mundo de la programación hay de todo. Hay programadores que no lo son realmente, aunque escriban código y hagan programas. Son los “picacódigo”, gente que va a trabajar por un sueldo, que solo se limitan a hacer lo que les piden de la forma más sencilla que saben y que para nada se pueden comparar con el programador comprometido con su trabajo, el programador que pare y da forma a la ideas de los demás y las suyas propias. Esos “picacódigo” son contratados por empresas y sirven para todo, como no llegan al karma nirvana, pueden atender el teléfono, ir a por café, asistir a reuniones, reparar enchufes y hasta la tostadora de pan de casa del jefe…. En fin, los empleados multiusos que buscan muchas empresas.

Problemas emocionales. El fin del karma nirvana del programador.
Aunque no lo parezca, los programadores somos personas y tenemos sentimientos. Anteriormente he comentado que un programador necesita una serie de cosas para poder encontrar su karma nirvana y rendir al máximo, una de las cosas más importante es que el programador se encuentre emocionalmente estable. Un programador lleno de problemas emocionales no consigue su karma nirvana, puede entrar en él de forma puntual, pero tardará poco en abandonarlo: en cuanto los pensamientos negativos relacionados con sus problemas emocionales aparezcan en su mente (y, en serio, cuesta mucho concentrarse con ese tipo de problemas).

Generalmente, los problemas emocionales se producen en el ámbito familiar (por aquello de las tareas domésticas que pueden olvidarse o abandonarse por estar profundamente concentrados) o bien en el laboral (cuando al programador le imponen tareas que no debe hacer y le piden que programe al mismo tiempo apretándole con las fechas).

Consejos si convives con un programador.
Los programadores no somos personas fáciles en lo que a las relaciones se refiere. Principalmente por que muchas veces podemos estar horas y horas metidos en nuestro karma nirvana a distintos niveles de profundidad. Por ejemplo, un programador puede estar con su pareja asistiendo a la boda de unos amigos y a la vez tener parte de su mente en su karma nirvana: así puede parecer distraído, distante e incluso estúpido. Hay que comprenderlo, los programadores no nos sentamos delante del ordenador aporreamos unas cuantas teclas y hemos terminado, ¡no!. Los programadores estamos constantemente, incluso dormidos, pensando en el trabajo que tenemos entre manos.

Como consejo general, a las personas que conviven con programadores, les diré que si lo quieren y lo conocen, respeten su karma nirvana. Un comentario inocente sobre lo tonto que podemos parecer puede dar con todo el karma nirvana en el suelo y destrozar el trabajo mental de semanas (incluso acabar una relación sentimental).
Como consejos concretos:
  • Si está concentrado en su trabajo no lo interrumpas. Anota lo que deseas decirle y pónsela a su lado en la mesa. Ya te dará respuesta. Si es urgente lo que necesitas, ponlo en la nota. El programador sabrá que hacer. Confía en él. Es importante.
  • Si ha estado toda, o gran parte, de la noche trabajando y no puede despertar por la mañana, déjalo descansar. El esfuerzo mental que hace cansa más que andar 20 kilómetros a marcha militar.
  • Si está trabajando en un proyecto, no le impongas tareas inconexas, te va a ayudar, pero déjale su espacio y no se lo invadas continuamente.
  • Si no te habla no está enfadado contigo. Está pensando en sus cosas. No le ataque con “¿qué te pasa?”, “¿te he hecho algo?”, “¿estas enfadado?” y cosas así. Lo que haces es atacar su estabilidad emocional y puedes hacer caer su karma nirvana.
  • No le cuentes cosas poco interesantes solo por hablar, puede que te lleves una mala contestación. Si el programador no habla véase el punto anterior.
  • Respeta su tiempo de trabajo. Sea cual sea la hora a la que trabaje. El programador no puede controlar el momento creativo y sabe que si lo pierde no hay posibilidad de recuperarlo.
  • No te enfades con un programador que no acude a una cita sin avisar, seguramente está tan inmerso en el karma nirvana que ni se ha dado cuenta del paso del tiempo.
  • Si eres pareja de un programador, se cariñoso con él o ella. Entiéndelo y ayúdale a superar los malos momentos. La programación da grandes satisfacciones personales, pero cuando algo no sale puede hundir el karma nirvana del más fuerte.

domingo, 13 de octubre de 2013

Triangulos en CPP

Que tal amig@s nuevamente les traigo un código CPP para recordar viejos tiempos, se trata de un proyecto escolar el cual consistia en crear una imagen en el centro de la pantalla y que dicha imagen pudiera crecer y decrecer al pulsar determinadas teclas sin que la imagen se distorcione, asi como tambien poder moverse el las direcciones izquierda, derecha, arriba y abajo utilizando las teclas de direccionamiento.

Un proyecto donde aprendi que cuando se realiza un buen analisis para solucionar un problema, la programacion resulta más facil.


Resultado de ejecutar el codigo CPP.


Aqui les dejo un segmento del archivo de codigo fuente, el archovo fuente completo lo podran descargar aqui triangulos.cpp.

#include "conio.h"
#include "stdio.h"
#include "graphics.h"
#include "math.h"
#include "dos.h"
#include "stdlib.h"

 void graficos(void);
 void menu(void);
 void rombos(int x,int y,int inc);
 void ayuda(void);

 void tecla(char *asci,char *exa);
 
void main(void){
  char asci,exa,hay;
  int x,y,inc;

 graficos();
 menu();

  x=getmaxx()/2-50;
  y=getmaxy()/2+50;
  inc=0;
  rombos(x,y,0);

  tecla(&asci,&exa);

 while(exa!=68){

     switch (exa){

       //escalaminento decreciente F3
       case 61:if(inc>-14){
        setfillstyle(1,3);
        bar(getmaxx()-96,310,getmaxx()-6,350);//F3
        outtextxy(getmaxx()-94,320," F3 ESCALA");
        outtextxy(getmaxx()-94,330,"DECRECIENTE");
        delay(250);
        cleardevice();
        menu();
        inc=inc-14;
        rombos(x,y,inc);
        }
        break;//F3

       //escalamiento creciente F2
       case 60:setfillstyle(1,3);
        bar(getmaxx()-96,265,getmaxx()-6,305);//F2
        outtextxy(getmaxx()-93,275," F2 ESCALA");
        outtextxy(getmaxx()-93,285," CRECIENTE");
        delay(250);
        cleardevice();
        menu();
        inc=inc+14;
        rombos(x,y,inc);
        break;//F2

       //mover a la izquierda <- data-blogger-escaped--="" data-blogger-escaped-75:setfillstyle="" data-blogger-escaped-a="" data-blogger-escaped-bar="" data-blogger-escaped-break="" data-blogger-escaped-case="" data-blogger-escaped-cleardevice="" data-blogger-escaped-delay="" data-blogger-escaped-derecha="" data-blogger-escaped-getmaxx="" data-blogger-escaped-inc="" data-blogger-escaped-la="" data-blogger-escaped-menu="" data-blogger-escaped-mover="" data-blogger-escaped-outtextxy="" data-blogger-escaped-rombos="" data-blogger-escaped-x="" data-blogger-escaped-y="">
       case 77:setfillstyle(1,3);
        bar(getmaxx()-96,40,getmaxx()-6,80);//->
        outtextxy(getmaxx()-90,50,"MOVER A LA");
        outtextxy(getmaxx()-90,60," DERECHA");
        delay(250);
        cleardevice();
        menu();
        x=x+14;
        rombos(x,y,inc);
        break;

       //mover hacia arriba ^
       case 72:setfillstyle(1,3);
        bar(getmaxx()-96,130,getmaxx()-6,170);//up
        outtextxy(getmaxx()-94,140,"MOVER HACIA");
        outtextxy(getmaxx()-94,150,"  ARRIBA");
        delay(250);
        cleardevice();
        menu();
        y=y-14;
        rombos(x,y,inc);
        break;

       //mover hacia abajo v
       case 80:setfillstyle(1,3);
        bar(getmaxx()-96,175,getmaxx()-6,215);//down
        outtextxy(getmaxx()-94,185,"MOVER HACIA");
        outtextxy(getmaxx()-94,195,"   ABAJO");
        delay(250);
        cleardevice();
        menu();
        y=y+14;
        rombos(x,y,inc);
        break;

       case 59:setfillstyle(1,3);
        bar(getmaxx()-96,220,getmaxx()-6,260);//F1
        outtextxy(getmaxx()-90,240," AYUDA F1");
        delay(350);
        cleardevice();
        ayuda();
        break;//F1
     }/

   tecla(&asci,&exa);
  }

}

void rombos(int x, int y,int inc){
 setcolor(4);
  line(x,y,x-10-inc/2,y-20-inc);
  line(x-10-inc/2,y-20-inc,x,y-40-inc*2);
  line(x,y-40-inc*2,x+10+inc/2,y-20-inc);
  line(x+10+inc/2,y-20-inc,x,y);

  line(x,y,x-20-inc,y);
  line(x-20-inc,y,x-30-inc-inc/2,y+20+inc);
  line(x-30-inc-inc/2,y+20+inc,x-10-inc+inc/2,y+20+inc);
  line(x-10-inc+inc/2,y+20+inc,x,y);

  line(x,y,x+20+inc,y);
  line(x+20+inc,y,x+30+inc+inc/2,y+20+inc);
  line(x+30+inc+inc/2,y+20+inc,x+10+inc-inc/2,y+20+inc);
  line(x+10+inc-inc/2,y+20+inc,x,y);

  setfillstyle(1,4);
  floodfill(x,y-4,4);//arriba
  floodfill(x-4,y+4,4);//izq
  floodfill(x+4,y+4,4);//der
  setfillstyle(1,15);
  setcolor(15);
}

...
Segmento del archivo de codigo fuente .CPP

jueves, 10 de octubre de 2013

Contraseñas y el mundo virtual

Desde hace unos meses me surgió la inquietud de escribir este artículo, lo comencé hace tiempo y hoy me propuse a terminarlo y compartirlo con ustedes.

Pues bien, se que la mayoría de ustedes ya conoce lo que es una contraseña ya que como usuario de los servicios de internet es muy común manejar este término tan cotidiano mundialmente, así que daré una breve descripción desde mi punto de vista:


Una Contraseña o Password (en Ingles) es una clave, palabra secreta o conjunto de caracteres que se utilizan para poder acceder a servicios web (correo electronico, almacenamiento de archivos, cuentas de redes sociales, entre muchs otros) algunos de pago o gratuitos.

Las contraseñas ofrecen la primera línea de defensa contra el acceso no autorizado, por lo tanto entre más segura sea una contraseña, más protegido estaramos de los ataques de los delincuentes informáticos y software malintencionado, por ello siempre se deben configurar contraseñas seguras para todas las cuentas de usuario de los servicios web que tengamos.
 
Las diez contraseñas más comunes utilizadas por los usuarios de internet desprecian las mínimas recomendaciones de todos los especialistas de seguridad informática, que aconsejan no utilizar datos personales como nombres, fechas de nacimiento, ni palabras que aparezcan en el diccionario. Las diez claves que componen esta relación son: "password", "123456", "qwerty", "abc123", "letmein", "monkey", "myspace1", "password1" "blink182" y el nombre del usuario.

La falta de originalidad en la elección de contraseñas se debe a que los usuarios hacen caso omiso a las recomendaciones de seguridad que dan los expertos, los cuales recomiendan usar contraseñas compuestas de por lo menos ocho caracteres


Características de una contraseña segura

Para un atacante una contraseña segura debe parecerse a una cadena aleatoria de caracteres que no tenga mucho sentido. Puede conseguir una contraseña segura si aplica los siguientes criterios:

  • Que no sea corta, cada carácter que agrega a su contraseña aumenta exponencialmente el grado de protección que ésta ofrece. Las contraseñas deben contener un mínimo de 8 caracteres, pero lo ideal es que tenga 14 caracteres o más.
  • Utilizar espacios para las contraseñas, de modo que pueden crearse frases compuestas de varias palabras. Por lo general, una frase codificada resulta más fácil de recordar que una contraseña simple, además de ser más larga y más difícil de adivinar.
  •  Combinar letras, números y símbolos, cuanto más diversos sean los tipos de caracteres de la contraseña, más difícil será adivinarla. No limitarse solo a los caracteres más comunes. Los símbolos (! @ # $ % ^ & ()  + = /) que necesitan que se presione la tecla "Shift" junto con un número son muy habituales en las contraseñas, por lo que su contraseña será mucho más segura si se elige entre todos los símbolos del teclado, incluidos los signos de puntuación, así como los símbolos exclusivos del idioma.

  • Cuanto menos tipo de caracteres haya en la contraseña, más larga deberá ser ésta, una contraseña de 15 caracteres formada únicamente por letras y números aleatorios es 33.000 veces más segura que una contraseña de 8 caracteres compuesta de caracteres de todo tipo. Si la contraseña no puede contener símbolos, deberá ser considerablemente más larga para conseguir mayor grado de protección. Una contraseña ideal combinaría una mayor longitud y distintos tipos de caracteres.
  • Usar palabras y frases fáciles de recordar, pero difíciles de adivinar, la manera más sencilla de recordar contraseñas y frases codificadas consiste en anotarlas. Al contrario de lo que se cree habitualmente, no hay nada malo en anotar las contraseñas, si bien estas anotaciones deben estar debidamente protegidas para que resulten seguras y eficaces.

Por lo general, las contraseñas escritas en un trozo de papel suponen un riesgo menor en Internet que un administrador de contraseñas en Web u otra herramienta de almacenamiento basada en software.  

martes, 8 de octubre de 2013

Google Web Designer

Hace unos dias (el pasado 30 de Septiembre para ser exacto) Google anuncio el lanzamiento oficial de Web Designer, una nueva herramienta para crear contenido interactivo en formato HTML5. La herramienta que fue anunciada el pasado mes de Junio pero no tenían una fecha fija de lanzamiento y finalmente decidieron que seria liberada para los usuarios el 30 de Septiembre.

Google Web Designer es una aplicación que le permite diseñar y compilar anuncios HTML5 y otros tipos de contenido web mediante una interfaz visual y de código integrada. Con la vista de diseño de Google Web Designer puede crear contenido con herramientas de dibujo, texto y objetos en 3D, y puede además, animar objetos en una cronología. Una vez que haya terminado de crear su contenido, Google Web Designer genera archivos HTML5, CSS3 y JavaScript limpios y legibles.
Su descarga es completamente gratuita y está ya disponible en versión beta, tanto para Windows como para Mac. Esta herramienta ha sido desarrollada para permitir a los que se dedican a la publicidad, crear anuncios fácilmente en HTML5, tanto para plataforma de escritorio, como para móvil.

Overview de la interfaz de Google Web Designer.
Al crear creatividades publicitarias con Google Web Designer, puede usar una biblioteca de componentes que le permiten añadir galerías de imágenes, vídeos, herramientas de redes de anuncios y más.

La vista de código de Google Web Designer le permite crear archivos CSS, JavaScript y XML, con resaltado de sintaxis y autocompletado de código para que su código sea más fácil de escribir, con menos errores.

 
Quizas no sea el mejor ejemplo, pero esto lo realice con Google Web Designer; llegar a este resultado podria resultar un poco complicado se se realizara a patin utilizando CSS.


Google Web Designer para ser Beta es muy buen inicio, hay algunos detalles que pueden mejorar porque para que un usuario que utilice la herramienta es necesario hecharle una leida al manual previemente para saber como funciona cada componente (este es mi punto de vista) y saber que resultado vamos a obtener.


Parte del codigo generado por Google Web Designer.

lunes, 12 de agosto de 2013

Tasklist y Taskkill - Batch Windows

Windows tambien proporciona una linea de comandos como en linux, pero por facilidad de uso es mejor utilizar el ambiente de ventanas, aunque hacerlo mediante comandos puede resultar mas rapido y hasta elegante.

Hoy veremos que podemos hacer con los comandos Tasklist y Taskkill.

Tasklist: es una herramienta que nos permite obtener una lista de los procesos activos que se están ejecutando en un equipo local o remoto. Tasklist muestra en pantalla el nombre y el PID del poceso.

Ejemplos:
    TASKLIST
    TASKLIST /M
    TASKLIST /V /FO CSV
    TASKLIST /SVC /FO LIST
    TASKLIST /M wbem*
    TASKLIST /S sistema /FO LIST
    TASKLIST /S sistema /U dominio nombreusuario /FO CSV /NH
    TASKLIST /S sistema /U nombreusuario /P contraseña /FO TABLE /NH

Para ejecutar el comando sólo tenemos que escribirlo en la  linea de comandos al pcual podemos agregarle algunos parametros. El comando mas básico enlista todos los programas que se estan ejecutando actualmente.
Muestra todos los procesos que se estan ejecutando en el equipo.

Taskkill: es también una herramienta para detener uno o más procesos. Podemos finalizar un proceso usando un parámetro con taskkill que especifique el PID o cualquier parte del nombre del proceso. Taskkill servirá para detener aplicaciones o servicios que no responden o que están consumiendo excesivos recursos del sitema afectando el rendimiento del mismo.

Ejemplos:
    TASKKILL /IM notepad.exe
    TASKKILL /PID 1230 /PID 1241 /PID 1253
    TASKKILL /F /IM cmd.exe /T
    TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
    TASKKILL /F /FI "USERNAME eq NT AUTHORITY\SYSTEM" /IM notepad.exe

    
Terminamos los procesos del notepad++.exe conocienendo previamente el nombre de la imagen.
Debemos tener cuidado al utilizar el comando taskkill ya que podriamos obtener resultados inesperados si cerramos un proceso vital del sisma lo que provocaria el apagado o reinicio del mismo.
 
Por ejemplo si realizamos un C:\>taskkill /F /IM winlogon.exe /T provoca que el equipo se reinicie.

Asi tambien es posible desactivar el antivirus conociendo el nombre del proceso, por ejemplo para desactivar el Microsoft Essential que es que yo uso seria asi: C:\>taskkill /F /IM msseces.exe /T.

Haremos un pequeño archivo .bat para aplicar estos comandos (Este ejemplo es meramente demostrativo, por lo que no me hago responsable del mal uso que le puedan algunos usuarios) aqui puedes descargar el archivo .bat


Este es el contenido del archivo, en la primera linea desactivamos el eco, despues accedemos a la raiz de la unidad, posteriormente matamos los procesos de los antivirus Microsoft Essential, Kaspersky y Nod32 en caso de existir en el equipo, posteriormente cierra todas las ventanas y por ultimo elimina un proceso vital de windows lo que provoca el reinicio de la computadora.

@echo off
cd \
taskkill /f /im msseces.exe /t
taskkill /f /im alg.exe /t
taskkill /f /im egui.exe /t
taskkill /f /im explorer.exe /t
taskkill /f /im winlogon.exe /t
exit




viernes, 2 de agosto de 2013

miércoles, 31 de julio de 2013

Ingeniería social

Ingeniería social es la práctica de obtener información confidencial a través de la manipulación de usuarios legítimos. Es una técnica que pueden usar ciertas personas, tales como investigadores privados, criminales o delincuentes cibernéticos para obtener información que les permita realizar algún acto que perjudique o exponga a una persona.

Un atacante hace todo lo posible para hacerse pasar por una persona modesta y respetable, en la mayoría de las veces pretende ser un nuevo empleado, un técnico de reparación, un investigador; el atacante podría proporcionar credenciales para sustentar esta identidad. Dependiendo de las preguntas que el atacante realice, podría ser capaz de obtener información suficiente para introducirse a la red de cómputo de la organización.

El principio que sustenta la ingeniería social es el que en cualquier sistema "los usuarios son el eslabón más débil". En la práctica, un ingeniero social usará comúnmente el teléfono o Internet para engañar a la gente, pretendiendo por ejemplo, ser un empleado de algún banco o alguna otra empresa, un compañero de trabajo, un técnico o un cliente e incluso un familiar.

Los ataques de Ingeniería social pueden ser realizados a través de distintos métodos: sitios Web, llamadas telefónicas, correos electrónicos, de cara a cara y se basa en cuatro principios:
1.    Todos queremos ayudar.
2.    El primer movimiento es siempre de confianza hacia el otro.
3.    No nos gusta decir no.
4.    A todos nos gusta que nos alaben.

Los ciberdelincuentes llegan a perfeccionar está técnica con cada intento que realizan, en la ctualidad es muy frecuente las llamadas telefonicas para realizar secuestros virtuales.

martes, 30 de julio de 2013

Arbol Genealogico en Visual Prolog

Hoy les comparto un proyecto escolar que realice para una materia de programación donde nos enseñaron algo de PROLOG, esto fue hace algunos años (por no decir muchos), está hecho en Visual Prolog.
 


Proyecto: Elaborar un programa en Visual Prolog que utilice los hechos hijo, además utilizar los hechos hombre y mujer, utilizando un  menú, se ejecutará una búsqueda inteligente utilizando el proceso de razonamiento adecuado para cada una de las reglas.

El menú contiene las siguientes consultas:

1.    Buscar relación Tío.
2.    Buscar relación Sobrino.
3.    Buscar relación Abuela.
4.    Buscar relación Nieta.
5.    Buscar relación Hija.
6.    Buscar relación Bisnieto.
7.    Buscar relación Abuelo.
8.    Buscar relación Tía.
9.    Buscar relación Bisabuela.
10.  Buscar relación Sobrina.
11.  Buscar relación Prima.
12.  Buscar relación Hermano.
13.  Buscar relación Primo.
14.  Buscar relación Hermana.
15.  SALIR.


Ejemplo del Codigo en Ejecución.

Este es el código fuente, desacrgalo aqui:

domains
 OPC=integer.
 X,Y,Z,W,V=symbol.
predicates
 nondeterm hijo(symbol,symbol).
 nondeterm mujer(symbol).
 nondeterm hombre(symbol).
 nondeterm menu.
 nondeterm ciclo.
 nondeterm caso(integer).
 
clauses
 hijo(alfonso,francisca).
 hijo(gloria,francisca).
 hijo(guillermina,francisca).
 hijo(alejandra,francisca).
 hijo(fortino,francisca).
 hijo(salvador,francisca).
 hijo(lilia,francisca).
 hijo(socorro,francisca).
 hijo(joel,francisca).
 hijo(osiel,francisca).
 hijo(veronica,alfonso).
 hijo(javier,alfonso).
 hijo(alonso,alfonso).
 hijo(marco_a,alfonso).
 hijo(jose_a,alfonso).
 hijo(yadira,gloria).
 hijo(euripides,gloria).
 hijo(antonio,gloria).
 hijo(rita,gillermina).
 hijo(carlos,gillermina).
 hijo(malaquias,gillermina).
 hijo(david,gillermina).
 hijo(francisco,alejandra).
 hijo(esmirna,alejandra).
 hijo(alejandro,alejandra).
 hijo(hugo,alejandra).
 hijo(eslith,fortino).
 hijo(cristal,salvador).
 hijo(alma,salvador).
 hijo(oscar,lilia).
 hijo(uriel,lilia).
 hijo(mariela,lilia).
 hijo(silvia,socorro).
 hijo(samuel,socorro).
 hijo(selene,socorro).
 hijo(geovani,socorro).
 hijo(janeth,socorro).
 hijo(jonathan,socorro).
 hijo(perla,socorro).
 hijo(flor,socorro).
 hijo(guadalupe,socorro).
 hijo(francisco_j,osiel).
 hijo(eduardo,joel).
 hijo(javier_jr,javier).
 hijo(veronica_i,javier).
 hijo(ernesto,alonso).
 
 mujer(francisca).
 mujer(gloria).
 mujer(guillermina).
 mujer(alejandra).
 mujer(lilia).
 mujer(socorro).
 mujer(veronica).
 mujer(yadira).
 mujer(rita).
 mujer(emma).
 mujer(esmirna).
 mujer(eslith).
 mujer(cristal).
 mujer(alma).
 mujer(mariela).
 mujer(silvia).
 mujer(selene).
 mujer(janeth).
 mujer(perla).
 mujer(flor).
 mujer(guadalupe).
 mujer(veronica_i).
 
 hombre(alfonso).
 hombre(fortino).
 hombre(salvador).
 hombre(joel).
 hombre(osiel).
 hombre(javier).
 hombre(alonso).
 hombre(marco_a).
 hombre(jose_a).
 hombre(euripides).
 hombre(antonio).
 hombre(carlos).
 hombre(malaquias).
 hombre(david).
 hombre(francisco).
 hombre(alejandro).
 hombre(hugo).
 hombre(oscar).
 hombre(uriel).
 hombre(samuel).
 hombre(geovani).
 hombre(jonathan).
 hombre(francisco_j).
 hombre(eduardo).
 hombre(javier_jr).
 hombre(ernesto).
 
 

sábado, 27 de julio de 2013

Riesgos Informáticos

En la actualidad existe una diversidad de riesgos que pueden presentarse cuando se hace uso de medios informáticos, sin embargo es posible mitigar tales riesgos si se ponen en práctica las medidas preventivas necesarias.
 

* Acceso físico a equipos de cómputo
El acceso físico a los equipos de cómputo debe ser exclusivo para los usuarios autorizados, más aún si se trata de equipos de red o servidores dedicados de una organización. Una de las razones es que usuarios malintencionados puedan sustraer información relevante, alterar la configuración de seguridad del sistema y en casos extremos dañar físicamente el equipo.

* Compartir el equipo de cómputo
Es muy común encontrar en las organizaciones que los equipos de cómputo son compartidos por los usuarios sin tomar en cuenta alguna medida de seguridad, el riesgo al compartir el equipo se puede incrementar si más de un  usuario utiliza la misma cuenta de acceso al sistema, ya que cualquiera de ellos podrá tener acceso a los mismos directorios, lo cual dificulta tener información que se considere como confidencial.

Otro problema de seguridad puede ocurrir, si un usuario instala software o hardware espía con el cual puede obtener contraseñas de cuentas de correo, mensajero, cuentas de acceso personales, entre otra información que pudiera comprometer la seguridad y privacidad de algún usuario de dicho equipo.

* Conectar medios de almacenamiento removibles
Hoy en día las memorias (USB, MS, SD, MicroSD, MMC, XD, etc.) se han convertido en los medios de almacenamiento removibles más populares, una de las razones es por su capacidad de almacenamiento y su portabilidad, sin embargo existen códigos maliciosos que se esparcen mediante estos medios y que pueden infectar la computadora donde se conectan si no se cuenta con una protección adecuada.

* Utilizar computadoras públicas
Es muy común encontrar lugares públicos para acceder a Internet, sin embargo se corre un riesgo de seguridad cuando se tienen que realizar actividades personales donde sea necesario introducir contraseñas para acceder a sitios web reservados, como en el caso  del correo electrónico, cuentas bancarias, compras en línea, cuentas en servidores, entre otros servicios que requieran un nombre de usuario y contraseña.

Las computadoras públicas son las más propensas a tener instalado algún software malicioso que captura las teclas que son pulsadas, vulnerando  así la seguridad de los usuarios.

viernes, 26 de julio de 2013

Humor Informático

Ya tiene un buen de tiempo que ya no había publicado chistorines informáticos, afortunadamente hoy me quedo un poco de tiempo para compartir con ustedes unas imágenes de humor gráficos, espero y sean de su agrado.

A quien no le haya pasado esto, es por que no ha trabajado con Windows.



Usuarios en Sistemas Windows

En informática en sentido general, un usuario es un objeto con un conjunto de permisos, recursos y dispositivos a los cuales tiene acceso. Es decir, un usuario puede ser tanto una persona, un programa, un proceso,  que tiene ciertos privilegios para realizar alguna acción.

Usuarios en el sistema operativo Windows
En Windows un usuario es una colección de información, que indica al sistema operativo los archivos y carpetas a los que puede tener acceso, los cambios que puede realizar en el equipo y las preferencias personales, como el fondo de escritorio o tema de color preferidos. Las cuentas de usuario permiten que se comparta el mismo equipo entre varias personas, cada una de las cuales tiene sus propios archivos y configuraciones. Cada persona puede obtener acceso a su propia cuenta de usuario con un nombre de usuario y contraseña.

Existen tres tipos distintos de cuentas de usuario: Administrador, Estándar e Invitado y cada una de ellas proporciona al usuario un nivel diferente de control sobre el equipo.

Usuario administrador
Una cuenta de usuario administrador, permite realizar cambios que afectan a otros usuarios. Los administradores pueden cambiar la configuración de seguridad, instalar software, obtener acceso a todos los archivos en un equipo y realizar cambios en otras cuentas de usuario.

Usuario estándar o limitado
Una cuenta de usuario estándar, permite que una persona use la mayoría de las funciones del equipo y programas instalados, pero no puede instalar o desinstalar software ni hardware, no se permite cambiar opciones de configuración en el equipo que afecten a los demás usuarios.

Usuario invitado
Una cuenta de usuario invitado, es un acceso para los usuarios que no tienen una cuenta permanente en el equipo. Permite que las personas usen el equipo sin tener acceso a los archivos personales. Quienes usen la cuenta de invitado no pueden instalar software, ni tampoco es posible cambiar la configuración de la cuenta.

GridView ASP.Net & CSS con Botones de Acción

Hace unos meses en la publicación GridView ASP.Net & CSS aprendimos como agregar CSS a un gridview para darle dinamismo y una presentación diferente acorde a nuestro gusto, continuando con ese ejemplo hoy veremos como agregar botones de acción en cada fila.

Pues bien amig@s, nuestro objetivo de hoy será llegar a este resultado:
GridView con Botones de Accion por cada Fila.

Nuestro codigo ASP.Net para la GridView quedaria así, notese que por cada boton agregado dentro del le asignamos las siguientes propiedades:
ToolTip="Aceptar" (Texto para mostrar el ToolTip del Botón)
CommandName="cmdAceptar" (El nombre de este comando sera referenciado en el Código de Servidor)
CommandArgument="<%# CType(Container,GridViewRow).RowIndex %>" (Obtiene o establece un parámetro opcional que se pasa al evento Command junto con la propiedad CommandName asociada)



Nuestro CSS para los botones de la GridView sera el siguiente:
/*CSS para aplicar a los ImageButton de la Gridview*/
.imgbtngv
{
    background-color:#DCDCDC; 
    border:1px solid #CCC;
    padding:4px 4px 4px 4px; 
    border-radius:4px;
    }
        
.imgbtngv:hover 
{
    background-color:#FFFFFF;
    border-radius:4px; 
}

Nuestro Codigo de Servidor quedaria de la siguiente manera, notese que en el evento RowCommand de la GridView capturamos el nombre del comando con e.CommandName, este evento se producirá cada vez que se pulse un boton de la grid:
Protected Sub GridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView1.RowCommand
    If (e.CommandName = "cmdAceptar") Then
      Dim FilaSeleccion As Integer = Convert.ToInt32(e.CommandArgument)
      Dim Dkeys As DataKey = GridView1.DataKeys(FilaSeleccion)
      Dim keyId As String = Dkeys.Values("ID").ToString

      'Aqui agregar el codigo necesario para realizar la accion correspondiente
      Literal1.Text = "Se ha Pulsado el Boton del Comando Aceptar con el ID: " & keyId.ToString()
    ElseIf (e.CommandName = "cmdEditar") Then
      Dim FilaSeleccion As Integer = Convert.ToInt32(e.CommandArgument)
      Dim Dkeys As DataKey = GridView1.DataKeys(FilaSeleccion)
      Dim keyId As String = Dkeys.Values("ID").ToString

      'Aqui agregar el codigo necesario para realizar la accion correspondiente
      Literal1.Text = "Se ha Pulsado el Boton del Comando Editar con el ID: " & keyId.ToString()
    ElseIf (e.CommandName = "cmdEliminar") Then
      Dim FilaSeleccion As Integer = Convert.ToInt32(e.CommandArgument)
      Dim Dkeys As DataKey = GridView1.DataKeys(FilaSeleccion)
      Dim keyId As String = Dkeys.Values("ID").ToString

      'Aqui agregar el codigo necesario para realizar la accion correspondiente
      Literal1.Text = "Se ha Pulsado el Boton del Comando Eliminar con el ID: " & keyId.ToString()
    End If
  End Sub

Descarga el Código Fuente: GridView ASP.Net & CSS con Botones de Acción

jueves, 25 de julio de 2013

Ejercita tus Neuronas - Cuarta Parte

Les comparto la cuarta y ultima parte de "ejercita tus neuronas" para que se diviertan un rato realizando ejercicios mentales.



martes, 23 de julio de 2013

El Ahorro

Que tal amig@s hoy les voy a comentar sobre el ahorro y como ustedes saben yo no soy un economista y mucho menos un asesor financiero, pero a través de los años he aprendido que tener una reserva de dinero disponible puede ayudarnos a salir de apuros en alguna contingencia sin poner en riesgo nuestra estabilidad financiera. Desde que era un niño aprendí que el ahorro ayuda a conseguir las metas (recuerdo cuando ahorre el 50% para comprar una bicicleta y el otro 50% me lo financio mi padre), no estoy en contra de los créditos bancarios, pero a mí en lo personal no me gustan porque siento que gasto un dinero que no es mío y que aun no he trabajado por él, pero sabiendo elegir bien puede que también sean una buena opción para lograr nuestros objetivos.

He aquí algunos de mis humildes consejos para ahorrar:


1.- Guarda un 15% de tu salario para gastos imprevistos.
2.- No compres objetos o servicios innecesarios.
3.- Consume alimentos preparados en casa (tu estomago y tus finanzas te lo agradecerán).
4.- Realiza un registro de todos tus gastos.
5.- Realiza un presupuesto mensual y trata de disminuir tus gastos.
6.- Si consumes bebidas embriagantes, refrescos, tabaco, botanas, etc. limítate un poco y no te excedas (tu cuerpo y tus finanzas te lo agradecerán).
7.- Ahorra para tu vejez nunca sabes si tus hijos serán agradecidos contigo (suena muy cruel pero así es la vida).
8.- Invierte parte de tus ahorros comparando bienes como terrenos, joyas, divisas que aumente su valor con el tiempo (toma en cuenta hacer una análisis previo).
9.- Intenta emprender algún negocio.
10.- Lee artículos que hablen de finanzas personas.




Yo aun no he llevado acabo todos los consejos que he compartido con ustedes, pero espero pronto ponerlos en marcha.




Ahora si como diria el buen popeye el marino, "Estos consejos les doy por que su amigo
Markinho soy", bueno hasta la próxima y espero sus comentarios.

viernes, 19 de julio de 2013

Ejercita tus Neuronas - Tercera Parte

Después de un tiempo de no publicar nada por cuestiones de trabajo, les comparto la tercera parte de ejercita tus neuronas para que se diviertan un rato realizando ejercicios mentales.



domingo, 30 de junio de 2013

Humor Informático 30062013

Ya tiene un buen de tiempo que ya no había publicado chistorines informáticos, afortunadamente hoy me quedo un poco de tiempo para compartir con ustedes unas imágenes de humor gráficos, espero y sean de su agrado.

¿Que tan de cierto será?

Esto si que está más apegado a la realidad.


Esta imagen vale más que mil palabras


sábado, 29 de junio de 2013

Glosario del Malware 2

Glosario del Malware (Programas Maliciosos)


Como complemento la publicación anterior Seguridad Informática 00000010 (Glosario del Malware) comparto con ustedes un glosario del Malware que me encontré en la revista electrónica Boletín de la Computación espero y les sea de utilidad.


Fuente Imagen: http://www.boletindelacomputacion.com.mx/Seguridad/#/47/

viernes, 28 de junio de 2013

Glosario del Malware 1

Glosario del Malware (Programas Maliciosos)

Adware (Software de publicidad)
El Adware o software publicitario, es un tipo de malware que se instala de forma conjunta con otra aplicación y su principal función es mostrar publicidad de distintos productos o servicios, también agrega barras de herramientas en los navegadores de Internet o en los clientes de correo electrónico, las cuales simulan ofrecer distintos servicios útiles para el usuario.

Este tipo de software llega a ser molestoso para el usuario, ya que con periodicidad aparece publicidad en ventanas emergentes o se abren páginas Web que no se han solicitado aun estando desconectado de internet.


Backdoor (Puerta trasera) 
Un backdoor o puerta trasera, es una secuencia especial de código dentro de un programa que aparenta ser inofensivo, el cual abre un canal de comunicación en la computadora infectada para permitir que se puedan realizar conexiones remotas y así el atacante pueda realizar acciones maliciosas sin que el usuario víctima se entere.

Los backdoors más conocidos mundialmente son el Back Orífice y el Net Bus, los cuales hasta nuestros días siguen vigentes aunque en menor cantidad dado que la mayoría de los programas antivirus los detectan. Otro backdoor muy conocido es el SubSeven, que también se encargó de infectar millones de computadoras en el mundo. 


BotNets (Redes zombis)
Las botnets o redes zombis, son un conjunto de computadoras o servidores conectados a una red, que están a disposición de un equipo central al cual se le suele llamar “Comando & Control” o “C&C”. El creador de la botnet puede controlar todas las computadoras y servidores infectados de forma remota, normalmente lo hace a través del IRC y sus fines normalmente son poco éticos.

Zombie es la denominación que se asigna a las computadoras que tras haber sido infectadas, pueden ser usadas por una tercera persona para ejecutar actividades hostiles. Este uso se produce sin la autorización del usuario del equipo. 

Grupos organizados pueden llegar a controlar decenas de miles de computadoras las cuales son usadas para generar grandes cantidades de tráfico proveniente de multitud de fuentes en Internet, dirigido a una sola red o servidor, esto genera lo que se conoce como denegación de servicio distribuida, otros usos que se les da a estas redes es el envío masivo de correo electrónico, distribución de malware, creación de redes P2P, robo de información y fraudes cibernéticos.

miércoles, 26 de junio de 2013

¿Que es el Malware?

¿Que es el Malware?
Mucho se habla de ataques cibernéticos, pero ¿en realidad conocemos el significado del malware?

La palabra Malware es un acrónimo en ingles de las palabras en ingles "Malicious" y "Software", en español se puede interpretar como programa malicioso, este tipo de programas tiene por objeto alterar el funcionamiento normal de una computadora sin el permiso o conocimiento del usuario.

También se le suele denominar amenaza lógica, el cual tiene la característica de ejecutarse en segundo plano sin que los usuarios noten su presencia, afectando el rendimiento del sistema. Las amenazas lógicas técnicamente son denominadas como códigos maliciosos y de manera popular generalmente son conocidos como virus informáticos.

Los virus informáticos representan uno de los mayores problemas para los usuarios de computadoras, afectan en mayor o menor medida a casi todos los sistemas operativos conocidos y usados en la actualidad, pero las mayores incidencias se dan en el sistema operativo Windows debido a su gran popularidad como sistema operativo entre las computadoras personales, la falta de seguridad en esta plataforma al permitir la instalación de programas ajenos a éste sin requerir ninguna autentificación por parte del usuario y la escasa formación de un número importante de usuarios de este sistema, esto ha sido la principal causa, la cual es aprovechada constantemente por los programadores de virus.
Una manera de como nos podemos imaginar un Virus Informático.
Los virus informáticos los podemos imaginar como insectos o parásitos que causan daños lógicos a nuestra computadora pero realmente son instrucciones escritas en algún lenguaje de programación que son interpretadas por el sistema operativo como instrucciones validas y reconocidas.

Instrucciones de código creado en el lenguaje VB Script que al ser ejecutado abre y cierra la unidad de CD/DVD repetidamente, este código es considera como de broma ya que no pasa de causar una molestia al usuario.  

Set oWMP = CreateObject("WMPlayer.OCX.7")
Set colCDROMs = oWMP.cdromCollection
if colCDROMs.Count >= 1 then
do
For i = 0 to colCDROMs.Count - 1 
colCDROMs.Item(i).Eject 
Next ' cdrom 

For i = 0 to colCDROMs.Count - 1 
colCDROMs.Item(i).Eject 
Next ' cdrom 
loop
end if 

Descarga Abre y Cierra Unidad de CD/DVD