Hace 8 años | Por angeldav a medium.com
Publicado hace 8 años por angeldav a medium.com

La evolución de un ingeniero de software.

Comentarios

D

Puto Java...

D

#42 ORGIA DE NOTARIOS!!!

D

el año veinteavo, escribiría:

from:puto amo
mailto: becario

Pringao, hazme un programa que ponga hello world en la pantalla.Lo quiero en 10 minutos o te vas fuera.

saludos cordiales,
puto amo

ElPerroDeLosCinco

#7 Qué optimista. El año veinteavo un ingeniero no será el puto amo sino que estará despedido, porque cobra mucho y la empresa puede poner en su lugar al hijo/yerno del gerente. Total, solo tiene que enviar ese mail que dices al becario.

D

#1 Doy fe de que es cierto

antuan

10 CLS
20 PRINT "¡Hola Mundo!"
30 GOTO 20

Mister_Lala

Real como la vida misma. Yo cada vez hago más ñapas directamente en código por pura desidia.

e

++++++++++[>+++++++>++++++++++>+++>+.

D

#15 El código escrito en cualquier idioma que no sea el Inglés hace llorar al Niño Jesús.

D

#14 Yo escribo ano[19] y a tomar por culo... nunca mejor dicho

D

Los que no son ingenieros.

void main()
">

¿Para qué necesitas una clase para imprimir "hola mundo"?

D

#28 El secreto está en el gigantesco ecosistema que se creó en su día, perfectamente documentado y mantenido.

Aunque la mayoría de ese ecosistema sea un mamotreto de proporciones astronómicas y su documentación más infumable que la Biblia en versos arameos, es justamente lo que hace que Java siga siendo ampliamente utilizado hoy en día.

a

#16 Porque en Java no hay otra forma de hacerlo.

dreierfahrer

#9 #11 Tiene sus cosas buenas...

minardo

#9 ...y al séptimo día creó groovy:

println "Hello World"

f

y los diveros son

PROGRAM Hola Mundo;
PRIVATE fuente1;
BEGIN
fuente1 = load_fnt("help/help.fnt");
write(fuente1, 160, 100, 4, "Hola Mundo");
LOOP
FRAME;
END
END

wass... que no se quede DIV atras

sukh

#16 Y el #include ?
Sin int ni return para el SO ?!?

Suspenso !! Con un 4,99 lol

anv

#! /bin/bash
echo "hello world"

j

#58 No, te voy a decir que "mejor" depende del criterio de evaluación. Y la velocidad de ejecución o el consumo de recursos no son los únicos criterios posibles.

dreierfahrer

Esto es un alegato contra la POO?

angeldav

La evolución de un ingeniero de software.

D

Año 11: pierde el tiempo en Meneame en horario de oficina, donde se queja de que en Españistán sigue cobrando 1200€/mes.

a

El mejor es el LOLCODE:

HAI 1.2
CAN HAS STDIO?
VISIBLE "HAI WORLD!!!1!"
KTHXBYE

takamura

Esto es más viejo que el cagar.

sukh

#72 Pues no lo sabia . Bueeeno, tu ganas, lo subo a 4,998 .

K

Ésto es como muy 2014...

D

#50 otro que no ha salido de la universidad

khel_mva

#9 Amen, hermano.

daphoene

Sobre el meneo, real como la vida misma, yo nunca he abandonado la doctrina KISS (https://es.wikipedia.org/wiki/Principio_KISS), y según va pasando el tiempo, creo ha sido la mejor decisión de mi vida.

Edito, en inglés viene mucho más completo: https://en.wikipedia.org/wiki/KISS_principle

Ovlak

#95 Amén. Nada es "mejor" ni "peor" sino que algo puede ser "más adecuado" según el caso.

Penetrator

#7 y #8: se dice vigésimo.

khel_mva

#14 O agno.

D

#34 ¿C no devuelve "return 0;" por defecto, en caso de omitirlo en la función "main"?

Pregunto, porque C++ sí que sé que lo hace...

D

#69 😭 🔫

Lo he tenido que rehacer solo por no ponerme a hacer modificaciones.

Es que es lo que se debe hacer con la basura. Mi procedimiento habitual para tratar con ella es ese. No será la primera vez ni la última que heredo código y, tras echar un vistazo y ver que es una puta mierda, hago unos cuantos tests (que el menda de antes no ha hecho) para comprobar que cumple lo que promete y acto seguido todo fuera y a hacerlo como toca.

a

#82 Es COBOL, y sigue siendo uno de los lenguajes más utilizados por la banca.

Cidwel

#90 No lo hagas. Simplemente no lo hagas.

D

#23 Doy fe de que has dado fe de ello.

myself_83

#14 #15 #35 Pues yo escribo year[19] ... Por aquello de darle un toque más internacional...
(Delirios de grandeza de pensar que tu código lo va a ver alguien más que tú mismo y puede que algún colega o jefe... si tal)

RojoVelasco

#61 En el proyecto en el que estoy trabajando ahora he visto una de las mayors aberraciones de mi vida. Un broker (cojo mensaje, distribuyo a otros brokers y si la subscripción casa, se lo mando al subscriptor) implementado con maquinas de estado, runnables por todas partes, factorias y polladas varias. Es como coger el libro de gang of four y implementar X patrones entren o no. Terrible. Lo he tenido que rehacer solo por no ponerme a hacer modificaciones.

Ovlak

#58 en terminos de portabilidad, sin duda. En términos de eficiencia, no pero casi. Hace tiempo que java utiliza compilación just-in-time.

m

#21: ¿Y para qué necesitas Java?

D

#59 C++ sí que devuelve por defecto "return 0;" si el código no especifica un "return" en la función "main".

The body of the main function does not need to contain the return statement: if control reaches the end of main without encountering a return statement, the effect is that of executing return 0;.

http://en.cppreference.com/w/cpp/language/main_function

Wayfarer

#41echoecho Hello world

Me encanta la simplicidad del scripting de cmd para según qué cosas :-P

M

#61 Bueno. Si no entiendes un código es porque es una mierda, no porque no haya suficientes comentarios.

Por cierto, en general, un programador que escribe un código que sólo entienden programadores senior es un mal programador y le está haciendo una putada a su empresa.

Magankie

Ésto era simpleza:

10 PRINT "Hello World!"
END

j

#90 Java como tal lo soporta perfectamente. El problema está en que tu código siguen siendo ficheros de texto que, si abre alguien con un locale/codificación regionla distinto al de tu máquina, puede decodificarse de otra forma. Vamos, que si el código no sale de tu máquina puedes nombrar las variables en cirílico si quieres, pero si vas a compartir el código no es buena idea.

Si te interesa el tema -> http://stackoverflow.com/questions/2178348/should-source-code-be-saved-in-utf-8-format

D

#70 cat
Hello world

D

#16 Para qué necesitas una función?

j

#28 Ventajas de Java respecto a C hay unas cuantas: tienes orientación a objetos, contenedores genéricos, te despreocupas de punteros, hay una cantidad ingente de librerías modernas... no sé, en general es bastante más fácil de usar.

Respecto a C++ ya creo que sólo tiene que es algo más fácil de usar, pero más que nada porque tienes muchísimas menos opciones.

D

#5 Exacto, solo que en lugar de utilizar Java se utilizará otra lenguaje pero es lo mismico.

Lo bonito de la programación es su facilidad para hacer que te desconectes del mundo y solo pienses en como puñetas escribir el código para que el programa haga lo que tú quieres que haga.

M

#97 Tiene que ser "apasionante" programar con eso...

G

#21 GOTO #9

M

#7 > el año veinteavo

Cc #10

Magankie

#56 Ahora me vas a decir que un programa en VM es mejor que compilado??

D

#93 El test es un codigo extremadamente sencillo que simplemente llama al código a testear pasándole unos parámetros fijos y comprueba que se devuelven los valores esperados.

Claro que los tests podrían estar mal hechos, pero entonces te darías cuenta enseguida de que no estás testeando bien lo que quieres comprobar, porque entonces tendrías errores en vez de fallos. Los tests bien escritos tienen o éxitos o fallos, nunca errores. Por eso no es necesario hacer tests de tests, porque al ejecutarse "se testean solos": si dan error, están mal hechos.

D

Ingenebrio.

Abeel

Print 'hello world'. Python rules

RojoVelasco

#136 Una de las cosas que más me encuentro es que todo el mundo es "muy listo" y siempre recibe código de idiotas

Yo intento no pensarlo, por que la mayor parte de las ñapas, códigos ofuscados, con baja performance, etc, no suelen ser culpa del programador. Pienso que al pobre tipo quizá le asignarón un proyecto donde desconocia la técnologia, con arquitectura inexistente, los requisites cambiando como quien cambia de bragas, estaba al 30% en otro proyecto y mientras solucionaba bugs de deliveries anteriores. Así es imposible programar bien. Es lo que me pasa a mi a veces y es lógico que les pase a los demás.

Por otro lado, mi queja en #69 va por otro lado. Conozco perfectamente cual era la situación del tipo que lo desarrollo. Era una software con unos requisitos sencillisimos pero el colega acababa de salir de la Universidad y tenia que sacarse la polla con un código ininteligible, matando moscas a cañonazos. No hablo de alguien que usa metaprogramación de una forma lógica o alguien que usa un framework que se ajusta al proyecto ante el estupor de sus compañeros.

sukh

#51 que yo sepa no ... y creo que C++ tampoco ... a no ser que lo haga auto el compilador.

Aún así , excusas no me vale
lol

RojoVelasco

#149 Intenté tocar el código del Cataclysm DDA pero el lenguaje provee tantos conceptos de programación a la vez y tantas formas de hacer una misma cosa creando redundancia que ya casi no sabes como va a resultar una acción.

A ver si me entero.Estás juzgando la idoenidad de un lenguaje de programación para iniciar proyectos por el hecho de que no seas capaz de entender un software programado con el? Desconozco como está diseñado ese software pero quizá tambien sea por que no tengas los conocimientos necesarios para entenderlo.

En C no me pasó , de hecho adapté algunos jueguillos para el afamado blog (en el mundo linuxero) de K.Mandla al ver que unos juegos de terminal no cabían bajo 80x24 o la jugabilidad estaba mal implemetada.


Y resulta que C es major por que pudiste editar unos de terminal? Por favor...

Que me importa a mi que puedas hacer implementar soporte WebGL en un navegador X? O el codigo de Taipan? Es que me da lo mismo. Yo lo que quiero es potencia (a nivel de desarrollo) que me permita desarrollar mi proyecto de forma rápida, sostenible, escalable y con una razonble performance. C++ tiene POO, la STL con todo lo que ello implica, Boost si es que despues de C++11 lo necesitas y metaprogramación además de mantener un rendimiento similar a C.

Sinceramente, creo que no estás en tu terreno y estás diciendo sinsentidos.

j

#63 Qué tiempos... en el fondo al menos las instrucciones en COBOL son legibles.

superplinio

Aficionados, todo el mundo sabe que el mejor código está basado en patrones roll

https://taskinoor.wordpress.com/2011/09/21/the-abuse-of-design-patterns-in-writing-a-hello-world-program/

G

Justamente ayer cree un hello world son diferentes archivos todo en uno.

http://pastebin.com/TA8D1CV4

D

#31 te falta un:
15 LOCATE X, Y

para ya terminar de trollear a todos estos. Eso o un ";" al final del PRINT para llenar la pantalla.

Eso eran lenguajes de programación y no lo de ahora

D

#74 Apruebe a mi colega, que el chaval lleva todo el curso estudiando

daphoene

#109, yo defiendo el testing desde el punto de vista que te ayuda, al pensar en el test, a afinar realmente lo que tiene que hacer un apartado, y a revisar posibles estados que no habías tenido en cuenta antes, pero discrepo del resto que comentas:

a) "es un codigo extremadamente sencillo"
Corto no es equivalente de sencillo, y según lo que testes, aumenta la complejidad a veces por encima de la complejidad del código que estás testando, añadir mocks, diseñar teniendo en cuenta la posible inyección de dependencias ( a veces esto es mejor, a veces no ). Aparte, al mockear partes de la aplicación, estás dejando fuera del test muchas de las posibilidades de error de esa parte del código ( ya sé que esto es más funcional que unitario, pero ahí está la realidad ).

b) "Claro que los tests podrían estar mal hechos, pero entonces te darías cuenta enseguida (...)"

Ahí discrepo, y mucho. Un test puede no dar error, ni fallo, y ser incorrecto desde tantos ángulos como el propio código que testa. No sería la primera ni la vigésimo-cuarta vez que veo pasar los tests a código que después ni siquiera funciona.

c) "Los tests bien escritos tienen o éxitos o fallos, nunca errores. Por eso no es necesario hacer tests de tests, porque al ejecutarse "se testean solos"

Según la misma lógica, el código bien escrito no necesita tests. Si funciona es que está correcto. Y esto sabemos que no es así. Tests sin errores pueden dejar escapar muchas posibilidades. De hecho, la mayoría de los tests que suelo ver pecan de no probar infinidad de posibilidades, de tipado, de término vacío, de valores fuera de rango, etc. Se testa un pequeño espacio de la posibilidad de error, y cuanto más pequeño sea ese espacio, más fácil es cumplir el objetivo del test, pero a la vez menos completo será el mismo.

En definitiva, salvo para apartados con mucha complejidad ciclomática, sigo pensando que es un esfuerzo bastante estéril, salvo por lo comentado al principio.

Pero es sólo mi opinión, y no es ni de lejos la más formada al respecto.

Trevago

#1 ¿Mismo nick que Forocoches y Erepublik?

M

#54 A mi jefe le dio una temporada por FuelPHP. Ya no es mi jefe y yo ya no programo en PHP.


Cc. #38

Trublux

Saes
True Story

Ludovicio

#48 ¿#pragma once?

Eso no es standard!

cosmonauta

#107 Excepto los putos yankees que aseguran que con ISO 8859 se ahorra memoria. ( ¿O era inglés el puto memo que me lo dijo? No se...)

Lo que estoy seguro es que me jodio una base datos entera. Y también es seguro que el paso 3 días buscando y reemplazando marcianitos mientras yo ya había tirado de backup.

derethor

Es exáctamente asi. Miro mis programas de c++ y me identifico totalmente. Hoy para escribir 'class' tengo que tener una buena lista de motivos

M

#63 Madredelamorhermoso. Pobrecitos los que tenían que programar con esto. Que es, por cierto?

G

#10 un ingeniero jamas se equivoca... Se referia al día 18 y pico

D

#110 Muy de acuerdo, es como comparar una navaja suiza con cada una de las herramientas que lleva, si necesitas algo a nivel "profesional" no te va a valer, para la mayoría de los casos es más que suficiente.

Aquí digo profesional, para referirme a cuando necesitas herramientas muy específicas o en este caso, acceso al hardware, especificaciones a bajo nivel, etc.

D

#6 Yo también. Ley del mínimo esfuerzo.

Magankie

#12 Aparte de que es posible que te funcione en sistemas distintos... no le veo ninguna ventaja, ni a la programación ni al producto final.

C

D

The fifth yeaar, es puro toc.

sukh

#31 aggghhh mis ojos !!! BASIC . Nooo por favor.

a

Yo prefiero algo asi como:

------ HelloWorldTest.java
import org.junit.Test;
import org.mockito.Mockito;
import java.io.PrintStream;

public class HelloWorldTest TestTest
public void test_hello_world_is_printed() {
PrintStream output = Mockito.mock(PrintStream.class);
HelloWorld hw = new HelloWorld(output);
hw.sayPhrase();
Mockito.verify(output).println("Hello world!");
">

}
------- HelloWorld.java
import java.io.PrintStream;

private class HelloWorld

public void sayPhrase() ">

public static void main(String[] args)
}

E

¿Y los tests? Esperaba que el último caso fuese algo como: HelloWorldTest + HelloWorld.

D

HOLA MUNDO

Sofrito

#18 Qué recuerdos.

G

#79 los lenguajes son herramientas... Para algunas cosas es mejor java, para otras C++ y para otras qbasic.

1 2