Hace 13 años | Por cbenitezf a etnassoft.com
Publicado hace 13 años por cbenitezf a etnassoft.com

Trabajar como programador en la Administración Pública puede ser toda una odisea. Conocer de antemano algunas de sus peculiaridades puede ayudarnos a sobrevivir en una jungla donde conviven grandes profesionales con altos cargos de medio pelo. No se hacen pruebas técnicas a los candidatos, no hay metodologías de desarrollo ni controles de calidad. Todo se resuelve gracias a unos pocos desarrolladores guiados por su propio criterio y bajo la mayor de las presiones.

Comentarios

D

#2 Cuán razón tienes...

D

#4 Yo solo he trabajado una vez para la administración pública (como externo) y me he encontrado lo mismo que para proyectos privados.

t

#2 Muchas veces, en empresas pequeñas, el simio comercial es el dueño que además tiene un alto concepto de si mismo. Por supuesto él nunca tiene culpa de nada.

No nos olvidemos de los diseñadores/maquetadores que acaban tocándote el código...

D

#2 Precisamente la capacidad para hacer estimaciones realistas de tiempo, desde mi punto de vista, es la más difícil de adquirir como ingeniero informático. Lo ideal para conseguirla, que nadie o casi nadie hace, es seguir un proceso software personal (PSP), y un proceso software de equipo (TSP)... pero claro, eso implica una "burocracia" tremenda, y al final no se hace.

En fin, que se me ha hecho amena la lectura. En la parte donde dice que todos han visto Battlestar Galactica, que se saben más IPs que números de teléfono, y que llevan camisetas de Linux y Gnome casi me identifico lol

D

Leyendo esto me estaba entrando una impresión de deja vú y mira que no he trabajado para al administración pero si para una empresa multinacional española muy grande (esa que te imaginas) y la cosa era similar.

Aunque #2 apunta bien, la causa no es lo que piensa, es más bien una consecuencia, como lo que dice primero.

La causa real es otra. Desde arriba está muy mal visto decir que no a nada. Desde más arriba solo entienden de una cosa: menos tiempo, menos dinero con lo que presionan hacia sus inmediatos inferiores que tragan como idiotas. Es más, he visto a responsables (de gerente para arriba) picarse entre ellos a ver quien recortaba más el plazo ante la satisfacción del director. Total, en sus objetivos no está que las cosas funcionen, sino que se pongan en producción (el que se caigan cada dos por tres es irrelevante aunque dejen a 1000 operadores sin poder trabajar) ¿un mes de Pruebas de Sistema? ¿ande vas tú, si el proyecto lleva ya seis meses de retraso (por unos requisitos que no me has dado so cabrón) total que mucho proyecto sale como sale, gracias a la metodología C2C (Con 2 Cojones) que emplean los equipos de desarrollo PS y soporte (y aqui no se implican solo los subcontratados, hay propios, jefes de proyectos, mandos intermedios ... que de dejan los cuernos)

Al final, cuando llevas dos años, todos pasan de todo y se la pela el proyecto con lo que se llega a lo que dice #2 y a lo que cuenta el enlace, pero tened en cuenta que la gente que está ahí no es que sean inútiles, es que están quemados a consecuencia de esta bonita manía tan capitalista de ahorra, ahorra, recorta, recorta, adelanta plazos, ... todo por el dinero y lo gracioso es que eso no es de ahora, en tiempos de crisis, eso lo llevo viendo yo al menos en los últimos 15 años.

Saludos

b

#2 Técnicos de sistemas que se piensan que son dioses.

Bueno, tanto como dioses no, pero las cosas con su debido orden.
Por la parte que me toca, preproducción = producción. No me pidas que te pase algo a producción si no has pasado por PRE.
No me digas que el servidor SQL va lento si lanzas una consulta que tarda mas de 2 minutos en devolver resultados por que la base de datos esta hecha con el culo y la consulta ejecuta 10 veces lo mismo para devolver resultados repetidos.

En fin, en todos lados hay tullidos, en sistemas o en programación. A vivir con ello toca

D

#19 En realidad si que es posible hacer un intercambio de variables sin variable intermedia, se puede hacer con algo de aritmética básica, o con algebra de boole, en el caso que has comentado lo hace con un XOR, Verilog te permite hacerlo de esa manera y sin variable intermedia.

Las cosas que se enseñan como absolutas no siempre lo son tanto... como mucho son lo más práctico.

En cualquier caso era de cajón que el comentario tenía truco por el contexto ¿no? lol

NeoPolus

#24 no conocía Verilog, gracias por la nota sobre que "

frankiegth

Para #35. Creo que '

HeavyBoy

#19 #24 #34 en php:
$a = 1;
$b = 2;
list($a,$b) = array($b,$a);

NeoPolus

#c-18" class="content-link" style="color: rgb(227, 86, 20)" data-toggle="popover" data-popover-type="comment" data-popover-url="/tooltip/comment/1137504/order/18">#18 #19 #26 En algunos lenguajes de programación es incluso posible intercambiar el valor de las dos variables sin variables auxiliares (que por cierto, el darse cuenta de la necesidad de una variable auxiliar en la mayoría de lenguajes es "la trampa" de la pregunta).

Esto es válido tanto en Python como en Ruby (ambos soportan asignación múltiple):

a = 1
b = 2
a, b = b, a
print "a vale", a, "y b vale ", b

# Salida: "a vale 2 y b vale 1"

trion

Estoy estudiando para Ingeniero Informatico lol 1ro, pregunto: Lo de la doble asignación #34 esta muy bien pero al al compilar la instrucción ¿que se hace, no crea una auxiliar al fin y al cabo?

NeoPolus

#c-54" class="content-link" style="color: rgb(227, 86, 20)" data-toggle="popover" data-popover-type="comment" data-popover-url="/tooltip/comment/1137504/order/54">#54 no necesariamente. Por ejemplo en los procesadores x86 hay instrucciones específicas para intercambiar dos registros sin necesidad de otro registro auxiliar: XCHG (http://pdos.csail.mit.edu/6.828/2006/readings/i386/XCHG.htm)

Por tanto estos lenguajes podrían, al compilar su código, utilizar esta instrucción para hacer el intercambio sin necesitar memoria o registros auxiliares (ergo, sin variable intermedia).

Por otro lado, como comentan por arriba, se puede conseguir el mismo resultado (pero en más pasos) utilizando cualquier operación binaria reversible como XOR o incluso sumas y restas:

a = 1
b = 2
a = a + b
b = a - b
a = a - b
print "a vale", a, "y b vale ", b

# Salida: "a vale 2 y b vale 1"

Por supuesto a veces es más eficiente utilizar una variable adicional, pero en ciertas situaciones (microcontroladores, donde la memoria e incluso los registros son recursos escasos) y sobretodo históricamente (recuerda la cantidad de memoria que tenían los engendros esos que usaban tarjetas perforadas) hay que recurrir a estos trucos.

D

#19 No destruyo nada, porque con verilog si usas el operador

HeavyBoy

He currado dos años a través de una consultora. Los problems son los mismos que que en las empresas privadas, pero aquí duele menos el dinero, porque es del contribuyente.

dks

Mi apoyo total a este chaval Lo viví en primera mano como desarrollador hace años, y sencillamente, es así. Lo malo todo el mundo lo acepta como si tal cosa, y los ciudadanos de a pie, ni nos enteramos (y a muchos ni les interesa) en qué se gastan los impuestos.

Es una pena, pero es la realidad.

Ah, y además le comprendo en lo de salir de la universidad conociendo X sistemas y metodologías, y tener que meterte a programar "a saco", sin documentación, sin metodología, y todo porque "hay que entregarlo a tiempo". Es sencillamente frustrante.

El caso es que en España es así, y la putada de ello, es que es realmente díficil que te cojan recien titulado, porque sencillamente "no sabes" trabajar, y joder, no es que la gente no sepa, que la formación que tienen es la leche, es que a las empresas sencillamente, eso, se la pela. Se prefieren borregos a ingenieros, y a menos que tengas experiencia práctica...

En fin, que se pare el mundo que me quiero bajar.

D

Pues yo trabajo como externo para la administración en otro ministerio y pasa todo lo contrario de lo que cuenta el artículo, vamos, este es el lugar, de lejos, en el que mejor he estado y le da mil vueltas a empresas privadas importantes (que también he estado) en manera de funcionar.

t

A ver, solución, no trabajéis para consultoras.
Hay vida fuera de las consultoras. Incluso hay una MEJOR vida lejos de ellas.
Si realmente eres un programador tienes trabajo de sobra en cualquier parte del mundo.

Vas a trabajar a una empresa, no te gusta, intentas cambiar su forma de trabajo, no te dejan, te vas.
O cambian o se hunden, es su problema. Pero claro siempre está el que traga con todo y que a la larga nos jode a todos los demás.

CV: 10 años programando y nunca he pisado una consultora.

l

Soy funcionario y programador, y desgraciadamente lo que se cuenta es completamente VERIDICO. Antes de aprobar las oposiciones trabaje en numerosas consulturas de renombre que prefiero no recordar, y experiencia y formación tengo.
Y el día que llegue a mi puesto de trabajo pensaba aun que se podian hacer cosas interesantes, tras 8 años de hacer tonterias y tener jefes incompetentes que solo saben estar en despachos.... me doy cuenta que que españa necesita una revolución verdadera y que se tendrían que despedir un monton de personas, y sin hacer demagogia empezaria por los politicos que pones en los puestos claves a sus amigos, que a su vez ponen a sus amiguitos, con lo que al final pagan el pato, los esbirros programadores,.... esto es un cachondeo de pais.

antonrodin

Así a bote pronto a las 5 de la mañana, como dicen x ahí sin la intermedia seria algo así:

a = 5;
b = 2;

a = a + b; // a = 7
b = a - b; // b = 5
a = a - b; // a = 2

f

#26 bueno, ahí todos suponéis que son variables numéricas. Así que no esta del todo bien.

geloso

#27 Y aunque sean variables numéricas, tampoco sería del todo correcto, ya que habría casos en lo que no funcionaria, si las variables contienen valores muy altos, al sumarlas se podría pasar del valor máximo permitido.

antonrodin

Realmente lo que interesante de esta noticia es la discusión sobre el intercambio de variables, todos los que estamos en ello sabemos como están las cosas en este mundo...

Lo que puse antes en el #26 esta claro que no sirve pa na, lo interesante es saber como se hace y poco mas...en el código fuente mejor no poner nada parecido, por el respeto a la persona que lo vaya a mirar...

Pero si empezamos a discutir sobre el intercambio de variables, tenemos que meternos en ensamblador y mirar cual seria lo mas eficiente y punto. Lo mas probable es que sea con una variable intermedia, pero recordad que una de las instrucciones que mas tardan es la de LOAD si mal no recuerdo...

Ademas lo mas probable es que hay una instrucción en x86 que lo haga en un ciclo en plan INT R1, R2, R3...yo que se

D

Soy responsable informático en un Ayuntamiento y tengo que hacer todo tipo de tareas, desde programación hasta sistemas. Soy personal laboral fijo, llevo mas de 10 años en el mundo de las AAPP, y he tenido que pasar una dura oposición para poder acceder al puesto que tengo.
Despues de todos estos años de experiencia en un sector que tendría que aprender mucho de la empresa privada a la conclusión que llego es que la lacra fundamental de las AAPP son los políticos. Como bien se comenta aquí la presión en tiempo de elecciones por parte del político es casi insostenible, tu "jefe"(político) es una persona sin conocimientos en la materia que se ha puesto a dedo y la única motivación que tiene es el "tira pa lante" y el "queda bien" con el ciudadano. Toma decisiones equivocadas buscando votos que al final a los técnicos lo único que nos produce es desmotivación y resignación.
Otro punto interesante es observar el dinero que se tira en proyectos que los técnicos previamente hemos informado que no tendrán futuro. Dinero que os recuerdo que es público y que se podría a destinar a otros fines. Ejemplo reciente es el Plan E, donde he visto como se malgastar miles de euros en autenticas chorradas tecnológicas simplemente por aparecer en la foto.

e

Entramos en el complejo hasta la cocina: dos guardias de seguridad levantan la mirada y nos saludan sin realmente mirarnos. No hay ningún tipo de control, no nos piden DNI, ni nombre, nada de nada. Si en la mochila lleváramos una bomba, a los seguratas se la traería al fresco.

Te puedo asegurar personalmente que no es así en todos los centros de la Administración Central. En algunos, no sólo te piden el DNI, te hacen hasta foto para que circules acreditado por el recinto y, probrecito como lo lleves visible.

Pero eso no está en tus experiencias y crees que todo el monte es orégano.

PythonMan8

yo empece a trabajar en un proyecto para la publica a traves de una consultora. mi autoestima me hizo abandonar al segundo mes (52 dias para ser exactos). acostumbrado a proyectos open-source y su forma de desarrollo aquello me parecia un absurdo total y absoluto. ademas el proyecto que trataban de hacer ya estaba resulto en mil aplicaciones existentes en sourceforge pero se hacian los suecos cuando se lo nombraba. lo importante era facturar horas.

AitorD

- Ok; suena bien. ¿Me puede hablar un poco del proyecto en cuestión?

- La verdad es que no conocemos los detalles. Sabemos que se trata de un desarrollo con GLPI, Nagios y programación web basado en Software Libre. Sólo tenemos las especificaciones del cliente que son las que pusimos en la oferta: PHP, MySQL, Javacsript, CSS, … ¿Sabes lo que es un entorno LAMP?

- Si claro, un entorno de desarrollo web basado en el Linux, Apache, MySQL y los lenguajes de servidor PHP, Perl y Phyton. Del resto, Nagios me suena, pero GLPI no lo he oído en mi vida; ¿de qué va?


Hay que tener valor para presentarse a una entrevista sin haberse informado sobre los requisitos que piden para saber al menos de qué va la cosa...

DaniTC

#11 Sí, a mi me han contado también alguna historia de esas. Es deprimente.

D

#11
begin
a

D

#11 "escríbeme en el lenguaje de programación que más te guste como intercambias el valor de dos variables"... más de uno no pasó de ahí.

#18
begin
a

zorion

#18 Bueno, la respuesta es casi correcta, pero hay un pequeño error:
En este caso pedían "lenguaje de programación" y has usado un "Lenguaje de descripción de hardware". Para mí no entra dentro de los lenguajes de programación.

He de decir que me mola la solución pero si fuera el entrevistador consideraría que sabes mucho (te ficho) pero que me estás vacilando (no te ficho).

spidey

#11 Totalmente de acuerdo. Yo he realizado varias entrevistas para cubrir puestos de informático, y da mucho miedo lo que hay ahora mismo en el mercado. Viene gente no sólo no preparada para el trabajo, sino que ni siquiera ha leido los requisitos para el puesto que viene a cubrir (si se piden conocimientos y experiencia en administración de sistemas unix/linux y el tío no sabe ni lo que es ssh, es que no se ha leído bien la oferta).
No sé si en otros sitios puede que suene la flauta y cojan a un tío que no tiene la preparación debida (quizás por pasar la parte psicológica o motivacional, o simplemente porque sale muy barato), pero viendo el panorama, no me extraña lo que pasa en las empresas tecnológicas de este pais (¿donde está la gente preparada?).

MacMagic

#11

variable1;
variable2;

aux=variable1;
variable1=variable2;
variable2=aux;

Ale, ahora búscame trabajo

D

Dios! que aguante tenéis los informáticos. Yo no habría durado ni un día.

toptnc

Pobrecico, acaba de descubrir la cruda realidad. Creo que debería volver a dar clases en la universidad para contarle a los chavales lo que les espera cuando salgan. Al menos que no se lleven la sorpresa.

Pero quien crea que esto es particular de la administración pública y solo en España es que no ha vivido y no ha visto The Office.

RaiderDK

Iba a comentar con una modificacion de la mitica "Yo he visto cosas que vosotros no creeríais.Naves de ataque en llamas...." de Blade Runner, pero he desistido al acordarme de lo triste de las situaciones que he visto en mi corta (cortisima) estancia en dos organismos públicos, por suerte en ambos estuve solo 6 meses, de becario, y mis responsabilidades eran menores, pero me di cuenta que quien mas duro curraba eran los externos, los fijos y funcionarios ni chapa (salvo uno que es de quien más aprendí). Curiosamente habia que dorarle la pildora a quien menos trabajaba, porque quien tenia tiempo para despotricar de ti y arrimarse a los poderosos.

D

Yo tambien he trabajado para la administracion publica atraves de una consultora.

Aunque la forma de trabajar sea la misma en la empresa privada y en la publica, es en la publica donde el trabajador recibe un trato mas digno, como se cuenta en el enlace, la comunicacion con la consultura es atraves del email y rara vez por telefono salvo para pedir vacaciones y cosas excepcionales, casi no conoces a nadie de la consultora, el horario y condiciones laborales son los que te asigne la administracion publica, mucho mas ventajosos que los de la emnpresa privada.

ximovai

Trabajé para la admin. pública y lo que dice es verdad.
Yo creo que el problema de la informática en general es que no hay una responsabilidad civil como puede haber en otras ingenierías.
También debería de haber alguna forma de evitar el intrusismo, por ejemplo el tener a un biólogo haciendo consultas sql sin saber qué es un join.

B

Entre los pocos que hay actualmente y la cada vez mayor externalización de los servicios informáticos en administraciones públicas esto le afecta a bastante poca gente.

En la empresa privada sí se necesitan varías al estilo "El último mono superviviente", "Sobrevivir en Madrid con 1000€", "Un invierno sin ver la luz del día".

antonrodin

Perdón que no puedo editar el comentario de antes:

Exchanges the contents of registers ST(0) and ST(i). If no source operand is specified, the contents of ST(0) and ST(1) are exchanged.
This instruction provides a simple means of moving values in the FPU register stack to the top of the stack [ST(0)], so that they can be operated on by those floating-point instructions that can only operate on values in ST(0). For example, the following instruction sequence takes the square root of the third register from the top of the register stack:
FXCH ST(3);
FSQRT;
FXCH ST(3);

En ensamblador se utiliza pila, o algo así, no me entero de mucho, pero de un ciclo nada...

Vía: http://siyobik.info/index.php?module=x86&id=126

D

#50 En ensamblador sería algo así, para intercambiar el valor de los registros ax y bx

push ax ; Poner el valor del registro ax en la pila
mov ax, bx ; Copiar el valor de bx en ax
pop bx ; Tomar de la pila el valor que tenía ax y moverlo a bx

antonrodin

#51 yep algo así...siempre que sea menos de 16bit, el de 32 creo que es eax y ebx pero no me acuerdo si se puede meter en la pila. De todas formas como sea un dato grande o una cadena de texto...te puede morir escribiendo el código en ensamblador.

qrqwrqfasf

El tio tendrá masters y sabrá tela de usabilidad, pero desde luego su blog no hay quien lo lea con esos colores.

Por cierto GLPI: http://www.glpi-project.org/. Cuando se lo dijeron debería haberlo buscado ya que este soft se usa mucho en la administración.

l

Perdon se me olvidaba el ejemplo mio actual, soy licenciado y tengo 4 jefes, una jefaza que no tiene ni idea de lo que es un desarrollo eso si es diplomada y tiene arte para los despachos, otro que es licenciado pero que lleva toda su vida en la administración y no tiene ni idea de lo que es un entorno de desarrollo, y para colmo otros dos que llevan 8 años en la rama de informatica que entraron por la rama de operadores y que saben tanto de ordenadores como yo de la clave deñ fichero de insurance.256

S

En la Junta de Andalucia hay cada vez más externos. En la última Oferta de Empleo Pública no hay ni una sola plaza para entrar en Informática.

El del articulo se olvida de departamentos como el de Calidad, Optimización,...

D

En efecto en toda buena empresa sucede lo mismo cuando se debe entregar un proyecto: a echar horas por un tubo.
Aps por cierto, documentación y programador nunca se han llevado bien lol

S

Hala, ahora me toca a mí.

let a=5 and b=7 in
let a=b and b=a in
print_int a;
print_int b;;

Boudleaux

los colores de la web son para quedarte ciego.

tonijota_1

#1 tiene razón.. #8 si inviertes los colores estamos absolutamente en la misma situación... alguna vez te has preguntado por qué motivo las páginas de los libros de narrativa no son blancas? ... Exacto!