Mostrando entradas con la etiqueta ingeniería informática. Mostrar todas las entradas
Mostrando entradas con la etiqueta ingeniería informática. Mostrar todas las entradas

jueves, 2 de mayo de 2013

¿Cómo hay que regular la Ingeniería Informática?

Estos días estamos viviendo otra vuelta más de tuerca a la Ingeniería Informática. Así que creo que ha llegado la hora de exponer mi punto de vista.

Espero que no contente totalmente a nadie. Ni a los partidarios. Ni a los detractores. Si no, es que algo habré hecho mal.

Por supuesto, esta es mi personal visión de las cosas.

NOTA: Es este texto el término "Ingeniero Informático" incluye a las profesiones de Ingeniero en Informática e Ingeniero Técnico en Informática así como a todos los títulos universitarios vinculados a ellos.


Pedir la regulación de la Ingeniería Informática ¿no es corporativismo?

Si yo pensase que se debe pedir la regulación de la Ingeniería Informática para defender los derechos de los profesionales de la Ingeniería Informática no me atrevería a decir nada. Nunca he sido partidario de los privilegios y no voy a empezar ahora.


Pero entoces ¿Qué razones hay para regular una profesión?

Claramente solamente veo una razón la defensa del interés general. Yo quiero que exista una regulación de la profesión de Ingeniero de Caminos porque no quiero que los puentes se caigan. Así mismo, yo quiero que exista una regulación de la profesión de médico porque mi salud y la de mis conciudadanos depende de ello.


¿y cómo identificamos el interés general?

Pues a falta de otras referencia a mi se me ocurre que una buena fuente es la Constitución Española. El Título I define los derechos y deberes fundamentales. Y ese creo que debe ser el marco de referencia. Volveré a ello más tarde.


Entonces ¿No debería requerirse la firma de un Ingeniero Informático en todos los proyectos Informáticos?

Pues de ninguna manera. Yo creo que solamente debe regularse la realización de actividades que afecten al interés general.


¿Y no debemos exigir un título concreto para programar?

Pues eso está en la libertad de cada empleador. Pero no se me ocurre por qué habría que pedir tal cosa.


¿Qué modelo de regulación deberíamos tener?

Básicamente, según yo lo veo hay dos modelos de regulación de acceso a una profesión: el acceso basado en titulación y el acceso basado en acreditación.

El modelo basado en titulación es el que tenemos en España. Estar en posesión de un título da acceso directo a una profesión regulada. Uno va con su título universitario de Arquitecto y se inscribe en el Colegio de Arquitectos.

El modelo basado en acreditación se usa en algunos países anglosajones. Este modelo separa totalmente la titulación universitaria de la profesión. En este modelo son las sociedades profesionales las que evalúan que un profesional tiene la capacidad para ejercer una profesión regulada, independientemente de la titulación. Típicamente uno va a la universidad, ejerce bajo la supervisión de un profesional acreditado durante un periodo (uno o dos años en muchos casos) y luego realiza el examen en la sociedad profesional para obtener la acreditación. Como anécdota os diré que una vez conocí a una persona que era "Geólogo de formación e Ingeniero de Minas de profesión".

Un efecto adicional que tiene el modelo basado en acreditación es que la sociedad profesional se convierte de forma automática en un control de calidad externo de la formación que las universidades dan a sus titulados.

A estas alturas el lector habrá adivinado que modelo me gusta más.


Pero entonces volviendo a la Ingeniería Informática ¿Qué hay que regular?

Dije antes que únicamente aquello que afecte al interés general. Bien empecemos por la constitución como marco de referencia e intentmos ver algunso casos concretos:


Artículo 15: Derecho a la vida

Dice este artículo que "Todos tienen derecho a la vida y a la integridad física y moral". Bien, interpreto que esta es la razón que aconseja la regulación de las profesiones que pueden poner en riesgo la vida de las personas.

Bien revisemos algunos ejemplos de sistemas informáticos, para ver si afectan a esto:

Caso 1: Sistemas de control de tráfico. Hace años participé en el diseño y construcción del sistema de control del carril BUS-VAO en la entrada a Madrid por la A-6. Un error en este sistema puede provocar que dos vehículos se encuentren de frente sin posibilidad de maniobra. En el pero de los casos esto puede dar lugar a accidentes de tráfico.

Caso 2: Equipamiento hospitalario. Hace menos años diseñé y desarrollé una parte de un equipo de tomografía por rayos X (comunmente conocidos como TAC). Bien un error en el software de este tipo de máquinas puede provocar una dosis excesiva de rayos X a una persona. Y todos sabemos el efecto que tiene sobre la salud.

Caso 3: Tráfico aéreo. Recientemente se ha sabido que fallos de seguridad informática podrían permitir que una aplicación informática podría permitir desviar la ruta de un avión. Sin comentarios.


Artículo 18: Informática y derecho a la intimidad

Dice el artículo 18.1 que "Se garantiza el derecho al honor, a la intimidad personal y familiar y a la propia imagen". Y el artículo 18.4 insiste en que "La ley limitará el uso de la informática para garantizar el honor y la intimidad personal y familiar de los ciudadanos y el pleno ejercicio de sus derechos".

En la época en las que nuestros datos son almacenados y tratados por múltiples sistemas informáticos uno se hace múltiples preguntas.
  • ¿Quién garantiza que los datos que almacena la agencia tributaria se almacenan y tratan con las debidas garantías?
  • ¿Quién garantiza que los datos que de nosotros tiene la seguridad social (como nuestro historial médico) se custodia con las debidas garantías? ¿Y los de los hospitales privados?
  • ¿Quién garantiza que los datos que tiene la administración de trabajo no se revelarán a nadie?
  • ¿Y los datos que tienen nuestros empleadores?
  • ¿Y los bancos?
  • ¿Y las compañías de seguros?
En definitiva ¿Se está garantizando adecuadamente nuestro derecho a la intimidad?


Artículo 30: Derecho de propiedad

Dice aquí que "Se reconoce el derecho a la propiedad privada y a la herencia."

Este es un derecho tremendamente complejo y con muchas derivaciones. Pero me gustaría hacer alguna consideración.

He perticipado en la puesta en marcha de servicios de alguna entidad bancaria. En este caso, un error en el desarrollo o en la operación y mantenimiento del sistema informático, puede dar lugar a graves pérdidas para la entidado así como perjuicios para los clientes.


Y ¿qué pasa cuando la un problema llega a los tribunales?


Un caso de litigio laboral

Supongamos un caso concreto y muy parecido a uno real que conozco de primera mano. Una empresa despide a un empleado aduciendo que su baja productividad se debe a que hace uso de los medios informáticos de la empresa para fines personales. Como prueba, presenta un listado del registro de actividad del router de acceso a internet en formato PDF (cuando queráis generáis uno así con el Word). Así mismo presenta un informe pericial realizado por un Ingeniero Técnico Industrial Mecánico (disciplina, a la que por otra parte respeto profundamente).

Mi pregunta es ¿debe el juez aceptar esto como prueba? Seguro que al lector se le ocurren más preguntas al respecto de este caso.


Otro caso distinto

Supongamos ahora que los empleados del departamento de informática de una empresa se marchan de la misma. Supongamos que se llevan una copia del código fuente de la aplicación estrella de la empresa al que realizan modificaciones y lo comercializan bajo otro nombre.

Y yo me pregunto ¿quién está cualificado para determinar si se ha producido copia del producto?


En conclusión

Visto lo visto, si como parece el Gobierno decido no regular la profesión de Ingeniero en Informática estará cometiendo un grave error, no porque decida dejar en una situación irregular a los Ingenieros en Informática de este país. No será por eso. Será porque no está defendiendo el interés general.

Y hasta donde yo se, es obligación del Gobierno de la Nación defender el interés general de sus ciudadanos.

domingo, 11 de noviembre de 2012

Standards and Patents (Educating colleagues)

Usually, I do not write twice about the same thing. And usually I am not very disciplined about blogging.

However, after my last blog entry, I have had multiple twitter interaction with a twitter user (@DrPantera). And finally I have decided that I have to post something that should serve as general standards education.

I want reproduce every interaction (which, by the way are in Spanish) but just give some general ideas. During our twitter discussion this user said:

  • Only Microsoft can implement ISO/IEC 29500.
  • It is nonsense standardizing a tool that only one company can implement.
I think both assertions are false. Firstly, I will explain why.

ISO/IEC 29500 defines a set of standard files format. So, it is not appropriate to speak about implementing the ISO/IEC 29500. What somebody can implement is a tool to produce, read, process, render (or whatever) files in such a format.

Anyway, the real argument was that as some parts of the format are protected by patents, only the patent holder (Microsoft in this case) can implement it. I argued, that another company could license the patent. The counterargument is that only licensed companies would implement. That's right, that is how business work.

As the discussion was going on. I thought that instead of speculating the right thing was to go the right source: ISO.

Reading this page about Standards and Patents in the ISO Website was crystal clear:

First: ISO, IEC and ITU have a common patent policy. I am not a lawyer, read it yourself to be sure. However what I interpret in short is that if a deliverable contains provisions depending on a patent there are 3 options: either the patent holder agrees to negotiate licenses free of charge or the patent holder agrees to negotiate licenses with charge or the provisions are removed from the deliverable. In all cases license negotiations need to be on a nondiscriminatory basis on reasonable terms and conditions.

Second: What model applies to ISO/IEC 29500? Well in the same page there is en Excel file with all the current standards and associated patent holders. OK. What doest it says about 29500? There are patent notes at the name of Microsoft and the entry is marked with an "F".

What does the "F" means. Literally: <"F" = Prepared to grant a license free of charge>.

By the way, according to the same sources:
  • ISO/IEC 14496-14 (MP4) is related to a patent from Apple (US Patent numbers 6,134,243,6,453,355).
  • ISO/IEC 15444-3 (JPEG) is related to a patent from Apple (6,134,243).
  • ISO/IEC 32000-1 (PDF) is related to a patent from Adobe Sytems Incorporated 
  • ISO/IEC 11172 series (MP3) is related to patents from very long list of companies.
  • ISO/IEC 14496-10 (MP4) is related to patents from another long lsit of companies.
Most of those patentes do not have the "F", so you need to negotiate a patent licensing and eventually pay for it.

There is an important point on all this. There are some things that we have been forgetting for a long time in Higher Education of Computer Professionals.

FIRST: An engineer must always be as agonostic as possible. This means that if possible he/she must go to the right sources to get the right information. Moreover, making claims only based on available date is included both in IEEE and ACM code of Ethics.

SECOND: Understanding of standards is essential to any Computer or Software Engineer these days. It is important to understand the technical issues in the standards. But as I have shown this is not enough. It is important also to understand which is are the rules of standards bodies, how different stakeholders are represented (or sometimes underrepresented) in standardization, which are the standardization procedures.

THIRD: A basic knowledge of law is also very important. I have shown here that sometimes national laws may enforce the use of a standard. It is also very important that we as engineers are able to understand the implications of intellectual property and the role of patents (where applicable).

And coming back to our code of ethics, I feel that this post is writteng according to item 10 of IEEE Code of Ethics (to assist colleagues and co-workers in their professional development and to support them in following this code of ethics), and similar provisions in the ACM code of ethics and in the ACM Software Engineering Code of Ethics.

IMPORTANTE NOTICE: If you find that anythin of this post is not true or has any inacurracy, please, contact me and I will correct it inmediately.


domingo, 4 de noviembre de 2012

Standards and Open Standards

When I write something about standards, usually is about C++. This post is not the case, so if you were reading this looking for C++ info, stop now.

A few hours ago, a good friend of mine (@jmdodero) wrote this tweet:

El MAP dice que docx es abierto! Standards for ES Public Administrations http://www.boe.es/boe/dias/2012/10/31/pdfs/BOE-A-2012-13501.pdf …

In English: "The Spanish Public Administration ministry says that docx is open! Standards for ES (Spanish) Public Adminstrations". The link points to an official document from the Spanish Government approving the Technical Standard of Standards Catalogue Interoperability. In essence this document establishes a list of standards to be used for the Spanish Public Administration.

I'll save you the legal details. However one of the items in the list is:


  • Category: File formats - Image and/or Text.
  • Common Name: Strict Open XML
  • Formal Name: ISO/IEC 29500-1:2012 Information technology -- Document description and Processing languages -- Office Open XML File Formats -- Part 1: Fundamentals and Markup Language Reference - Strict
  • Type: Open
  • Version (minimum accepted): 2012
  • Extension: docx, xlsx, pptx
A few minutes later. I answered:

ISO/IEC 29500-1:2012 y ECMA-376. Las dos públicamente disponibles = estándar abierto. ¿Cuál es el problema?

In English:

IOS/IEC 29500-1:2012 and ECMA-376. Both publicly available = open standards ¿What is the problem?

I should not be a typical suspect. I mean, I run a Linux laptop and 2 android devices. Many know that I think that the best editor is vi (vim is ok, too) and a really like LaTeX. However in a few minutes I got the following answers:

  • @jdgarciauc3m when you save a document in MS Office 2010 […] you are not saving them in the advertised OpenXML format This document will hence NOT be properly readable by other software http://t.co/AeohSarn
  • @jdgarciauc3m que no existe ninguna implementación del standard, ni siquiera MS Office lo soporta
    • There exists no implementation of the standard, even MS Office does not support it.
Well, I thought that it was time to clarify what a I think. I'll try to do so:

Question 1: Is ISO/IEC 29500-1:2012 an open standard?

Well, this is the easiest question. By definition any ISO/IEC standard is an International Standard. I could explain this in more detail, but for now let's agree on this.

The definition of "Open Standard" is "a standard that is publicly available". As any other ISO standard, ISO/IEC 29500-1:2012 is available from www.iso.org.

Question 2: Does MS Office 2010 fulfill the ISO/IEC 29500-1:2012?

I hope not.

Surprised?

It is almost impossible that a product shipped in 2010 fulfills a standard that has been approved in 2012. The only possibility I see is that people at Microsoft had a time machine. And, I do not think they have (otherwise sometimes they would have made different business decissions), but, paraphrasing Michael Ende, that is a different story and must be told in a different time.

Question 3: If there is no existing implementation of the standadrd does it make sens to put it in the catalogue?

Yes. Let me explain why.

First. No one implements a file format. What one can implement is a tool for processing files (generate them, render them, ...) in such a format. However it may be true (I do not know and I do not mind), that no existing tool correctly processes the format.

What the Spanish official document is saying is that if a public agency wants to receive text documents from another public agency or a citizen, it must say which formats is willing to accept. By the way, ODT (ISO/IEC 26300:2006) , PDF (ISO/IEC 32000-1:2008) and PDF/A(ISO/IEC 19005-1:2005 and ISO/IEC 19005-2:2011) are also in the same list.

So, the point is. We have a format in the list and when some tools are available it is possible that an agency includes in the list that format.

I still do not see the problem.



martes, 20 de septiembre de 2011

Noticias desde la normalización de lenguajes de programación

Hoy ha terminado la asamblea plenaria anual del subcomité ISO/IEC JTC1/SC22. Los se. En el mundo de la normalización se utilizan acrónimos insoportables. Probablemente resultará más inteligible si lo reformulo: Hoy a terminado la asamblea plenaria anual de subcomité de normalización de lenguajes de programación, sus entornos e interfaces de sistema.

Hay una larga lista de resoluciones tomadas por el subcomité. Algunas son meramente burocráticas y me las saltaré. Vayamos a la que pueden tener cierrto interés.

  • Se va a iniciar el estudio de una posible propuesta para normalizar la firma digital de código fuente.
  • Se ha disuelto el grupo de trabajo WG11 (binding techniques). Este grupo ha sido responsable de trabajos en especificación de aritmética independiente del lenguaje. No obstante, el interés directo de la industria en las actividades del grupo parece bajo y no se consigue tener una masa crítica en el grupo de trabajo. Este grupo de trabajo no desaparecerá realmente, sino que sus actividades se transfieren a otro subcomité (gestión e intercambio de datos / metadatos).
  • Se ha disuelto el grupo de trabajo WG16 (lenguaje Lisp). Este grupo ha dejado de tener actividad y no parece que haya sufiente interés industrial en el lenguaje.
  • Se ha aprobado la posibilidad de que la especificación del lenguaje ECMAScript (norma ISO/IEC 16262:2011) se pueda obtener gratuitamente a través de ISO. Esta norma ya se puede obtener de forma gratuita a través de ECMA.
  • Se ha confirmado la confirmación de las siguientes normas:
    • ISO/IEC/IEEE 9945:2009 Portable Operating Systems Interface (POSIX) Issue 7.
    • ISO/IEC/IEEE 11404:2007 General Purpose Datatypes.
    • ISO/IEC TR 19768:2007 Technical Report on C++ Library Extensions.
    • ISO/IEC 24716:2007 Native COBOL Syntax for XML support.
    • ISO/IEC 24731:2007 Extensions to the C Library - Part 1: Bounds checking interfaces.
  • Se ha decidido pasar a estado estabilizado (lo que hace hace que las normas dejen de estar activas) las siguientes normas:
    • ISO/IEC 13568:2002 Z formal specification notation - Syntax, type system and semantics.
    • ISO/IEC 15145:1997 Programming Languages - FORTH.
    • ISO/IEC 20970:2002 JEFF File Format.
Además, se ha revisado el estado en el que se encuentra la normalización del lenguaje Ruby que ya es una norma nacional en Japón y que previsiblemente se convertirá pronto en una norma internacional.

Tras esto, merece la pena fijarse en cual es el panorama en la normalización de lenguajes de programación en los distintos foros internacionales.

La estructura de grupos de trabajo de normalización dentro del ISO/IEC JTC1/SC22 queda de la siguiente forma:
  • WG4: COBOL.
  • WG5: Fortran.
  • WG9: Ada.
  • WG14: C.
  • WG17: Prolog.
  • WG19: Lenguajes de especificación formal.
  • WG23: Vulnerabilidades de los lenguajes de programación.
Otra organización internacional que trabaja en la normalización de lenguajes de programación es ECMA que mantiene los siguientes grupos de trabajo:
  • TC49-TG2: C#.
  • TC49-TG3: CLI.
  • TC49-TG4: Eiffel.
  • TC49-TG5: C++ para CLI.
  • TC39: ECMAScript.
Por último, en Japón, IPA mantiene la normalización del estándar sobre el lenguaje Ruby.

Tanto Ruby, como las normas desarrolladas por ECMA pueden pasar por un proceso especial para convertirse en normas ISO. De hecho esto constituye una práctica habitual de la que Ruby y ECMAScript son dos ejemplos actuales.

Y ¿adonde nos lleva esto? Pues a una lista bastante pequeña de lenguajes. Es lo que yo llamaría los lenguajes portables de interés. ¿Qué quiero decir con esto?

Veamos para estar en mi lista un lenguaje de programación debe tener una especificación mediante una norma internacional, porque esto garantiza que:
  1. Existe un interés por parte de varios actores de la industria del software en que exista una norma internacional sobre el lenguaje.
  2. Existe una norma internacional que especifica claramente el lenguaje y su entorno de forma que distintos fabricantes compitan ofreciendo productos que cumplen con la norma.
  3. El software desarrollado usando un lenguaje normalizado puede portarse con cierta facilidad de una plataforma a otra.
Como veréis mi lista no es muy larga. Por orden alfabético: Ada, C, C++, C#, COBOL, ECMAScript, Eiffel, Fortran, Prolog. A esta lista podremos añadir en breve Ruby.

De todas formas, debemos tener cuidado con las interpretaciones de mi lista. Esto no quiere decir que estos lenguajes sean los mejores, ni los más usados, ni nada por el estilo. No trato de generar una versión n+1 de la gran batalla de los lenguajes de programación.

Si un lenguaje está fuera de mi lista es porque:
a) No hay suficiente interés en la industria en el uso del lenguaje o en la existencia de una norma independiente.
b) El lenguaje está sujeto a algún tipo de propiedad intelectual que impide la competición entre distintos fabricantes o la existencia del mismo en determinado tipo de plataformas.
Sin embargo no me gustaría que este post empiece a generar comentarios masivos de fanáticos de ningún lenguaje.

martes, 12 de julio de 2011

La informática en Educación Secundaria

Esta mañana he leído un interesante artículo en IEEE Computer con el título "Transforming Computer Science Education in High Schools" (http://dx.doi.org/10.1109/MC.2011.191). La verdad es que el debate sobre la necesidad de formación en IT (a.k.a Tecnologías Informáticas) me parece pertinente. Especialmente teniendo en cuenta las previsibles necesidades en profesionales del sector en todas partes.

Hace unos días leía un informe que constata que en Europa las necesidades de profesionales altamente cualificados en Tecnologías Informáticas no son cubiertas ni de lejos por la oferta. Según el mencionado informe, en 2015 Europa tendrá un déficit de entre 384,000 y 669,000 profesionales que las universidades europeas no habrán sido capaces de haber formado. El informe enfatiza que la conclusión es que la industria necesita de forma desesperada profesionales altamente cualificados en IT y Europa necesita que más jóvenes se conviertan en profesionales de IT para satisfacer los futuros incrementos de la demanda"

La situación en USA no es distinta. Las proyecciones a día de hoy son que el incremento de puestos de trabajo en IT es tan fuerte que supera al resto de disciplinas STEM (Science, Technology, Engineering and Mathematics) de forma conjunta. Sin embargo, el porcentaje de estudiantes norteamericanos que siguen un curso de informática en secundaria ha descendido un 8% entre 2007 y 2009.

La pregunta del millón es ¿Qué está pasando? y ¿Es trasladable a la situación de España?

Lo primero que se identifica es que mientras que disciplinas clásicas como la matemática o la física son enseñadas de forma rigurosa y por profesionales altamente cualificados. La situación de la informática, cuando se enseña es radicalmente distinta.

Veamos el diagnóstico en USA y los posibles paralelismos en España.

En 41 estados la informática es una materia accesoria que no está clasificada como las matemáticas o la física y que no tiene impacto en los criterios de graduación de la educación secundaria. Curiosamente esta situación es equivalente a la situación española, donde la informática es una asignatura optativa que muchos estudiantes no escogen porque no pueden examinarse de ella en las pruebas de acceso a la selectividad.

La materia de informática suele incluir el uso básico del computador y la utilización de paquetes básicos de software. En España la asignatura de Tecnología de la Información (optativa de bachillerato) se limite también al uso básico del computador y al uso de paquetes ofimáticos.

Otro problema de la enseñanza preuniversitaria de la informática en España es la cualificación de los docentes. Si bien existen unas oposiciones específicas para ser profesor de matemáticas o de física, esto no es así para informática.

En un momento en el que recurrentemente se habla la necesidad de cambiar el modelo productivo de España se está olvidando la formación en una de las disciplinas que puede ser motor de ese cambio. Para alcanzar ese cambio de formación sería interesante seguir muy de cerca iniciativas de reformulación del currículum de informática, como por ejemplo la iniciativa Computer Science Principles, que está definiendo un nuevo curso orientado tanto a estudiantes con intereses en la Ingeniería Informática como a aquellos que tienen intereses más generales en ciencia, ingeniería y humanidades.

Si hiciésemos con la Física de Bachillerato lo que estamos haciendo con la Informática, deberíamos dejar de enseñar las ecuaciones de Newton y en su lugar enseñar a conducir coches. Esto es lo que estamos haciendo hoy día con la informática.

miércoles, 6 de julio de 2011

Los 6 trabajos con más potencial en Tecnología Informática (IT)

Leo la siguiente noticia en cio.com:

http://www.cio.com/article/684344/The_6_Hottest_New_Jobs_in_IT?source=CIONLE_nlt_careers_2011-06-21

Parece que los 6 trabajos con más potencial en TI (Tecnología Informática):

  • Business Architect.
  • Data Scientist.
  • Social Media Architect.
  • Mobile Tecnology Expert.
  • Enterprise Mobile Developer.
  • Cloud Architect
Interesante.

Por otra parte el 65% de los ejecutivos encuestados dicen que contratará más personal en el segundo semestre de 2011 que en el primero.

miércoles, 19 de enero de 2011

La Clasificación Nacional de Ocupaciones, CNO-11 ignora a la Ingeniería Informática

Si como lo oyes. En un alucinante comportamiento del INE no clasifican mi profesión con nombre y apellidos. Es decir, en la clasificación de ocupaciones aparecen ocupaciones como Ingeniero de Telecomunicación, Físico, o Estadístico, pero no Ingeniero Informático.

¿Puedes hacer algo? Si que puedes. Presenta una queja por escrito.

¿Cómo? En el siguiente enlace tienes el texto para hacer copy/paste y los lugares donde puedes hacerlo. No te llevará más de cinco minutos.

http://blog.conciti.org/2011/01/19/plan-de-actuacion-del-conciti-por-la-no-aparicion-en-la-clasificacion-nacional-de-ocupaciones-cno-11/

¿Puedes hacer algo más? Si, pasa esta información a todos los compañeros de profesión.

jueves, 4 de noviembre de 2010

La paradoja del profesionalismo

Le en el último artículo de David L. Parnas en el Communications del ACM:

Until customers demand evidence that the designers were qualified and disciplined they will continue to get sloppy software.

As long as there is no better software, we will buy sloppy software.

As long a s we buy sloppy software, developers will continue to use undisciplined development methods.

As long as we fail to demand that developers use disciplined methods, we run the risk - certainty - that we will continue to encounter software full o bugs.

¿Y como salimos de este bucle?

miércoles, 24 de marzo de 2010

Máster en Ingeniería Informática verficado por ANECA

Ayer recibimos la verificación positiva por parte de ANECA del Máster Universitario en Ingeniería Informática de la Universidad Carlos III de Madrid. En la práctica, esto permite que la implantación de este título comience en el próximo curso 2010/2011.

Este título tiene algunas señas de identidad que considero relevantes:

Por una parte, se trata de un título totalmente adaptado a las recomendaciones publicadas en el BOE de 4 de agosto de 2009 para títulos de Ingeniería Informática. Por tanto, si en un futuro se definen atribuciones profesionales para los Ingenieros Informáticos este Máster habilitaría para ejercer dicha profesión.

Además, se trata de un programa de posgrado con orientación claramente profesional que combina aspectos técnicos con otra formación necesaria para el adecuado ejercicio de la profesión de Ingeniero. Como ejemplo, señalaré que incluye una asignatura específica de "Aspectos Legales y Éticos de la Ingeniería Informática".

Por último, también resaltaré que el perfil de ingreso para este Máster está constituido exclusivamente por titulados universitarios en Informática.

En los próximos días seguiré aportando información.

martes, 10 de noviembre de 2009

El mercado laboral en Informática

Llevo tiempo con ganas de arrancar un blog en el que opinar sobre distintas cosas (unas relacionadas con la Ingeniería Informática y otras no). Por fin hoy he decidido que alguna vez tenía que empezar.

Leo en la Web de ALI su último estudio sobre el mercado laboral en Informática:

http://www.ali.es/modules/news/visit.php?fileid=120

No voy a opinar sobre la validez metodológica del estudio, si bien creo que es de alabar que año tras año ALI publique ese estudio. Lo dice alguien que habiendo estado durante años a la asociación hace algún tiempo que causó baja en la misma. Pero como dice el escritor, esa es otra historia y será comentada en otro momento.

Nada más echar un vistazo me ha venido a la mente algo que suelo repetir a mis estudiantes. Si solamente sabes lo que se puede aprender en un cursillo de seis meses de programación de formularios en Java (o en .Net, o lo que sea) te acabarán pagando como a sociólogo (o biólogo o matemático o lo que sea) que ha hecho un cursillo de 6 meses de Java (o lo que sea). Suelo decir esto para animar a los estudiantes a conocer múltiples tecnologías, a tomar decisiones de ingeniería basadas en los conocimientos y aprender disciplinas donde tengan que competir con profesionales realmente cualificados.

¿Y a qué viene todo esto?

El estudio de ALI analiza un muestreo de ofertas de empleo publicadas en prensa escrita y recibidas por la asociación. Por una parte observo que el 55,5% de las ofertas para Director de Informática requieren el título de Ingeniero en Informática. También observo que el 68,7% de las ofertas para Ingeniero Software y el 65,6% de las de Auditor Informático requieren las titulaciones de Ingeniero en Informática o Ingeniero Técnico en Informática.

Por otra parte, observo también que en los casos de Analista Programador y de Programador, el porcentaje baja respectivamente a 22,1% y 26,9%. El valor mínimo lo obtiene el perfil de Administrador de BBDD con un 12,5%.

Ante esto se puede tener muchas reacciones. Pero una yo veo una conclusión importante para los estudiantes de Ingeniería Informática. Además de los estudios reglados (las asignaturas que tienes que cursar obligatoriamente) siempre hay oportunidades para tener una cierta formación complementaria que hará que cada titulado tenga un perfil distinto. Es ahí donde mi consejo es tomar medidas. Pondré algunos ejemplos:

Proyecto de Fin de Carrera: De vez en cuando (con demasiada frecuencia) aparecen estudiantes interesados en hacer el PFC. Cuando hablo con ellos lo primero que me dicen es que quieren hacer algo facilito. Ya sabes, unas páginas Web o algo así. Algo que se haga rápido y no genere muchos problemas. Puedo entender que a esas alturas muchos estudiantes tienen ganas de terminar y obtener el título oficial que tanto esfuerzo les ha costado. Pero precisamente por eso, no deberían perder la oportunidad de realizar un trabajo de ingeniería interesante que les permita integrar los conocimientos adquiridos (y adquirir algunos más).

Becas de colaboración: Mi universidad, como otras, ofrece muchas oportunidades para obtener becas de colaboración en los servicios de la propia Universidad. Veo con decepción que muchos estudiantes de Ingeniería prefieren colaborar en la biblioteca repartiendo libros, antes que colaborar en un Departamento integrándose en algún proyecto interesante. Nunca olvidaré la frase "es que por el mismo dinero allí curro menos". Pero lo que es más importante, los empleadores tampoco lo pasarán por alto.

Podría seguir el post con otros consejos, pero creo que ya va quedando largo.

Simplemente insistiré:

Si compites con los que han hecho un cursillo de 6 meses de fomrularios Web, te pagarán como el que ha hecho un cursillo de 6 meses de formularios Web. Si compites con Ingenieros, te pagarán como a un Ingeniero.