Mostrando entradas con la etiqueta Tutorial. Mostrar todas las entradas
Mostrando entradas con la etiqueta Tutorial. Mostrar todas las entradas

martes, 16 de agosto de 2011

Microsoft Project

Una tecnología Mocrosoft tenia que salir
Como me cortaron el internet decidí aprovechar y hacer el tutorial de MS Project. Project se utiliza mucho para dar seguimiento a los proyectos, no solo de desarrollo, de hecho cuando conocí Project no tenía nada que ver con desarrollo y nunca pensé que se utilizara en mi carrera.
Bueno para ir al grano Project se utiliza para crear estimados de proyectos y llevar su seguimiento además de otras muchas funcionalidades como crear estadísticas, asignar recursos, calcular costos y más.
Aquí les dejo un FAIL de un compañero al que le encargaron realizar una planeación para su proyecto. Descargar para Project 2010 [Recuerda que Project no viene con la paquetería de Office por default tienes que instalar el software individualmente].

Como pueden ver en el documento solo pone una lista claramente de lo que sabía que tenía que hacer. El punto aquí es que Project también sirve para asignar tiempo a cada tarea y una fecha de inicio y algunas restricciones como no iniciar antes de tal fecha, o no terminar antes de iniciar tal tarea, etc. Así que me di a la tarea de organizar un poco el documento, [descargar aquí] obviamente este documento nunca se usó [cualquier parecido con la realidad es pura coincidencia], solo es para ejemplificar como debería quedar el proyecto; digamos, un antes y después.
Les aconsejo que según se va avanzando en el proyecto, mientras se aproxime el tiempo en el que se realicen las tareas que van a iniciar se especifique cada una; se deben definir las sub-tareas de las mismas, asignarles tiempos a las sub-tareas y replantear los tiempos de las tareas generales generando Líneas Base. Si toca el tiempo de empezar otra fase deberían dedicar un tiempo para especificar esas sub-tareas.
Entre más especifica sea una estimación personalmente creo que será mas acertada. No se olviden de planear riesgos y recuerden cuando oigan la frase: "que podemos hacer para mitigar el retraso que lleva el proyecto?" = "cuanto tiempo extra vas a invertir?"
Aca les dejo los videos con el tutorial en Youtube le ha ido bien en youtube, espero que a ustedes también les sirva.
Una gran disculpa por los clics, nimodo que volviera a hacer todo el tuto, ya que...
Cualquier duda o comentario, no duden en expresarlo, pronto los estaré visitando, Saludos.

miércoles, 6 de julio de 2011

Tips JavaScript

El Verdadero Javascript
autocargado

Quiero darles unos tips muy comunes que me parece que volveré a utilizar sobre JavaScript y podrían serles útiles a ustedes también. Para los que no tienen mucha relación con este lenguaje [deberían =P], no es Java sino que está basado [o inspirado en] Java, por así decirlo, pero en realidad es un lenguaje web de lado de cliente y al ser Script no es tan estructurado como Java [todo esto en mis palabras y opinión].

  • 1) JQuery
Para los que no saben que es JQuery es LA librería JS [JavaScript] con ésta puedes realizar múltiples efectos y manipulaciones de elementos HTML y varias cosas interesantes.
Dejo el siguiente bloque de código con el cuál importarás a tu sitio la última versión de JQuery

<!--JQUERY-->
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>

Para darte un ejemplo, con esta librería le di el efecto de ocultar/Mostrar a las entradas de la página de bienvenida

  • 2) Imagenes redimensionables
Hace poco estuve trabajando con una imagen de fondo y me dio muchos problemas, lo que intentaba hacer era que la imagen de fondo de mi página no cambiara de ninguna forma si el usuario cambiaba la resolución [Ctrl+Rodillo es la más sencilla] la primera y más fácil solución fue la siguiente:

body2{
 background-image:url("/URL/miFondo.jpg");
 background-repeat:no-repeat;
 background-position:center center;
 background-attachment:fixed;
 -o-background-size: 100% 100%, auto;
 -moz-background-size: 100% 100%, auto;
 -webkit-background-size: 100% 100%, auto;
 background-size: 100% 100%, auto; 
}

La verdad no hay mucha información sobre esto en internet [¬¬ Google? u.u] y en parte por eso lo publico. El problema con esta solución tan simple es que funciona en todos los exploradores menos en uno, adivinen cuál? así que tuve que seguir buscando una solución para la versión 8 de IE [Probablemente esto si funcione para la 9], y me encontré con lo siguiente.

.imgFull{
 
 background-repeat:no-repeat;
 background-position:center center;
 -o-background-size: 100% 100%, auto;
 -moz-background-size: 100% 100%, auto;
 -webkit-background-size: 100% 100%, auto;
 background-size: 100% 100%, auto;
 
 min-width:100%;
 min-height:100%;
 
 width: 100%;
 height: 100%;
 position: absolute;
  left: 0%;
  top: 0%;
 
}

Como se darán cuenta esto no tiene Fondo, así que por fuerza se tendría que ser un <img> el elemento y toda esta implementación forzaría a que el resto de la información se manejara con posiciones absolutas me parece, así que no encontré una solución óptima para este problema, la ventaja fue que solo incluí 2 paneles y el otro simplemente lo puse de la siguiente forma, la cual lo deja perpetuamente centrado:

.imgCentrada{
 
 /*background: url("/URL/centrada.png");*/
 background-repeat:no-repeat;
 background-position:center center;
 -o-background-size: 100% 100%, auto;
 -moz-background-size: 100% 100%, auto;
 -webkit-background-size: 100% 100%, auto;
 background-size: 100% 100%, auto;
 
 min-width:50%;
 min-height:75%;
 
 width: 53.5%;
 height: 80%;
 position: absolute;
  left: 22.75%;
  top: 7.5%;    
}

  • 3) Input Transparente
Quizás este tip no sea tan útil, pero igual lo pongo es una forma muy sencilla de desaparecer un input y aún así el usuario pueda escribir en él, sé que no hay muchos casos en los que sea necesario ya que hay campos password etc. pero igual lo dejo en CSS:

.transparente{
    font-size: 1em; 
    color: transparent; /* Fix for FF */ 
    border-style: none; 
    border-width: 0; 
    padding: 0 0 0 16px !important; /* Fix for IE */ 
    text-align: left; 
    width: 0px; 
    height: 0px; 
    line-height: 0 !important; 
    /*background: transparent url(images/button.gif) no-repeat scroll 0 0;*/ 
    overflow: hidden; 
    cursor: pointer; 
}

  • 4) Google Code Prettify
Si en alguna ocasión necesitan hacer esto de pintar el código en web y poner las líneas de código etc. Google tiene una librería que lo hace y es muy simple descargas de acá la librería e implementarlo de la siguiente manera:

<!--SCRIPTS PARA CODE BEUTIFER DE GOOGLE-->
<link href="http://javahelp.redsaltillo.net/css/prettify.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="google-code-prettify/src/prettify.js"></script>

<pre class="prettyprint linenums">
    Public class MiClasePrincipal extends Asterisk {}
    Public class MiEstado extends Estado {}
    
</pre>

Obviamente puedes modificar el css que trae la librería para que se adecue a tus necesidades [De cualquier manera allí viene el manual].
Acá pongo a tu disposición un demo y la librería.
Una cosa que puedes hacer es unir esto con JQuery de la siguiente manera, así no tendrías que estar poniendo la clase a cada bloque de 'pre':

<!--SCRIPTS PARA CODE BEUTIFER DE GOOGLE-->
<link href="http://javahelp.redsaltillo.net/css/prettify.css" type="text/css" rel="stylesheet" />

<script type="text/javascript">
$(document).ready(function() {

    // agrega clase prettyprint a todos los bloques // (tambien podemos agregar <code>)
    var prettify = false;
    $("pre").each(function() {
        $(this).addClass('prettyprint linenums');
        prettify = true;
    });

    // si se encontro bloques de código se llama la función prettyPrint
    if ( prettify ) {
        $.getScript("google-code-prettify/src/prettify.js", function() { prettyPrint() });
    }
});
</script>

  • 5) Acentos en JavaScript
Hay veces que tenemos que hacer un document.write() desde JS pero a la hora de sacar acentos se chisquea, acá los códigos de los caracteres.

\u00e1 -> á
\u00e9 -> é
\u00ed -> í
\u00f3 -> ó
\u00fa -> ú

\u00c1 -> Á
\u00c9 -> É
\u00cd -> Í
\u00d3 -> Ó
\u00da -> Ú

\u00f1 -> ñ
\u00d1 -> Ñ

sábado, 18 de junio de 2011

NetBeans Look And Feel - JUnit Practico - Librería ListMap

Bien pues aquí les dejo un video-tutorial con material sobre 3 puntos.
Espero no les parezca demasiado molesto que haya aprovechado el video para tratar estos 3 puntos de golpe.

1) NetBeans Look And Feel.

Esto de Look and Feel para los que no saben es a grandes rasgos un "como se ve" una aplicación hablando de la Interfaz Gráfica de Usuario (GUI). En Java puedes aplicar un lookAndFeel distinto al que trae por default el cual es el del Sistema Operativo en el que corre la aplicación pero el cambiar este LAF en tiempo real me resulto bastante difícil en lo personal. Con "tiempo real" me refiero a cuando la aplicación esta ya corriendo y se desea cambiar la forma en como están diseñadas las ventanas etc.


Si te interesa en la sección de Descargas puedes encontrar una librería para implementar este tipo de L&F en tus aplicaciones.
Bueno, teniendo esto en mente se puede modificar el L&F de una aplicación Java y ya que NetBeans es una aplicación Java (¬¬), debería poder modificarse, había perdido mucho tiempo buscando sobre esto, hasta hace poco que lo encontré. Les dejo la info en el video.


2) JUnit Práctico

Dejo también un tutorial bastante practico sobre JUnit, como ya lo comente en otro tutorial JUnit es una herramienta que te auxilia en las pruebas básicas o pruebas unitarias, o de caja blanca o como les quieras llamar. Básicamente es código que prueba más código, y al hacer esto automatizas tus pruebas y en caso de que posteriormente se haga una modificación al proyecto te podrás dar cuenta muy fácimente de los impactos que tuvo la modificación a un módulo respecto de otros.

Espero haberme explicado, de cualquier manera no te servirá si no haces una prueba con algún proyecto que estés desarrollando actualmente.

3) ListMap

ListMap es el nombre de una librería que desarrolle sintiéndome atado con el API de Java que no me dejaba hacer muchas cosas, para esto les recomiendo que le den una leída a los javadocs de la interfaz java.util.Map para que vean el funcionamiento que tiene y vean más o menos para que les servirían esta interfaz y sus implementaciones.

Una de las cosas que no tiene la clase HashMap por ejemplo es un método para obtener todas las llaves o todas los valores lo cual es necesario en ciertos casos, cosa que se incluyó en esta librería.

Dejo aquí la tabla que aparece en el video explicando el core del funcionamiento de la Librería, la librería se las dejo en descargas o dando click aquí directamente.




Keys Values
Key1 1 Value from key1
2 Value from key1
3 Value from key1
Key2 1 Value from Key2
2 Value from Key2
3 Value from Key2
4 Value from Key2
5 Value from Key2
Key3 1 Value from Key3
2 Value from Key3
Key4 1 Value from Key4





Una Gran disculpa por que últimamente me están saliendo los videos con el audio disminuido a la hora de subirlos a YouTube.













Visita el home de la pagina y comenta