admin – Página 11 – Instituto FOC | Informática ONLINE | FP Informática ONLINE

Implantación en España de la Formación Profesional dual

La formación profesional dual es una modalidad dentro de la formación profesional que realiza en régimen de alternancia entre el centro educativo y la empresa, con un número de horas o días de estancia en ésta y en el centro educativo.

Inspirada en sistemas que llevan años funcionando con éxito en otros países europeos como Alemania o Austria Durante el desarrollo del programa en la empresa, el alumno recibe una beca salario y, a su vez, debe cumplir con el horario que le fije la empresa. En este aspecto reside la principal diferencia con el modelo ordinario de FP, que sólo contempla una estancia limitada de tres meses en la empresa una vez que el alumno concluye su ciclo formativo en el centro.

El calendario de medidas recientemente impuesto por la Comisión Europea a España incluye que la formación profesional dual sea aplicada más allá de la fase piloto actual.

Las ventajas de este modelo son:

– Adquisición de competencias en el propio lugar de trabajo.

– Rápido tránsito de la formación al mercado laboral.

– Fácil acceso al empleo por la implicación de las empresas

– Las empresas obtienen desgravaciones fiscales

Los dos principales inconvenientes:

 

– El perfil empresarial de España es muy distinto al alemán.

– Falta de personal cualificado para formar en las empresas.

En noviembre de 2012 se publicó el Real Decreto en el que se establecen las bases de la formación dual en España. Es un cambio profundo en la formación profesional, para conectarla con el mundo empresarial. En España hay unos dos millones de jóvenes que no trabajan ni estudian y la Formación Dual que incluirá a chicos y chicas de hasta 30 años mientras dure la crisis, puede ser una herramienta para revertir esa tendencia.

La formación dual se formalizará con un convenio con la empresa a través de un programa de becas de entre 250 y 500 euros. Según la secretaria de Estado Engracia Hidalgo, el principal objetivo es que el 57 por ciento de los jóvenes cursen estas enseñanzas. “Hasta aquí la evolución ha sido esperanzadora”, ha dicho, desde que entró en vigor en febrero hasta ahora se han firmado 37.310 contratos.

– los alumnos recibirán en las empresas al menos un 33 por ciento de las horas lectivas, dependiendo del ciclo formativo.

– el contrato que se suscribe tiene una duración mínima de un año y máxima de tres

– cuenta con la máxima protección social, incluida la de desempleo.

– para las empresas de hasta 250 trabajadores, se bonifica el 100 % de la Seguridad Social; para las que tienen más empleados la bonificación es del 75 %.

– si el alumno es discapacitado, la duración máxima del contrato será de hasta 4 años y el 25 % del tiempo de prácticas lo podrá dedicar a rehabilitación.

– si al cabo de tres años el contrato sigue en vigor, se transformará en indefinido y por cada uno de los años que ha durado habrá una bonificación de 1.500 euros, 1.800 si es mujer.

La implantación de esta modalidad depende, como en toda la oferta educativa, de cada Comunidad Autónoma.

4K Los monitores del futuro

4K es un estándar emergente de alta resolución que pretende sustituir al actual Full HD(1920×1080). Con 4K conseguimos una resolución de 3840×2160 (8,3 megapixels) con una relación de 16:9, aunque existen algunas variaciones variaciones dependiendo de la relación de aspecto, como la usada en «Digital Cinema Initiatives 4k (native resolution)» con una resolución de 4096×2160 con una relación de aspecto de 1.90:1, convirtiéndose en la más usada y posiblemente el futuro estándar 4k. Esta nueva resolución se denominará 4k UHDV, habiéndose definido también otras resoluciones como 8k UHDV con una resolución de 7680 × 4320 (33,2 megapixels).

En la actualidad los grandes fabricantes de televisores ya disponen de televisiones con esta resolución, aunque todavía con precios demasiados altos.

4k

¿Que es JSON?

JSON (JavaScript Object Notation)es un formato ligero de intercambio de datos muy presente en javascript aunque podemos ver que este tipo de formatos se puede extender a lenguajes como C, C++, C#, Java, Perl yPython.

Su principal características es las simplicidad que tenemos para leer y escribir información por parte de los des arrolladores y por parte de nuestras máquinas.

JSON esta formado por:

  • Una vector/colección formado por pares de nombre/valor. En algunos lenguajes este tipo de vector/colección se le conoce como array asociativo, diccionario o tabla hash.
  • Una lista ordenada de valores.

Por ejemplo vamos a diseñar un sistema en javascript para automatizar los mensajes de error de un formulario a través de JSON. Para ello vamos a crear las siguiente variable JSON:

var infPersonal={"edad" : "35",    "ciudad" : "Madrid, ES",    "genero" : "hombre"}

En el caso de que que queramos acceder a esa información solo tendriamos que hacer lo de la siguiente forma:

alert(infPresonal.edad);

Si os fijáis el acceso exactamente igual que cuando accedemos a un atributo publico en C# o Java.

Como en otros lenguajes realmente infPersonal es un array donde dentro podemos incluir cualquier otro tipo de objeto. Este tipo de formato nos va ayudar mucho para definir, sobre todo en javascript, constantes o elementos que vamos a utilizar para hacer nuestras páginas web dinámicas como representación de gráficas.

 

 

Novedades para el programador de Android en el pasado Google IO

Google IO 2013Mucha gente quedó algo defraudada con el pasado Google IO ya que no se presentó ninguna nueva versión de Android ni ningún terminal. Como ya dijimos, claramente fue una edición para profesionales y más aún para desarrolladores.

A pesar de esto, son muchas las novedades que se anunciaron y que aparecerán en próximas versiones.

Y precisamente una de las novedades es que Google está apostando por ir reduciendo el problema de la coexistencia de las diferentes versiones, para ello se va a potenciar el hacer el software aún más estratificado, añadiendo más valor e importancia a los diferentes apis que ya existen desde versiones antiguas (como la 2.2 Froyo). Con esto y haciendo más ligera la ejecución se busca mejorar la experiencia tanto en las nuevas versiones como en las versiones antiguas.

Con esto se consigue alargar la vida de los terminales más antiguos, permitiéndoles a la vez acceder a funcionalidades más recientes, dentro de sus escasos recursos. Por otro lado facilita la labor del desarrollador que no tiene que hacer diferentes versiones de las aplicaciones para cada nivel de API ni se le obliga a elegir una rango de Versiones a las que destinar su aplicación.

En cualquier caso, este no va a ser un cambio rápido, sino que será en el medio plazo cuando veamos los frutos de esta política.

Donde sí que se vieron cambios que casi con total seguridad veremos en la siguiente versión 4.3 será en los diferentes frentes:

  • Bluetooth 4.0: mayor ahorro energético, más posibilidades multimedia. Google ha decidido dejar de usar BlueZ (el stack bluetooth de linux) por un desarrollo propio BlueDroid, acelerando así la incorporación de nuevas funcionalidades
  • Mejor rendimiento gráfico: una firme apuesta por el uso de las GPU de varios cores y su utilización en la paralelización de los gráficos. También se han introducido mejoras en la manera en al que re renderizan los layouts. Hasta ahora el orden en el se incluían los Views eran determinante en la velocidad de repintado, ahora, se optiza este repitando dependiendo de los tipos de Views y la configuración de la GPU.
  • Nueva versión del acceso a la cámara que próximamente permitirá generar grabaciones continuas y que utilizará intensivamente la GPU para mejorar el rendimiento.

Ordenadores cuánticos a la vuelta de la esquina

cuantica

 

Un equipo de ingenieros australianos de la Universidad de Nueva Gales del Sur (UNSW) han descubierto como representar un bit mediante el núcleo de un átomo de silicio, lo que promete grandes mejoras para procesamiento  de datos en ultra poderosas computadoras cuánticas del futuro.

En el artículo publicado en ‘Nature’, los expertos describen cómo leyeron y escribieron información mediante la orientación magnética (spin) de un electrón en un átomo de fósforo integrado en un chip de silicio.

“Hemos adaptado la tecnología de resonancia magnética nuclear, comúnmente conocida por su aplicación en el análisis químico y la imaginería por resonancia magnética, para el control y lectura del espín nuclear de un átomo en tiempo real”, dice el Profesor Andrea Morello de la Escuela de Ingeniería Eléctrica y Telecomunicaciones en UNSW.

El núcleo de un átomo de fósforo es un imán muy débil, que puede apuntar en dos sentidos naturales, ya sea “arriba” o “abajo”. En el  extraño mundo cuántico, el imán puede existir en dos estados al mismo tiempo – una característica conocida como superposición cuántica.

Las posiciones naturales son equivalentes al “cero” y “uno” de un código binario, tal como se utiliza en los ordenadores clásicos. En este experimento, los investigadores controlaron la dirección del núcleo, en efecto, “escribir” un valor en su espín, y luego “leer” el valor de salida – convirtiendo el núcleo en un cubit en  funcionamiento.

“Logramos una fidelidad de lectura del 99,8 %, lo que establece un nuevo punto de referencia para la exactitud de cubit en dispositivos de estado sólido”, dice el profesor Andrew  Dzurak, quien también es director del Fondo Nacional de fabricación australiana en UNSW, donde se hicieron dispositivos.

La precisión de los cubits de espín nuclear del equipo de la UNSW hace que muchos lo consideren como el mejor bit cuántico actual – un solo átomo en una trampa electromagnética dentro de una cámara de vacío. El desarrollo de esta tecnología conocida como “trampa de iones” fue galardonado con el Premio Nobel 2012 de Física.

Fuente: Actualidad Informática

Abierto plazo matriculación Ciclos FP de Grado Superior de Informática

Ya se encuentra abierto el plazo de matrícula para el curso 2013/14  para los ciclos de Grado Superior de Informática de imparte el Instituto FOC, en concreto:

– Administración de Sistemas Informáticos en Red

– Desarrollo de Aplicaciones Multiplataforma

Desde el año 2004 el  Instituto FOC ofrece la nueva modalidad de enseñanza reglada on-line  que permite acceder a la Formación Profesional Específica con la ventaja del sistema on-line, que permite al alumno seguir  el curso a su ritmo y sin horarios.

Esta titulación oficial junto con otras certificaciones informáticas profesionales (Microsoft, Cisco, Linux LPI) incluidas en el curso,  ayudarán al alumno/a en su desarrollo profesional y laboral,  valiéndose de numerosos contenidos prácticos y apoyado en todo momentro por un equipo de docentes especializados en la formación a distancia,

Además de la doble titulación los ciclos incluyen otros aspectosa a tener en cuenta como la descarga de software original Microsoft y la realización de clases on-line en directo.

Más información en: www.foc.es

 

Mejora del Centro de Desarrollo de Microsoft

Desde la página de GenBetaDev nos anunciaron el pasado 19 de Mayo la  nueva imagen del Centro de Desarrollo de Microsoft.

En ella destacan la nueva división de los desarrollos en cuatro bloques:

Además de renovar la imagen de la web también han ampliado la documentación disponibles para los desarrolladores según el nivel de conocimientos.

Como novedad destacable es la incorporación de herramientas para desarrollo para los dispositivos iOS.

Nuevo entorno de desarrollo para Android: Android Studio

Este pasado Google I/O ha estado marcado por las noticias para desarrolladores.

Parece que Google ha optado por separar en dos actos distintos las noticias para usuarios normales y para un público más técnico.

Hasta el pasado, en todos los Google I/O se habían presentado nuevas versiones de Android y terminales. En esta ocasión cuando se le preguntó al presentador del acto por noticias de Android para el gran público, la respuesta fue de que de eso se hablaría después.

Sí que han sido muchas las noticias para público profesional. La mayoría relacionadas con diferentes APIs de servicios de Google.

Android Studio

Una de las noticias que más ha llamado la atención ha sido la presentación de Android Studio, un nuevo entorno de desarrollo para Android. Hasta ahora las primeras críticas de los programadores más profesionales están siendo bastante buenas, aunque hay que dejar claro que se trata de una versión alpha con un número de versión de 0.1 (hay que recordar que Google tradicionalmente etiqueta sus productos con versiones muy bajas aunque el estado de su desarrollo sea moderadamente avanzado).

Aún así muchos programadores aseguran haber migrado su desarrollo (lo cual nos hace dudar de su profesionalidad, ningún profesional pasa su entorno de producción a uno nuevo calificado como alfa).

La instalación no puede ser mas sencilla:

  • Descargamos el la versión correspondiente (disponible desde el principio para Windows, Mac OS y Linux)
  • Hacemos doble clic y seguimos los pasos del instalador. En caso de existir problemas (en Windows 7 y 8 se están detectando), normalmente se solucionan estableciendo adecuadamente la variable JDK_HOME al directorio donde está instalado Java (Mi Equipo>Propiedades>Propiedades avanzadas>Pestaña Avanzada>Variables de entorno)

A partir de aquí, para crear un proyecto basta con seleccionar New Project o si queremos importar un proyecto previamente desarrollado con Eclipse tendremos que usar la opción de exportar previamente (incorporada en la última versión de ADT)

Mis primeras impresiones es que realmente sorprende para ser una versión alfa. Por citar un ejemplo en la parte de control de código encontramos 5 tipos  de repositorios distintos, por supuesto git, github, svn ….

Próximamente veremos cómo hacer nuestro primer proyecto.

 

ARM, la ‘navaja suiza’ de los procesadores

 

arm

ARM (Advanced RISC Machine) nació como una arquitectura para uso en ordenadores y dispositivos embebidos. En la actualidad se ha ampliado enormemente los dispositivos en los que se integra: se utilizan en teléfonos y tabletas, por supuesto, en reproductores y grabadores de vídeo (DVD, Blu-Ray, etc.), videoconsolas portátiles o incluso en modems y routers de comunicación. Pero también en televisores, frigoríficos, lavadoras o lavavajillas, en teléfonos DECT o incluso en coches. Los aspiradores robot e incluso juguetes como Lego Mindstorms NXT utilizan un procesador ARM. Además, ARM también se usa como chips en microcontroladores de gestión de dispositivos, como por ejemplo un disco duro tradicional o un SSD.

En Wikipedia podemos encontrar una amplia lista que con las arquitecturas y los núcleos que han existido a lo largo de la historia de ARM, desde la primera ARMv1 (núcleo ARM1) hasta la actual ARMv7 (núcleos Cortex-A, Cortex-M y Cortex-R) o incluso la próxima arquitectura ARMv8 (con los Cortex-A50) que ya ha sido diseñada y cuyos primeros productos se esperan para el 2013.

ARM no es solo un procesador, es un tipo de arquitectura, en la que también otros fabricantes han creado sus procesadores basándose en ARM, como por ejemplo Qualcomm (y sus ARMv7 Snapdragon, modelos Scorpion y Krait), NVidia (Tegra en todas sus vertientes), Apple (ARMv7 en los últimos A6 y A6x) o Samsung (y sus Exynos, hasta ahora todos basados también en ARMv7).

qualcomm

Una de las principales características de ARM es que utiliza relativamente pocos transistores en comparación con arquitecturas. Esto le permite ofrecer un rendimiento aceptable con un consumo energético muy bajo, y con lo que además hache que fabricar un procesador ARM sea también notablemente más barato.

Fuente: Xataka

Formación Profesional en Europa

Un 47% de los europeos se decanta por la Formación Profesional después de sus estudios obligatorios, pero solamente el 27% de los jóvenes de entre 15 y 24 años la recomendaría a sus coetáneos, lo que indica que la FP aún no cuenta con una imagen positiva.

 En España y Portugal, el porcentaje de jóvenes que se decanta por la FP es sólo el 24%, la tasa más baja de Europa, seguida de Malta (27%) y muy lejos de países como Países Bajos (76%) , Eslovaquia (70%) o República Checa (66%).

Estos datos los ha hecho públicos la Comisión Europea y proceden del informe Eurobarómetro sobre las “Actitudes frente a la educación y la formación profesionales”. La Comisaria Europea de Educación, Cultura, Multilingüismo y Juventud, Androulla Vassiliou, ha señalado que “invertir en la educación y en la Formación Profesional es también uno de los mejores modos de luchar contra el desempleo juvenil. Si creamos una Formación Profesional de alta calidad daremos un gran impulso al desarrollo personal de los jóvenes y les permitiremos adquirir el tipo de competencias específicas que los empresarios necesitan”.

Vassiliou también señaló que hay que “seguir mejorando la orientación profesional y mejorar la comunicación con los jóvenes, para que sean conscientes de la elevada demanda de profesionales cualificados”.

Cuando se les pregunta a los encuestados sobre qué imagen se tiene de la Formación Profesional en su país, un 71% responde que positiva, mientras que el 23% la considera negativa. El mayor porcentaje de respuestas negativas se ha registrado en Malta (92%), seguida de Finlandia (90%) y Austria (88%), al contrario que en Eslovenia y Países Bajos (50%).

Aunque existen diferencias entre un país y otro, la media de matriculaciones ha ido disminuyendo cada año. En 2010, los ministros de Educación de 33 países europeos, junto con representantes de la patronal, los sindicatos y la Comisión Europea aprobaron el “Comunicado de Brujas”, diversas medidas destinadas a hacer la FP más accesible y adecuada a las necesidades del mercado de trabajo, con objetivos comunes hasta 2020 y un plan de acción hasta 2014.

Por otro lado, el programa Leonardo da Vinci ha conseguido que más de 600.0000 jóvenes europeos desde 1995 hayan tenido prácticas en el extranjero. También ha financiado 110.000 intercambios de formadores y más de 3.000 proyectos dedicados a modernizar el sector.

Fuente:  empleojoven.es

¿Que es y para que nos sirven los TDD?

Un TDD (Test Driven Development) es una técnica de desarrollo software en la que primero pensamos en las pruebas que vamos a realizar y luego aplicar técnicas de refactorizamos para tener un código limpio.

Para elaborar estas pruebas lo que realizas primero son las pruebas unitarias que vamos a realizar y a continuación, en base a estas pruebas, realizamos la implementación de nuestro código. Después aplicamos la refactorización a nuestro código para tener una implementación lo mas limpia posible.

Vamos a realizar un ejemplo concreto para ver como aplicamos esta técnica

Supongamos que tenemos una aplicación donde estamos implementando la gestión de nuestro carrito de la compra. En nuestro carrito de la compra vamos a poder insertar cualquier articulo, y por cada articulo que nosotros añadamos se deberá actualizar el importe total. Tendremos en cuenta que si introducimos un elemento que ya se encuentra en  nuestro carrito lo que realizaremos es un incremento de las unidades.

Partimos de las siguientes clases:

La clase Item que nos va a servir para almacenar los distintos elementos del carrito

class Item
    {

        private String _nombre;

        private Decimal _pUnidad;

        private int _ctdad;

        public String Nombre
        {
            get { return _nombre; }
            set { _nombre = value; }
        }

        public Decimal PrecioUnidad
        {
            get { return _pUnidad; }
            set { _pUnidad = value; }
        }

        public int Ctdad
        {
            get { return _ctdad; }
            set { _ctdad = value; }
        }

        public Item()
        {
            Nombre = «»;
            Ctdad = 0;
            PrecioUnidad = 0;
        }

        public Item(String _n, int ctdad, Decimal precio)
        {
            Nombre = _n;
            Ctdad = ctdad;
            PrecioUnidad = precio;
        }

    }

Y la clase Carrito para gestionar los elementos que vamos añadiendo al carrito:

 class Carrito
    {

        private List<Item> carrito;
        private Decimal _precTotal;        

        public Carrito(){
            carrito = new List<Item>();
            _precTotal = 0;            
        }
        
    }

 

Si seguimos las normas del TDD primero vamos a diseñar las pruebas unitarias para los distintos requisitos que vamos a cumplir:

1.- Comprobar que el importe total es de 0 cuando no tenemos ningún elemento en la cesta.

La prueba unitaria que nosotros tendremos que realizar es la siguiente:

[TestMethod]
 public void CestaCompraVacia()
 {
 // Comprobamos
 Carrito c = new Carrito();
 Assert.AreEqual(0, c.ItemsCarrito); // Comprobamos que hay cero elementos
 Assert.AreEqual(true, c.carritoVacio); // Comprobamos que el precio es 0
 }

Ahora en nuestro código dentro de nuestra clase que gestiona el carrito completaremos su código con los siguientes propiedades:

public bool carritoVacio
 {
 get { return carrito.Count == 0; }
 }

public int ItemsCarrito
{
get { return carrito.Count; }
}

2.- Comprobamos que cuando insertamos un elemento se actualiza el precio total y el número de artículos

En este caso la prueba unitaria a realizar seria la siguiente:

public void Añadir1ItemCesta()
 {
 // Comprobamos
 Carrito c = new Carrito();
 c.AddItem(new Item("CD's Virgenes",1,5));
 Assert.AreEqual(5, c.PrecTotal);
 Assert.AreEqual(1, c.ItemsCarrito);
 }

Como el método de ItemsCarrito ya lo tenemos implementando como resultado de la prueba anterior lo único que tenemos que realizar es la propiedad para obtener el precio total

public Decimal PrecTotal
 {
 get { return _precTotal; }
 set { _precTotal = value; }
 }

y el método para añadir elementos al carrito:

public void AddItem(Item it)
{
_precTotal += it.PrecioUnidad * it.Ctdad;
carrito.Add(it);         
}

 

3.- Comprobamos que cuando insertamos varios elementos se actualiza el precio total y el número de artículos teniendo en cuenta que podemos incluir elementos repetidos.

        [TestMethod]
        public void AñadirVariosItemCesta()
        {
            // Comprobamos 
            Carrito c = new Carrito();
            c.AddItem(new Item("CD's Virgenes", 1, 5));
            c.AddItem(new Item("CD's Virgenes", 1, 5));
            c.AddItem(new Item("CD's Virgenes", 1, 5));
            c.AddItem(new Item("DVD's Virgenes", 1, 10));
            Assert.AreEqual(25, c.PrecTotal);
            Assert.AreEqual(2, c.ItemsCarrito);
        }

Si observamos, aparentemente podemos ejecutar la prueba para ya que tenemos todos los métodos y propiedades a utilizar correctamente. Al ejecutar la prueba veremos que esta prueba no la supera ya que cada item que hemos añadido los considera como un objeto nuevo. Por lo que tendremos que modificar el método AddItem para que compruebe si el item existe y en caso de que existe modificar la cantidad almacenada.

Para ello vamos a incorporar un método de busqueda de productos y modifcaremos el método AddItem de la siguiente forma:

private Item estaItem(String nombre)
        {
            
            foreach (Item it in carrito){
                if (it.Nombre == nombre)
                    return it;
            }
            return null;
        }

        public void AddItem(Item it)
        {
            Item encontrado = estaItem(it.Nombre);
            if (encontrado!=null)
            {
                encontrado.Ctdad += it.Ctdad;
            }
            else
            {                
                carrito.Add(it);
            }
            _precTotal += it.PrecioUnidad * it.Ctdad;
        }

Podemos observar que con esta técnica de desarrollo tenemos un control mas seguro sobre el cumplimiento de los requisitos que si primero desarrollamos y luego realizamos las pruebas.

 

Próximamente nuevo estándar de acceso seguro a la web: HSTS

En breve se establecerá como estándar (a día de hoy es una propuesta) el nuevo protocolo HSTS (HTTP Strict Transport Security protocol), se trata como su propio nombre indica, de un nuevo protocolo de acceso a los contenidos en la web que se unirá a los ya existente HTTP y HTTPS, poniendo especial énfasis en la seguridad.

El acceso a una página web utilizando el protocolo HTTPS (versión segura de HTTP) nos garantiza que se utilizan certificados para autentificar la identidad del servidor y  comunicaciones TLS para garantizar la encriptación de los datos.  No obstante existía la posibilidad de incluir enlaces no seguros ( de tipo HTTP),  los cuales  podían dar una falsa sensación de seguridad al usuario al estar en una página previamente autentificada con certificados.

El protocolo HSTS viene a rellenar este hueco: cuando accedamos a una página bajo este protocolo, no se podrá acceder desde su contenido a enlaces que no sean seguros, es decir no se podrán incluir enlaces de tipo HTTP.  En el caso de incluirlos, sus URLs se convertirán directamente a HTTPS y en el caso de que estas URL no soporten el estándar de seguridad, por ejemplo porque su certificado no está avalado por una autoridad certificadora reconocida, se mostrará un aviso al usuario sin acceder a su contenido.

Dos son los casos más habituales que se resolverán con este protocolo:

  • El caso de páginas seguras pero que incluían contenido de terceros y por tanto se podían introducir enlaces inseguros.
  • Las páginas que utilizaban un página de login insegura (usando HTTP) para una vez logado el usuario pasar a una conexión segura (HTTPS). Si usan HSTS , tendrán que utilizar un contexto seguro desde el principio.

Esperemos que este protocolo llegue a mejorar la seguridad de la red.

 

La Universidad de York investiga discos duros de hasta 200GBps

laser

 

Hoy en día, nos encontramos discos duros con interfaz SATA III, con tasas de transferencia de hasta 600 MBps. Pero esto puede ser ridículo si tenemos en cuenta las últimas investigaciones de la Universidad de York, donde han descubierto un nuevo método de grabación mediante impulsos de calor.

Los investigadores han descubierto una tecnología que permitiría una velocidad de transferencia de datos de unos 200GBps, lo que conseguiríamos multiplicar por 300 la tasa de transferencia del actual SATA III, y además se conseguirían discos duros con 10 veces más capacidad que los actuales.

Hasta ahora los discos duros han sido normalmente magnéticos y se escribían y leían por medio de campos magnéticos. Esta nueva tecnología se basa en un nuevo sistema de grabación de la información mediante pulsos de calor, pulsos ultra cortos que se realizan mediante un láser, y que haría cambiar la orientación magnética norte/sur de parejas de nanopartículas magnéticas, que representarían los unos y ceros.

Además, según los científicos de este descubrimiento, aseguran que es el método más eficiente en cuanto a consumo energético, ya que no solo se limitaría a un consumo ultrareducido, sino que con esta tecnología se puede aprovechar el calor desprendido por otros componentes para su funcionamiento.

Fuente: http://www.softmixed.com/podrian-crearse-discos-duros-de-hasta-200gbps-n-801

Acceso a la Universidad desde la FP

Los Técnicos Superiores de Formación Profesional tienen acceso directo a todas las enseñanzas universitarias de Grado.

La nota de admisión se obtiene haciendo la media entre los módulos del ciclo formativo.15983_wpm_lowres

En el caso de aquellos estudios en los que la demanda de plazas sea superior a la oferta (concurrencia competitiva), las solicitudes se ordenarán en función de la nota de acceso de cada estudiante.

En caso de empate, tendrá acceso preferente la persona cuyo título de Formación Profesional de grado superior esté adscrito a la misma rama de conocimiento que los estudios universitarios que se quieran cursar.

En el caso de querer mejorar la nota media de admisión, los titulados superiores de Formación Profesional pueden presentarse a la Parte Específica de la PAU.

¿En qué consiste esta parte específica? Consta de exámenes sobre materias de modalidad.
El alumno decidirá cuántos ejercicios realiza, hasta un máximo de 4. Pero sólo contarán las calificaciones de dos materias que estén relacionadas con la rama del conocimiento de la titulación a la que desea acceder el alumno, por lo que lo más recomendable es que se presente a exámenes de materias que realmente domine. Es decir que puede examinarse de dos, tres o cuatro materias y se le puntuarán las dos en las que haya obtenido una calificación mayor.  Las notas de la fase específica caducan a los 2 años.

La fórmula para obtener la nota de acceso en este caso es la siguiente:

Nota Media del ciclo formativo + Materia 1 + Materia 2

Materia 1, Materia 2: las dos materias en las que haya obtenido una calificación más alta entre las realizadas en la parte específica x 0,1 ó 0,2 (según cada Universidad)

 

Jolt Awards – Premios de la Insdustría del Software

Desde hace un tiempo la revista Dr.Dobb’s  se encarga de premiar a la industria del software con los premios denominados los Jolt Awards

Para este año 2013 podemos destacar los premiados en:

La mejor librería para la programación  este año se  ha llevado el premio «Infragistics NetAdvantage Ultimate 2012 Volume 2»  esta libreria es una recopilación de componentes windows, abarcando desde el diseño de windwos forms a xaml e incluyendo soporte para controles para dispositivos moviles. Para el desarrollo para dispositivos moviles vemos que soporta para la programación en Windows Phone, Android e IOS.

Ademas incorporar una herramienta de diseño rápido de interfaz a través de la cual nos a ser muy útil para el diseño de prototipos para el usuario final.

Entra las librerías que han quedado finalistas nos encontramos las siguientes:

En el apartado de mejor herramienta para la codificación se lo ha llevado el software «JetBrains IntelliJ IDEA 12.0 Ultimate» Esta versión destaca por incluir  una interfaz de usuario para el diseño de aplicaciones Android, un compilador más rápido, soporte para las nuevas funcionalidades de Java anunciadas. Ademas de incluir soporte para las distintas herramientas de control de versiones incorporando la integración con GIT y Team Foundation Server 2012.

Entra las herramientas de codificación que han quedado finalistas nos encontramos las siguientes:

Por último, para terminar el articulo de hoy solamente me queda felicitar a los ganadores de este año.

Novedades sobre programación en Android

androidVarias novedades en el mundo de la programación para Android:

  • Google presenta nuevas guías de diseño de aplicaciones para tablets. Se trata de facilitar a los desarrolladores el adaptar sus aplicaciones al formato de los tablets, consiguiendo así que mejorar la  experiencia de usuario en los grandes formatos, una de las mayores críticas que reciben siempre Android.
  • Se ha incluido en Google Play la posibilidad de adjuntar imágenes de las aplicaciones en tablets de 7 y de 10.  De esta forma se sabrá qué aplicaciones están mejor adaptadas a estos formatos.
  • Disponibles las traducciones de los tutoriales de Android en español. Un conocido portal los ha traducido facilitando así el acceso a muchos usuarios que no dominan la lengua de Shakespeare.
  • Del 15 al 17 de Mayo se celebrará el Google I/O Extended donde se rumorea que se presentará Android 4.3 y algunos dispositivos Android de Motorola, empresa ahora propiedad de Google.

DDR4 próximamente en el mercado

En el CES de Las Vegas de 2013 ya se han podido ver las primeras demostraciones de la nueva generación de memorias RAM (DDR4) para ordenador que sustituirán a las actuales DDR3.

Las primeras demostraciones de DDR4 utilizaba modulos de 4 GB a 2133Mhz, que serán los más básicos de la familia DDR4, pero se espera que alcancen 4266Mhz de velocidad y con menor voltaje que las actuales DDR3. Además  la capacidad de estas memorias serán modulos de 4GB, 8GB y 16GB. Al igual que en diseños anteriores, el formato será el mismo aunque físicamente algo diferentes para no poder utilizarse en los mismos slots de memoria de las otras especificaciones.

La fecha de lanzamiento al mercado de las memorias DDR4 es todavía una incognita, pero se espera que a principios de 2014 podamos encontrarlas ya en el mercado junto con tecnología compatible.

GTD para estudiantes

GTD (Getting Things Done) es un método de gestión y organización de actividades creado por David Allen centrado en el almacenamiento, seguimiento y revisión de todas las tareas.  La clave está en la organización y revisión sistemática de la planificación, que permite llevar un control del trabajo a realizar.
Allen sostiene que nuestra memoria es limitada y no podemos recordar todo lo que hay que hacer en cada momento, por lo que es necesario un lugar donde almacenar todas esas ideas y eliminar el estrés  de pensar continuamente en el trabajo inacabado.
La productividad personal tiene mucho que ver con  averiguar cómo poder controlar todo este trabajo inacabado para que no nos genere estrés, de una forma que, a su vez, sea lo suficientemente creíble para nuestra mente como para que ésta acepte dejar de ser ella quien gestiona nuestros compromisos.
El método GTD  permite además enfocar con claridad esta organización, puedes ver tu mundo desde los ángulos óptimos y puedes tomar decisiones con confianza sobre que hacer (y no hacer) en cada momento.
Los principios esenciales de GTD son los siguientes:

Recopilar

Es fundamental acostumbrarse a utilizar una Bandeja de Entrada para capturar todo lo que va surgiendo día a día: deberes, tareas, trabajos en grupo, eventos deportivos, hacer la colada, libros a leer… Un libreta para anotar cosas en cualquier sitio y una bandeja física para papeles, apuntes y documentos son suficientes para empezar. Ya revisarás estas cosas más tarde. De momento, el objetivo es recopilarlo todo.

Piensa que añadir sólo la fecha de presentación de un trabajo o la de un examen a un calendario es una invitación a la procrastinación, a no hacer nada hasta que esa fecha esté tan cerca que tendrás que pasar tres noches sin apenas dormir para poder cumplir.

Procesar

Procesa tu Bandeja de Entrada al menos una vez al día. Define un proyecto para todo aquello que requiera más de una acción—como estudiar para un exámen o hacer un trabajo—. Si algo tiene una fecha límite, añade el recordatorio correspondiente a la Agenda, pero define también una primera próxima acción para hacer cuanto antes.

Define acciones muy específicas. La acción «Estudiar para un examen»  también invita a procrastinar, porque es genérica. Puedes descomponerla, por ejemplo, en  «Reviasr los apuntes», «Repasar las clases», «Resumir la unidad 1″…. etc. Así tendrás una visión más clara del alcance del proyecto y podrás empezar a afrontarlo con tiempo suficiente.

Tendrás un buen número de actividades de carácter periódico, del tipo  «Clases de programación los martes a las 18:00». Busca un sistema que te permita definir este tipo de tareas en tu Agenda de forma sencilla y automatizada.

Organizar

Una buena organización te permitirá finalizar más tareas en menos tiempo y ser más productivo. Asigna a cada acción el contexto en que debe realizarse: clase, casa, biblioteca, laboratorio, ordenador… Puedes usar una hoja de papel para cada contexto, en la que vas anotando las acciones correspondientes.

Clasifica todo el material de referencia correctamente, por cursos, asignaturas y temarios. Organízalo físicamente en carpetas que puedas reconocer al instante, y tener a mano en el momento en que las necesites.

Revisar

Revisar todo el sistema con la frecuencia adecuada es otro hábito fundamental para que esto funcione. Debes revisar cada día todas las tareas inevitables, que son las que están en tu Agenda.

Un vez a la semana—el Domingo es el día perfecto—revisa tu Agenda para los próximos días y comprueba cómo va cada uno de tus proyectos abiertos. Añade nuevas acciones a la lista de Próximas Acciones si es necesario y define fechas límite de compromiso personal para las acciones de los proyectos que se te estén yendo de las manos.

Hacer

Cada día debes centrarte primero en las acciones obligatorias de la Agenda. El resto del tiempo, coge la lista de acciones que deben hacerse en el contexto en que te encuentras y escoge entre ellas la que te parece más importante en ese momento.

Fuente: http://facilethings.com/blog/es/students

¿Qué lenguaje de programación (Java, C# y PHP) es mejor para aprender a programar?

Desde hace tiempo llevo escuchando la discusión sobre que lenguaje es mejor para aprender a programar. Las opciones que mas escogidas son Java, C# y PHP.

Algunos de los argumentos que nos puede convencer para elegir java son los siguientes:

  1. Java es fácil de aprender
  2. Java es un lenguaje orientado a la programación orientada a objetos
  3. Java tiene un API muy potente que nos proporciona , entre otras, el pode realizar operaciones de Entrada y Salida (I/O), de networking, manejo para parsear documentos XML  y  interacción con las base de datos.
  4. Herramientas de desarrollo muy potentes y gratuitas como Eclipse y NetBeans
  5. Una amplia librerías de código Open Source como pueden ser Hibernate, Spring, ….
  6. Java tiene comunidad detrás amplia que nos proporciona soporte para cualquier problema que tengamos
  7. Java es Gratis.

Lo argumentos que nos pueden decantarnos por c# son los siguientes:

  1. La utilización de Delegados (Delegates) y Eventos (Events). Su manejo es algo mas sencillo de utilizar que el uso de los listener en java para la gestión de los eventos.
  2. No dispone de una descripción de las excepciones anidadas. En java cada vez que se produce una excepción se nos informa de todo el detalle que se ha visto involucrado en la propagación de la excepción. En C# esto no es así, simplemente se nos indica la excepción que se produce y la causa. Este nos facilita a la hora de depurar errores.
  3. El uso de propiedades nos hace el identificar mejor que son los atributos internos de una clase de los elementos, a nivel público, con los que se interactua con la clase.
  4. Es mas flexible a la hora de organizar el código. En C# no tenemos que seguir la jerarquía de paquetes a la hora de crear nuestras clase ni tener que definir un archivo por clase o interfaz. C# en este aspecto nos da total libertada para que organicemos nuestro código acorde con nuestro desarrollo.
  5. C# es un lenguaje orientado a la programación orientada a objetos

Y por último veamos las razones por las que elegir o en defensa para aprender a programar en PHP:

  1. Podemos trabajar conjuntamente con HTML para el diseño de nuestras aplicaciones.
  2. Es muy intuitivo de aprender.
  3. Desde la versión PHP 5 ya es considerado como un lenguaje orientado a la programación orientada a objetos.
  4. Disponemos de Frameworks para la elaboración de aplicaciones webs bastantes potentes
  5. La gran mayoría de aplicaciones web se basan en PHP (WordPress, Joomla, Drupal, Magento, …)

Para aprender a programar sin duda debemos escoger Java por la rectitud a la hora de aplicar las normas de la programación orientada a objetos.

Ahora para el desarrollo de una aplicación nos deberemos ajustar siempre a los requisitos que nos imponga el cliente.

 

Desarrollando juegos multiplataforma con libGDX

La semana pasada hablábamos sobre un curso de programación de videojuegos y esta semana, continuando con el tema vamos a presentar una librería que nos va a facilitar enormemente el desarrollo de juegos. Aún más, al tratarse de un librería multiplataforma nos va a permitir portar nuestro juego a windows, linux, android, HML5, iOS (requiere monotouch que es de pago), Mac OS X,…

Se trata de libGDX, una librería opensource. Podemos encontrar una gran comunidad detrás lo que nos garantiza que será sencillo encontrar quién nos ayude a solucionar nuestro problemas cuando estos lleguen.

Nos va a permitir usar de forma sencilla gráficos, sonido, animaciones, mapas y escenas 2D, cálculos de álgebra y geometría ya implementados, OpenGL, … y api de 3D en desarrollo. Podéis consultar las características en este enlace.

Se programa en Java, y existe abundante documentación

 

AMD «Centurion» una apuesta de AMD por competir con las altas prestaciones de Intel

AMD-FX-Centurion

Esta nueva familia de procesadores se llamará AMD FX ‘Centiruon Edition’. Se trataría del actual AMD FX pero modificado. Los AMD FX ‘Centiruon Edition’ están basados en la actual plataforma Vishera y según AMD podrían alcanzar los 5 GHz de frecuencia de reloj en su modo Turbo. No se esperan grandes cambios o novedades respecto de los actuales AMD FX, a parte de la velocidad, estarían diseñados con ocho núcleos y con el mismo soporte hardware que el resto de modelos: socket AM3+ y los actuales chipsets de AMD. Se trata de una edición especial pensada para aportar un extra de rendimiento.

Según AMD, promete tener un rendimiento a la altura de los Intel Core i7 más potentes. Respecto a su precio, estará alrededor de los 795 dólares para el modelo superior, que será el competidor del actual Core i7-3970X.

Convocatoria Pruebas de acceso para los ciclos formativos de grado superior en Andalucía

En Andalucía, cada año se lleva cabo una convocatoria ordinaria de pruebas de acceso a los ciclos formativos en el mes de junio, y otra de carácter extraordinario en el mes de septiembre.

Los plazos de solicitud son la primera quincena de mayo y la segunda de julio, respectivamente. Recuerda que no será necesario que te presentes a estas pruebas si estás en posesión de alguna de las titulaciones que se exigen como requisitos de acceso.

La prueba de acceso a los ciclos formativos de grado superior tiene como finalidad permitir a las personas que no poseen el título de Bachiller continuar su formación accediendo a los ciclos formativos de grado superior. Para ello deberá demostrar que poseen la madurez en relación con los objetivos de Bachillerato y sus capacidades referentes al campo profesional de que se trate.

Para acceder por esta vía es necesario cumplir 19 años de edad en el año de comienzo del curso escolar o 18 años si se está en posesión de un título de Técnico relacionado con el ciclo formativo al que se desea acceder.

En cualquier caso, se contempla la exención de parte de las pruebas que procedan para quienes hayan superado un programa de cualificación profesional inicial, un ciclo formativo de grado medio, estén en posesión de un certificado de profesionalidad relacionado con el ciclo formativo que se pretende cursar o acrediten una determinada cualificación o experiencia laboral.

Más información en:

http://www.juntadeandalucia.es/educacion/formacionprofesionalindex.php/pruebas-de-acceso

Recomendaciones para realizar un código limpio

Una de las cosas que debemos tener en cuenta como desarrolladores es como codificamos nuestros programas. El echo de tener un código limpio y claro nos va aportar a nuestro trabajo muchos beneficios. ¿Pero como sabemos que nuestro código es un código limpio? ¿Y como lo medimos? Esto en realidad es una tarea compleja debido a que el concepto de código limpio es diferente según el grupo de desarrolladores.

A continuación vamos a enumerar algunas recomendaciones que nos van ayudar a tener un código mas limpio:

Un código mal realizado va a provocarnos que no este limpio y que se produzcan errores. Pero si realizamos el código bien este nos va a implicar que nuestro código ha seguido una serie de pautas para que no existen partes difusas.

El lenguaje utilizado para resolver un problema debe estar realizado como si el propio código resolviera el problema. Es decir, nuestro código no debe presentarse como una solución mas para resolver el problemas sino como la explicación de como se debe resolver el problema.

No debemos ser redundantes en nuestro código.

La lectura de nuestro código debe ser entendible. Esto quiere decir que cuando leamos el código debe entenderse igual de bien que cuando leemos un libro.

Debe ser fácil de ampliar por parte de otros desarrolladores.

Las dependencias que deben tener nuestro código deben ser las mínimas.

El código cuanto mas pequeño sea mejor.

Deben estar acompañados de pruebas unitarias y de aceptación

Fuente : http://blog.goyello.com/

 

Aprendiendo a programar videojuegos

Si hay un tipo de aplicación con cada vez más demanda, esos son los juegos. Son muchos lo tutoriales que se pueden encontrar en la red sobre cómo programar videojuegos. Pero pocos tienen la calidad suficiente.

No es el caso de este curso de Experto en Desarrollo de Videojuegos de la Universidad de Castilla la Mancha, cuyo  material  está liberado por lo que podemos acceder a toda la documentación.

Podéis descargarlo en el siguiente enlace. Por supuesto que el acceso al material no da derecho al título ni a tutorías y consultas.

El curso consta de 4 módulos:

  • Arquitectura del Motor: aprendemos todo lo relacionado con el corazón del motor de programación
  • Programación Gráfica: algoritmos gráficos y técnicas de diseño
  • Técnicas Avanzadas: estructuras de datos y
  • Desarrollo de Componentes: cómo utilizar sonido, multimedia, inteligencia artificial, etc.

Ojala cunda el ejemplo y más universidades liberen cursos.

Smart Cities, un sector emergente para las TIC

La Unión Europea invirtió unos 81 millones de euros en SmartCity en el 2011. Se prevé que en el presente 2013 se inviertan unos 365 millones de euros. Una cifra inequívoca de la transcendencia de la temática. 
 
 
En el nuevo paradigma de ciudad confluye la necesidad de hacer ciudades más sostenibles y eficientes con la suma de los esfuerzos del sector público-privado, para encontrar nuevas oportunidades, innovar y generar nuevos modelos de negocio. En este escenario es dónde los nuevos modelos de ciudad inteligente y las Tecnologías de la información juegan un papel estratégico para que el progreso y la calidad de vida avance. A nivel local, tenemos la ciudad de Barcelona como estandarte de representación y ejemplo de otras ciudades, en la cual se están impulsando diferentes iniciativas de gestión “smart” y que ha recibido muchos reconocimientos por las tareas realizadas. Las oportunidades no acaban aquí porque a nivel mundial la visión “smart” está creciendo rápidamente en ciudades como Amsterdam, Edinburgh, Dubai, entre muchos otros ejemplos. 
 
 
Con las tecnologías de la información como protagonistas, cada año los mejores profesionales, personalidades y empresas tecnológicas de Catalunya celebran la Festibity, la fiesta de las tecnologías de la Información organizada por la Facultat de Informática de Barcelona de la UPC y FIB Alumni. Esta 11ª edición de Festibity se dedica a las Smartcities, un mercado emergente que plantea soluciones transversales para mejorar la calidad de vida de los ciudadanos y de las ciudades, y que cada vez tiene un impacto económico más importante. A nivel mundial hay estudios que pronostican que del año 2010 hasta el 2020 se invertirán en Tecnologías e Infraestructuras Smart City alrededor de 108 billones de dólares. Estos datos pronostican que es un sector en auge y lleno de nuevas oportunidades para el sector de las tecnologías de la información. 
 
 
Bajo el lema Smart ciTI, la Festibity pretende acentuar las nuevas oportunidades de negocio, dar más visibilidad a los proyectos y empresas que aportan valor en el mundo de las ciudades inteligentes, tanto globales como locales. Participaran expertos como el Sr. Antoni Vives, tercer tinent de alcalde de la ciudad de Barcelona, el Sr. Antoni Brey, presidente de Urbiótica o Pilar Conesa, directora del Smart City Congress, entre otros. 
 
 
La Festibity, la fiesta de las tecnologías de la información, se celebrará el próximo 25 de abril a las 19.30 h en el nuevo Edificio DHUB de Barcelona. Atendiendo a la importancia del evento y a la contribución de la FIB y FIB Alumni, además de ser un punto de encuentro de todo el sector TI, este año cuenta con la presencia del Excm. Sr. Xavier Trias, Alcalde de Barcelona, así como la participación de numerosas personalidades del panorama económico, político y empresarial.

 

Intel dobla la velocidad en la próxima generación de Thunderbolt

xlarge

Aunque le está costando arrancar y establecerse como interfaz estándar en el mercado, la próxima evolución de la conexión Thunderbolt ya está implementada. Intel ha presentado la segunda generación de Thunderbolt, conocida internamente como Falcon Ridge y llegará al mercado en 2014. Está nueva especificación tiene como principal novedad el hecho de doblar la velocidad de transferencia, hablamos de una capacidad de transmisión de hasta 20Gbps en cada canal, el doble que la actual especificación de Thunderbolt, pensado para adaptarse a los últimos estándares de alta definición como el 4K, además, el nuevo Thunderbolt contará con soporte nativo para transmitir vídeo en esta calidad (transferir y reproducir simultáneamente). Para poder soportar tal cantidad de velocidad de transferencia Intel también ha desarrollado el nuevo controlador Redwood Ridge, que en el futuro vendrá incorporado en procesadores y chipsets de Intel.

grafico

Aunque la actual interfaz parece más que suficiente para la mayoría de uso que se le puede dar en ámbitos domésticos, parece ser que desde el punto de vista de los profesionales del vídeo, se va a demandar en configuraciones multimonitor y la citada resolución 4K, que veremos en poco tiempo también en el ámbito doméstico.

Otra novedad que viene en los cables, es que serán más delgados y se hará un esfuerzo para hacerlos más económicos.

Claves para afrontar el curso en la FP a distancia

 

El  Instituto Fomento Ocupacional puso en marcha en el curso 2004/2005 una nueva modalidad de enseñanza reglada disponible: la Formación Profesional a distancia  que permite acceder a las ventajas de la FP a un amplio colectivo que no veía sus necesidades cubiertas con la formación presencial o tradicional.  Es ya conocida la aceptación de las enseñanzas de FP  en la sociedad y el alto grado de inserción laboral que se produce.

La formación on line ofrece muchas ventajas, pero el alummno/a debe saber aprovecharlas para tener éxio.  Las claves son:

 1 – AUTOESTUDIO. La formación no presencial otorga mayor flexibilidad al alumno/a, pero no implica que no deba dedicarle tiempo.  Es primordial mentalizarse que hay que estudiar.

2 –  ORGANIZACIÓN  Y PLANIFICACION. El alumno/a  debe ser constante,  es necesario marcarse unas pautas de estudio y unos objetivos de acuerdo con la planificación del curso, siguiendo en todo momento las indicaciones y  asesoramiento de los tutores y coordinadores.

3 –   INTERACCION. Hay que animarse y aprovechar las oportunidades que ofrecen las herramientas de comunicación de esta modalidad de enseñanza,  siempre con una  mentalidad proactiva. Para ello es importante asistir a las clases on-line,  participar en los foros y, en definitiva,  relacionarse con los compañeros/as. La motivación es un factor clave para no caer en el abandono.

 

Joda-Time API Java

Durante cualquier desarrollo en el que nos vemos involucrados uno de los problemas mas comunes con los que nos encontramos es el tratamiento de fechas.

JODA, Java Data Time API, fue creada para dar un cambio al tratamiento de fechas que nos proporciona java por defecto. La clases que nos proporcionan java por defecto para el manejo de fechas han tenidos numerosos bugs y producían, en muchas ocasiones, efectos no deseados.

A continuación indico algunas de las razones por las que nos podemos decantar por la API de JODA son:

  1. Es fácil de usar permitiendo manejar directamente campos como año y día de la semana
  2. Nos proporciona una serie de herramientas para poder hacer cálculos sobre fechas de forma mas intuitiva.
  3. Dispone de un amplia documentación sobre como utilizar la librería
  4. Una amplia cobertura para la realización de test
  5. Soporte de manejo 8 Calendarios distintos simultáneamente.
  6. Es Open-Source.

En su página oficial, http://joda-time.sourceforge.net/,  disponemos de la documentación necesaria y tutoriales que nos indican como utilizar esta libreria de java

 

 

Impresoras 3D

Vivimos inmersos en un mundo 3d, eso es un hecho. Pero además cada vez son más las tecnologías informáticas nos permite la creación de contenido multimedia en 3D: ya estamos acostumbrados a ver el cine en 3D,  podemos comprar televisiones que nos permiten ver peliculas en 3D ,…  el oro día mismo hablamos en este blog de la existencia de escáner 3D domésticos de bajo coste.

Hoy hablaremos sobre la existencia de impresoras 3D. Una impresora 3D es un equipo capaz de fabricar un objeto tridimensional a partir de un modelo digital. Este modelo puede ser fruto de haber escaneado una pieza real o bien un objeto diseñado en un entorno virtual.

Una impresora 3D usualmente fabrica los objetos depositando capas sucesivas de una material plástico (habitualmente ABS, que es de lo que se suelen fabricar los juguetes).

Hasta hace poco sólo estaban disponibles impresoras comerciales con un costo de varias decenas de miles de euros. Hoy en días existen impresoras domestica por algo más de 500 euros.

Una de las razones de este abaratamiento ha sido el auge de comunidades abiertas donde se comparten, tanto proyectos como conocimientos, que han dado lugar tecnología más barata y simple.

¿Cuáles son las apps por las que los usuarios están dispuestos a pagar?

Tras el pequeño revuelo suscitado por WhatsApp al anunciar que la app sería de pago, son varios los usuarios que se han “lanzado” a alabar las virtudes de otras de mensajería instantánea que son gratuitas. Sin embargo, hay una serie de tipos de aplicaciones por las que los usuarios sí están dispuestos a pagar, ¿Cuáles son? Según datos de InQBarna, startup especializada en el desarrollo de apps para todo tipo de dispositivos móviles, el ranking de apps por las que no se escatima a la hora de comprarlas son: juegos, salud, Educativas/infantiles y utilidades. Estos sectores serían los que lideran el pódium de las aplicaciones de pago.

 Hacer la vida más fácil

En principio, lo que tienen en común este tipo de apps sería que, de algún modo, hacen la vida más fácil. Bien sea porque “divierten”, como el caso de los juegos, o porque ayudan a mejorar el día a día del usuario, sería el caso de las aplicaciones relacionadas con la salud, o las utilidades. “Puede ser un poco contradictorio que el usuario ponga el “grito en el cielo” si tiene que pagar por un servicio que le permite comunicarse con sus contactos, por sólo 0.89, y, sin embargo, no le importe desembolsar el importe que sea necesario simplemente por el hecho de pasar más niveles en un juego. Pese a ello, es lo que ocurre, los juegos venden”, comenta Nacho Sánchez, Socio Fundador de InQBarna.

 Triunfo del modelo Freemium

Dentro de las aplicaciones centradas en los móviles, triunfa lo que se ha llamado el modelo Freemium. Este modelo consiste en que los usuarios se pueden bajar gratis el juego, pero para acceder a ciertos niveles o a complementos que ayudan a superar determinados niveles, tienen que pagarlos. En este sentido Sánchez añade “a estas compras dentro de la app se las denomina in-app purchases, y es lo que mayores réditos está otorgando ahora mismo en el mundo de las apps.

 El “empuje app” de la industria médica

La industria médica está poniendo sus ojos en el mundo móvil porque es una herramienta de la que pueden extraer mucha información que les ayude a seguir mejorando los tratamientos y porque saben que sus clientes (pacientes) están dispuestos a pagar. Además, las tecnologías móviles ayudan a crear comunidades entre enfermos con la misma patología, lo que permite que se puedan ayudar unos a otros, tanto en el plano de la enfermedad, como en el psicológico y el de su entorno.

 Los padres dispuestos

Del mismo modo, las aplicaciones infantiles también tienen un gran público dispuestas a pagarlas porque los padres se dan cuenta del ahorro que les supone respecto a los libros y juegos tradicionales. Al mismo tiempo, “las apps les permite tener entretenidos a sus hijos con contenidos didácticos en cualquier momento y en cualquier lugar” comenta Juan Capeáns Socio Fundador de InQBarna. 

 El “boom” de las apps relacionadas con del deporte

En cuanto a las utilidades, hay muchas variantes que están triunfando. Las hay que tienen gadgets (objetos físicos) asociados y que hacen que se retroalimenten las ventas de ambos productos. Destacan dentro de las utilidades las apps que ayudan a controlar el ejercicio (running, escalada, esquí, etc.) y que aprovechan muy bien todas las características del teléfono móvil (GPS, geolocalización, acelerómetro, giroscopio, conexión con redes sociales…). “Además, este tipo de apps permiten “socializar” el deporte, puesto que el usuario puede compartir sus marcas, comentarlas, etc, entre sus contactos, lo que le motiva e incita a continuar en la práctica del deporte”, puntualiza Capeáns.

Sacan los primeros escáneres 3D de bajo coste

Photon_open_600px

Siguiendo el camino de las impresoras 3D relativamente asequibles, se han animado en el proyecto de un escáner 3D. Nos encontramos con Photon 3D, un escáner 3D que busca ser de precio reducido.

La empresa Matterform busca confeccionar un escáner 3D sin grandes capacidades profesionales, y que su precio esté a la altura del usuario domestico: 349 dólares.

Este escáner consta de una superficie circular que gira para facilitar el escaneo de los objetos. Y una cámara con dos láseres que se encargan de capturar la imagen están en la zona superior. Photon 3D escanea objetos en unos tres minutos, con un tamaño máximo de 25×19×19 centímetros. Además del escáner, están desarrollando un software para Windows y Mac que saque partido de la misma (trabaja con los formatos .STL, .OBJ, .PLY), con el objetivo de crear un sistema muy simple, en el que no hay que ser ingeniero para realizar escaneos, y conseguir decentes modelados 3D.

Crece la demanda de Formación Profesional

A pesar de la inestable situación laboral que atraviesa el mercado  español, a lo largo de los últimos años ha aumentado el número de
alumnos matriculados en Formación Profesional y actualmente, el 32% de  los estudiantes en España cursan FP, según datos del Ministerio de  Educación, Cultura y Deporte. Sin embargo, esta cifra queda lejana comparada con el 58% de alumnos de media en Europa.

En la distribución regional de la oferta de Formación Profesional  la  principal característica sigue siendo una alta concentración  territorial, Cataluña, Madrid y País Vasco, se reparten año tras año, la mayor parte del pastel (51,07% de la oferta de FP frente al 45,95% del  año anterior), el reparto de porcentajes entre las comunidades sí se ha  modificado, sobre todo, en los primeros puestos.

Estereotipada por la sociedad, la Formación Profesional siempre ha sido el ‘patito feo’ de los estudios. Sin embargo, hoy vive su época dorada. Además, hay distintas modalidades que se adaptan a las condiciones del estudiante como la Formación Profesional parcial destinada a personas que trabajan y estén interesadas en formarse. Asimismo, existen proyectos de bilingüismo, normalmente en inglés, y la posibilidad de realizarlo a distancia.

Según el Ministerio de Educación, los titulados  de FP están entre los grupos con mayor tasa de actividad laboral (87%  los de Grado Medio y 91% los de Grado Superior) y tardan una media de tres meses en la mitad de los casos en incorporarse al mercado laboral.

Fuentes:

http://www.madrideconomia.com/noticia/39153/Informe/Madrid-es-la-segunda-autonomia-que-mas-demanda-Formacion-Profesional.HTML

http://www.elmundo.es/elmundo/2013/02/16/espana/1361039817.HTML

 

 

 

Razones por la que utilizar MySQL

A la hora de realizar una aplicación una parte importante para nuestro desarrollo son las bases de datos. Tenemos distintas bases de datos como Oracle, MySQL, PostGresSQL, NoSQL (la mas conocida es MariaDB, …

Como podemos ver existen multitud de base de datos que podemos utilizar. A continuación os voy a enumera algunas razones por las que decantarnos por MySQL.

  1. Es Multiplataforma: Para S.O. como Windows, Linux y Mac disponemos de nuestro servidor para instalarlo.
  2. Es fácil encontrar ayuda: Al ser una base de datos que se utiliza en multitud de aplicaciones web existen multitud de tutoriales, foros, …. en la red en los que podemos encontrar la información que necesitamos
  3. Es fácil de aprender: Simplemente con conocer el estándar de SQL podemos manejar la base de datos MySQL si ningún problema.
  4. MySQL es una base de datos ampliamente probada por distintos usuarios y empresas con alto éxito.
  5. Menos características. Menos mantenimientos: Realmente esto nos da la ventaja para que un programador cualquiera pueda aprender rápidamente como debe mantener la base de datos para sus aplicaciones. Sin necesidad de ser un experto Administrador en Base de Datos (DBA). Bases de datos como Oracle requieren de DBA para la gestión de su información debido a todas las características que tienes para su administración. En cambio MySQL para el funcionamiento habitual de una aplicación incluye unas características mínimas que nos sirven ampliamente para nuestras aplicaciones sin tener que recurrir aun DBA para que administre la base datos.
  6. El coste total de inicio es ampliamente inferior al de Oracle o Microsoft SQL Sever. Nosotros vamos a poder crear tantos servidores MySQL como necesitemos sin incurrir en ningún coste alto.
  7. MySQL es escalable:
  8. Soporte para la transacciones. Una de las grandes ventajas de utilizar MySQL es la gestión de las transacciones. Las transacciones en MySQL son Atómicas, consistentes, aisladas (isolated) y durable; ACID.

Para los que queráis saber las desventajas de utilizar MySQL en el siguiente articulo nos argumentan por que no debemos utilizar MySQL: «Choose Something Else»

Cómo saber las características de SQL Server instaladas

Es una cuestión que nos surje frecuentemente. Necesitamos saber las versiones y componentes de SQL Server que hay instalados en un servidor.

A partir de SQL Server 2008 es mucho más fácil, Microsoft nos añade la herramienta Informe SQL Server Discovery que se ubica en la pagina de herramientas del Centro de Instalación de SQL Server.

Para ejecutarlo es necesario lanzar el Centro de Instalación de SQL Server que puede encontrarse en Inicio –> Todos los Programa –> Microsoft SQL Server 2008 –> Herramientas de Configuración y hacer clic en Centro de instalación SQL Server.

Paso 1

Paso 2

Paso 3

Esta opción nos generará un informe que se abrirá de forma automática en nuestro navegador predefinido. will be generate & open in default browser automatically

Ubicación del informe

El informe generador por SQL Server Discovery es almacenado automáticamente en %ProgramFiles%Microsoft SQL Server100Setup BootstrapLog<last Setup Session>

Otras opciones de uso

· Es posible generar el informe desde línea de comandos. Desde la línea de comandos del sistema ejecutar la instrucción: “Setup.exe /Action=RunDiscovery”

Limitaciones

· SQL Server discovery tool solo puede ejecutarse para instalaciones locales, no es posible obtener la información de una instalación remota

Nuevo driver universal de adb para Android bajo Windows

Algo que hemos de hacer cuando queremos desarrollar aplicaciones Android, es probar las aplicaciones en smartphones Android. Aunque los emuladores cada vez están más perfeccionados, el probar nuestras aplicaciones en dispositivos reales es algo esencial.

Para ello es necesario instalar un driver en Windows que permitirá que la aplicación adb conecte con nuestro terminal. Estos driver nos lo proporcionan los fabricantes. Algunos de ellos como Samsung nos los proporcionan por medio de aplicaciones de sincronización  (Samsung Kies), para otros hay que buscar los drivers en internet.

Recientemente se ha anunciado un nuevo driver universal que nos va a facilitar enormemente la tarea. Ha sido desarrollado por ClockworkMod, una conocida empresa desarrolladora de aplicaciones de bajo nivel para Android. Podemos descargar el instalador desde el siguiente enlace.

El código fuente está disponible en github.

Nettops, mínimo consumo y bajo precio en pequeño formato

nettop

El término Nettop identifica a los ordenadores de escritorio de bajo coste, bajo consumo y reducidas dimensiones. La denominación proviene de combinar las palabras en inglés netbook (ordenador portátil) y desktop computer (ordenador de sobremesa). Están orientados a la navegación y la ofimática, por lo que sus prestaciones son reducidas, aunque suficientes para estas funciones. A día de hoy hay smartphones con más potencia de cálculo que algunos Nettop del mercado. Los atractivos de estos mini PC vienen de la mano del consumo (desde 5 vatios hasta 40 vatios) y de un precio bastante reducido. Este tipo de ordenadores tienen un tamaño muy reducido, suelen rondar los  190 × 150 × 30 milímetros y sólo pesan entre 500 y 1000 gramos.

Dentro de un Nettop nos encontramos procesadores de bajo consumo, como un Intel Celeron  o Intel Atom dos núcleos, y también vienen acompañados con hasta 2GB de RAM e incluso algunos modelos pueden ser ampliables a cuatro. En cuanto a la gráfica suele estar integrada en la propia CPU lo que hace que nuestro Nettop tenga un consumo más optimizado. Respecto a la conectividad de estos miniPCs podemos encontrarnos con ranuras para tarjeta SD, auriculares y micrófono, USB 2.0, HDMI, VGA y Ethernet (algunos modelos también incluyen WiFi).

Pruebas de Acceso a la Formación Profesional de Grado Superior

En Andalucía, cada año se lleva cabo una convocatoria ordinaria de pruebas de acceso a los ciclos formativos en el mes de junio, y otra de carácter extraordinario en el mes de septiembre.

Los plazos de solicitud son la primera quincena de mayo y la segunda de julio, respectivamente. 

La prueba de acceso a los ciclos formativos de grado superior tiene como finalidad permitir a las personas que no poseen el título de Bachiller continuar su formación accediendo a los ciclos formativos de grado superior. Para ello deberá demostrar que poseen la madurez en relación con los objetivos de Bachillerato y sus capacidades referentes al campo profesional de que se trate.

Para acceder por esta vía es necesario cumplir 19 años de edad en el año de comienzo del curso escolar o 18 años si se está en posesión de un título de Técnico relacionado con el ciclo formativo al que se desea acceder.

En cualquier caso, se contempla la exención de parte de las pruebas que procedan para quienes hayan superado un programa de cualificación profesional inicial, un ciclo formativo de grado medio, estén en posesión de un certificado de profesionalidad relacionado con el ciclo formativo que se pretende cursar o acrediten una determinada cualificación o experiencia laboral.

 

Más información en:

http://www.juntadeandalucia.es/educacion/formacionprofesionalindex.php/pruebas-de-acceso

Ejemplos de exámenes:

http://www.juntadeandalucia.es/educacion/formacionprofesional/index.php/pruebas-de-acceso/1653-ultimas-pruebas

 

Intercambiar el valor de dos variables sin utilizar una variable auxiliar.

Una de las operaciones que realizamos habitualmente es el intercambio de elementos, swap, en nuestros programas. Para ello lo mas natural es utilizar una tercera variable de almacén temporal para realizar este intercambio.

Pues existe un método para poder realizar este intercambio, entre variables numéricos, sin tener necesidad de utilizar una tercera variable.

Supongamos que tenemos dos variables con los valores 30 y 40;

int a = 30;
int b = 40;

Podemos realizar este intercambio realizando las siguiente operación;

a = a + b // a la variable a le asigno el valor de a + b

En este paso el valor de a es = 70 (30 + 40)

b = a – b // A b le asigno el resultado de resta al valor calculado anteriormente de a con el valor inicial de b

Cuando realizamos esta resta la operación que estamos haciendo es la siguiente b = a – b = (30 + 40) – 40
Después de la resta el valor que nos queda almacenado en b es el valor de a de 40.

a = a – b // Y una vez realizado el cálculo de b le resto el valor a la variable de a el nuevo valor de b

Y por último en esta resta la operación que estamos realizando es a = (30 + 40) – 30
Quedándonos en a el valor de inicial de b de 40.

Si mostramos el valor de esta variables por pantalla veremos que ambos valores se ha intercambiado.

Tras este artículo podemos llegar a la conclusión que no debemos abusar de crear variables para ayudarnos a resolver cualquier operación. A veces con nuestro propio ingenio y nuestro conocimientos podemos llegar a otras soluciones.

En el siguiente articulo «How to Swap Two Numbers without Temp or Third variable in Java» de javarevisited (en Inglés) tenéis descrito otras formas de poder realizar esta operación, por ejemplo a nivel de bit,  sin tener que utilizar variables auxiliares

Lenguaje de programación más popular en Marzo 2013

Según el último informe Tiobe, el lenguaje más popular en Marzo de 2013 sería Java con un 18% seguido de C con un 17%. C# queda en el quinto puesto con casi un 7% . Este índice Tiobe, es muy criticado por su importante componente histórico, es decir tiene en cuenta todos los recursos existentes en Internet sobre un lenguaje.

También existen índices, como el PYPL, que usan el número de búsquedas realizadas en un momento dado (utilizando Google Trends) sobre los distintos lenguajes. Según este índice Java sería el lenguaje más usado con un 27% seguido de PHP con un 14%.  C# ocuparía el tercer lugar con un 10% empatado con Python.

Estos resultados contrastan con una reciente encuesta de codeeval (una importante comunidad de desarrolladores)  que revela que para este año 2013 el lenguaje más demandado será Python, con casi un 30% seguido de Java por un 25%

Lenguajes más populares

Algo que sí podemos ver en las tres encuestas es que Java es un lenguaje cada vez más popular, con un ascenso cada vez mas claro de Python. No en vano son los dos lenguajes más utilizados por Google.

Intel Core Haswell, la sucesión de Ivy Bridge

hasswell

 

Estamos ante la cuarta generación de Intel Core, que utilizará un proceso de fabricación de 22 nanómetros con utilización de transistores Tri-Gate, al igual que Ivy Bridge. Según filtraciones, Intel tendría previsto lanzar los procesadores basados en Haswell entre marzo y junio del 2013. Y así es, la compañía TomsHardware ha publicado una reseña bastante detellada de la nueva arquitectura. Se confirman los nuevos modelos de GPU que reciben los nombres en código de GT1, GT2 y GT3, ordenadas de menor a mayor rendimiento. La segunda de ellas será la más habitual y recibirá el nombre comercial de Intel HD Graphics 4600.

Las pruebas proporcionadas por TomsHardware son una primera aproximación. Apenas hay nuevos datos más allá de la confirmación de los modelos así como del rendimiento aportado, el cual se encuentra dentro del 10-20% que se suele superar en cada nueva generación de Intel.

Todavía no se conoce la fecha oficial de lanzamiento al mercado, pero se espera que Intel de noticias oficiales sobre mayo o junio de 2013.

Prueba de Acceso a la Universidad, ¿acceso también a la FP?

La normativa educativa establece cuales son los requisitos de acceso a la Formación Profesional de Grado Superior. En concreto:

– Estar en posesión del título de Bachiller.

– Haber superado el segundo curso de cualquier modalidad de Bachillerato Experimental.

– Haber superado el curso de orientación universitaria (COU) o preuniversitario (PREU).

– Estar en posesión del título de Técnico Especialista, Técnico Superior o equivalente a efectos académicos.

– Titulación universitaria o equivalente.

– Haber superado la prueba de acceso a ciclos formativos de grado superior.

Sin embargo no se menciona a la Prueba de Acceso a la Universidad, ¿es posible acceder a al Grado Superior de FP con esta prueba superada?.

La respuesta es afirmativa, siempre y cuando:

– se trate de la prueba de acceso para mayores de 25 años (no se incluyen las de mayores de 40 ni de 45 años).

– se obtenga la convalidación por la prueba de acceso al Ciclo.

El requisito de la convalidación con la prueba de acceso al Ciclo es por tanto imprescindible y debe realizarse con carácter previo a la matrícula.

Para ello es necesario inscribirse en las Pruebas de acceso al Ciclo y solicitar la exención total de la misma, aportando la certificación correspondiente.

En Andalucía hay dos convocatorias: una en junio, con periodo de inscripción del 1 al 15 de mayo y otra en septiembre, con inscripción del 15 al 31 de julio.

Dicha convalidación es un mero trámite, pero necesario. Siendo recomendable que se realice en la primera de las convocatorias con objeto de poder solicitar la matrícula en el mes de junio.

Fuentes:

Art. 21 del REAL DECRETO 1538/2006, de 15 de diciembre, por el que se establece la ordenación general de la formación profesional del sistema educativo.

Información pruebas de acceso a la Formación Profesional en Andalucía

http://www.juntadeandalucia.es/educacion/formacionprofesionalindex.php/pruebas-de-acceso

 

 

 

WindowsAndroid: o cómo ejecutar un Android completo bajo Windows

Los que estamos habituados a programar para Android estamos acostumbrados a ver emuladores de Android bajo Windows. Pero existen algunos problemas para utilizarlos como si se tratara de un terminal real:

  • Son bastante lentos
  • La instalación sin el entorno de desarrollo no es sencilla
  • No traen muchas de las aplicaciones a las que estamos acostumbrados en nuestros teléfonos Android

Si usamos WindowsAndroid tendremos una emulación más completa realizada por los chicos de socketeq (utilizando directamente llamadas el kernel de windows)

Podemos descargarlo desde este enlace sin olvidar las aplicaciones de Google.

Os dejo un enlace a un vídeo para que lo veáis funcionando antes de instalarlo.

Los Pentium de Intel siguen vivos en la sombra

Fue ya hace muchos años, tras los Pentium 4, cuando Intel decidió apartar la familia Pentium de entre su gama alta de procesadores e introdujo los Intel Core. Desde entonces han seguido existiendo, aunque son modelos de entrada, básicos y muy sencillos y baratos. Han ido adaptándose a las sucesivas arquitecturas pero pasando desapercibidos casi por completo.

Intel Pentium siguen existiendo, por supuesto. Lo último que conocemos son algunos rumores que indican que Intel lanzará nuevos ‘Pentium’ antes de verano, con la misma filosofía que en estos últimos años: procesadores de dos núcleos sin hyperthreading y con una GPU integrada muy básica que  posiblemente ni siquiera ofrezca una potencia decente para videojuegos. Tareas de escritorio, ofimática y poco más.
En total son cuatro modelos los que se barajan


Modelo



Núcleos
/hilos


Frecuencia


Caché L3


Frecuencia
GPU


RAM


TDP

Pentium G2030

2

3 GHz

3 MB

650-1050 MHz

DDR3-1333

55w

Pentium G2030T

2

2.6 GHz

3 MB

650-1050 MHz

DDR3-1333

35w

Pentium G2120T

2

2.7 GHz

3 MB

650-1050 MHz

DDR3-1600

35w

Pentium G2140

2

3.3 GHz

3 MB

650-1050 MHz

DDR3-1600

55w

 

Como se puede ver todos de doble núcleo sin grandes características. En principio estarían basados en Ivy Bridge, siendo esto algo habitual en las CPU de entrada: utilizan una arquitectura anterior a la más moderna con la finalidad de abaratar su precio al máximo.

No estaremos ante procesadores punteros ni modelos rompedores o muy innovadores, pero serán una interesante opción para ordenadores muy básicos. En esta categoría de producto Intel tiene a un gran rival en AMD, quien en los últimos años ha posicionado unos muy buenos AMD Fusion en lo que a calidad y rendimiento/precio se refiere.

Requisitos de acceso para la Formación Profesional a distancia

Para acceder a la Formación Profesional de Grado Superior en modalidad a distancia se deben reunir los siguientes requisitos:

•Título de Bachiller LOGSE/LOE (no es válido el título de BUP).

•Cualquier modalidad de Bachillerato Experimental.

•COU  o preuniversitario.

•Título de Técnico Especialista o  Técnico Superior.

•Titulación universitaria.

•Prueba de acceso a ciclos formativos de grado superior correspondiente o tener superada la prueba de acceso a la Universidad para mayores de 25 años (esta última necesita convalidación).

• Acceso por experiencia laboral

En relación al acceso por experiencia laboral,  debe tenerse en cuenta que podrán acceder a los módulos profesionales asociados a unidades de competencia, sin reunir los requisitos generales de acceso a los ciclos formativos de formación profesional, aquellas personas que hayan cumplido dieciocho años o los cumplan en el año natural de comienzo del curso escolar correspondiente y que acrediten una experiencia laboral de, al menos, dos años en una ocupación o actividad económica relacionada con el ciclo formativo al que pertenecen el/los módulos solicitados, ordenados por el mayor tiempo de experiencia acreditado.

Quien acceda por esta vía y haya superado el total de los  módulos profesionales que forman parte del curriculum de un ciclo  formativo, podrá obtener la titulación correspondiente, una vez  aportados alguno de los requisitos de acceso propios de esta enseñanza  para grado medio o superior,  según corresponda.

Más información en www.foc.es

Prácticas erróneas que cometen los desarrolladores de PHP

En la actualidad hay muchas aplicaciones realizadas por los desarrolladores de PHP. Muchos de estos desarrollares caen en los siguientes errores a la hora de realizar un desarrollo web.

Los principales errores que suelen cometer son:

1.- Utilizar el motor de base de datos MyISAM en vez de INNODB.

Normalmente en las bases de datos MySQL se suele poner por defecto el motor de base de datos MyISAM. Este motor no permite establecer claves foráneas o la utilización de transacciones. Por lo que si queremos crear una base de datos consistente MyISAM se nos quedara corto.

Mi recomendación es que siempre se utilice INNODB para, al menos, mantener la integridad referencial de los datos con los que vamos a interactuar con nuestras aplicaciones.

2.- Utilizar las funciones mysql de php

Otro error muy común es la utilización de las funciones que proporciona php para acceder a una base de datos MySQL. Desde la versión de PHP 4.1..3 tenemos disponible la clase MySQLi que dispone de constructores y método para realizar una gestión mucho mas eficiente de las sesiones con MySQL.

3.- No sanear la entrada de datos

Un error muy común es no proteger nuestros formularios de la inyección sql. Una de las formas mas correctas de evitar que se produzcan este tipo de ataques es no permitir caracteres como «‘» o «;» que puenda hacer ejecutar una sentencia SQL distinta de la que nosotros utilizamos.

4.- No utilizar UTF-8

Por defecto las bases de datos MySQL utilizan una calificación UTF8 pero los desarrolladores de PHP al realizar las web utilizan otro tipo de codificación basados en el idioma o paÃís en el que realizan la página.  Esto implica que la información que se almacena en nuestra base de datos no se introduce de forma correcta.

Para que no suceda esto lo mejor es utilizar siempre UTF8 de esta forma aseguramos que nuestra página se visualice bien en cualquier sitio.

5.- Favorecer el uso de PHP sobre SQL

Siempre debemos tener claro que debemos dividir la carga entre los distintos sistemas que nos componen nuestra aplicación. Así si nosotros queremos saber una media o el número de ventas producido en una fecha. Es mas simple y rapido realizar sobre SQL que utilizar PHP para realizar el cálculo sobre toda la información que obtenemos de la base de datos.

Muchos desarrolladores no tienen en cuenta esto y provocan que sus páginas tarden mas en cargarse para realizar una operación que desde la base de datos se realiza en pocos segundos.

6.- No optimizar las consultas realizadas en nuestros programas.

A la hora de realizar las consultas, en la gran mayoría de los casos, si esta muestra la información que deseamos la dejamos como esta. Esto puede provocar que cuando incremente nuestro volumen de datos esta consulta tarde mas en ejecutarse de lo esperado.

Muchos desarrolladores no conocen la orden de MySQL Exaplain. Esta orden de MySQL realiza un análisis de nuestra consulta mediante el cual podemos ver en que parte de nuestra consulta ralentiza la devolución de resultados y podremos optimizar la consulta para que se ejecute mas rápido.

7.- Utilizar tipos de dato erróneos para almacenar la información.

8.- Utilizar el * en las consultas select

Un error muy común a la hora de interaccionar con las bases de datos es realizar consultas en las que me devuelvan todos los campos de una tabla o vista. Esto puede hacer que tarden mas en visualizar el resultado de nuestra página ya que tiene que procesar toda la información cuando nosotros, en la mayoría de los casos, solo vamos a utilizar unas columnas determinadas.

Lo recomendable es evitar el * y seleccionar aquellas columnas que vamos a necesitar para nuestras páginas en PHP.

9.- Olvidar realizar backups

Espero que todas estas recomendaciónes las tengáis en cuenta en futuro para vuestros desarrollos sean en PHP o en otro lenguaje.

Novedades para el programador en Android 4.2.2

Recientemente Google ha empezado a actualizar todos sus terminales Nexus a Android 4.2.2 (a la que seguimos llamando Jelly Bean). El resto de fabricantes irán actualizando sus terminales próximamente.

Las novedades más importantes para el programador son:

  • Soporte multiusuario: a partir de esta versión, en los tablets, tendremos disponible la opción de tener varios perfiles de usuario, cada uno de los cuales tendrá posibilidad de configurar de forma independiente el escritorio y las aplicaciones que estén adaptadas a multiusuario. El primer usuario que configuró el tablet será el usuario propietario y éste será el que pueda añadir o eliminar al resto de usuarios. A partir de que se creen estos usuario en la pantalla inicial, aparecerá un selector que nos permitirá acceder a cada una de las cuentas  (con la seguridad que el usuario haya creado).  Existirán espacios de almacenamiento separados para cada uno (para todo tipo de archivos, fotos, videos, …)  y por supuesto escritorios personalizados para cada uno. Cada usuario verá las aplicaciones que haya instalado y una aplicación se desinstalará cuando todos la desinstalen, aunque el que la desinstale ya no la verá más.
  • Seguridad al depurar con USB: cuando conectemos nuestro dispositivo con la opción de depuración activada a un ordenador, nos aparecerá en el terminal una ventana para que confirmemos que queremos acceder a éste desde el depurador. Si tuviéramos bloqueado el terminal habría que saber el patrón de desbloqueo o la contraseña para poder autorizar la depuración. De no autorizar esta opción no se podrá depurar ni acceder a la información interna del teléfono.

 

4 formas de saber la versión de SQL Server instalada

En muchas ocasiones no sabemos la versión exacta de SQL Server que tenemos instalada, para ello os dejo tres formas rápidas para sacar dicha información.

Método 1: Conectar con la instancia de SQL Server y, a continuación, ejecutar la consulta siguiente:

Select @@version

Esta consulta producirá un resultado similar al siguiente:

Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64)   Mar 29 2009 10:11:52   Copyright (c) 1988-2008 Microsoft Corporation  Express Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600: )

Método 2: Conectar con la instancia de SQL Server y, a continuación, ejecutar la consulta siguiente:

SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')

Nota: esta consulta funciona con cualquier instancia de SQL Server 2000 o una versión posterior.
Se devuelve el siguiente resultado:

  • La versión del producto (por ejemplo, 10.0.1600.22).
  • El nivel del producto (por ejemplo, RTM).
  • La edición (por ejemplo, Enterprise).

Por ejemplo, el resultado puede presentar un aspecto similar al siguiente:

10.0.1600.22 RTM Enterprise Edition

Método 3: Conectar con el servidor mediante el Explorador de objetos en SQL Server Management Studio. Cuando conecte con el Explorador de objetos, este mostrará la información de versión entre paréntesis junto con el nombre de usuario que se utiliza para conectar con la instancia específica de SQL Server.

Método 4: Buscar esa instancia en las primeras líneas del archivo de registro de errores. De forma predeterminada, el registro de errores se encuentra en Archivos de programaMicrosoft SQL ServerMSSQL.nMSSQLLOGERRORLOG y archivos ERRORLOG.n. Las entradas serían similares a las siguientes:

2011-03-27 22:31:33.50 Server      Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64)                 Mar 29 2009 10:11:52                 Copyright (c) 1988-2008 Microsoft Corporation                Express Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600: )

Como puede ver, esta entrada contiene toda la información necesaria sobre el producto, como la versión, el nivel de producto, 64 o 32 bits, la edición de SQL Server y la versión del SO en el que se está ejecutando SQL Server.

 

Toda esta información la tenéis ampliada en la siguiente nota de Microsoft

http://support.microsoft.com/kb/321185/es

Benchmarking en móviles, poniéndole números a la potencia

La velocidad y la potencia de un móvil, son argumentos más que llamativos para los usuarios que piensan en hacerse con uno de los nuevos móviles de los distintos fabricantes, que integran lo mejor de lo mejor en sus soluciones de alta gama.

Procesadores con mayor número de núcleos y mejores frecuencias de reloj, chips gráficos capaces de convertir al móvil en una sorprendente consola portátil o chips de memoria que aceleran la transferencia de datos. Pero, ¿como medimos esa potencia? ¿Como verificamos lo que nos dicen los fabricantes? Lo mejor es buscar una forma objetiva de poder conocer la potencia de un procesador en un terminal determinado.

Es ahí donde entran en juego las utilidades de benchmarking, que permiten evaluar el comportamiento del procesador principal, procesador gráfico o memoria —y en ocasiones otros apartados— y ofrecer un índice de rendimiento final. Ese índice de rendimiento se puede contrastar con los índices de rendimiento de otros procesadores y otros terminales que pueden llevar más tiempo en el mercado y que por tanto son una referencia válida, y eso permite a los usuarios hacerse una idea aproximada de la potencia que pueden obtener de los microprocesadores y los smartphones en los que están interesados.

En el mercado hay un gran número de soluciones de benchmarking, y todas ellas podrían clasificarse en dos grandes grupos:

  • Benchmarks sintéticos: este tipo de aplicaciones ponen a prueba diversos componentes sometiendo dichos componentes a una carga de trabajo elevada y comprobando la velocidad y eficiencia con la que se completan esas cargas de trabajo.
  • Benchmarks de aplicación: la diferencia fundamental está en que estas pruebas se ejecutan con aplicaciones reales que los usuarios utilizan en su día a día y que permiten comprobar el rendimiento de una plataforma con esa aplicación en concreto.

Entre las más destacadas están AnTuTu y Quadrant, aplicaciones de benchmark que analizan el comportamiento de la CPU, la GPU o la velocidad de transferencia de los sistemas de almacenamiento para ofrecer un índice general. Como en cualquier benchmark que se precie, al valor numérico en puntos que se concede según las pruebas debe acompañarle la explicación de si esa magnitud es mejor cuanto más alta o cuanto más baja. Otro ejemplo de aplicación de benchmarking es BenchmarkPi, que trata de averiguar un número determinado de decimales del número Pi en el menor tiempo posible.

Publicados borradores de nuevos Títulos de Formación Profesional

El Ministerio de Educación, Cultura y Deporte ha publicado recientemente en su web todofp.es los borradores de nuevas titulaciones de Formación Profesional.  En concreto estos nuevos Títulos son cuatro de FP de Grado Medio y doce de Grado Superior:

– Técnico en actividades ecuestres
– Técnico en cuidados auxiliares de enfermería
– Técnico en emergencias y protección Civil
– Técnico en guía en el medio natural y de tiempo libre
– Técnico superior en acondicionamiento físico
– Técnico superior en coordinación de emergencias y protección civil
– Técnico superior en diseño y edición de publicaciones impresas y multimedia
– Técnico superior en diseño y gestión de la producción gráfica
– Técnico superior en documentación y administración sanitarias
– Técnico superior en fabricación de productos farmacéuticos, biotecnológicos y afines
– Técnico superior en higiene bucodental
– Técnico superior en mediación comunicativa
– Técnico superior en organización y control de obras de construcción
– Técnico superior en ortoprótesis y productos de apoyo
– Técnico superior en prevención de riesgos profesionales
– Técnico superior en promoción de igualdad de género

No hay novedades con respecto a la famila de Informática y Comunicaciones, que ya cuenta con cuatro Títulos de reciente implantación,  dos de los cuales ya se imparten en el Instituto Fomento Ocupacional en modalidad a distancia:

Técnico Superior en Administración de Sistemas Informáticos en Red
Técnico Superior en Desarrollo de Aplicaciones Multiplataforma

 

Xamarin. Desarrollo de aplicaciones iOS y Android en C#

Desde hace un tiempo han salido diversas herramientas integradas con visual studio para poder desarrollar aplicaciones en Android desde nuestro código en C#.

Un de las herramientas mas difundidas es Xamarin

Xamarin es una herramienta que me permite crear programas en c# destinados a dispositivos basados en iOS, Android y Mac.

Esta herramienta nos proporciona el poder reutilizar nuestro código en .net. Esta herramienta nos instala las extensiones necesarias para que podamos realizar nuestro propios proyectos desde visual studio.

En el siguiente enlace tenéis disponible toda la información pública para realizar desarrollos: tutoriales, apis, … Información Xamarin