lunes, 11 de junio de 2012

Un "rapidín"

Hace un rato estaba terminando de trabajar en algunos proyectos y recordé que había instalado hace unas horas el Visual Studio 2012 RC, después de 2 reinicios estaba listo... así que le di una revisión rápida a varios elementos y hasta ahora esto es lo que he visto:



  • Evidentemente Microsoft nos quiere meter el entorno Metro por todos lados con su tema Cosmopolitan que aunque no es desagradable en el Visual Studio a simple vista, si puede dar un fuerte revés a todos esos años acostumbrándose visualmente al entorno del VS. De este aspecto solo resalto que el menú se ve horrible en mayúsculas (y no soy el único que lo piensa ¬¬  http://msmvps.com/blogs/p3net/archive/2012/06/03/free-winforms-wpf-is-dead-in-vs2012-express.aspx )
  • Sin probar la versión Express por cuenta del articulo que menciono, me enteré que ya no es posible desarrollar de modo gratuito aplicaciones en WPF y Windows Forms.. :/ mala cosa. Aunque considero que realmente siempre existe la convivencia entre las versiones Express, por lo que no veo mucho problema en desarrollar aplicaciones "Legacy" en versiones "Legacy" .. (Que malo soy, no creen? :P)
  • Como se imaginarán, lo primero que probé fue LightSwitch :P, en este tema tenemos buenas noticias. Ya se incluye por defecto el tema Cosmopolitan en las aplicaciones, lo que nos permite tener 2 formas de presentar aplicaciones y sin pagar demás :D.. y pienso que la adaptación que hacen de ella en el Shell de LS, es buena.
  • Por la misma linea, se trabajó en la optimización del performance, lo cual es notorio, ahora las pantallas, la solución, los datos, en general todo en el entorno de LS carga un poco más rápido (pero podemos seguir mejorando).
Por el momento no es más, cuando lo mire a detalle edito esta entrada para darles más datos 
Si quieren descargarlo y encontrar más información sobre esta versión: 

Gracias por leerme :3

SebaXOR

martes, 5 de junio de 2012

Lim[X->1] HTML4+X

Fuck!! odio la Times New Roman :3 .. en fin. A veces quisiera que la notación matemática pudiera ser fácilmente escrita en cuadros de texto de computadora, pero desafortunadamente aún tenemos que inventar más esto :P... tenemos mucho trabajo por delante para mejorar las interfaces de usuario, generar elementos interactivos enriquecidos y altamente compatibles, algo que rompa un poco la barrera capitalista alzada por los monopolios de software; esa guerra fría que se vive en nuestro gremio  que a veces estalla en miles de "Missil Crisis" por toda la red, Linux y Windows, Oracle y SQL Server, VMWare y VirtualBox.. a veces uno cree que los tiempos han hecho que la humanidad cambie, pero solamente varían los escenarios y las circunstancias persisten a lo largo del tiempo.

Lo tímido no quita lo valiente
No me gusta ponerme demasiado técnico ni demasiado cursi, pero a veces darle plantear desde diferentes perspectivas lo que hacemos día a día nos hace recordar que somos más humanos y menos máquinas (así permanezcamos enchufados de manera dependiente a una de ellas). 
Retomando el asunto, vamos por un poco de historia... (no mucha ¬¬)
Hoy y desde siempre han existido esos espíritus revolucionarios que pregonan y claman libertad, que no existan muros, que no se limite al ser humano... y así nació el GNU [Ver la Wikipedia para más información], pero como desde siempre el ser humano ha sido mañoso, no tardó en aparecer quien le sacara lucro a estos ideales, pero ese no es el caso (ando disperso), el caso es que de estos ideales comenzó a surgir con mayor fuerza la necesidad de comunicar diferentes sistemas y generar compatibilidad entre diferentes plataformas, surgieron las redes de datos, se comenzaron a generar protocolos y entidades que los regulaban y definían (de ahí el lucro o parte de él) que hasta el día de hoy siguen haciéndolo. Dentro del mar de siglas y protocolos que nacían y morían por diversos motivos, comenzaron a generalizarse unos cuantos que marcaron hitos.
Hoy en día es natural para nosotros escuchar palabras y siglas como Ethernet, FTP, TCP... se nos dificulta pensar un mundo sin protocolos como SSH, VNC, o RDP (hermoso RDP), aunque para algunos quizás sea transparente que el mundo es lo que es porque existe TCP, UDP, que las oficinas funcionan hoy gracias a SMB?... pero en los últimos 5 años se ha generalizado la utilización de un protocolo que tiene mucho más de una década y que ahora es el centro de atención de todos, muy cotizado pero muy poco conocido, gracias a este protocolo podemos realizar pagos desde nuestras casas, podemos consultar el saldo de nuestra cuenta bancaria, es posible interactuar con nuestros amigos en tiempo real mediante el móvil, es posible consultar el estado del clima, las noticias, e incluso tener toda nuestra información, fotos, música, aplicaciones y demás... todo esto es posible gracias a un único participante que sirve de anfitrión e invitado en toda la fiesta. Este valiente y tímido protocolo permite que hoy puedas leer lo que escribo :D.




Hoy Todos Tienen Prisa
Seguramente muchos ya saben de que protocolo hablo :3 (sino reconsideren su orientación profesional U_U) pero para los que aún no la captan, nuestro querido amigo es el que precede las URL de las páginas web y el acrónimo del título de este párrafo.......... Qué? ¬¬ no lo conocían o no se lo esperaban? pues si, HTTP está detrás de todo (y si se descuidan conquistará el mundo). Hoy en día casi todo lo que nos interesa y para lo cual gastamos mucho tiempo de nuestra vida, depende o está relacionado con HTTP y desde luego soportado por otros protocolos como DNS o SSL, o especificaciones como XML y subversiones de esta como HTML (nuestra segunda estrella de la noche!... o día, según a la hora que lo leas). 
El mundo de hoy no sería lo que es ni se comunicaría a la velocidad que lo hace, si no existiera HTTP y sus amigos, es por eso que las tecnologías han mejorado en todos los sentidos para soportar cada vez más aplicaciones y prestaciones sobre HTTP; de ahí que estemos en el límite por izquierda de la versión 5 de la especificación más ampliamente usada en el mundo de la computación y a casi 2 años de la promesa no oficial de terminación anticipada de la nueva especificación, ya tenemos muchas muestras implementables y estables.


Les dejo algunos links para que deleiten sus pupilas con la serie de elementos visualmente enriquecidos e interactivos que se pueden hacer ya, con los primeros avances de HTML5.




http://webdesignledger.com/inspiration/10-html5-demos-to-make-you-forget-about-flash
http://www.creativosonline.org/blog/48-demos-de-html5css3-brutales.html
http://html5demos.com/

Si quieren más, solamente Googléen "HTML5 DEMOS" .. :3


Menos mal los ingenieros Damos Nuestro Sudor para que Faltando Tiempo Prolongado, podamos suplir las necesidades de un mundo donde Hoy Todos Tienen Prisa :P


Lo nuevo reemplaza lo viejo
Como siempre el capitalismo y el utilitarismo arrasan con todo, esta vez con nombres propios y de una forma casi dramática la entrada de HTML5 prematuramente puso la tecnología vanguardista del mercado en el enriquecimiento multimedia de la web, en una situación penosa, debilitada ya por la imposibilidad de entrar en plataformas móviles por su evidente falencia en la gestión de recursos, Flash ahora enfrenta un camino duro que hoy en día  muchos interpretan ya como una batalla perdida, la condena está plantada, sólo es cuestión de tiempo para que desaparezca el imperio que tantas victorias tuvo alguna vez, es como ver la roma decadente del siglo III, agonizando triste y solitariamente. Sin embargo, no es de subestimar, pues el nacimiento de HTML5 abre un sin fin de oportunidades para todos los gremios del mercado. La evidente falencia de herramientas de desarrollo que faciliten la utilización de esta tecnología crea un mercado oportunista donde cualquier empresa o empresario pequeño puede invertir algo de tiempo y dinero en desarrollar algún componente gráficamente atractivo, montarlo en un sitio web y comercializarlo o incluso compartirlo a cambio de donaciones voluntarias; pequeños mercados que abundan en al red y que son muy comunes desde que surgieron plataformas de desarrollo avanzadas sobre JavaScript como jQuery, MoTools o Prototype.


El mercado de unos pocos oportunidad de muchos
Para las empresas y desarrolladores dedicados a la comercialización de sitios web, las oportunidades de negocio son grandes y el conocimiento que hay que tener es poco, desde luego, mientras más conocimiento se tenga más posibilidades existen. Pero incluir elementos de HTML5 o componentes multimedia interactivos en nuestros desarrollos es muy simple, solamente hay que usar un poco el Google y leer las especificaciones o mirar los ejemplos, con un poco de esfuerzo podremos integrar en nuestros desarrollos elementos de calidad muy buena, totalmente compatibles con plataformas móviles y con un gran valor agregada para el cliente.
Para los clientes el poder ofrecer servicios e información con interfaces llamativas y altamente compatibles genera un incremento en su nicho de mercado, de una manera considerable.
La competencia ya ha comenzado y como siempre el último pierde, en unos años seguramente veremos muchos ganadores que vieron la oportunidad en un mercado que comenzó siendo pequeño y que cada vez es más grande.


Las consideraciones técnicas
Para concluir con este artículo me centraré en los aspectos técnicos relevantes   a la hora de considerar implementar componentes web avanzados basados en HTML5 o en algún framework JS. 



  • Medir la cantidad de componentes que interactúan al mismo tiempo en un sitio web, pues a mayor cantidad de componentes más consumo de recursos hay.
  • Elegir muy cuidadosamente la plataforma de trabajo, pues la mayoría de los Frameworks JS son incompatibles entre sí, por lo cual se genera una limitación considerable para la utilización de componentes basados en diferentes Frameworks. En mi experiencia recomiendo jQuery por mucho.
  • Complementar el desarrollo de terceros con desarrollo propio. Los componentes que se encuentran usualmente son muy generales, por lo que es conveniente generar valores agregados con algo de desarrollo propio, en general mediante WorkArrounds para agregar características adicionales sobre dichos componentes.
  • Analizar la compatibilidad entre navegadores y plataformas para determinar el componente y la versión del componente más adecuada para el requisito.
  • No reinventar la rueda... si jQuery tiene funciones para capturar los elementos del DOM, tiene métodos para manejo de AJAX, para efectos especiales, para animación pues.. ÚSALOS! para eso son, no para molerse con JavaScript puro.
  • Desarrollar integrando tecnologías adecuadas para cada escenario.
    Por ejemplo: para el desarrollo de Web Services existe WCF, si es posible implementarlo, es una buena solución para integrar módulos de diferentes lenguajes y plataformas de manera ágil y rápida. Si el desarrollo requiere mucho manejo de protocolo HTTP y control de la aplicación, es mejor emplear plataformas como PHP o ASP.NET MVC. Si el desarrollo requiere mucho manejo de formularios e interacción con base de datos, es bueno emplear ASP.NET Web Forms, etc.
  • La mejor arquitectura no siempre es la mejor amiga, a veces es necesario sacrificar algo de arquitectura o de seguridad si el desarrollo no lo requiere o lo afecta. Por ejemplo: La mejor práctica para consumir un recurso de datos es emplear un Web Service con autenticación, sin embargo la carga del WSDL y el proceso de serialización y desserialización de los datos a otro lenguaje, requieren tiempo y si la aplicación debe interactuar con muchos registros para presentar respuestas rápidas, puede que sea mejor realizar una conexión directa a la base de datos o un esquema de replicación de datos off-line de manera periódica en una base de datos con menos concurrencia o física/lógicamente más accesible.
Lo superficial nunca supera lo profundo

Realmente me extendería demasiado si tratará de abordar todos los temas que tienen relación con el desarrollo de esta nueva tecnología y su implementación en nuestra vida cotidiana, pero de una forma muy superficial traté de plantear una idea general invocando a todos los desarrolladores web a que se unan al clan HTML5 :D.
La idea nunca es hacer pesada la lectura, y siempre generar un buen ambiente, creo que en este articulo fui menos estructurado y más coloquial, pero de todo se ve en esta vida ^^.
Recomiendo encarecidamente que se documenten de manera más profunda en este tema pues aparte de ser vanguardista es bastante interesante y con toda seguridad en unos meses veremos grandes empresas apostándole al desarrollo de nuevas herramientas e IDEs orientados a la Web.



Gracias por leerme :3

SebaXOR











martes, 29 de mayo de 2012

Las fechas no mienten



Odio la Times New Roman... ¬¬ en fin.


Las fechas no mienten, ando atrasado.. lo se -.-"... pero es por una justa causa :3 .. sin embargo ya tengo los borradores de los 2 artículos que les debo (si es que hay alguien siguiendo el blog :P)


Spoiler
Les adelanto los temas que estaré tratando en mis dos siguientes artículos:
Uno habla sobre el desarrollo con HTML 5 y componentes avanzados en Web, el otro es un artículo técnico sobre como trabajar con un WorkArround para cubrir una falencia fuerte de LightSwitch.


Aún no se cual vendrá primero pero ando en proceso de terminar rápido todos mi pendientes y estoy seguro que de estas experiencias saldrá otro artículo que seguramente compartiré pronto con ustedes.


No siento más y como siempre...^^



Gracias por leerme :3

SebaXOR




domingo, 13 de mayo de 2012

Riesgos Extremos

Dentro del entorno laboral de nuestro gremio usualmente tenemos que desempeñar tareas que terminan por volverse mecánicas en cierto sentido, pero lo monótono difícilmente perdura, si son personas como yo (que odiamos lo monótono). Por eso a veces asumimos riesgos extremos...


LightSwitch... ¿una luz encendida o apagada?

Hace menos de medio año me encontraba actualizandome un poco en nuevas plataformas de desarrollo (Tarea que procuro hacer lo más habitualmente posible). Dentro de mi proceso de búsqueda me encontré con varias tecnologías interesantes de Microsoft que en su momento no había tenido la oportunidad de ver, leer o probar a fondo; tales como WebMatrix, SilverLight,ASP.NET MVC 2, Windows y SQL Azure y Microsoft LightSwitch.
Haciendo un dedicado hincapié en cada una de ellas, entendiendo su funcionamiento, sus ventajas y desventajas, comparativas con tecnologías análogas y demás; me fue imposible no desviar fuertemente mi atención sobre LightSwtich (LS). En cuestión de una semana me había devorado todos los "How do I videos" (http://msdn.microsoft.com/en-us/lightswitch/gg604823) y había mirado y leído más de 50 artículos y sitios web sobre esta aparentemente maravillosa tecnología.

Como dice casi textualmente Beth Massi (http://blogs.msdn.com/b/bethmassi/) al comienzo de sus vídeos, LS es una nueva herramienta de desarrollo para aplicaciones empresariales para escritorio, web y la nube. LS facilita enormemente la creación de aplicaciones orientadas al manejo de datos utilizando un modelo RIA sobre SilverLight (Después de todo hay que ir hacia la luz, ¿no?).

Como ya me he gastado mi tiempo leyendo una buena cantidad de literatura sobre criticas, arquitectura, problemas, bondades, demonios, ángeles y demás. No me centraré en repetir lo que ya muchos han visto y dicho, así que pasaré ese tema de largo solo anexando algunas referencias para que se instruyan un poco.

Arquitectura, Introducción y Ejemplos:


Discusión sobre LS:


Con eso es mas que suficiente, cada enlace tiene muchas otras referencias y si son como yo, de seguro terminan con varias decenas de pestañas abiertas con artículos interesantes y largos :( ...pero interesantes :D.

Después de abordar todo el tema, entender qué es LS, como funciona y cuál es el objetivo; podemos comenzar comenzar con lo que nos concierne.

El problema

No tardé mucho en darme cuenta (y espero que ustedes tampoco) que cuando se labora principalmente como desarrollador de software, la mayor cantidad de aplicaciones son orientadas al manejo de datos (lo cual después de cierto tiempo, se torna terriblemente aburrido y monótono). Al menos yo no recuerdo muchos requisitos de desarrollo de utilidades interesantes para manejo de audio, o de imágenes, gestión audiovisual, videojuegos o cualquier aplicación que se acerque un poco a alguno de esos muy interesantes rubros de trabajo... Pero si recuerdo mucho requisitos como "Necesito una aplicación para manejar el inventario de..", "Necesito un módulo que me genere informes sobre las ventas de..", "Quiero que mi sistema de facturación esté conectado con mi sistema de pedidos en linea..", entre otros (no se ustedes, pero mientras lo escribía, en mi memoria se formaba un eco que se materializaba con las voces de mis clientes XD). Dados los requisitos del mercado y las necesidades del cliente (el cual siempre tiene la razón ¬¬) tareas de desarrollo y testeo de aplicaciones orientadas a datos, se convierte en una tarea que puede resumirse en el desarrollo de (y sin des-meritar la complejidad y la labor que esto implica):
  • Matrículas/Maestros/Administraciones/Gestores
  • Módulos de reglas de negocios e interacción de entidades
  • Módulos de filtros de datos y generación de Informes
Adicionalmente si han corrido con la misma suerte (o para algunos infortunio) que yo, sobre una arquitectura de 3 capas:
  • Presentación
  • Reglas de negocio
  • Acceso a Datos
En la que si es una aplicación ya existente en la empresa sobre la cual hay que desarrollar, y tienen suerte, el 70% del código se concentra en una sola capa (de ahí el infortunio :@).

La odisea


Creo que para todos es un dolor de cabeza el desarrollo sobre aplicaciones orientadas al manejo de datos donde ya han existido varios desarrolladores que han desquitado toda su ira y sentimientos con el código de una inocente aplicación que no tiene la culpa, escribiendo blasfemias estructurales, haciendo uso del desconocimiento de los patrones de desarrollo más simples y haciendo que el arquitecto de la compañía se rasgue las vestiduras y/o se revuelque en su tumba con los desastres que plasman en aquellos maltrechos archivos de código... Aquí es donde uno se pregunta: "¿Cómo "fucks" hace esta aplicación para funcionar?" y entonces viene la desesperación, la ira, la impotencia y finalmente un profundo respiro acompañado de la resignación (Hay tantos memes que podrían facilitarme la escritura de esto :P).
Luego te das cuenta que ya has gastado 6 horas tratando de entender el funcionamiento del código  de tus predecesores y que solo te restan 4 de las 10 que el analista ha destinado como máximo para el desarrollo de los requisitos que se te asignaron; en ese instante te preguntas: "¡¿Ahora cómo hago para hacer funcionar mi código y no dañar el que ya existe?!" paciencia... Después de todo terminas haciéndolo bajo la presión de tus superiores y la interminable batalla campal de re-procesos durante la cual te vuelves enemigo a muerte del tester encargado y donde muchas madres son invocadas en tus insultos, pero después de todo... terminas :')


Y Microsoft dijo: "Hágase la luz"

Con ya casi 4 años de experiencia en el medio, durante los cuales he vivido varias veces la misma odisea, el 70% de las veces que participo en un proyecto como desarrollador, siempre me pregunté: "¿Será posible que al punto en el que estamos de avances, no existe algo que facilite el desarrollo de este tipo de herramientas tan mecánicas y que esté al alcance de los simples mortales?" y entonces fue cuando Microsoft dijo: "Hágase la Luz".. y se inventaron un interruptor de luz todo polémico que trabaja sobre una luz de plata :3...

P: ¿Cómo solucionar una gran necesidad?
R: Tomando un riesgo extremo

Inmediatamente conocí la tecnología le aposté a ojos cerrados aunque con algo de temor pues apenas estaba saliendo del horno la versión estable, pero me aventuré a proponer el desarrollo y migración de aplicaciones a esta nueva plataforma en las empresas con las que trabajo. Como me lo esperaba, me dieron luz verde para probar esta nueva tecnología con proyectos y aplicaciones que representan el 80% de los ingresos de la compañía (Pensándolo bien, fue el gerente quien tomó el riesgo extremo y no yo XD).

Y todos vivieron felices por siempre

Hasta la fecha tengo 4 proyectos que están siendo desarrollados en LS, de los cuales ya están comenzando proceso de producción los 2 más pequeños y hasta el momento sin ningún tropiezo o problema mayor, incluso podría decir que han sido implementados considerablemente mejor que lo proyectos desarrollados en ASP.NET y Windows Forms con la metodología tradicional y la arquitectura por capas. Hasta el momento la experiencia vivida ha sido muy positiva y tiende a mejorar considerablemente. Para finalizar quiero dejar los pros y contras de la utilización de LS dentro de mi experiencia, lo cual no discrepa mucho de lo que ya han dicho anteriormente otros autores de artículos referidos.

Pros
  • La construcción del modelo de datos se torna más amigable y simplificada. La estructura y reglas del modelo Entidad-Relación son validadas automáticamente impidiendo al desarrollador cometer atrocidades en la estructura de la base de datos.
  • Se agiliza considerablemente la creación de interfaces gráficas de usuario estéticamente agradables y prácticas, se puede decir que el tiempo que toman en construirse se acerca mucho a cero (Lim[t->0] t   :P).
  • Es posible tener aplicaciones 100% funcionales, con una gran cobertura sobre los requisitos, con 0 errores y sin escribir una sola linea de código.
  • Migrar el desarrollo entre plataformas (escritorio, web o incluso la nube) ya no es un problema, con un clic LS cambia el despliegue de la aplicación permitiendo simular una aplicación "monolítica" (1 capa) de escritorio hasta una aplicación de 3 capas físicas sobre Web o Azure.
  • LS limita la estructura permitiendo que el desarrollador ubique el código en el lugar que le corresponde, impidiendo en gran medida las blasfemias   al diseño del modelo y la arquitectura de la aplicación.
  • Está totalmente integrado y basado en LINQ permitiendo ejecutar consultas sobre colecciones de datos y objetos independientes del motor de base de datos. 
  • Implementa un modelo de seguridad altamente robusto que puede desplegarse integrado con Active Directory o autenticación por formularios.
  • Permite definir el control de acceso muy fácilmente del lado del cliente y del lado del servidor garantizando así la coherencia y seguridad de la aplicación y sin la necesidad de hacer las validaciones más de una vez.
Contras

  • El modelo de datos está totalmente basado en la especificación del modelo Entidad-Relación, lo cual dificulta enormemente trabajar con estructuras de datos no normalizadas.
  • Existen algunos ajustes y mejoras por realizar en la interfaz de usuario como la personalización de las teclas de método abreviado (Shortcuts), corrección de la presentación de sólo lectura del "CheckBox", facilitar la personalización y extensibilidad de la interfaz gráfica en general.
  • Existen tareas muy simples que requieren escribir mucho código y a veces interactuar muy arduamente con el modelo de subprocesos y despachadores de LS.
  • En ocasiones el modelo LS es demasiado limitado lo cual dificulta o incluso imposibilita el desarrollo de ciertas funcionalidades, obligando al programador a utilizar "Work Arrounds" para lograr su objetivo.
  • Algunos elementos interesantes son considerablemente complicados de desarrollar como las apariencias visuales o controles de usuario enriquecidos, incluso pareciera que fueron desarrollados con esta intención pues es común encontrar en foros oficiales recomendaciones de uso de componentes de terceros que obviamente no son gratuitos (Aunque realmente no es un gran problema, pues ya van surgiendo alternativas gratuitas).
  • Aún existen algunas mejoras en el rendimiento de estas aplicaciones, sin embargo trabajan a una velocidad admisible.
Cabe mencionar que esta tecnología en su primera versión estable ya soluciona muy integralmente muchos problemas y facilita mucho el desarrollo. La documentación que se encuentra en la web es cada vez mayor y siempre es de buena calidad. En los foros siempre hay personas muy pendientes de las dudas de la comunidad y no tardan más de 12 horas en darte una respuesta que de seguro resuelve rápidamente tu problema.

En conclusión, esta nueva tecnología que ha despertado la curiosidad e incluso la polémica en el medio, ha dado un gran salto y ha cambiado muchos paradigmas en el desarrollo de este tipo de aplicaciones y lo más importante es que funciona, ahorra los costos, disminuye los tiempos de desarrollo y de testing a niveles casi ideales y lo mejor de todo, es que se logran unos indices de satisfacción del cliente muy altos y como ya sabemos.. el cliente siempre (y cuando pague) tiene la razón XD...



Gracias por leerme :3

SebaXOR





jueves, 10 de mayo de 2012

Bienvenida

Hace mucho tiempo pensé en comenzar a compartir mi experiencia y conocimiento en la Web y desde luego concebí lo que para mi es la mejor y más rápida forma de hacerlo, un Blog. Hoy por fin me he decido a llevarlo a la realidad, y aunque no dispongo de mucho tiempo, creo que me haré la propuesta personal de hacer una entrada semanal. 


Mi principal objetivo es el de compartir conocimiento técnico, humano, laboral, profesional, empresarial y todo en todos los marcos y frentes referentes al tema que se afrontan y se encuentran en este medio (desde luego hablo de la Informática). Procuraré ser lo más formal posible, aunque seguro buscaré la manera de desquitarme utilizando la forma que usualmente tengo para escribir :P (si, amo los emoticons U_U).


Realmente sólo pretendo dar una breve bienvenida a, por el momento, nadie, pero que en un futuro no muy lejano, se que no será así.


Gracias por leerme :3


SebaXOR