Pues he visto que muchas personas cuando les pides su memoria USB y la conectas a tu laptop, te das la sorpresa que esta (memoria) esta infectada y si uno no esta bien protegido… bueno ya imagínate las consecuencias.

También existe el caso de las maquinas que están infectadas por virus, cosa que tus amigos necesitan tu ayuda para acabar con este mal.

Lo cual vi necesario poner este post, colocar algunos remedios/scripts/ejecutables o formas de eliminarlos, y así evitar tales inconvenientes.

Amvo y variantes (USB): Es un que se propaga vía unidades de memorias USB. La mayoría de los antivirus no lo detectaban y si lo detectaban, no lo podían eliminar correctamente.

Descargar

Información: http://www.mygeekside.com/?p=14

Conficker: También conocido como Downup Devian, Downandup y Kido, es un gusano informático. Explota una vulnerabilidad en el servicio Windows Server usado por Windows 2000, Windows XP, Windows Vista, Windows Server 2003, Windows Server 2008, y el beta de Windows.

Descargar

Información: http://www.microsoft.com/security/worms/conficker.aspx

Sasser: Se trata de un gusano de redes, programado en Visual C++, que se propaga explotando la vulnerabilidad en el proceso LSASS (Local Security Authority Subsystem)

Descargar

Información: http://www.vsantivirus.com/sasser-a.htm

Espero les sirva

Saludos

Will.i.am

Este es uno de mis cortos favoritos, no es de un cantante famoso ni nada por el estilo. Este corto hace referencia a la gente que programa día a día... la meta Silicon Valley :D

Usado en el documental “The Code Linux”

Feeling like the King of America
Southbound Vertigo Parkway
The weather´s quite unlike the Antarctica
You´re never alone in Silicon Valley, U.S.A.

Seems I was the chosen prodigy
Writing code like sonnets by Shakespeare
Some sort of alchemy
They couldn´t even get near
The meek didn´t inherit the earth

The geeks defined the worth
“Go public, sell the shares, as soon as you can,
get out and go on, to the next thing, retire young”
Could have been the King of America
The weather´s quite unlike the Antarctica
Southbound Vertigo Parkway




Letra completa: aquí

Hola, hoy vamos hablar de los estándares de programación ya que es de vital importancia en una empresa que se dedique a la creación/desarrollo de programas/aplicaciones.
 
Un estándar de programación es:
  • Una forma de "normalizar" la programación de forma tal que al trabajar en un proyecto, cualquier persona involucrada en el mismo tenga acceso y comprenda el código.
Y nos permite:
  • Definir la escritura y organización del código fuente de un programa.
  • Facilita a un programador la modificación de tu propio código fuente aunque no estés trabajando en el equipo.
  • Definir la forma en que deben ser declaradas las variables, las clases, los comentarios
  • Especificar que datos deben incluirse acerca del programador y de los cambios realizados al código fuente, etc.
Por ejemplo utilizar una determinada nomenclatura para la declaración de variables o de clases dependiendo de su tipo es de gran ayuda porque al leer el nombre de la variable ya sabes con qué tipo de datos estas trabajando y no tienes que buscar la declaración de la variable, todo esto dependiendo siempre del entorno y lenguaje de programación que utilices.

Hay que tener en cuenta que la entrega de una aplicación a tiempo (en fecha) pero con un pésimo desarrollo de código no es un buen trabajo.

Pongámoslo así: supongamos que nos vamos a una librería y deseamos comprar un recetario de cocina, pero estamos algo apurados así que le decimos al empleado del lugar que nos traiga lo más pronto posible (en 5 min.). Luego de un rato llega el empleado nos muestra un libro, vistoso y amigable a simple vista así que confiamos así que lo compramos y nos llevamos a casa.

Al llegar… ¡Oh sorpresa! Notamos que el recetario es confuso, no da detalles de los pasos, no explica para que sirve tal ingrediente, con este no podemos diferenciar que es lo primero y que es lo segundo, es decir un enredo total. Con ello uno que puede pensar:
  • Ya no iré nunca a esa librería
  • No confiare de lo que digan los expertos
Ahora asociemos:
  • Librería = empresa
  • Recetario = aplicación
  • Ingredientes = algún modulo o componente
Por ello es muy, pero muy importante el tener un ORDEN, una FORMA, un ESTILO ya definido, ya que a largo o mediano plazo, tendrás unos inconvenientes tan grandes que no se te será suficiente una amanecida para buscar el problema y/o resolverlo.

Si no atacamos esto, como empresa, quedaría mal ante un cliente y así se va su credibilidad.

Para la creación de este ejemplo me base al ese ejemplito que dice Richard Stallman en un documental “Código Linux”, como me encanta esa asociación que da. :D

Otro ejemplo, veamos unos grafico:

¿Prefieres esto?

¿O esto?
Tú decides…
Ejemplos:

http://proyectos.masterlex.com/Proyectos/PortalMaster/portales/Capacitaciones%20Masterlex/documentos/ING-01-MLX%20%20Estandares%20de%20Programacion.doc
Y muchas más ...
Will.i.am

Este es uno de mis juegos favoritos, lo encontré en la gran página Kongregate. Por si acaso hay una primera versión, pero esta es la que mas me llama la atención.



Deseas jugarlo? Dale clic aqui.
Nota: Si deseas descargarlo haz clic derecho y selecciona la opción "Guardar como..."

El día 9 de junio se lanzó el sitio Web oficial del concurso Explora y Gana con Internet Explorer 8 en http://www.microsoft.com/peru/concursomundialie8/.

Este concurso es posible ganar televisores monitores LCD de 21 y 22 pulgadas, televisores de 3.5 pulgadas, pelotas y camisetas oficiales del mundial.

Para participar del sorteo hay que encontrar las palabras que forman la frase secreta; y para encontrar las palabras se recibirán pistas a través del Webslice del concurso (que se instala desde la página Web oficial). Las pistas aparecerán del 9 de junio al 2 de julio, el registro de las frases será del 5 al 9 de julio y el sorteo el día 16 de julio en las oficinas de Microsoft Perú.
 

Hola que tal ... bueno este es el primer juego que recomiendo para mi nuevo espacio de juegos flash. "Web... a lo grande". En este caso presento un jueguito muy pegajoso "Infectonator World Dominator".

Disfrutenlo!

¿Te lo quieres llevar a tu casa? Descargalo aquí

En esta oportunidad les dejo la tercera y ultima entrega de esta serie de post acerca de Windows Communication Foundation. En esta encontraran los siguientes temas:
  • Operaciones
  • Gestión de Instancias
  • Transacciones
  • Veamos punto por punto:
Operaciones en WCF
 
Una operación de servicio es un procedimiento definido en el código de un servicio que implementa la funcionalidad de una operación.
 
Los mensajes son la base de la comunicación de una solución distribuida. Los mensajes son intercambiados de diversas formas Existen 3 modos de comunicación entre el cliente y el servicio, estos son:
  • Simplex: mensajes de una sola vía donde no se espera respuesta alguna.
  • Request Replay: mensajes de dos vías de modo síncrono, es decir se envía el mensaje y se aguarda por la respuestas
  • Dúplex: mensajes de dos vías de modo asíncrono.
Gestión por Instancias
 
Se refiere a la manera que un servicio se encarga una solicitud de un cliente. Las cuales se presentan 3 formas:
  • Per-Call: la instancia de servicio se creará para cada solicitud de cliente, es decir, se crea una instancia del servicio cada vez que el cliente invoca una operación y esta se destruye cuando se completa la operación.
  • Per-Session: se basa en el período de sesiones lógicas entre el cliente y el servicio se mantendrá, es decir, se crea una instancia nueva cuando una aplicación cliente invoca por primera vez a una operación del servidor y permanece activa hasta que el cliente cierra la conexión, permaneciendo activa hasta entonces para atender otras peticiones del mismo cliente. Al período desde que se crea hasta que se destruye la instancia es a lo que se llama sesión.
  • Singleton: todos los clientes están conectados de forma independiente a la misma instancia única, es decir, se crea una instancia la primera vez que el cliente invoca una operación del servidor y permanece viva para atender todas las peticiones del mismo cliente y lo que es más importante, también todas las peticiones de otros clientes que se conecten al mismo servicio. La instancia se destruye cuando la aplicación que hace de host se detiene.
Transacciones
 
Permite a las aplicaciones cliente crear transacciones y propagarlas más allá de los límites del servicio
 
Las propiedades que presenta son:
  • Atómico
  • Consistente
  • Aislado
  • Duradero
La programación transaccional requiere trabajar con un recurso que es capaz de participar en una transacción, y ser capaz de confirmar o deshacer los cambios realizados durante la operación
 
Presentación

Demos:
 
Además comentar que este material se trabajo en conjunto con Roberto “Humanidad” Camacho (@_SamuraIT).
 

Fuentes:
 

Aquí les dejo la siguiente parte sobre WCF (Windows Communication Foundation), este contiene la siguiente agenda:
  • Endpoint
  • Binding
  • Contract
  • Hosting
  • Mensajes
  • Intercambio de Metadatos (Metadata Exchange)
Para entenderlos… revisemos el concepto de cada uno de ellos:

Un extremo es un medio de comunicación, es el nexo de la transmisión de mensajes. Recordemos que un servicio es un programa que expone sus capacidades a través de una colección de endpoints y su descripción. Entonces es un conjunto de endpoints (extremos) que proveen capacidades usables a los clientes.

Un extremo consta de 3 partes: el famoso ABC (Address, Binding y Contract). El programador o desarrollador puede personalizar el tipo de comunicación, la seguridad de la comunicación, la codificación, etc.

La dirección (address) es la dirección de red del endpoint. Esta define:
  • El protocolo de transporte que se va a utilizar
  • El nombre de la máquina donde el servicio está ejecutándose (propiedades)
  • La ruta en dicha máquina que identifica al servicio
El enlace (binding) define el canal y los parámetros que se usaran en la transmisión de datos, entre sus características más importantes tenemos la mensajería confiable, seguridad y la selección de transporte de los datos. Es decir, este define:
  • Los elementos de protocolo, definen la seguridad, contexto, sesiones y transacciones
  • Los elementos de transporte, definen la capa de transporte a utilizar
  • Los elementos de mensajería, definen como se codifica la información transmitida en la capa de trasporte (binario por ejemplo)
El contrato (contract) es una colección de operaciones, especifica lo que el endpoint puede comunicar al entorno. Los tipos de contratos que podemos especificar son:
  • Service Contract: es una interfaz que implementa un servicio (Se publica utilizando WSDL, esto lo veremos cuando postee un ejemplo). El Operation Contract son los métodos que forman parte de la interfaz, y que podrán ser accedidos por los clientes del servicio
  • Data Contract: define las clases y estructuras complejas que puede retornar o recibir un servicio. Es implícito si el tipo de dato es serializable, es decir el tipo de dato se puede pasar directamente sin declararlo en el contrato. El Member Contract son los atributos o propiedades del objeto que forma parte de un data contract y podrán ser serializados
  • Message Contract: especifica la estructura, cabecera y cuerpo, del mensaje SOAP. (Message Header y MessageBody). Nos permite definir si un atributo de una clase va viaja en la cabecera o en el cuerpo de un mensaje.
Bueno edito el post para comentar que sin el apoyo de mi amigo @_samuraIT no se hubiera podido terminar estos post sobre WCF; se trabajo en conjunto en la creación, edición y revisión de estos.
 
Si desean saber más de él, los invito a visitar su blog y la página de la empresa que esta construyendo junto a mis otros amigos @Jersson y @jopoa1987.
 
En la presentación ven que hay demos las cuales son:

Demo 1
Demo 2

Demo 3
Presentación:
Fuentes:

1 jun. 2010

El Programador Geek

Siempre me preguntaba a que se le define un programador Geek, mira tu ya encontrè la respuesta:

Hola! en esta ocasión voy a tratar el tema de Windows Communication Foundation. Esta es una de mis tecnologías de programación favoritas ya que es de gran utilidad hoy en día, además te proporciona tantas oportunidades, en especial las oportunidades laborales ya que esta de “moda”. Esta relación de post estará enfocada a personas que deseen conocer el WCF.

Primero un pequeña introducción ...

La aceptación global de servicios Web que incluye los protocolos estándar para la comunicación de aplicación a aplicación, ha cambiado el desarrollo de software. Por ejemplo, las funciones que proporcionan los servicios Web ahora incluyen seguridad, coordinación de transacciones distribuidas y una comunicación fiable. Las ventajas de los cambios en servicios Web se deberían reflejar en las herramientas y tecnologías que los programadores utilizan. Windows Communication Foundation (WCF) está diseñado para ofrecer un enfoque manejable a la informática distribuida, interoperabilidad ancha y asistencia directa para la orientación sobre el servicio.

WCF simplifica el desarrollo de aplicaciones conectadas a través de un nuevo modelo de programación orientado a servicios. WCF admite muchos estilos de desarrollo de aplicaciones distribuidas proporcionando una arquitectura superpuesta. En su base, la arquitectura de canal de WCF proporciona primitivos asíncronos de paso de aprobación de mensajes sin tipo. Generados sobre esta base están las funciones de protocolos para un intercambio de datos de transacción seguro y fiable, así como una amplia variedad de opciones de codificación y transporte.

El modelo de programación tipificada (llamado modelo de servicio) está diseñado para facilitar el desarrollo de aplicaciones distribuidas y proporcionar a los desarrolladores pericia en servicios Web ASP.NET, comunicación remota .NET Framework y Enterprise Services, así como a aquellos que llegan a WCF con cierta experiencia en desarrollo. El modelo de servicio presenta una asignación sencilla de conceptos de servicios Web para aquellos de Common Language Runtime (CLR) .NET Framework, incluyendo la asignación ampliable y flexible de mensajes para la implementación de servicios en lenguajes como Visual C# o Visual Basic.

[Este fue sustraído de MSDN - WCF]

Vamos a entender esta roca … y agregar algunas cosas más

WCF también es conocido también como “Índigo”; es el modelo de programación unificado para la creación de aplicaciones orientadas a servicios (creación y/o desarrollo de aplicaciones distribuidas y la reutilización de estas), nos brinda una gama de librerías que nos permite publicar nuestras aplicaciones/servicios a la web. Se puede considerar que tiene la misma lógica que un servicio Web.

Debemos tener en mente que WCF es una serie o es un conjunto de tecnologías Microsoft para “Sistemas Conectados”, por ello vemos capacidades que antes podíamos ver en otras tecnologías. Su objetivo es simplificar el desarrollo de aplicaciones.

Nos ayuda a crear y definir qué es lo que debe hacer un servicio, que técnica de comunicación emplear y como se llevara a cabo. Además nos ayuda a desarrollar de manera horizontal la solución de comunicaciones.

WCF permite describir, publicar, implementar y consumir servicios, no solo con la interoperabilidad de los Web Services entre plataformas servidor y cliente, sino también utilizando diferentes plataformas de transporte de forma transparente al resto de la arquitectura.

Nos permite utilizar diversas formas de comunicación (transporte, formato y mensaje).

WCF usa los protocolos estándares de la industria que permiten a este interoperar con cualquier plataforma que soporte estos protocolos

WCF apareció en el Framework.Net 2.0 y poco a poco tiene más importancia dentro de este. Cada versión de Framework que sale o se publica, siempre sale con novedades en el ámbito WCF.

WCF está comprendida de 4 capas: Contratos, Tiempo de ejecución de servicios, Mensajería y Activación/Alojamiento.

Presentación



Fuentes:
http://msdn.microsoft.com/es-es/netframework/aa663324.aspx
http://msdn.microsoft.com/es-es/library/bb332338.aspx
http://es.wikipedia.org/wiki/Windows_Communication_Foundation

Durante esta semana estaré publicando las demás partes y cada una de estas tendran 1 o 2 ejemplos.
 
Saludos
 
William