Mar 11, 2012

Programación del FIA 2012 para móvil


Durante este mes de marzo, Costa Rica vivirá el acontecimiento de arte más importante del año donde las calles, avenidas, museos, teatros y escenarios abiertos de la capital costarricense se convertirán en focos de arte y cultura. El FIA este año tendrá a Corea del Sur como invitado de honor y ofrecerá a los asistentes más de 300 espectáculos con la participación de más de 1250 artistas nacionales e internacionales en eventos de altísima calidad.

Como parte de una iniciativa para ayudar a difundir la variedad de eventos que ofrece el Festival e invitar a más costarricenses a participar de esta fiesta cultural se crea el "FIA'12" app.  Esta es una aplicación que le permitirá tener acceso a la programación del Festival, conocer donde y cuando serán las presentaciones de cada evento, marcar un evento particular como favorito y más.



Estas son algunas de sus características:

  • Programación: Acceda al calendario de actividades del 15 al 25 de marzo así como también los detalles de cada evento. ¿Tiene interés en un evento particular? Márquelo como favorito para agregarlo a la lista de eventos preferidos. 
  • 'En este momento': Permite ver cuáles eventos están actualmente en curso tomando en cuenta día y hora. 
  • Favoritos: Aquí se guardan los eventos de tu interés. 
  • Mapa: Conozca la ubicación de los escenarios y tarimas del Parque Metropolitano La Sabana. 

La app para Android puede ser descargada gratis desde el Google Play Store en su smarthphone o bien ingresando a
Android app on Google Play

Quiero agradecer a las personas que dieron su apoyo a esta aplicación y en especial a los organizadores y colaboradores del FIA por respaldar esta iniciativa.

 ¡A disfrutar de esta gran fiesta del arte!

Para más información del FIA ingrese a: festivaldelasartes.go.cr

Feb 26, 2012

Android - How to stretch video to fill VideoView area

The VideoView class included in the Android SDK provides a very convenient wrapper of the Surface View class. It takes care of computing its measurement from the source video so that it can be used in any layout manager.

By default  Android will scale the video to fit the VideoView but keeping the video aspect ratio. That means that depending on the device's screen size there might be some black spaces left around the video the video since the it's not filling the screen.

Depending on what you are looking for, you might actually want to completely fill the parent container area even if that means to stretch the video to fill the gaps (in other words, altering the aspect ratio of the video).

Well, turns out that even though the VideoView doesn't provide an explicit way to specify the filling mode, you can achieve the same result by wrapping the video view in a Relative Layout and setting the VideoView alignments to match the parent's boundaries:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <VideoView android:id="@+id/videoViewRelative"
         android:layout_alignParentTop="true"
         android:layout_alignParentBottom="true"
         android:layout_alignParentLeft="true"
         android:layout_alignParentRight="true"
         android:layout_width="fill_parent"
         android:layout_height="fill_parent">
    </VideoView>
    
</RelativeLayout>
Here is an example of two different layouts, one using a Linear Layout to wrap a VideoView and the other one using a Relative Layout:

LinearLayour wrapper
RelativeLayout wrapper

So, whether you want to keep the aspect ratio of a video or stretch it to fill its parent area, using the right layout manager can get the job done.

Hope this helps!

Feb 21, 2011

DNA Model using HTML5


This is my small contribution to the HTML5 community. It's an experiment that uses the HTML5 canvas element and the associated drawing methods to generate a DNA structure on the fly.

You can select from 7 fixed color schemes or let the application generate a random sequence following the basic pairing rules for a DNA sequence (A - T & C - G). Additionally, change the number of pairs and the vertical spacing between each pair at any time.


Internally, JS objects work together to calculate, cache the position of the nucleotides and finally draw them to the canvas.
The nucleotides were first created using the createRadialGradient method, however the it would take around 1 -3 seconds to generate the animation, so images were used instead to represent them.
Also, to avoid a flickering animation the elements are drawn offscreen and then copied into your onscreen. At the core of the application only plain javascript is used, the jQuery library was used only to provide the sliders functionality and basic selectors.

It would be very interesting to allow anyone to create their own color schemes and save them.. might be nice features for a version 2.

Hope somebody finds this useful. Enjoy! :)


Technologies: HTML5/canvas + javascript + jQuery

Jan 23, 2011

Sunset @ San Diego - Time lapse - 2011

Time lapse clip of the sunset from San Diego, CA. Taken on 2011. Enjoy!

Camera:Canon PowerShot SD1200 IS
White Bal: Day Light
Real time: 4:30pm - 5:30pm
Speed up:32X


Oct 18, 2010

Tren metropolitano rumbo a San José

El tren metropolitano cerca de la Sabana frente a la Municipalidad de San José en su recorrido matutino a la Estación del Ferrocarril al Pacífico.

Sep 24, 2010

Morning time-lapse at Herndon, Virginia

Just a wonderful morning with a cloudy sky.

This video was recorded near the Washington Dulles Airport from 5am to 6 30am and speed up 32X.

Thought it would play well with some trance.
Song: In and Out of love - Armin van Buuren

Mar 25, 2009

World Builder

This is a short film from Bruce Branit, it's about a man that uses holographic tools to build a world for the woman he loves. It reminds us that we should never take for granted even the simplest of things. The sound of a running river, the sight of a flower, the dance of a leave when it falls off a tree... all the things that we experience every day but rarely notice, and even more rarely appreciate.

Hope we can develop this kind of technology in a near future, it would take the phrase "The imagination is the limit" to a whole new level... =D

Mar 24, 2009

How to install Drupal 6.x (6.9) in AwardSpace


I recently had to install this PHP framework into Awardspace for testing purposes. Although Drupal is designed to ease the installation process to the users, you have to make some modifications

You can download Drupal in this site if you haven't already =P ( Drupal 6.9 )
Once you have downloaded Drupal and created an account in Awardspace we need to upload the files to our Awardspace account. The easiest way to do this is using and FTP client (I would recomend FireFTP).

If you try to install the site accessing the 'install.php' page using your browser, it will probably throw an "500 Internal Server Error" but don't worry, we will review that issue right away.
You need to connect to your file manager from the Hosting Control Panel (or using your FTP client) and rename the file .htaccess file to another name (I renamed it to .htaccess.old) or delete it, but the first option is the recommended.

Now, if you run again the install.php script, the page will let us access the install page. The first page is the Choose language screen where you can choose whether to install Drupal in English or another language. But before you can install your new Drupal site, you need to go to PHP settings on the Web Manager of the Awardspace Control Panel, and then change the version from PHP 4.x.x (mine was 4.4.1) to PHP 5.x.x (5.2.5). If you don't have permissions nor don't want to go to that version, then this error might appear:

register_globals is enabled. Drupal requires this configuration directive to be disabled. Your site may not be secure when register_globals is enabled. The PHP manual has instructions for how to change configuration settings. (Currently using PHP register globals Enabled ('1'))

After you have changed this setting you are ready to go. Now you should be able to run the install script (install.php) normally and follow the steps like you normally would.

Happy "Drupalling".. Hope this is useful for somebody.


--
Kasen Lam

Mar 21, 2008

ASDF


Un día de estos tenía que "Googleear", pero es de esos momentos que uno no se acuerda de lo que tiene que buscar, así que mientras recuperaba mi memoria.. escribí "asdf"....

Me sorprendi al ver que los primeros 4 resultados corresponden a sitios que explican la definión y usos de esta combinación tan particular de letras. La cadena de letras puede ser escrita con solo los dedos de la mano izquierda y por lo general se utiliza para pruebas, ejemplos o como una palabra aleatoria sin ningun signicado.
Otros hechos intesantes que se pueden restacar son:

  • La secuencia de letras se utiliza en muchos programas de mecanografìa para dar los primeros pasos, ya que todas las letras estan ubicadas en el home row.

  • asdf is es el password predeterminado para algunos sistemas. Por esta razón la combinación es utilizada por crackers para hacer ataques simples, porque siempre existe la posibilidad de que algun usuario se haya dejado su contraseña asdf por defecto.

  • Es muy probable que muchos de nosotros para acceder a información de nuestro interés hayamos utilizado el asdf en más de una ocasión para "capearnos" los formularios de registro... jeje ... Esto ha llevado a que muchos sitios hayan restringido el uso de asdf como usuario o password, al ser fácil de deducir, o incluso bloquear correos de tipo asdf@asdf.com... :P

Les invito a que hagan la prueba, no toma mas de 8 segundos (5 mientras se abre el navegador y 2 para escribir jeje), el primer resultado de la busqueda es la página asdf.com donde se incluyen varias frases sarcasticas analizando su significado e incluso foros para los usuarios que quieran comentar sobre algo o nada en particular..


Referencias:
http://en.wikipedia.org/wiki/Asdf

May 6, 2007

Fuzzy Vision

Experimento con filtros y máscaras de flash.
Solo mueva el mouse encima del área negra para ver el lo que se oculta debajo...






(El carro fue escogido en base a su color más que otra cosa... :P )
Propiedades
ActionScript: 2.0 Framerate: 24 fps Size: 450x400