Archive for January, 2009

  • Nuevas Modificaciones Al Blog

    0

    Estos dias estoy haciendo un nuevo release de mi blog software el cual me va a permitir:

    • Escribir wiki syntax usando bliki java parser.
    • Esto va a hacer muchisimo mas facil la edicion de los posts ya que intente utilizar yahoo editor, tinyMCE y ninguno satisfiso mis requerimientos ya que edito codigo html para las demos. Hoy en dia estoy usando un asistente de HTML que hice yo mismo pero tampoco es lo mas practico. Wiki puede renderear wikisyntax en HTML y HTML en HTML mismo.

    • Cambios en el Look And Feel.
    • Peque?os retoques para que no sea tan aburrida la UI.

    • Nueva seccion de tools
    • En esta seccion voy a publicar un monton de tools y utils online que tengo en mi briefcase.

    • Paginas personalizadas.
    • Esto va de la mano con los tools, quiza una pagina de frontend para cada tool y demas. O paginas que no sean un post en particular.

    En el futuro cercano quiero hacer nuevos features tal como…

    • Usuarios registrados usando Google Account u Open ID
    • Mejorar el tema de los sharing post
    • Mejorar el posteo de imagenes. Hoy en dia las imagenes son guardadas en la base de datos pero la forma que se suben y administran es bastante precaria a mi gusto.
    • Mejorar el posteo de comentarios.

    Nos vemos pronto. Muy Pronto.

  • Como Escapear Caracteres Latinos En HTML

    0

    Un amigo Juan andaba con ese problema hace un par de dias. La cosa es que por ejemplo si sos de habla castellana vas a utilizar

  • Como Enviar Un Email Con Java

    0

    Es sumamente sencillo enviar un email con Java, lo mas engorroso sera tener las libraries correspondientes.




    Las libs se pueden obtener aca: Java Mail API.





    Una vez que tienen las libs en el CLASSPATH podemos empezar a codificar.

    //sets properties at the session
    Properties props = new Properties();
    props.put("mail.smtp.host", "smtp.myserver.com");
    props.put("mail.smtp.port", "25");
    Session session = Session.getDefaultInstance(props, null);
    
    //here the email
    Message email = new MimeMessage(session);
    email.setFrom(new InternetAddress("who@gmail.com"));
    email.setRecipient(Message.RecipientType.TO, new InternetAddress("your@address.com"));
    email.setSubject("some nice subject");
    email.setText("the text of email");
    
    //sends the message
    Transport.send(msg);
    
  • iPhone Review

    0

    Despues de usar mi iPhone un par de semanas me animo a escribir un pequenio review. Este va a estar basada en el tipo de uso que obviamente le doy yo el cual es reventarlo hasta morir. Todos los detalles.

    Primero voy a enumerar las cosas negativas y luego las positivas asi no generamos un sabor amargo sobre el telefono.

    Lo Malo

    • Hay que mirar casi simepre el teclado ya que no es tactil y no podemos memorizar la posicion de las teclas.
    • Carece de edicion de texto (copy/paste).
    • El GPS es por radio, no por satelite, no es preciso.
    • Tiene un solo boton externo que siempre te lleva al home, no hay accesos rapidos al telefono, internet, etc.
    • Carece de configuracion especifica para las alertas de new email.
    • Carece de un task list que sincronize con Outlook.
    • Carece de un office suite. Me gustaria poder al menos crear word o excel
    • El viewer de Excel no te permite ver un workbook con paginas.
    • No todas las aplicaciones pasan a modo horizontal cuando se voltea la pantalla.
    • No permite almacenar files como cualquier otro smartphone.
    • Algunas aplicaciones no corren en background como ser Fring, un instant messenger. Una vez que vas a otra aplicacion hace logoff.

    Lo Bueno

    • La belleza de la UI.
    • La performance de las aplicaciones.
    • Lo 3G y Wifi, un combo excelente
    • El directorio de aplicaciones en appstore, pude encontrar todo lo que necesitaba y gratis.
    • El Email client es excelente, funciona por GMail IMAP o POP que asimila a IMAP sincronizando folders.
    • El safari browser permite ver cualquier tipo de website mobile o no.
    • La capacidad de almacenamiento para fotos y musica.
    • iPod, es excelente el software del music player.

    Conclusion

    Claramente tiene muchas cosas negativas que otros smartphones como el almacenamiento y edicion de archivos de texto o planillas de calculo. Pero quiza tiene otro objetivo el iphone, entertainment.





    Despues de pasar por Palm y HTC puedo decir que este smartphone es lo mejor que he tenido en lo que respecta a performance y potencia de la UI. Le faltan cosas, pero sus features buenos son inmejorables. Long live iPhone.

  • Como Comprimir Javascript y CSS

    1

    Un archivo javascript plano que viaja por la net puede ocupar hasta el 80% mas que uno comprimido. Eso significa que el usuario esperara 80% mas para terminar de bajar el archivo mas si ese archivo luego se ve involucrado en alguna ejecucion en el onload event.




    Hay varias tecnicas para hacer shrinking de archivos. Aca voy a mostrar la de Yahoo que es la que a mi particularmente me ha dado mas resultados y he podido integrar a mis deployers.

    Una de las reglas de oro de optimizacion es Minimizar Los HTTP Requests (sea imagenes, js, css, etc). Para esto hay varias tecnicas como los Images Sprites donde se combinan multiples imagenes en una sola.



    Con Javascript pasa algo similar. Consideremos que tenemos una bateria de archivos javascript. Nuestro objetivo es concatenar todos los archivos en uno solo y luego comprimirlo.





    Para concatenar todos los archivos en uno simplemente podemos hacerlo a mano o usando este ANT TASK.

    <target name="concatenate-js">
    	<concat destfile="allfiles.js" fixlastline="yes">
    		<filelist>
    			<file name="/scripts/albatro.js" />
    			<file name="/scripts/data/request.js" />
    			<file name="/scripts/ui/ui.js" />
    			<file name="/scripts/ui/table/table.js" />
    			<file name="/scripts/ui/editor/htmleditor.js" />
    			<file name="/scripts/ui/imgslider/slider.js" />
    			<file name="/scripts/ui/widget/widget.js" />
    			<file name="/scripts/util/validation.js" />
    			<file name="/scripts/util/events.js" />
    		</filelist>
    	</concat>
    </target>
    

    El resultado de esta operacion es entonces un solo archivo que contiene todos los scripts de los archivos involucrados.




    Ahora vamos a usar YUICompressor, una herramienta Java de Yahoo para minimizar el Javascript de manera sumamente efectiva sin riesgos de integridad para el codigo. La herramienta la pueden encontrar en este website y la documentacion completa en el sitio oficial de yahoo.





    Basicamente para ejecutar la compresion tenemos que usar la linea de comando de esta manera.

    java -jar yuicompressor-2.4.1.jar allfiles.js -o compressed.js
    

    O si quieren automatizarlo aca esta el ANT TASK que hice para tal fin.

    <target name="compress-js">
    	<exec executable="java">
    		<arg value="-jar" />
    		<arg value="/home/tools/yuicompressor-2.4.1.jar" />
    		<arg value="-o" />
    		<arg value="compressed.js" />
    		<arg value="allfiles.js" />
    	</exec>
    </target>
    

    Aca les dejo un link que habla de performance y es la biblia para mi. Performance Group de Yahoo. Espero les sirva.

Page 1 of 212»