Archivo

Archivo del autor

Charla sobre Internet Explorer 8, Windows 7 e ImagineCup en PUCMM

Martes, 26 de Enero de 2010

Charla sobre Internet Explorer 8, Windows 7 e ImagineCup en PUCMM

Gran charla de Microsoft

number of view: 99

david Windows

Videos Sobre Google Chrome OS

Viernes, 20 de Noviembre de 2009

Aquí les dejo unos videos sobre el sistema operativo de Google basado en Linux!

¿Qué es Google Chrome OS?

Demo Google Chrome OS

Seguridad Google Chrome OS

number of view: 80

david General

1era. Reunión #apoyalolocal

Viernes, 20 de Noviembre de 2009

Luego de una gran acogida a la iniciativa de Apoya lo Local!: Destacando proyectos e iniciativas Locales… Hemos decidido realizar una reunión informar para compartir la idea y conocernos personalmente.

Hora: 4:00 pm
Fecha: Sábado 21 de Noviembre de 2009
Lugar: Colina’s Mall
Local: Food Court (3er. Nivel)
Ciudad: Santiago

Nota: Agregar a @davidtavarez para ver por Skype

Esperamos verlos a todos por ayá!

number of view: 47

david General

Apoya lo Local! Destacando proyectos locales…

Lunes, 16 de Noviembre de 2009

“Apoya lo Local” es una iniciativa que tiene la idea de destacar los proyectos locales y fomentar su uso. Si el proyecto no es muy bueno o le faltan detalles, pues en vez dejar de usarlo, criticarlo de manera constructiva para aportar y mejorarlo o participar en hacerlo.

Un gran problema que tenemos los dominicanos es que creemos que lo “made in dominican republic” no sirve, aunque esto es basado en lo común de ver muchos disparates que se hacen el pais, mas sí existen productos/servicios muy buenos y de bastante calidad. Existen compañeros que están haciendo cosas nuevas y los suficientemente aptas para representarnos.

Estamos dispersos, pero hay que formentar la unidad.

Entenemos que hay que apoyar desde blogs, hasta servicios en linea, reuniones y eventos relacionados con tecnología, web y arte.

El apoyo y soporte a las inicativas locales motivaría a todo aquel que tenga una idea a desarrollarla y mantenerla. En otros paises el emprendimiento es un modelo de negocios probado y funcional, inclusive en otros paises de hispanos; esto nos lleva pensar en lo lejos que estamos como nación en materia de aplicaciones de tecnologías como medio para la generación de negocios y fomento del conocimiento. Localmente hay talento, así que hay que explotarlo y exponerlo.

Apoya lo Local!

number of view: 233

david General

Lanzado Firefox 3.5

Martes, 30 de Junio de 2009

Fue lanzado oficialmente Firefox 3.5!! Entre las mejoras se encuentra las siguientes:

  • Es la versión más rápida de Firefox hasta la fecha.
  • Nuevo modo de navegación privada, con más opciones.
  • Reabrir las últimas ventanas cerradas.
  • Soporte de Open Video para ver videos sin Flash.
  • Navegación conciente de tu ubicación geográfica (¡impresionante!).
  • Tipografías descargables, mejoras CSS y Web Worker Threads.
  • Soporte de SVG y JSON nativo.

Este es el video oficial de lo nuevo de firefox

number of view: 53

david General

Uso de memoria de Chrome y Firefox 3.5

Domingo, 21 de Junio de 2009

Firefox y Google Chrome se han caraterizado por ser grandes consumidores de memoria. Este Analisis lo encontre en http://dotnetperls.com/chrome-memory … esta muy interesente.

Chrome vs Firefox

Chrome vs Firefox

number of view: 70

david Internet

Meten a usuario de Twitter a la cárcel

Jueves, 14 de Mayo de 2009

La Policía detuvo hoy a un técnico informático señalado de haber promovido el pánico financiero en la red social Twitter. Jean Anleu, guatemalteco, también conocido como @jeanfer en Twitter, fue capturado por la policía por supuestamente “causar pánico financiero” escribiendo un mensaje en Twitter, específicamente: “Primera accion real “sacar el pisto de Banrural” quebrar al banco de los corruptos. #escandalogt”. El mismo puede ser visto en el siguiente link: http://twitter.com/jeanfer/status/1776217866

Anleu fue capturado después de un allanamiento en su residencia, como si fuera un delincuente y también le decomisaron su equipo a pedido de la fiscalía de bancos del Ministerio Público de Guatemala.

Mas Informacion aqui.

number of view: 44

david General, Internet

El dia en que Google se cayo… todo un caos.

Jueves, 14 de Mayo de 2009

Hoy, 14 de Mayo de 2009, alrededor de las 9:00 am gmail.com empezó a fallar… luego google.com se fue poniendo cada vez más lento… 30 minutos despues ninguno de los servicios de Google funcionaba correctamente… todo parecia sacado de una película de ciencia-ficción.

Al instante se desató una hola de “twitts” sobre el tema. Pude seguir a través de holatwitter.com.ar (http://holatwitter.com.ar/google%20down) el seguimiento en Twitter por parte de las personas.

2 Horas despué todo volvió a la normalidad… Aún se espera un reporte oficial y unos cuantos reportes de pérdidas de dinero… por lo pronto solo nos queda buscar alternativas para no ser tan dependientes.

number of view: 65

david General, Internet , ,

¡Hola Twitter! Personas diciendo “hola”

Jueves, 30 de Abril de 2009

Algo sobre Twitter.

Twitter es un servicio gratuito de microblogging, que hace las veces de red social y que permite a sus usuarios enviar micro-entradas (también denominadas “tweets”) basadas en texto, con una longitud máxima de 140 caracteres, donde se responde a la pregunta ¿Qué estás haciendo?.

¡Hola Twitter!

¡Hola Twitter! es una aplicación que utiliza el API de Twitter para ver qué están diciendo las personas acerca de un Tema. Este proyecto desarrollado por Leandro Amato,  te permite ver en vivo lo que dice la gente de algún tema relevante. Consta con un campo de texto donde puedes establecer el keyword que te interesa rastrear, que por defecto es “hola”. Es un idea bien simple pero que resulta muy interesante. Según el mismo creador:

“La idea era jugar un poco con la API de Twitter”.

Este tipo de herramientas falicita la comunicación y puede tener bastantes usos. Lo he estado probando y me ha sido bien util para encontrar antiguos compañeros y amigos.

¡Hola Twitter!

¡Hola Twitter!

La URL es: http://holatwitter.com.ar/

number of view: 65

david General

El Open Source vale 387.000 millones de dólares

Lunes, 27 de Abril de 2009

¿Cuánto vale el Open Source? Segun MyComputer.com, La firma Black Duck Software ha revelado un informe en el que estima el valor de todos los proyectos Open Source existentes en la actualidad, y el resultado asciende a 387.000 millones de dólares. Las conclusiones del estudio revelan además que si las empresas que usan soluciones propietarias migraran a soluciones de Código Abierto ahorrarían 22.000 millones de dólares al año.

Según la investigación llevada a cabo por esta empresa, existen más de 200.000 proyectos Open Source en Internet, que suman en total 4.900 millones de líneas de código. Las conclusiones del informe llevado a cabo por Black Duck Software indican que reproducir lo que ha logrado el Open Source costaría 387.000 millones de dólares, pero también haría necesarias 2,1 millones de personas/años para ser logrados.

Ver articulo Completo

number of view: 45

david General

Logo UniLinux. Propuesta #1 (Carlos Paulino)

Lunes, 27 de Abril de 2009

Bueno, esta es la 1era. prouesta que tenemos para el logo de UniLinux, creada por Carlos Paulino de 5th Ocean.

logo unilinux

logo unilinux

Hay tres opciones, pero con el mismo estilo. De izquiera a derecha: 1,2,3. Espero sus opiniones

number of view: 27

david General

Ubuntu Gaming Team, una nueva Iniciativa de Ubuntu

Sábado, 25 de Abril de 2009

Se anunció así la formación del Ubuntu Gaming Team abriendo sus puertas a todos los que quieran colaborar con este esfuerzo de “mejorar los juegos FOSS y desarrollar su comunidad”. El nuevo Ubuntu Gaming Team, una rama del Ubuntu Marketing Team, trabajará para eliminar los obstáculos que impiden el crecimiento de los juegos FOSS. Sus objetivos principales son:

  • Conectar a los juegadores dentro de la comunidad de Ubuntu.
  • Promover los juegos FOSS en Ubuntu.
  • Atacar a las barreras del desarrollo de juegos FOSS.
  • Conectar a los LoCos involucrados con los juegos FOSS.
  • Ayudar a organizar eventos relacionados con los juegos.

Para mas informacion visita el sitio oficial.

number of view: 64

david Linux, juegos

O3D API… proyecto de Google muy prometedor

Viernes, 24 de Abril de 2009

O3D es una API para la web de código abierto para la creación de ricas aplicaciones interactivas en 3D en el navegador. Esta API es compartida en una fase temprana, como parte de una conversación con la más amplia comunidad de desarrolladores sobre el establecimiento de una red estándar para gráficos 3D.

Requrimientos (Software + Hardware)

Windows (Software): XP Service Pack 2, Vista (x86/x64) Service Pack 1; Firefox 2+, Internet Explorer 7.0+ (x86 only), or Google Chrome
Windows (Hardware): x86 CPU; DX9-compatible GPU with VS2.0 and PS2.0 support

Mac (Software): Intel Mac with OS X 10.5 (Leopard); Firefox 2+, Safari 3+, or Camino
Mac (Hardware): any Intel Mac (unsupported GPUs will use SW renderer)

Publico

El API O3D está destinado a desarrolladores web que están familiarizados con JavaScript y que tienen algunos antecedentes en los gráficos 3D. También se destina para los desarrolladores de juegos deseosos de compartir su trabajo con los usuarios de navegadores populares, como Firefox, Safari, Google Chrome, e Internet Explorer. O3D porque la aplicación se ejecuta como un plug-in de navegador, los usuarios no tienen que superar los obstáculos de descargar y ejecutar código de aplicación independiente en sus sistemas. La API de O3D maximiza el rendimiento de la GPU para la programación del lenguaje de sombreado de forma directa, una ventaja sobre el software puro renderizado.

Demostracion

Para mas informacion visitiar el Sitio Oficial.

number of view: 31

david Internet, Programacion

Una nueva herramienta o simplemente una mejor técnica…

Miércoles, 22 de Abril de 2009

Si bien es cierto que un programador puede adaptarse a cualquier lenguaje, todo programador tiene un leguaje de programación preferido; este lenguaje es aquel en el cual se implementan más fácil las ideas, con el cual uno se siente cómodo, que se adpata a nuestra forma de pensar y de ver la cosas. Pero la realidad es que no existe el lenguaje perfecto. En el mundo real se buscan resultados. No importa en qué lenguaje uno escriba la aplicación. Lo importante es que la aplicación solucione el problema. A los programadores se les exige que desarrollen en tiempo mínimo y de la manera más eficiente posible.

Llevo 5 años programando bajo PHP como freelancer y como empleado fijo en varias empresas. Ese poco tiempo de experiencia que tengo me ha ayudado a ver cómo realmente son las cosas. Me he dado cuenta que al final no importa si desarrollo las aplicacines utilizando Programación Orientada a Objetos o Programación Estructurada. No importa si utilizo patrones como Model Vista Controlador o no. No importa si utilizo Zend Framework o CakePHP o simplemente nada. No importa si utilizo Smarty o mi propio motor de plantillas. El usuario final solo ve resultados. En un principio intenté adaptar el precio de mi trabajo al esfuerzo que hacía durante el proceso, ahora me doy cuenta que en verdad lo que debo adaptar es mi esfuerzo a lo que el mercado pague, aunque es bien dificil de hacer en una sociedad donde no existe un Mercado de Desarrollo de Software real. Pocos usuarios o clientes, saben realmente lo que es una aplicación web, porque al final solo ven resultados. Mientras la aplicación haga lo que tiene que hacer todo está bien.

Entonces… ¿Debería utilizar una nueva herramienta o simplemente una mejor técnica? Vamos a repasar las bases de todo esto…

Bases

La programación es un proceso por el cual se escribe (en un lenguaje de programación), se prueba, se depura y se mantiene el código fuente de un programa. Los programas son los elementos que forman el software, que es el conjunto de las instrucciones que ejecuta el hardware de una computadora para realizar una tarea determinada.

Para el desarrollo de programas de cierta envergadura o complejos, con ciertas garantías de calidad, es conveniente seguir alguno de los modelos de desarrollo de software existentes, en donde la programación es sólo una de las etapas del proceso de desarrollo de software.

Objetivos de la programación

La programación debe perseguir la obtención de programas de calidad. Para ello se establece una serie de factores que determinan la calidad de un programa. Algunos de los factores de calidad más importantes son los siguientes:

  • Corrección. Un programa es correcto si hace lo que debe hacer tal y como se estableció en las fases previas a su desarrollo.
  • Claridad. Al elaborar un programa se debe intentar que su estructura sea sencilla y coherente, así como cuidar el estilo en la edición; de esta forma se ve facilitado el trabajo del programador, tanto en la fase de creación como en las fases posteriores de corrección de errores, ampliaciones, modificaciones, etc. Fases que pueden ser realizadas incluso por otro programador, con lo cual la claridad es aún más necesaria para que otros programadores puedan continuar el trabajo fácilmente.
  • Eficiencia. Se trata de que el programa, además de realizar aquello para lo que fue creado (es decir, que sea correcto), lo haga gestionando de la mejor forma posible los recursos que utiliza.
  • Portabilidad. Un programa es portable cuando tiene la capacidad de poder ejecutarse en una plataforma, ya sea hardware o software, diferente a aquélla en la que se elaboró.

Programas y algoritmos

Un algoritmo es una secuencia no ambigua, finita y ordenada de instrucciones que han de seguirse para resolver un problema. Los programas suelen subdividirse en partes menores (módulos), de modo que la complejidad algorítmica de cada una de las partes sea menor que la del programa completo, lo cual ayuda al desarrollo del programa. Un programa está formado por algoritmos y estructura de datos.

Se han propuesto diversas técnicas de programación cuyo objetivo es mejorar tanto el proceso de creación de software como su mantenimiento. Entre ellas, se pueden mencionar las siguientes:

  • Programación Estructurada: forma de escribir programas de forma clara. Para ello utiliza únicamente tres estructuras: secuencia, selección e iteración.
  • Programación Modular: Es un paradigma de programación que consiste en dividir un programa en módulos ó subprogramas con el fin de hacerlo más legible y manejable. Se presenta históricamente como una evolución de la programación estructurada para solucionar problemas de programación más grandes y complejos de lo que ésta puede resolver.
  • Programación Orientada a objetos (POO): Usa objetos y sus interacciones para diseñar aplicaciones y programas. Un objeto se define como la unidad que en tiempo de ejecución realiza las tareas de un programa, también a un nivel más básico se define como la instancia de una clase.
  • Programación Declarativa: Está basado en el desarrollo de programas especificando o “declarando” un conjunto de condiciones, proposiciones, afirmaciones, restricciones, ecuaciones o transformaciones que describen el problema y detallan su solución. La solución es obtenida mediante mecanismos internos de control, sin especificar exactamente cómo encontrarla. Ejemplo: Haskell, Prolog y Lisp.

Patrones de Diseño

Los patrones de diseño son la base para la búsqueda de soluciones a problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces. Un patrón de diseño es una solución a un problema de diseño. Para que una solución sea considerada un patrón debe poseer ciertas características. Una de ellas es que debe haber comprobado su efectividad resolviendo problemas similares en ocasiones anteriores. Otra es que debe ser reusable, lo que significa que es aplicable a diferentes problemas de diseño en distintas circunstancias.

Desarrollando en la “Vida Real”.

Más aya de buscar la “Aplicación Perfecta”, en la “Vida Real” se persigue desarrollar aplicaciones funcionales en el menor tiempo posible.

Independientemente de las caracteristicas de los Lenguajes de Programacion, la “ventaja” principal de Plataformas como Visual (Basic,C#) + .NET, Delphi [opcionalmente + .NET] y Java+ (NETBEANS/Eclipse) es que ofrecen Entornos de Desarrollo Integrado que agilizan el proceso de Desarrollo, Depuración y Producción, disminuyendo el tiempo de proyección y, sobre todo, los costos; además de que facilitan a los programadores el proceso de Mantenimiento de un Software, garantizan un mejor trabajo en Equipo, ya que es simple crear una “rutina” de trabajo a seguir que se integra totalmente con las herramientas de trabajo. Entre otras cosas, ofrecen una gama enorme de librerias, extensiones y plugins que combinan las caracteristicas del IDE y la potencia de los lenguajes. Estas mismas ventajas ofrecia “el difunto” Visual FoxPro que fue (algunos creen que todavia “es”) durante talvés una década (1990-2000) el lenguaje más utilizado en República Dominicana.

Entre las “ventajas” de lenguajes como Ruby, PHP y Python es que se tiene un mayor control de la aplicación en sí, con una buena técnica  se reduce bastante el código fuente de los scripts, son ligeros, totalmente independientes del sistema operativo, populares, libres, gratis, probados, de uso “general”, ya que se pueden crear aplicaciones web, de consola y aplicaciones de escritorio (gracias a GTK, Qt, wxWidgets, etc), entre otras cosas. Aparte de ZendStudio no existe un IDE para alguno de estos lenguajes que realmente llene las espectativas y que pueda ser utilizado en “la vida real”.

ZendStudio + ZendFramework es, en términos coloquiales, un verdadero “cuchillo”, puesto que ofrece las ventajas de la web,  PHP, la robustes alcanzable gracias al patron de diseño MVC, disminuye el tiempo de desarrollo y mantenimiento, entre otras cosas. A pesar de unos cuantos detalles, fácilmente uno cae en “las garras” de un “monopolio” integrado por ZendGuard, ZendFramework, ZendStudio y ZendServer que claramente está orientado a ser una  solución para empresas, ya sean pequeñas, medianas o grandes. Esto hace que para el “freelancer” las herramientas de Zend le queden grande.

Entonces nos queda Ruby+ Ruby On Rails y/o Python+Django para crear aplicaciones robustas de manera rápida. Aunque estos frameworks son verdaderamente buenos y cumplen con su objetivo, no encajan en el Mercado Local, además de que, a pesar de que las cosas han estado cambiando, no es tan fácil encontrar un buen Hosting que ofrezca soporte para estas tecnologías.

Mis Conclusiones.

Luego de investigar acerca de los lenguajes mencionados, se ha incrementado mi admiración por Ruby, aunque en la práctica no lo utilize. Ruby está orientado totalmente a ofrecer una herramienta real de desarrollo, robusta, fácil, simple y 100% orientado a objetos… ademas, es GRATIS. En los últimos tiempos el interprete de Ruby ha venido mejorando y cada vez pesa menos, aunque esto no es tan relevante ya que cuenta con un gran manejo de memoria. Pero, en un sentido, su fuerte siguen siendo las Aplicaciones de Consola y la Web. RubyGnome2 no es muy factible a la hora de desarrollar una aplicación grande.

PHP… php sigue siendo mi lenguaje predilecto. En los ultimos meses he estado programando aplicaciones de Escritorio con PHP-GTK. Gracias a Glade3, el soporte a POO de PHP5, y el soporte para GTKBuilder de PHP-GTK, he logrado desarrollar aplicaciones aceptables para mis ultimos clientes. Aunque el producto final, específicamente el código fuente, es muy dificil de Mantener.

Siempre he criticado a mis compañeros que utilizan VisualStudio porque: “todo está hecho, solo haces click y es fácil”, porque cuando se utilizan este tipo de herramientas realmente uno a manera personal no crece como Desarrollador, sino que aprende a dominar una herramienta y cuando estos profesionales se les presenta la ocación de crear un cron, un servicio, un deamon o un socket, inclusive una web, entre otras cosas no “visuales”, es como nadar en contra de la corriente.

Gracias a la fuerte influencia del ambiente de trabajo en que estoy ultimamente, le he puesto atención a .NET… y descubrí que, para desarrollar, .NET es realmente una maravilla (lo debo aceptar aunque soy Linuxero). Así que me he puesto a probar el ProyectoMono, en especial MonoDevelop con C# (un gran lenguaje).

Por mi necesidad de crear aplicaciones de Escritorio robustas en el menor tiempo posible, C#+.NET+MonoDevelop es una gran opción. Por ahí anda Java, pero Java sigue siendo un lenguaje muy poco flexible, lo que aumenta el tiempo de aprendizaje, todavía es muy pesado y es una plataforma extremandamente grande, la cual tardaría años para dominar.

Descarto aprender una mejorar técnica de programación puesto que, aunque ahorraría tiempo y dinero, aun sigue existiendo la “fustración” de crear aplicaciones que no son valoradas por el Usuario Final.

Entonces me quedan 4 opciones:

1.- Aprender C# basandome en el ProyectoMono.

2.- Crear un IDE para PHP/GTK

3.- A pesar de la Ignorancia del Usuario Final, utilizar Ruby + RubyOnRails.

4.- Seguir utilizando ZendFramework y pagar por licencias para ZendStudio y ZendGuard, al menos.

La opción 4 queda descartada porque representa una inversión de dinero. Si elijo la 3 igual estaría, creando aplicaciones desvalorizadas por los clientes. Para la 2,  no tengo tiempo… Así que no me queda de otra que Aprender C#.

number of view: 37

david General, Programacion

Servidores y Datacenters de Google

Jueves, 16 de Abril de 2009

Es tiempo que se sabe que Google construye sus propios servidores web, lo que le permite diseñar el máximo rendimiento para servidores y la eficiencia energética. Al día de hoy Google Centro de Datos de la Cumbre de Energía, la empresa que uno de sus servidores de costumbre en la pantalla. He aquí un breve vídeo del servidor, que cuenta con una fuente de alimentación que integra una batería, lo que le permite funcionar como un sistema de alimentación ininterrumpida (SAI).

 

Google ofrece una mirada dentro de su centro de datos de operaciones de Google en la Cumbre de Centro de Datos de Eficiencia que realizo el miércoles en Mountain View, California. Las presentaciones incluyeron un video tour del centro de datos de Google, que presentó la compañía el uso de contenedores para almacenar los servidores y almacenamiento. Cada uno de estos de 40 pies del centro de datos contenedores pueden albergar hasta 1160 servidores, y Google ha estado utilizando desde que comenzaron a construir sus propias instalaciones en 2005. La compañía publicará completo vídeos del evento la próxima semana. Ver DataCenterKnowledge.com para mayor cobertura.

number of view: 50

david Internet