domingo, 12 de agosto de 2012

Lean, principios aplicados a metodologías ágiles de desarrollo

¿Qué es Lean? 

Lean es el nombre de un método de producción y desarrollo creado y aplicado por Toyota. Los principios que subyacen a los métodos de Toyota son principios que funcionan en todas partes porque son universales y se basan verdades que no cambian con el tiempo o el espacio. Las prácticas, es decir, la manera de aplicar estos principios en una determinada situación pueden y deben variar con el tiempo y según la situación evoluciona.

Lean nos dice que hay que centrarse en mejorar el sistema que usamos para producir centrándose en la optimización de procesos. 

Un objetivo fundamental de Lean es crear un flujo rápido y flexible, es decir, es útil pensar en el proceso de desarrollo como un oleoducto y todo lo que ralentiza el flujo son residuos, deshechos. En desarrollo de software los residuos son los retrasos a los que estamos ya habituados, los errores que todos cometemos, los malentendidos, y las esperas y los retrasos por falta de recursos. Todo esto se traduce en el incremento del gasto pero al eliminar los obstáculos, estos residuos, mejoramos nuestro proceso.

El sistema en su conjunto es el origen de los errores. Lean nos dice que la mayoría de los errores son de naturaleza sistémica y por lo tanto el sistema debe ser mejorado. También nos dice que hay que respetar a los trabajadores con el fin de mejorar el sistema. y que hay que hacer las cosas justo en el momento que tengan que hacer, ni antes ni después. A esto se le llama llama comunmente "Just-In-Time" o "JIT" y Lean sugiere centrarse en reducir el tiempo de lanzamiento al mercado mediante la eliminación de las demoras en el proceso de desarrollo, utilizando métodos JIT.

Mejorar la comunicación es un objetivo fundamental de todas las metodologías ágiles, desafortunadamente las prácticas ágiles tienden a enfatizar la comunicación a nivel local, en el equipo, entre los equipos relacionados, y con el cliente. Agile ofrece pocas soluciones para mejorar la comunicación entre equipos no tan íntimamente relacionados y prácticamente ninguna para la comunicación de arriba a abajo o alto y ancho de toda la empresa.

Lean promueve la comunicación centrándose en la creación de valor de extremo a extremo, proporcionando un contexto común para todos los involucrados en el sistema de producción a lo alto y ancho de toda la organización. Esto obliga a los diferentes niveles de la organización a comunicarse con más frecuencia y con énfasis en la mejora continua de procesos, la optimización del conjunto y la entrega temprana y con frecuencia. El pensamiento Lean ayuda a eliminar los retrasos que causan los residuos.


Principios Lean

Los principios Lean se pueden aplicar en muchos ámbitos. Todos los componentes de una empresa involucrados en el flujo de producir o añadir valor al producto o servicio que se ha creado, mejorado o mantenido se pueden beneficiar de estos principios. En el ámbito del desarrollo de software, Lean se puede convertir en una guía para aquellos que quieren desarrollar un software más eficiente y de alta calidad

Lean proporciona una guía para los equipos de desarrollo ágiles. De hecho la metodología Scrum puede ser vista como una manifestación de los principios Lean. Entendimiento Lean puede ayudar en la implementación de Scrum pero también se puede aplicar en toda la empresa, ayudando así a aplicar Scrum en toda la empresa. 




1.- Respetar a las personas


En desarrollo de software, respetar a la gente incluye la noción de que el equipo que hace el trabajo es el responsable del proceso que sigue. El proceso se convierte así en la aplicación de sus ideas de cómo desarrollar buen software. Cuando hay cambios el proceso cambia. Por lo tanto, el proceso es la base por la que el equipo que construye software lo hace de la mejor manera que saben, dentro de las limitaciones que se dan. Respetar al equipo es respetar su proceso.


2.- Eliminar residuos

La eliminación de residuos, desperdicios, basura o en inglés "waste" es la pauta principal para el practicante de Lean. Residuos es código más complejo de lo que debería. Residuos se producen cuando se crean defectos. Residuos es esfuerzo necesario para crear un producto sin valor añadido. Donde quiera que haya residuos, el practicante de Lean analizará el sistema para ver cómo eliminarlos ya que es probable que un error en el sistema vuelva a repetirse tarde o temprano.

3.- Aplazar el compromiso

Aplazar el compromiso significa tomar decisiones en el momento adecuado, en el ultimo momento en que se pueda responder. No se deben tomar decisiones demasiado pronto, cuando no se tiene toda la información que necesita, ni demasiado tarde, cuando puede suponer un gasto extra. Aplazar el compromiso es una manera proactiva de planificar el proceso y así no trabajar en cierta funcionalidad hasta que no se necesite. Esto evita tener que tomar decisiones ahora que podrían cambiar más adelante cuando tengamos más información. Este principio se puede utilizar para guiar el proceso de toma de requisitos, el análisis y el diseño e implementación.

Al establecer los requisitos debemos preguntarnos dónde debo gastar nuestro tiempo. ¿Tengo que concretar todos los requisitos con el cliente? Es evidente que no. Algunos requisitos son más importantes que otros. Los requisitos más importantes para la empresa suelen ser los que representan mayor valor para el cliente. Es un error demasiado común. Las metodologías ágiles profundizan en los requisitos que los clientes consideran más importantes, esta es una de las justificaciones básicas para el desarrollo iterativo e incremental, pero sólo centrarse en las características importantes para el cliente no debería ser suficiente para decidir en qué trabajar en cada momento, Debemos prestar atención a los riesgos de la arquitectura y tener en cuenta qué requisitos pueden causar problemas si se ignoran. Éstos son los que deben ser desarrollados primero y no otros.

Durante las fases de diseño e implementación los desarrolladores tienden a tomar decisiones cuando tienen que resolver un problema pero les alta información o no lo tienen claro. Un enfoque suele ser hacerlo lo más sencillo posible, sin prever necesidades futuras. El otro enfoque es anticiparse a lo que pueda suceder. Ambos enfoques tienen diferentes retos, para el primero el resultado en el código es que es difícil de cambiar porque no ha tenido en cuenta la variabilidad del código mientras lo escribía.  Para el segundo el código es más complejo de lo necesario porque, como los desarrolladores tienen un tiempo difícil predecir, se anticipan a las creando clases, abstracciones o métodos que en realidad no son necesarios, pero que agregan complejidad.

Un enfoque alternativo a estos dos es el llamado "diseño emergente",  Diseño Emergente en desarrollo de software consiste en:

• Utilizar los bien conocidos patrones de diseño para crear arquitecturas de aplicación resistentes y flexibles.

• Limitar la aplicación de patrones de diseño a aquellas características que estén completamente definidas

• Escribir test de aceptación y tests unitarios antes de escribir el código, ambos mejoran el proceso y crean una malla de protección frente a previsibles cambios.

Utilizar patrones de diseño hace el código fácil de cambiar y nos limitamos a implementar sólo lo que realmente se necesita en cada momento además de hacer el código menos complejo. Las pruebas automatizadas mejoran el diseño y lo hacen seguro  frente a posibles cambios de requisitos. Estas características del diseño emergente permiten aplazar el compromiso de una implementación en particular hasta que se entienda lo que realmente se necesita hacer.

4.- Crear conocimiento


El software tiene un valor inherente escaso, su valor viene de que permite y optimiza la entrega de productos y servicios. Por lo tanto, es más útil pensar en el desarrollo de software como parte del proceso productivo, es decir, del conjunto de actividades encaminadas a crear productos que satisfagan las necesidades de los clientes mientras se avanza en los objetivos estratégicos de la empresa.

En las empresas de software, el software se desarrolla para ayudar en el trabajo y las necesidades de los clientes que lo utilizan. El software es un medio para un fin y el fin es satisfacer un cliente, ya sea directamente con un producto o indirectamente al ofrecerle un servicio a través o mediante nuestro software. Cuando se ve de esta manera, es claro que el papel del software en las organizaciones de TI es apoyar a productos y servicios de la empresa y debe considerarse como parte de desarrollo de productos.

El desarrollo de cualquier producto tiene tres pasos:

Descubrir lo que el cliente necesita
Encontrar la manera de fabricarlo
Fabricar

En desarrollo de software, parece pasamos más tiempo hablando del tercer paso, sin embargo, los dos primeros pasos en realidad nos llevan la mayor parte del tiempo. Muchos al leer esto pensarán que no es así y yo les preguntaría cuanto tiempo tardarían en desarrollar un pequeño programa en el que estaban, supuestamente, trabajando y del que, supuestamente, acaban de perder todo el código fuente.  La mayoría de los desarrolladores me dirían que gastarían entre un 20 y un 50 por ciento del tiempo que tardaron la primera vez porque en lo que verdaderamente gasta más tiempo un desarrollador es en  "descubrir lo que el cliente necesita " y, sobretodo, en "encontrar la manera fabricarlo".

Crear conocimiento significa comprender el proceso que se utiliza para desarrollar software para satisfacer cierta necesidad del cliente. Mediante la comprensión de sus métodos, puede mejorar más fácilmente. Crear conocimiento significa documentar mínimamente y compartir diseños puntuales y también diseños globales y arquitectura.

También se crea conocimiento con una buena batería de tests unitarios con una nomenclatura concreta ya que una funcionalidad, un requerimiento del cliente debería traducirse en n tests unitarios que cubran al máximo el código implementado, el nombre de esos n tests debería ser suficiente para que cualquier compañero entienda cómo y por qué funciona y existe ese código.


5.- Entregar rápido y con frecuencia


Otra razón para hacer el desarrollo iterativo es entregar al cliente de manera rápida y continuada permitiendo una pronta inmersión en el mercado, una mayor credibilidad, una fuerte lealtad, etcétera. Aunque esto además supone una mayor rapidez a la hora de conseguir ingresos también supone un gasto previsible por la necesidad calculada de futuros desarrollos en sucesivas iteraciones. 

Este principio, la  "entrega rápida", debe entenderse también como una eliminación de retrasos. Las demoras representan residuos, son gastos innecesarios y se busca eliminarlos entregando más rápido y con más frecuencia. Los beneficios de la entrega rápida son claros pero también es esencial hacerlo de una manera sostenible.


6.- Producir con calidad 

La calidad ha de estar estructurada, o lo que es lo mismo, el sistema debe basarse en la calidad a todos los nivelesA fin de mantener la velocidad de desarrollo los equipos deben desarrollar la calidad tanto en su proceso como en su código. La implantación de calidad en el proceso permite a un equipo mejorar mediante la eliminación de los residuos que él mismo crea. Una manera de conseguir calidad es definir, si es posible entre tester, desarrollador y cliente, pruebas de aceptación antes de escribir el código , esto implica una necesaria conversación en torno a los requisitos y ayuda a los desarrolladores a entender la funcionalidad que necesitan desarrollar.

También se puede conseguir calidad en el código mediante el uso de métodos descritos anteriormente para eliminar residuos. Muchos desarrolladores gastan gran parte de su tiempo investigando como resolver y resolviendo errores o bugs, sin pruebas automatizadas, los errores y los bugs son más frecuentes por culpa de un código de peor calidad además de que el código que es difícil de entender y eso contribuye a la pérdida de tiempo.

7.- Optimizar el conjunto

Hay que concentrarse en todo el proceso en su conjunto, desde el principio (concepto) hasta el final (consumo). Frecuentemente se busca, con toda lógica, optimizar cada paso, cada flujo de trabajo de cada departamento, el problema con la optimización de cada paso es que crea grandes "inventarios" entre los pasos y toda esa cantidad de información a menudo no es tarea fácil de digerir. 

En el mundo del software, estos "inventarios" los representan tareas parcialmente realizadas. Entender el flujo como una sola pieza, como un todo, es decir, centrado en la construcción de un elemento en su totalidad, es un proceso mucho más eficiente que aquel que se concentra en la construcción de cada una de sus partes con mayor rapidez pues los "inventarios" ocultan errores en el proceso, o en la consecución de cada una de las partes o en el ensamblado. Pueden ocultar malentendidos con el cliente, diseños ineficientes, bugs, errores de integración, etcétera. Cuanto mayor sea el inventario o más partes haya más probable es que haya errores no detectados. Residuos. Gastos.



¿Por qué no muchas "equipos ágiles"obtienen los resultados esperados?

¿Por su falta de experiencia?
¿Por falta de atención durante el aprendizaje?
¿Se olvida la gestión del cambio?
¿No están siguiendo el libro?
¿Es porque no han contratado a un tutor o un profesor con experiencia?
¿Tal vez se olvidaron de las buenas prácticas y los patrones de diseño?
¿Es porque no se ha dominado la complejidad o el pensamiento sistémico?
¿Será que no se centran en la mejora continua?

Es posible que se deba a uno o varios de estos motivos pero muchos casos que he visto están relacionados con el diseño de la organización, con burocracia interna y con falta de comunicación interdepartamental.

Los equipos ágiles se centran en la entrega de valor a intervalos regulares. Cada dos o tres semanas trabajan en una lista de oportunidades de negocio expresadas en las historias de usuario o tareas y juntos trabajan a toda velocidad para analizar, desarrollar, probar y liberar todo el conjunto. Su enfoque es fuerte y simple y sus resultados suelen ser bastante bueno sin embargo dependen de personas fuera del equipo. Los gerentes, administrativos, ingenieros de sistemas, comerciales, etcétera, todos ellos individuos que forman parte de diferentes departamentos o entidades organizativas que aún perteneciendo a la misma empresa tienen otro enfoque y otra visión. Algunos se centran en mantener los sistemas actuales, otros en la gestión contable, otros en la captación de clientes, otros en minimizar el cambio, etcétera.

Si bien la principal preocupación del equipo de desarrollo es la liberación de elementos de valor a intervalos regulares ésto es sólo una preocupación menor para los demás integrantes del resto de departamentos y, aunque ésto no es ninguna sorpresa para nadie en realidad, tiene un grave impacto en la tasa de éxito de entrega del equipo de desarrollo.

  • Las historias de usuario no se acaban dentro de la iteración, porque el product owner no ha tenido tiempo para validarlas.
  • La siguiente versión software no sobrevivirá mucho tiempo porque el servicio de soporte técnico no tuvo tiempo para formarse y está creciendo el descontento entre los usuarios.
  • Operaciones ha decidido aplazar la implantación de un nuevo desarrollo interno ya que se acaban de dar cuenta de que tenían un grave problema de almacenamiento.

¿Cómo podemos aprovechar los beneficios producidos por un cambio que abarca todo el proceso si el resto de la organización hace todo lo contrario? Las empresas deberían empezar a plantearse el coaching ágil a todos los niveles. Se ha visto que la formación en metodologías ágiles ha dado muy buenos resultados en equipos de desarrollo pero va siendo hora de ir formando en éste tipo de metodologías y formas de pensar  a todos los niveles de la empresa. 

Yo ya me considero evangelista de éstas metodologías, me encanta hablar de eficiencia y he conseguido que varias personas de distintos departamentos, amigos míos y trabajando en otras empresas, se quedaran encantados con éste enfoque organizativo. Si crees que sería interesante impartir un curso de formación enfocado a la eficiencia en tu empresa, no sólo en departamentos de desarrollo, tan sólo tienes que ponerte en contacto conmigo y lo adapto a tus necesidades.

Crear tu propio negocio

Quiero crear mi propio negocio.

Crear tu propio negocio es un deseo frustrado y un sueño para muchos de nosotros que aún somos, de alguna manera, esclavos al servicio de nuestras respectivas empresas. Pensar en no tener que responder ante nadie, sólo ante nosotros mismos, es realmente atractivo y más aún teniendo en cuenta que las ganancias reales de nuestro esfuerzo repercutirán en nosotros y no en el presidente de la empresa para la que trabajemos en ese momento y a quien ni siquiera conocemos.

Creo que plantearse crear tu propio negocio tiene que ver más con el afán de libertad e independencia que cada uno tenga y no con el afán de lucro y el máximo beneficio. Aprender y mejorar, crecer profesionalmente y aportar con ello a la comunidad en vez de explotar a otros para ganar dinero, ése debería ser el objetivo y es el mío hoy que me planteo crear mi propio negocio.

La mayoría de las personas crean su negocio porque son buenos en su campo y en algún momento de su carrera empiezan a pensar que su jefe o sus jefes no reconocen su aportación ni su esfuerzo. La idea de la independencia surge como un simple deseo y se descarta rápidamente en muchos casos por el riesgo y el esfuerzo que conllevaría llevarla a cabo pero queda ahí, en la superficie de nuestros pensamientos, siempre presente, y desde ese momento no hay vuelta atrás. 

Antes de iniciar tu propio negocio se debe tener en cuenta que hacer el trabajo técnico, el objeto o servicio de tu negocio, y el trabajo de gestión, la contabilidad y los papeleos, son dos cosas totalmente distintas y siendo muy bueno en tu campo y ofreciendo un producto o servicio de tremenda calidad no se consigue nada sin una buena gestión del negocio.

Además, hay ser consciente de que vas a ser tres personas en una: técnico, porque te encanta hacer lo que haces y estas orgulloso del fruto de tu esfuerzo; gerente, porque necesitarás previsión, estabilidad y orden y empresario, porque tendrás que nutrirte de nuevas ideas, estar atento y preparado para los cambios y vivirás siempre al borde de la esquizofrenia en el más total de los caos.

Tendré que dejar de lado el trabajo técnico a menudo para dedicarle tiempo a la gestión y tendré que dejar de lado la gestión para buscar nuevas oportunidades de negocio y, en definitiva, tendré que ir cambiando de rol según las necesidades de cada momento, desde el primer día.

Si no se cubre el rol de técnico no hay producto ni servicio que vender, si no hay un gerente no habrá una estructura y el negocio se convertirá en un caos y sin el rol de empresario el negocio no crecerá y básicamente estaré haciendo un trabajo con una sobrecarga extra que no tenían cuando aún estaban trabajando para otro.Creo que si no se es consciente de todo esto antes de crear un negocio tu negocio esta avocado al fracaso. 

domingo, 22 de julio de 2012

Samsung Galaxy S3: Memory problems


I'm not sure yet on what is the cause or what will be the solution but I came to a headeach on a problem I'm having with my Samsung Galaxy S 3. The problem is this one, although I have plenty of memory on the device I can not install more applications because it tells me that there is no storage space available.

I'll paste a few screenshots of both the computer and the device itself and I will make a public plea for help because I've been looking at forums, mainly in English, and have not found a possible solution. I think, is an assumption, that the problem is in how Ice Cream Sandwich handles device's internal memory. As you know, the SGS3 brings more than considerable internal memory, with 0.98 MB RAM and 11.2 GB of internal storage it should be more than enought and should have no problem unless the system bad manages memory itself. I think, I say, I BELIEVE, that Android ICS is screwing and is the  ultimately responsible for the mismanagement and let me explain why with a few screenshots:


This first screenshot is Airdroid interface (recommended program to manage your phone from your PC and move images, videos, and contacts in both directions. I have marked in red something that shocks me, it has detected as internal memory and a as SD card the same amount of data. See? so, Link2SD has the same wrong detection:



Link2SD did not detect the second storage card (just format it, just has not caught by this because the system if the catches). In Settings / Storage see this:

It's where I wanted to go, the system recognices the SD card but for whatever reason the other applications use or recognize the internal memory as external storage and do not recognize the real external storage. I would say, without the possibility or the time required to debug the system, that something is going wrong in the management of external storage and communication between the system and applications .

What do I do now? Do I have to uninstall some application before installing other applications? Any recommendations? I deleted caches, I deleted the folder Android/data, I have stopped applications and services and I still get the message that there is not enough storage space every time I try to install a new app.

I will continue looking for answers and solutions and when found I will update this post.

Thank you.

SGS3: problemas de memoria

No se todavía cuál es la causa ni cuál va a ser la solución pero me trae de cabeza un problema que estoy teniendo con mi Samsung Galaxy S 3. El problema es el siguiente, aunque tengo memoria de sobra en el dispositivo no soy capaz de instalar más aplicaciones porque me dice que no queda espacio de almacenamiento disponible.

Voy a pegar unas cuantas capturas de pantalla, tanto del ordenador como del propio dispositivo y voy a hacer una petición pública de ayuda porque he estado mirando foros, principalmente en inglés, y no he encontrado una posible solución. Creo, es una suposición, que el problema está en cómo gestiona Android Ice Cream Sandwich la memoria interna del dispositivo. Como sabéis, el SGS3 trae una memoria interna más que considerable, con una RAM de 0.98 MB y 11,2 GB de almacenamiento interno no debería tener nadie ningún problema a no ser que el propio sistema gestione mal la memoria. Creo, digo, CREO, que Android ICS la está cagando y es el responsable último de esa mala gestión y os voy a explicar por qué con unas cuantas capturas de pantalla:


Esta primera captura de pantalla es de la interfaz de Airdroid (programa recomendado para gestionar el teléfono desde tu pc y mover, imágenes videos, contractos y demás en ambas direcciones. He marcado en rojo algo que choca y es que detecta como memoria interna y como tarjeta SD la misma cantidad de datos. ¿Lo ves? Sucede lo mismo con Link2SD:


A Link2SD le sucede lo mismo y no ha detectado la segunda tarjeta de almacenamiento (acabo de formatearla, igual no la ha cogido por eso porque el sistema si que la pilla). En Ajustes/Almacenamiento vemos ésto:


Es a donde yo quería ir, el sistema si que está cogiendo la tarjeta SD pero por el motivo que sea el resto de aplicaciones utilizan o reconocen a la memoria interna como almacenamiento externo y no reconocen el verdadero almacenamiento externo. Diría, sin tener la posibilidad ni el tiempo necesario para depurar el sistema, que algo está fallando en la comunicación entre el sistema y las aplicaciones en cuanto a la gestión de almacenamiento externo. 

¿Qué hago ahora? ¿Tengo que desinstalar aplicaciones para poder instalar otras? ¿Alguna recomendación? He borrado cachés, he borrado la carpeta Android/data, he parado servicios y aplicaciones y aún así recibo el mensaje de que no hay suficiente espacio de almacenamiento cada vez que intento instalar una nueva app.

Espero respuestas pero evidentemente seguiré buscando una solución y cuando la encuentre actualizaré esta entrada. 

Gracias.

miércoles, 18 de julio de 2012

Samsung Galaxy S3 - Actualizar Firmware

Guía simple para actualizar el firmware de tu SGS3 mediante Kyes.

BACKUP DEL SGS3

Para hacerlo descarga Samsung Kies desde aquí:
http://www.samsung.com/es/support/usefulsoftware/KIES/JSP

Una vez instalado y ejecutado conecta tu SGS3...


 Desbloquea el móvil:


Te avisa de que hay una actualización del firmware, de momento "Cancelar" porque primero vamos a hacer un backup por si acaso (mas vale un porsiaca que cien penseques):


Pincha en la pestaña de  "Copia de seguridad / Recuperar" y selecciona todo. Pulsa en "Copia de seguridad" :


Comienza el proceso de copia de seguridad:


Proceso completado:


ACTUALIZACIÓN DEL FIRMWARE

Para actualizar el firmware, pulsa en "Actualizar":


Lee, acepto, yo continuo sin guardar (teléfono y datos, información para Samsung). Pulsa en "Iniciar actualización":


Comienza un proceso lento, primero Kyes prepara el móvil:


Y después empieza a descargar la actualización, éste es el proceso más lento de todos:


Y por fin, después de media hora se reinica el móvil (dos veces) y en el Kyes vemos ésta ventana:


Ya está, ya tenemos el firmware actualizado.

lunes, 9 de julio de 2012

Aprovechando el código fuente de Android


La documentación de Android a veces se queda corta pero podemos utilizar el códgo fuente de Android y de todos sus proyectos para rellenar esos agujeros en la documentación oficial.

El código fuente de Android y todos sus proyectos son administrados por el sistema de control de código fuente de Git. Git (http://git-scm.com/) es un sistema de control de código fuente Open Source diseñado para manejar proyectos grandes y pequeños, con rapidez y comodidad.

El código fuente de Android se publica en http://source.android.com. El código se hizo abrió al público en octubre de 2008 con el objetivo de hacer una plataforma móvil totalmente personalizable. Ver filosofía y objetivos (en inglés).

Buscando las fuentes de Android en Internet podemos encontrarlas en:

http://android.git.kernel.org
http://source.android.com/source/index.html

Había más sitios donde encontrar código fuente online pero han sido cerrados para dar mas impulso al uso de Git.

Usar Git para descargar Fuentes Android es bien fácil, independientemente de la plataforma que utilices (Linux, Mac, Windows...) primero tienes que instalar Git y luego descargar el código que busques, no voy a entrar en detalles porque ya hay cientos de tutoriales pero si que voy a poner aquí algún video y algún enlace interesante.


Resumen de Paquetes Java en Android

Android contiene más de 50 paquetes y más de 1000 clases, y sigue creciendo con cada nueva versión. Una forma de obtener una visión general de la plataforma Android es ver la estructura de los paquetes de Java. Como Android se desvía de la distribución estándar de Java es importante saber lo que es compatible y lo que no. He aquí una breve descripción de los paquetes más importantes que se incluyen en el SDK de Android:

android.app: implementa el modelo de aplicaciones Android. Las clases principales son Application, Activity, Fragment, pero también encontrarás aquí los controles, cuadros de diálogo, alertas y notificaciones.

android.app.admin: ofrece la posibilidad de controlar el dispositivo remotamente por, por ejemplo, administradores de la red de una empresa.

android.accounts: proporciona clases para gestionar las cuentas del usuario (Google, Facebook, WhatsApp, etc. ). Las clases principales son Accountmanager y Account.

android.animation: Contiene todas las nuevas clases de animación por propiedades.

android.app.backup: proporciona los hooks para las aplicaciones de copia de seguridad y restaurción de cuando ante un cambio de dispositivo.

android.appwidget: proporciona la funcionalidad para los widgets de la pantalla principal.

android.bluetooth: proporciona una serie de clases para trabajar con la funcionalidad Bluetooth.

android.content: implementa los conceptos de los proveedores de contenido, que abstraen el acceso a datos de su almacenamiento. También incluye los Intents y los Android Uniform Resource Identifiers (URIs).

android.content.pm: implementa la gestión de paquetes. Un gestor de paquetes sabe acerca de los permisos, los paquetes, servicios, proveedores de contenido componentes y aplicaciones instaladas.

android.content.res: proporciona acceso a los recursos, tanto estructurados como no estructurados. Las clases principales son AssetManager (para los recursos no estructurados) y Resources.

android.database: permite implementar una base de datos. La interfaz principal es Cursor.

android.database.sqlite: implementa las interfaces del paquete anterior con SQLite como base de datos física. Las clases de primaria son SQLiteCursor, SQLiteDatabase, SQLiteQuery, SQLiteQueryBuilder y SQLiteStatement.

android.drm: enfocado a la gestión de derechos digitales.

android.gesture: clases e interfaces necesarias para trabajar con gestos definidos por el usuario. Las clases principales son Gesture, GestureLibrary, GestureOverlayView, GestureStore, GestureStroke y GesturePoint.

android.graphics: gestión de gráficos, contiene las clases Bitmap, Canvas, Camera, Color, Matrix, Movie, Paint, Path, Rasterizer, Shader, SweepGradient, y TypeFace entre otras.

android.graphics.drawable: implementa los protocolos de pintado, da soporte a las imágenes de fondo, y permite la animación de los objetos que se pueden dibujar.

android.graphics.drawable.shapes: implementa formas, incluyendo ArcShape, OvalShape, RectShape PathShape, y RoundRectShape.

android.hardware: implementa las parte "física" relacionada con la cámara y otros dispositivos y sensores.

android.hardware.usb: permite comunicación con los dispositivos conectados por USB.

android.location: permite la gestión de direcciones y localizaciones.

android.media: contiene las clase MediaPlayer para reproducir audio y vídeo, MediaRecorder para grabar audio y vídeo, Tone para reproducir fragmentos cortos de sonido, AudioManager responsable de los controles de volumen  y FaceDetector  para detectar las caras de la gente en un mapa de bits .

android.media.audiofx: proporciona efectos de audio.

android.media.effect: proporciona efectos de vídeo.

android.mtp: posibilita la interacción entre las cámaras y los dispositivos de audio.

android.net: implementa sockets a nivel de red. Las clases principales incluyen Uri, ConnectivityManager, LocalSocket y LocalServerSocket. Android soporta HTTPS a nivel del navegador y también a nivel de red, el navegador también es compatible con JavaScript.

android.net.rtp: protocolos de streaming.

android.net.sip: soporte para VOIP.

android.net.wifi: conectividad Wi-Fi. Las clases principales incluyen WifiManager, que es el responsable de gestionar la lista de las redes configuradas y de la red Wi-Fi activa y WifiConfiguration.

android.nfc: para interactuar con dispositivos cercanos y para permitir el "comercio sin contacto".

android.opengl: contiene utilidades para OpenGL ES 1.0 y 2.0.

android.os: representa los servicios del sistema operativo accesibles a través de Java. Algunas clases importantes son BatteryManager, Binder, FileObserver, Handler, Looper y PowerManager. Binder es una clase que permite la comunicación entre procesos. FileObserver vigila cambios en archivos.

android.preference: permite mantener una configuración de preferencias en las aplicaciones. Las clases principales son PreferenceActivity, PreferenceScreen,  CheckBoxPreference y SharedPreferences.

android.provider: conjunto de proveedores de contenido predefinidos (contactos, media stored, explorador y configuración).

android.sax: Simple API para XML (SAX).

android.speech: soporte para la conversión de texto a voz. La clase principal es TextToSpeech.

android.telephony: permite multiples operaciones relacionadas con la telefonía propiamente hablando. 

android.telephony.gsm: permite obtener la ubicación del teléfono y el envío de SMS entre otras cosas.

android.telephony.cdma: soporte para la telefonía CDMA.

android.test, android.test.mock, android.test.suitebuilder: para apoyar a escribir las pruebas unitarias durante el desarrollo de aplicaciones Android.

android.text: clases de procesamiento de texto.

android.utils: librería de utilidades

android.view: clases enfocadas a la interfaz de usuario.

android.webkit: contiene las clases que representan el navegador web.

android.widget: controles de la interfaz de usuario para widgets

com.google.android.maps: necesario para trabajar con Google Maps.

Esta es una pequeña muestra pero puedes ver todos los paquetes con detalle en el listado oficial de paquetes.

Breve historia de Android hasta Ice Cream Sandwich

Los teléfonos móviles utilizan una gran variedad de sistemas operativos como Microsoft Windows Phone, Linux Mobile, Symbian OS, iPhone OS (basado en Mac OS X), Moblin (de Intel), entre otros. No se puede considerar niguno de estos sistemas como un estándar ya que las API's disponibles y los IDE's para el desarrollo de aplicaciones móviles son demasiado restrictivos y parecen quedarse atrás en comparación con los frameworks de escritorio. Sin embargo, la plataforma Android es completamente abierta, el código fuente es Open Source, es decir, es libre y de fácil acceso desde multitud de sitios en Internet. El sitio oficial es http://www.android.com.

Google adquirió la empresa Android Inc. recien formada en 2005 para iniciar el desarrollo de la plataforma Android. Los actores clave en Android Inc. fueron Andy Rubin, Rich Miner, Nick Sears y Chris White.

El 5 de noviembre de 2007 nació la Open Handset Alliance, un consorcio de varias compañías fabricantes de dispositivos móviles. El primer SDK de Android salió en noviembre de 2007. En septiembre de 2008, T-Mobile anunció la disponibilidad de T-Mobile G1, el primer teléfono inteligente que utilizaba Android. Desde entonces, hemos visto los SDK 2.0, 3.0 y 4.0, que han ido saliendo más o menos cada año. Los dispositivos que utilizaban Android fueron pocos pero ahora ocupan una gran cuota de mercado.

Uno de los principales objetivos arquitectónicos era permitir que las aplicaciones pudieran interactuar unas con otras y poder reutilizar componentes. Esta reutilización no sólo se aplica a los servicios, sino también a los datos y la interfaz de usuario (UI).

En las versiones 1.0 y 1.1 (2008) Android no era compatible con los teclados virtuales a los que ahora estamos tan acostumbrados, se corrigió este problema al liberar el SDK 1.5 en abril de 2009, junto con un número de otras características avanzadas.

En septiembre de 2009 salió versión 1.6 del sistema operativo Android y un mes después salió Android 2.0, lo que supuso una avalancha de dispositivos Android en las Navidades de 2009. Esta versión introdujo la capacidad de búsqueda por voz entre otras cosas.

En Android 2.3, se introdujeron muchas mejoras como la capacidad de utilizar la cámara en condiciones de poca luz, la posibilidad de poner el móvil en modo AP Wi-Fi, mejoras significativas de rendimiento, mejora de Bluetooth, la posibilidad de instalar aplicaciones en la tarjeta SD, OpenGL ES 2.0 para gráficos 3D, mejoras en la copia de seguridad, mejoras en la usabilidad de búsqueda, mejoras en la sensibilidad de los sensres, etc.

Android 3.0 se centra en las Tablets, basadas ​​en procesadores de doble y mucho más poderosas que los dispositivos móviles que había en la actualidad. Las principales características de esta versión incluyen soporte para utilizar una pantalla más grande, pantalla de inicio y widgets mejorados y más controles de interfaz de usuario disponibles. También se mejoró el OpenGL con renderScript para complementar aún más ES 2.0. Supuso un gran avance para las tabletas.

Durante la versión 3.0, pensada para tables, la rama 2.x de Android continuó siendo utilizada por teléfonos mientras. La verisión 4.0 Android supone una fusión de estas ramas en una sola consiguiendo dar soporte a tablets y dispositivos móviles. Para los usuarios de teléfonos móviles, la única diferencia es que, en la interfaz de usuario, la experiencia desarrollada para tablets se trajo a las pantallas cada vez mejores de los teléfonos.

ASPECTOS CLAVE PARA EL USUARIO DE ANDROID 4.X

• Se ha añadido la nueva fuente Roboto para proporcionar nitidez en pantallas de alta densidad.
• Se ha añadido una mejor manera de organizar las aplicaciones en carpetas en las páginas de inicio.
• Se ha añadido la capacidad de arrastrar aplicaciones y carpetas a la barra de favoritos que siempre está presente en la parte inferior del dispositivo en Home.
• Se han optimizado las notificaciones según el tipo de dispositivo. Para dispositivos pequeños aparecen en la parte superior y para dispositivos de mayor tamaño aparecen en la barra de sistema.
• Los widgets de tamaño variable, de desplazamiento.
• Se han añadido una variedad de formas de desbloquear la pantalla.
• Se ha mejorado el corrector ortográfico.
• Se ha mejorado la entrada de voz con una opción para hablar continuamente.
• Se ha mejorado la aplicación de Contactos con un perfil personal muy similar a las redes sociales.
• Se han añadido importantes mejoras en la aplicación de la cámara: enfoque continuo, retardo del obturador, detección de rostros, además de un editor de fotos y la posibilidad de introducir algunos efectos tontos y una forma rápida de compartir capturas de pantalla.
• El rendimiento del navegador es dos veces más rápido.
• Ha mejorado la aplicación de correo electrónico.

NOVEDADES PARA LOS DESARROLLADORES:

• Refresco de las animaciones basado en las propiedades de los objetos, incluidos los puntos de vista.
• Soporte para una serie de estándares móviles: Advanced Audio Distribution Profile (A2DP), que otorga la capacidad de utilizar altavoces externos, Real-time Transport Protocol RTP: para flujo de audio / vídeo sobre IP, protocolo de transferencia multimedia (MTP), Picture Transfer Protocol (PTP), para conectar a los ordenadores y descargar las fotos y los multimedia, y Bluetooth Headset Profile (HSP).
• Gestión de derechos digitales (DRM).
• Almacenamiento cifrado y contraseñas.
• API social mejorada.
• Mejora del calendario.
• Correo por voz


Distribución por versiones en la actualidad:

viernes, 6 de julio de 2012

Generadores Magnéticos: energía limpia gratuita

Como decía en la anterior entrada, he tenido mucho tiempo libre y he estado buscando información sobre teorías unificadoras de la física, energías limpias, generadores magnéticos, etc. Voy a hacer aquí una recopilación de los mejores videos de motores magnéticos que hay actualmente en Internet.

Motores tipo Perendev:
Funcionamiento
Esquema magnético detallado
Perendev magnetic motor - SolidWorks model
Rotor experimental casero
Uno algo mejor
Uno mejor, auto alimentado

Basados en los diseños de Howard Johnson:
Quanta Magnet Motor Generator Hybrid_Part 1
Quanta Magnet Motor Generator Hybrid_Part 2

Searl:
John Searl Story - SEG Theory of Operation
Searl Effect Generator - 3D Representation
SEG voltage controlled demonstration

Varios:
Permanent Magnetic Motor from Argentina.
Magnetic Generator To Power Your Home
WORKING MAGNET MOTOR
FREE ENERGY Home Generator
The "Ossie motor" self-running, self-charging in closed loop
Free Energy Demonstration - Delayed Lenz Effect
Free energy motor test 5
Easy to make free energy, perpetual motion machine using monopole magnet.
Electric DIY scooter/bike: silent, clean and cheap.
Free Electricity from Permanent Magnets
Muammer Yildiz - Magnet Motor Demo-3 ( FREE ENERGY )
Generators rather than Magnet Motors may be the way to go
How to Build a Magnetic Motor For Free Energy


Buscaré diseños y gente que los comercialice...

Nueva era de la física: Einstein-Cartan-Evans

Una de las cosas con las que he alimentado mi tiempo "libre" todos estos días convaleciente en el sofá ha sido la física. Fruto de la casualidad, navegando sin rumbo por Internet,acabé viendo información sobre generadores magnéticos, o lo que es lo mismo, producción de electricidad a partir del vacío. El tema me pareció más que interesante así que estuve buscando información científica al respecto de estos principio para asegurarme de que no era un engaño y encontré éste documento que aquí transcribo y al que añado vínculos a entradas en Wikipedia acerca de la teoría ECE (Einstein, Cartan y Evans) escrito por Horst Eckardt, Munich, Alemania y Laurence G. Felker, Reno, Nevada, USA, en 2005 y cuyo original está disponible en la siguiente dirección:
Resumen

Durante más de medio siglo se ha buscado la manera de incluir a todas las fuerzas naturales dentro de una teoría unificada. El físicoquímico Myron W. Evans es quien finalmente lo ha logrado bsándose en los conceptos fundamentales de Albert Einstein y Elie Cartan, su teoría adopta la geometría del espacio-tiempo mismo como el origen de todas las fuerzas existentes en la naturaleza. Al igual que Einstein atribuyó la gravitación a la curvatura del espacio-tiempo, la nueva teoría atribuye el electromagnetismo a la torsión del espacio-tiempo.  De ser así entonces existiría la posibilidad de interacciones recíprocas entre la gravitación y el electromagnetismo, concepto actualmente rechazado por la corriente principal de la física, y conduciría a la predicción de nuevos efectos físicos que podrían utilizarse para la producción de energía a partir del espacio-tiempo. 

Introducción 

Durante siglos, los físicos y los filósofos han buscado una descripción unificada de todos los fenómenos que ocurren en la naturaleza. Hoy día ya sabemos que el mundo a nivel cuántico submicroscópico se comporta en una forma muy diferente a la que observamos familiarmente en nuestra experiencia macroscópica. En particular, las teorías gravitatorias han mostrado ser irreconciliables con la teoría cuántica. Por lo tanto, uno esperaría que, si pudiera unificarse la gravitación con la teoría cuántica, podrían resultar desarrollos completamente novedosos. Parece que semejante unificación finalmente se ha logrado, pero no en la manera esperada por varias generaciones previas de científicos. Esta unificación predice nuevos efectos fundamentales -  por ejemplo, la producción de energía sin que sea necesaria la alimentación de otra energía primaria. Esta predicción, entre otras, está generando mucho interés en los círculos profesionales y científicos. En los próximos párrafos reseñaremos brevemente los orígenes de esta unificación. 

En 1915, Albert Einstein publicó una teoría acerca de la interacción gravitatoria; denominó a esta teoría como Teoría General de la Relatividad,  y hoy día proporciona las bases para nuestra comprensión y exploración del cosmos en general. En 1905, Einstein ya había producido la Teoría de la Relatividad Especial, la cual se basa en el conocido postulado de la "constancia de la velocidad de la luz" en el vacío. Durante los últimos 30 años de su vida, Einstein buscó desarrollar una teoría unificada aún más totalizadora, la cual pudiera incluir a todas las fuerzas naturales conocidas. Dedicó su vida a esta investigación entre los años de 1925 y 1955, aproximadamente, mas no alcanzó su meta deseada. A partir del descubrimiento de la mecánica cuántica en la década de 1920, la mayoría de los físicos se dedicaron a esta última y no a la Teoría General de la Relatividad. No fue muy tomado en cuenta el hecho de que la mecánica cuántica fuese consistente sólo con la Teoría de la Relatividad Especial, pero no con la Teoría General de la Relatividad. Además, aún cuando la mecánica cuántica resulta exitosa para describir la capa electrónica de los átomos, no resulta una teoría adecuada para las elevadas densidades de masa que se observan dentro de los núcleos atómicos. 

Otro progreso importante hacia la teoría unificada, desarrollado durante el siglo XX consistió en una unificación del electromagnetismo con la fuerza nuclear débil, a través de una extensión del formalismo de la mecánica cuántica. Hasta ahora, la gravitación se ha mantenido fuera del modelo aceptado para la física de partículas. 

Elie Cartan no es tan conocido como Einstein. Fue un matemático francés que intercambió ideas con Einstein respecto de muchos detalles de la Teoría General de la Relatividad. La percepción original de Cartan fue que el electromagnetismo podría obtenerse, por  geometría diferencial, a partir de la geometría del espacio-tiempo - de un modo similar a la idea de Einstein respecto de que la gravitación podía derivarse de la geometría del espaciotiempo. 

Sin embargo, ni Cartan ni Einstein lograron obtener una unificación exitosa. La unificación fue lograda finalmente en el año 2003 por Myron Evans quien, formado como físicoquímico, aportó un renovado enfoque al problema. Evans ocupó varias cátedras en Inglaterra y los Estados Unidos antes de que se le forzase a renunciar como resultado de sus puntos de vista poco ortodoxos, y ahora se desempeña como uno "investigador privado" en su nativa Gales. Desde allí, dirige el "Alpha Institute for Advanced Study" (AIAS) - el cual presenta sus ideas al público a través del trabajo de un equipo internacional de científicos. 

Habiendo concentrado recientemente su trabajo en el estudio de la producción de energía a partir del vacío, un tema evitado por la ciencia establecida y por la industria, el sitio de AIAS está generando mucho interés, tal como lo demuestra un continuo incremento en las estadísticas de visitas mundiales al sitio de AIAS. Muchas universidades y establecimientos de investigación de amplio reconocimiento internacional visitan frecuentemente este sitio de Internet.   

En mi opinión si algo de todo esto es cierto la sociedad ya debería estar planeando la sustitución total de sus fuentes de energía convencionales por esta fuente de energía nueva, poderosa, eterna y limpia.
1 Las cuatro fuerzas naturales

Para llegar a comprender la importancia de la unificación, uno debe partir del conocimiento de los parámetros a unificar. En el mundo de la física, se acepta en general que todo las interacciones en la naturaleza son manifestaciones de cuatro fuerzas fundamentales. Estas se caracterizan brevemente como sigue: 

1.  Los campos de fuerza aparentemente independientes generados por las cargas  electrostácticas y el magnetismo fueron unidos en el siglo XIX, principalmente a través de la obra de Maxwell, en lo que hoy día denominamos electromagnetismo, o el campo electromagnético.

2.  La fuerza nuclear débil es responsable de la descomposición radiactiva. De  acuerdo con el modelo aceptado de la física de partículas elementales, esta interacción débil se lleva a cabo a través de los bosones W y Z, los cuales son "partículas virtuales". También se incluye a los neutrinos como participantes en esta interacción débil. Se ha demostrado que la fuerza débil es esencialmente lo mismo que el electromagnetismo a muy altas energías. Así, suele decirse que estas dos fuerzas se encuentran "ya unificadas". 

3.  La fuerza nuclear fuerte mantiene unidos a los protones y neutrones. Se ejercita a través de una combinación de gluones y quarks, aún  cuando una prueba experimental directa de su existencia sólo se logró recientemente.

4.  La gravitación es la cuarta fuerza fundamental, pero no encaja dentro de la imagen teórica de las otras tres, ya que se le considera (según la Teoría General de la Relatividad de Einstein) como la curvatura del espacio-tiempo, lo cual no corresponde a la terminología clásica para una fuerza. Por otro lado, la Teoría General de la Relatividad ha sido ampliamente demostrada experimentalmente, de manera que nadie pone en duda su validez. 

2 Unificación 

Si pudiese desarrollarse un formalismo y una descripción unificada para estas cuatro fuerzas tan diferentes, ello podría resultar en el desarrollo de muchos nuevos conceptos teóricos y aplicaciones prácticas. Además, podrían predecirse  y utilizarse interacciones mutuamente recíprocas - las cuales la corriente principal de la física actual no acepta. Tal como veremos más adelante, semejantes interacciones abrirían nuevas posibilidades para la generación de energía. En vista de las urgencias provocadas por la crisis energética global, esta aplicación podría llegar a transformarse en la consecuencia más importante de toda esta unificación.

Las tres primeras fuerzas fundamentales se relacionan con la física cuántica (el mundo "pequeño"), en tanto que la cuarta fuerza (la gravitación) tiene aplicación en todas las escalas, que incluyen los órdenes de magnitud cósmicos. Por lo tanto, el problema fundamental subyacente consiste en la unificación de la Teoría General de la Relatividad con la mecánica cuántica. La ciencia convencional ha explorado esencialmente tres caminos diferentes que podrían alcanzar este resultado:

1. Traer a la Relatividad General dentro de la física cuántica. La dificultad insuperable aquí es que el parámetro del tiempo, en la física cuántica, se maneja como un parámetro continuo y único, lo cual resulta desproporcionado con las coordenadas cuantizadas de distancia (o desplazamiento espacial).

2. Cuantización de la Relatividad General. Sin embargo, el formalismo matemático para este enfoque resulta hasta el momento inconcluyente, así como incapaz de relacionarse con resultados experimentales.

3. Desarrollo de una teoría completamente nueva, a partir de la cual se seguirían las otras. Ejemplo de esto son las diferentes “teorías de cuerdas”, pero éstas requieren de espacios multidimensionales (N>10) los cuales poseen poco sentido físico, a la vez que no han sido capaces de producir predicciones evaluables en la práctica.

Sorprendentemente, la solución provino de un sitio  totalmente inesperado. Mediante la extensión de la teoría de Einstein según las líneas sugeridas inicialmente por Cartan, Evans demuestra que las cuatro fuerzas fundamentales pueden derivarse a partir de una teoría ampliada. Esto representa la largamente buscada Teoría del Campo Unificado. El enfoque de Evans no sigue exactamente ninguno de los tres caminos antes mencionados, aún cuando se aproxima más al tercero de ellos. 

3 Bases de la teoría de Evans 

Para comprender las bases de la teoría de Evans, debemos primero recordar los puntos de partida de la teoría de la relatividad de Einstein. Éste postuló que la presencia de un cuerpo masivo o una distribución de energía en el espacio (que en realidad son intercambiables, según la ahora famosa ecuación E=mc2) cambia la geometría del espacio. Si se observa a partir de ángulos rectos dentro de un sistema de coordenadas euclidiano, el cuerpo masivo  "crea" una curvatura del espacio (o, más exactamente, del espacio-tiempo). Uno puede representar lo anterior directamente por medio de una fórmula: 
                                                      R = k T

en donde R designa a(l tensor de) la curvatura, T a(l tensor de) la densidad de energía-momento, en tanto que k es una constante de proporcionalidad. El lado izquierdo de esta ecuación es geometría, en tanto que el lado derecho es física. De esta forma, Einstein utilizó la geometría de coordenadas curvilíneas, las cuales se remontan al matemático Riemann.

Esta ecuación implica que el espacio-tiempo (es decir, las tres coordenadas espaciales y el tiempo como la cuarta coordenada) constituye un continuo de cuatro dimensiones (conocido como “variedad”, o manifold) cuya curvatura percibimos como una fuerza (concretamente la gravitación).

Deberá notarse aquí que la ecuación de Einstein no  aprovechó todas las características posibles de la geometría de Riemann. Resulta que R sólo describe la curvatura intrínseca de la variedad; en otras palabras, se limita a describir vectores cuya variación punto por punto yace íntegramente dentro de la variedad.


En contraste con lo anterior, Cartan utilizó consideraciones de curvatura extrínseca. Esto significa que los vectores también pueden variar dentro (y en forma normal a) el plano tangente a la variedad en cualquier punto. 



Cartan mostró que la curvatura extrínseca del espacio-tiempo podría tomarse representando al electromagnetismo según lo describen las ecuaciones de Maxwell. Desafortunadamente, el empleo del concepto matemático de tensores por parte de Einstein volvió confusa su relación con los conceptos geométricos de Cartan. Este último utilizaba la así-llamada "tétrada" para representar la curvatura extrínseca de la variedad. En el caso tridimensional, esto se reduce a una "tríada" de coordenadas cartesianas, la cual se mueve junto con un punto en el espacio. Dicho en una forma más exacta, la tétrada especifica un espacio tangencial en cada punto de la variedad de Riemann. De esta forma, en cada punto uno mantiene un espacio tangencial euclidiano (un así-llamado espacio fiduciario), el cual simplifica marcadamente la descripción y la visualización de los procesos físicos.

A pesar del valor de los conceptos desarrollados por Einstein y Cartan, aún no fue posible formular una teoría unificada, ya que todavía no existían las indicaciones experimentales de cómo extender la teoría de Maxwell en una manera consistente con la Teoría General de la Relatividad. La conexión crucial surgió cuando Evans descubrió, alrededor de 1990, el campo del espin, o campo B^(3).

El efecto empírico decisivo - el Efecto Faraday Inverso (IFE), es decir, la magnetización de la materia mediante un rayo de radiación electromagnética circularmente polarizada, observada experimentalmente por primera vez en 1964 - no podía explicarse mediante el modelo electrodinámico de Maxwell-Heaviside, excepto mediante la introducción de un tensor específico para describir la propiedad del material.

Sin embargo, en 1992, Evans pudo derivar el IFE directamente a partir de primeros principios (teoría del campo unificado con covarianza generalizada, la cual incluye a la teoría general de la relatividad), y así logró inferir la  existencia de un componente de campo magnético previamente desconocido - el campo B^(3).

El campo B^(3) es, informalmente, una corrección que introduce la teoría general de la relatividad a la electrodinámica clásica, en cierta forma similar a la corrección introducida por la teoría general de la relatividad a la teoría gravitacional de Newton, corrección requerida para explicar el avance del perihelio del planeta Mercurio.

Los índices - (1), (2) y (3) - utilizados aquí se refieren a la así-llamada base circular; y las direcciones de polarización B^(1) y B^(2) se refieren a las direcciones de polarización transversal del campo. Así, debe insertarse en las ecuaciones de Maxwell un índice de polarización.

Este índice corresponde a los vectores q^a de la tétrada. Finalmente, esto conduce a Evans a postular que la representación geométrica del vector del potencial electromagnético,  A, debiera ser como sigue:  

A^a = A^(0) q^a

donde A es la matriz de 4x4 del potencial electromagnético completo, mientras que A^(0) es un factor de proporcionalidad. Los campos eléctrico y magnético (combinados en el tensor Fa del campo electromagnético total) emerge entonces directamente a partir de la expresión de Cartan para la torsión, T^a:

                                                    F^a = A^(0) T^a

En este formalismo, se atribuye completamente la electrodinámica a la torsión geométrica del espacio-tiempo. El panorama completo, que unifica el electromagnetismo con la gravitación, requiere entonces tanto de la curvatura de Riemann como de la torsión de Cartan. La curvatura intrínseca determina la gravitación, en tanto que la curvatura extrínseca (es decir, la torsión) determina el campo electromagnético. Esto puede describirse en detalle mediante ecuaciones de campo adecuadas que utilicen la geometría de Riemann-Cartan.
Esta teoría física se denomina ahora como de Einstein-Cartan-Evans (ECE), a partir de los apellidos de sus tres principales autores.


4 Unificación con las fuerzas nucleares fuertes y débiles

Aún falta por describir cómo se representan en la teoría ECE las dos fuerzas fundamentales restantes.

Si uno analiza las ecuaciones de la teoría, se observa que se formulan para el espacio tangencial de la variedad de Riemann. El número de vectores base para este espacio puede  seleccionarse libremente, y no requiere ser de cuatro dimensiones. En consecuencia, se  ofrece la posibilidad de seleccionar las bases que sean adecuadas para la descripción de la  acción cuantizada (por ejemplo, el espín del electrón). Más aún, Evans logró derivar, a partir  de la geometría de Cartan, una ecuación de onda, la cual en principio es una ecuación no  lineal de autovalores. Bajo ciertas suposiciones de aproximación, esta ecuación se vuelve lineal y predice estados estables discretos. Estos estados estables vendrían a ser los  "cuantos" de energía-momento de la mecánica cuántica. Todas las teorías de mecánica  cuántica, en particular la teoría del electrón de Dirac, y las interacciones fuertes y débiles,  pueden deducirse en esta forma como casos particulares de la teoría ECE.

Si comparamos este resultado con los tres caminos convencionales hacia la unificación descritos anteriormente, se observa que ninguno de los tres se utiliza realmente. La nueva teoría predice efectos cuánticos sin asumirlos (como si fuesen un postulado) desde un principio. Las primeras dos fuerzas (electromagnetismo y fuerza débil) se combinan, la tercera y la cuarta resultan ser derivables a partir de otras consideraciones. En pocas palabras, ¡no existen "fuerzas fundamentales" verdaderas debido a que todas ellas surgen a partir de la geometría!

5 Implicaciones para la física cuántica

La principal implicación es que la teoría cuántica, en su forma actual, no constituye una descripción fundamental de la naturaleza. En particular, la interpretación de Heisenberg y el Principio de Correspondencia resultan incorrectos. La versión ECE de la física cuántica se construye sobre bases clásicas y completamente determinísticas; la indeterminación cuántica no desempeña papel alguno. Sin embargo, las ecuaciones de la mecánica cuántica (por ejemplo la ecuación de Schröedinger) son correctas y describen procesos estadísticos clásicos. Resultaría un punto negativo para la teoría ECE si no predijera este resultado, debido a que las ecuaciones de la mecánica cuántica han sido verificadas experimentalmente muchas veces.

Evans también argumenta que el Principio de Incertidumbre de Heisenberg surgió sólo debido a una confusión, y que no se justifica. Todos los puntos-masa físicos de una teoría de campo son en realidad densidades - es decir, cuantos de materia-energía distribuidos dentro de un volumen de espacio. Resulta entonces que el cuanto de acción de Planck debe dividirse por el volumen, por ejemplo, del instrumento de medición en el cual dos variables complementarias (por ejemplo posición y momento) se están midiendo. El resultado puede ser arbitrariamente pequeño, es decir la incertidumbre puede reducirse a varios órdenes de magnitud más pequeños que lo considerado previamente. Una partícula elemental, por lo tanto, no es ni exclusivamente una onda ni exclusivamente una partícula, pero posee características de ambas simultáneamente.

Esto suena fantástico como una teoría de la física, pero precisamente esto ya logró medirse hace algunos años [5]. Se utilizaron métodos propios de la corriente principal de la física para refutar experimentalmente la relación de incertidumbre.

Como ejemplo adicional de un efecto que resultaba difícil de explicar en el pasado, consideremos el efecto Aharonov Bohm.


Dos rayos de electrones se difractan en una pantalla luego de su paso a través de una doble ranura, observándose la generación de un patrón de interferencia típico. En la zona de difracción se encuentra una bobina toroidal cerrada. El campo magnético se encuentra cerrado en forma circular y por lo tanto permanece dentro de la bobina. Si ahora se conecta y desconecta el campo magnético, en cada uno de estos dos casos se observa un patrón de interferencia diferente. En consecuencia, el campo magnético cerrado posee un efecto en los rayos de electrones, aún cuando éstos no están en contacto directo con la bobina. Esto pareciera relacionarse con una "acción a la distancia" de la mecánica cuántica, la cual ha dado origen a muchas confusiones y a especulaciones erróneas.
La teoría ECE trata este problema de la siguiente manera. El campo magnético de la bobina crea un "vórtice" (debido a su torsión) del espacio-tiempo, el cual se extiende hacia el espacio exterior a la bobina toroidal misma. El efecto de atracción de este vórtice (es decir, el efecto del vector del potencial A) es entonces capaz de influir sobre los rayos de electrones. Así, la aparente "acción a la distancia" se reduce formalmente a un efecto local causal y determinístico.

Evans señala que la torsión siempre se encuentra acompañada por la curvatura. Dado que la curvatura se manifiesta como masa gravitatoria, resulta entonces que el espin de todas las partículas elementales debe contribuir con un componente a su masa gravitacional. A partir del neutrino ya sabemos esto experimentalmente, aún si el modelo tradicional falla en esta ocasión. También resulta entonces que los fotones deben poseer una masa gravitatoria, la cual sin embargo es extremadamente pequeña, y se ubica por debajo de los actuales límites de detección.

6 Implicaciones tecnológicas 

Típicamente, las nuevas teorías conducen a aplicaciones prácticas de las mismas sólo muchos años después de haber surgido. En el caso de la fusión nuclear, la esperanza de que se produjera energía útil para su empleo por la sociedad permanece incumplida aún después de 50 años. En contraste, la teoría ECE sugiere aplicaciones directas en varios campos, en particular, la urgente cuestión de la producción de energía.

La posibilidad de una nueva fuente de energía surge a partir de la interacción recíproca entre la gravitación y el electromagnetismo. Según la teoría clásica actual (las ecuaciones de Maxwell) esta interacción no es posible.

Sin embargo, la teoría ECE predice que un campo gravitacional siempre está conectado con un campo eléctrico y viceversa [6]; esto podría denominarse "electrograviticidad". El efecto se ha conocido por muchas décadas, por supuesto, pero hasta ahora ha carecido de una descripción cuantitativa. Esto se vuelve ahora posible con ayuda de la teoría ECE. Esta aplicación debiera despertar significativo interés en las industrias aeronáuticas y espaciales.

En el campo de los generadores eléctricos, el generador unipolar se hallaba a la espera de una explicación adecuada desde que fue inventado por Faraday en 1831. Este fenómeno ya resulta completamente explicable [7]. Análogamente a lo sucedido con el efecto Aharonov Bohm, debe considerarse la torsión del espacio-tiempo. En este caso esta torsión se crea mediante una rotación mecánica.

La aplicación técnica más interesante se refiere a la extracción de energía directamente a partir del espacio-tiempo. Uno debe comprender esto como un efecto de resonancia. En primer término, las ecuaciones de la teoría ECE muestran que la materia puede "transducir" energía a partir del espacio-tiempo circundante (a veces también se refieren a éste como "el vacío"). Para lograr esto se vuelve necesario en la práctica que uno fabrique una configuración adecuada de espacio-tiempo, como por  ejemplo un dispositivo mecánico o lectromagnético ingenioso. La configuración debe ser tal que pueda provocar una excitación resonante del material. Se sabe que, a partir de oscilaciones mecánicas forzadas, con frecuencias de excitación adecuadas, es posible transferir grandes cantidades de energía hacia o a partir del sistema oscilante.

Es probable que muchas invenciones "supraunitarias" en el campo de la energía alternativa funcionen de esta forma. En estos casos, los inventores hallaron el mecanismo de resonancia por accidente. En consecuencia, algunos de los experimentos no son repetibles, debido a que no se conocen realmente ya sea el mecanismo fundamental y/o los parámetros críticos del sistema que condujeron al resultado deseado.

La teoría ECE vuelve posible calcular exactamente estos parámetros. El grupo de AIAS se haya actualmente estudiando el mecanismo de excitación, mediante soluciones numéricas de las ecuaciones de la teoría ECE. Experimentalmente, el esfuerzo se enfoca a la excitación resonante de circuitos eléctricos. Si uno pueda obtener energía de esta forma, las partes mecánicas móviles (como las que emplean los generadores) se vuelven innecesarias; y debido al pequeño tamaño de la fuente, cada artefacto eléctrico podría, en principio, incluir su propia fuente de energía. Los componentes básicos podrían diseñarse en cascada hasta alcanzar escalas similares a las actuales usinas generadoras de energía.

Un aplicación final se encuentra en la tecnología médica. La tomografía por resonancia magnética nuclear (RMN) requiere del empleo de campos magnéticos muy elevados, lo cual obliga a un diseño y construcción correspondientemente complejos. En vez de ello, uno podría utilizar el Efecto Faraday Inverso (descrito más arriba) para generar los campos magnéticos requeridos para el paciente. Esto sólo requiere radiación electromagnética en la región de la radiofrecuencia del espectro. En este caso ya no se requieren entonces grandes bobinas de solenoides, y el aparato de RMN podría construirse en una forma significativamente más pequeña y más económica. 

7 Implicaciones cosmológicas


La teoría ECE también posee implicaciones para la astrofísica y la cosmología. La expansión del universo se considera convencionalmente gobernado por la Ley de Hubble, la cual predice que las galaxias se alejan de nosotros más rápido cuanto más lejanas se encuentran de nosotros. Esto se basa en el corrimiento hacia el color rojo de la luz estelargenerada en las galaxias que se alejan.
Sin embargo, los astrónomos han descubierto recientemente fluctuaciones de corrimiento hacia el color rojo que no pueden conciliarse con la Ley de Hubble, aún cuando esto no se discute públicamente. La teoría ECE puede explicar fácilmente estas desviaciones. Uno puede traducir las ecuaciones de ECE hacia un modelo dieléctrico. El efecto recíproco entre la radiación y la gravitación se describen allí mediante la introducción de una constante dieléctica de valor complejo. Esto conduce a predicciones de refracción de luz y absorción.
En áreas del universo con alta densidad de masa, la constante dieléctrica es mayor que en áreas de baja densidad de masa. La absorción de energía en estas áreas conduce a un mayor corrimiento de la luz estelar hacia el color rojo. Este modelo llega mucho más allá que el modelo de Hubble.

En la teoría de Evans, la radiación cósmica de fondo explica la energía de radiación  absorbida, y no se contempla como una evidencia del Big Bang, el cual no ocurre según este modelo. En cambio, existen en el universo regiones de expansión y de contracción, adyacentes las unas a las otras.

8 Conclusiones


La teoría ECE describe una unificación de las cuatro fuerzas fundamentales, así como sus interacciones recíprocas, en una forma sencilla y poco ortodoxa. Todas las interacciones físicas se reducen a geometría. La teoría cuántica se coloca sobre una base determinística causal, en tanto que se conserva la descripción estadística de los procesos a nivel atómico.

Los puntos importantes de la teoría ECE son los siguientes:

1. El espacio-tiempo se encuentra completamente determinado mediante la curvatura y la torsión. Toda la física puede derivarse, por geometría diferencial, a partir de estas cualidades primordiales subyacentes del espacio-tiempo.

2. La curvatura constituye la base de la gravitación, y la torsión es la base del
electromagnetismo. También, la torsión implica curvatura y viceversa.

3. La teoría ECE se basa matemáticamente en la geometría diferencial. Se apoya
exclusivamente en relaciones causales y procesos no estocásticos.

4. La teoría ECE se basa en tres postulados: el postulado de curvatura del espaciotiempo desarrollado por Einstein para la gravitación y los dos postulados de torsión del espacio-tiempo desarrollados por Evans para el sector electromagnético.

5. Los conceptos de Einstein se vuelven aún más profundos que lo considerado en un principio. Específicamente, los puntos de vista de que "toda la física es geometría" y de que "la mecánica cuántica se halla incompleta" son correctos.

6. La interpretación de Copenhagen de la mecánica cuántica resulta incorrecta; el
espacio abstracto de la teoría cuántica es el espacio tangente de la teoría general de la relatividad.

7. El acoplamiento de la electrodinámica con la gravitación conduce a un gran número de nuevas aplicaciones.

8. En cosmología, no existe ni una ley de Hubble ni un Big Bang.

Estas ideas son difíciles de digerir para los científicos universitarios ya establecidos, a  menos de que lleven a cabo una reorientación fundamental en su forma de pensar. La teoría de Evans recibirá un fuerte impulso hacia un mayor desarrollo si logra abrir nuevas fuentes de energía. De ser así, estas ideas se volverán aceptadas por la mayoría, ya sea con o sin el apoyo de las universidades y de los institutos de investigación.

9 Referencias
[1] http://www.aias.us, http://www.atomicprecision.com
[2] Myron W. Evans, Generally Covariant Unified Field Theory, Parte 1. Abramis, 2005, ISBN 1-84549-054-1

[3] L.G. Felker, The Evans Equations of Unified Field Theory, versión previa a su impresión, en http://www.aias.us
[4] http://www.aias.us/weblogs/log.html
[5]http://en.wikipedia.org/wiki/Afshar_experiment,
http://www.aias.us/Comments/comments01022005.html
[6] P.K. Anastasovski et al., Development Of The Evans Wave Equation In The Weak Field >Limit: The Electrogravitic Equation, preprint  2003(http://www.aias.us/pub/electrogravitic2.pdf)
[7] F. Amador et al., Explanation of the Faraday Disc Generator in the Evans Unified Field Theory, artículo # 43 de la serie de campo unificado, 2005
(http://www.aias.us/pub/a43rdpaper.pdf)


Más información:

ECE Engineering Model
How Do Space Energy Devices Work? (recomendado!)

Devices for Space-Time Resonance Based on ECE Theory