BuiltWith – Información sobre una web

BuiltWith es un servicio que nos da la posibilidad de obtener información sobre qué herramientas se han utilizado para la construcción de algún sitio web en particular que siempre nos interesó saber.

Gracias a BuiltWith podremos saber desde el servidor, los widgets que posee, la plataforma que utiliza (si se trata de un blog), el sistema de estadísticas, entre otras cosas, simplemente sabiendo la url.

http://www.builtwith.com

 

Hollywood Secrets of Project Management Success: a review of a sort

A continuación voy a comentar un artículo muy interesante que aparece en http://navigateintosuccess.com/ escrito por Vjekoslav Babic en Abril del 2009 en el que compara la gestión de un proyecto de Hollywood con un proyecto de desarrollo de software, al final del artículo está el link original.
 
Tome ese proyecto que está ejecutando actualmente, e imaginar, sólo por un segundo, que llegó con sólo el 3% rebasamiento del presupuesto. La mayoría de las personas en la industria del software se llama gran éxito.

En la industria cinematográfica, sin embargo, una desviación  miserable 2% o 3% respecto al presupuesto inicial sería considerado un fracaso.

Mientras que la industria cinematográfica y la industria de software se encuentran a años luz de distancia, aparentemente, hay muchas cosas que estos dos tienen en común, y hay cosas que, obviamente,  podemos aprender de ellos.

James R. Persse en sus secretos de Hollywood de Gestión de Proyectos de éxito hace exactamente eso: se analiza la gestión de los proyectos las mejores prácticas que se practica en Hollywood, y traza paralelismos con el software y la industria de TI.

¿No es interesante pensar en un proyecto de producción de película y un proyecto de TI, y luego tomar por sentado que un proyecto de TI puede grabar fácilmente los fondos de un 25% más de lo inicialmente asignado, mientras que las películas siempre vienen casi exactamente en el presupuesto? ¿Qué hace Hollywood sobre la gestión de proyectos que nosotros no?

En primer lugar, James Hollywood Persse explica por qué es relevante. Podría haber elegido fácilmente edificio o construcción de carreteras, o la construcción naval, que bastante a menudo entregar el ámbito en el momento y las limitaciones presupuestarias, pero él escogió las películas. Se han encontrado 8 importantes similitudes entre las películas y de TI:

 
1 .Ambos trabajan en el desarrollo de productos intangibles.

2. Ambos se forman para dirigirse directamente a una fecha límite-necesidad de la empresa orientada.

3. Ambos requieren inversiones significativas.

4. Ambos se construyen contra una especificación abierta al cambio.

5. Ambos deben basarse en los protocolos de producción especializados y tecnologías.

6. Ambos requieren la integración y la colaboración de equipos especializados.

7 .Ambos requieren un cuidadoso análisis, diseño, ejecución, y la integración.

8. Ambos debe ser cuidadosamente entregados a sus destinatarios.

Después de establecer la pertinencia de Hollywood las mejores prácticas de TI, Persse se traslada a Hollywood, para analizar cómo se las arregla para entregar constantemente el ámbito en el tiempo y presupuesto, y explica el sistema de producción de Hollywood, que es una especie de metodología del proyecto y un conjunto de mejores prácticas para la producción de películas . No es de extrañar que destila hasta una simple marco de cinco fases: desarrollo, preproducción, producción, post-producción y distribución.

Cuando se asigna a PMBOK, el desarrollo corresponde aproximadamente al inicio del proyecto, con la pre-producción en su mayoría tienen que ver con la planificación del proyecto. Otros tres fases podría ser asignada a la ejecución del proyecto y el seguimiento. (Persse dice que los mapas de distribución para el cierre, pero en mi humilde opinión no lo hace, o sólo en parte lo hace.)

Este sistema, de acuerdo con Persse, es la manera de Hollywood todo es cine. Si lo haces de esa manera, tener éxito, si no lo hace, usted es un juego de probabilidades.

El libro está estructurado en torno a este sistema que ha trabajado para Hollywood mucho tiempo  y analiza cómo el ciclo del proyecto pasa por estas cinco fases.

En las tres primeras fases, la mayoría gira en torno a la secuencia de comandos, el equivalente de Hollywood de la documentación exigida, y aunque Persse descubierto que la secuencia de comandos también cambia, tiende a ser más de una escritura en  los requisitos están en él. Para Hollywood, es mucho más fácil establecer los requisitos Big Up Front (el BRUF notorio en las metodologías ágiles) de lo que está en él. Hollywood puede hacer BRUF, por lo que lo hacen. La TI en su mayoría no puede.

Dentro de este sistema se esconde la mayor diferencia entre la TI y Hollywood: industria del cine existe desde hace más de cien años que ya tuvieron tiempo suficiente para desarrollar y establecer las mejores prácticas y demostrar en la práctica a tal grado como para decir a todos: esto es la forma en que usted necesita hacer películas, y todo el mundo pueden confiar en que esto funciona, porque ha trabajado para toda la industria por décadas. Industria de TI es muy joven, y existe desde hace varias décadas. Todavía estamos aprendiendo.

En mi opinión, un gran problema con esto es que queremos ser inteligentes, de preferencia más inteligente que cualquier otro. Nos gusta mejorar las cosas, incluso antes de saber si la mejora es realmente necesario. Inventamos métodos antes de que sepamos por qué los métodos existentes éxito o fracaso. Es por eso que tenemos muchos sistemas y métodos, que todo el trabajo, y ninguno lo hace. Las cosas poco a poco van clasificando, hay más reconocimiento y adopción de metodologías probadas oficial de hoy en IT de la que había hace diez años. Pero todavía tenemos que recorrer un largo camino para llegar a donde Hollywood ya está.

No tiene nada que ver con la complejidad, la diversidad o el rápido desarrollo de la tecnología informática. Industria del cine ha sido a través de todo esto, también tienen que hacer frente a las nuevas tecnologías, nuevos equipos, nuevos logros, y lo hacen, pero no tocan el sistema.

Para mí, esta es la lección más importante aprendida de Hollywood: tomar un método probado, y lo siguen, no se cuestionan. Entonces aprender. Luego de mejorar.

Con todo, este es un libro interesante. Es más bien un teaser de la mente de un manual de metodología. Si te acercas de esa manera, usted disfrutará de más. Pero no esperes que te voy a enseñar algunas técnicas que puedes emplear arcanos de inmediato a entregar su próximo proyecto al 1% de varianza de costes y 700% de ROI dentro de 6 meses. No se, sino que te enseñará sin embargo, lo importante que es seguir el sistema que funciona.

 

http://navigateintosuccess.com/blog/hollywood-secrets-of-project-management-success-a-review-of-a-sort

ParameterizedThreadStart

Desde el Framework 2.0 podemos pasar un objeto cómo parametro a un hilo, pongo un pequeño ejemplo para que se entienda mejor:
class Program2
{
    static void Main(string[] args)
    {
        Console.WriteLine("Comienzo el programa principal....");
        ParameterizedThreadStart ts = new ParameterizedThreadStart(MetodoConParametro);

        Thread t = new Thread(ts);
        Console.WriteLine("start del hilo");
        t.Start("Envio mi parametro...");
        t.Join();
        Console.WriteLine("Finalizo mi programa principal.");
        Console.ReadLine();
    }

    static void MetodoConParametro(object mensaje)
    {
        Console.WriteLine("a continuación muestro el mensaje, hago un cast para convertir el objeto a string");
        Console.WriteLine((string)mensaje);
        Thread.Sleep(1000);
        Console.WriteLine("Finalizo el método.");
    }
}

Estados de los Threads en c#

Últimamente estoy trabajando bastante con threads en c#, uno de los puntos más importantes es tener claro los diferentes estados en los que puede estar un Thread, los enumero a continuación:
  • Running: En este estado el thread está corriendo y no hay pendiente ningún ThreadAbortException.
  • StopRequested: Se ha ejecutado una petición de Stop. Se usa internamente.
  • SuspendRequested: Se ha ejecutado una petición de suspensión.
  • Background: Permite ejecutar un Thread en segundo plano mientras el thread principal sigue funcionando
  • Unstarted: No se ha invocado el método Start
  • Stopped: Se ha detenido explicitamente el thread
  • WaitSleepJoin: El thread está bloqueado:  Ha llamado al método Sleep,
  • Suspended: El thread esta suspendido.
  • AbortRequested: Se ha realizado la petición de anular.
  • Aborted: El thread está anulado