Tienes que rescatar a la princesa con código - pero algunas veces el código no funciona y la princesa es un dragon y tu un pescado. Bienvenido a la programación.
El inicio y fin de instruccion va con parentesis o algo así y acabas hasta el ojal, lo di en primero de carrera en una de libre de programacion para Autocad y tengo el vago recuerdo de que era un puto coñazo
#3 Es todo paréntesis, y tienes cosas como funciones que crean (no que lanzan) , crean otras funciones con argumentos y todo, y que hacen el trabajo de verdad.
#6 Con abap lanzarias el rescate de la princesa en fondo y al dia siguiente vas a la spool y alli esta esperandote y si no esta pasas por la ST22 a ver que ha pasado.
#29 Siempre que sale el tema de los lenguajes de programación, lo primero de lo que se habla es de cual es mas rápido. Aparte de que como arquitecto no comparto esta visión, y considero que los factores a la hora de evaluar 'plataformas' (que es de lo que estamos hablando aquí) son muchos mas y mas importantes que este... estaría bien que me digas cuando dices que es rápido, que significa rápido para ti
Pregunto esto por que en toda mi carrera profesional, la mayoría de los problemas con el desarrollo de aplicaciones no tienen que ver con el rendimiento, sino con la fiabilidad, escalabilidad, código legacy, deuda técnica, obsolescencia de plataformas, carencia de librerías y soporte, baja oferta de trabajadores para la plataforma, etc etc.
Pero si quieres, podemos obviar todo eso y hablar exclusivamente de rendimiento, que es de lo que hablas cuando dices 'rápido'.
Si hablamos de rendimiento, lo que sucede es que es EXTREMADAMENTE raro encontrarse con que los problemas de rendimiento tengan su origen en la velocidad a la que una 'virtual machine' o un interprete ejecuta las instrucciones.
Normalmente los problemas, en la mayoría de aplicaciones que se me ocurren, tienen que ver con como está programada la aplicación y su solución es tan simple como refactorizar ciertas partes.
Normalmente los problemas tienen su origen en el uso de I/O, problemas algorítmicos básicos, incorrecto uso de la persistencia, problemas de concurrencia mal resueltos y leaks de todo tipo.
Por lo que, de tu comentario yo entiendo que te refieres a que en un bechmark controlado computando PI o algo similar, PHP era mas rápido bajo ciertas condiciones, lo cual habría que comprobar y crear un experimento repetible, ya que la mayoría de benchmark pasan por alto muchos asuntos... Pero aun y así, incluso siendo cierto, sería una anécdota sin mucha importancia.
Si te gusta la arquitectura y el diseño de lenguajes, te recomiendo leer:
#6 Es que el módulo de princesas se vende aparte y cuesta una millonada... además sólo sirve para el 80% del rescate, el otro 20% hay que hacerlo trayendo a consultores desde Alemania... y bueno, para cuando está el tema teóricamente resuelto ya no hay princesa.
#21 Ha dejado de ser la moda de turno pero por la cantidad de ofertas de curro que me siguen llegando... sí, bastantes sitios siguen con Ruby (y yo que me alegro).
#5: Hay una variante llamada Scheme que se usa en GIMP para programar guiones. registry.gimp.org/
Tranquilos, podéis usar Python si queréis, aunque creo que luego no funcionan en Windows.
Yo hace mucho intenté programar uno en Scheme y si, funcionaba (algo cutre en el resultado), pero acabé maldiciendo a GIMP.
Posteriormente lo usé para procesar "elfos" (o como se traduzca "sprites" al español) de un juego, que son muchos y procesar cientos a mano es una lata.
#49 PHP hoy en día tiene ebug, Frameworks potentes como Symfony que permiten separar el html del código php, utilizando motores de plantillas como Twig, Blade, Plates, Smarty.
Echale un ojo a todas las novedades que a traido php 5.4, 5.5, 5.6, y 7 y 7.1 (7.2 va a ser aún mejor), ya queme tiene pinta que debiste de quedar en la época de php 5.2
#5 El lenguaje es espectacular. Un lenguaje homoiconico (código y datos son lo mismo) que permite hacer maravillas. Hoy en día se utiliza principalmente a través de Clojure. Y si, los paréntesis son un poco coñazo, pero es cuestión de escribir el código como Dios manda y de usar las herramientas adecuadas.
#72 yo siempre me acordaré de tirarnos mis compañeros y yo una noche entera buscando un paréntesis perdido para unas prácticas de la Universidad que teníamos que entregar al día siguiente (por aquel entonces no existían editores inteligentes)
#5 Yo tuve media asignatura en la que los alumnos teníamos que implementar un bot para jugar al Mancala.
El profesor hizo a su vez un algoritmo en un server para enfrentar a todos contra todos según íbamos subiendo nuevos bots. Había un ranking para "ganarse unos puntillos extra" en la asignatura.
Maldito lenguaje, qué mal lo pasé, era jodidísimo.
El que ganó confesó que su bot hacía movimientos random.
#90 En un proyecto informático que funciona, sólo se cambia de tecnología si es absolutamente necesario. Ahí tienes a los bancos trabajando con millones de líneas de código en FORTRAN porque funciona y nadie se atreve a tocarlo.
De hecho, es bastante normal empezar nuevos proyectos con la tecnología de moda del momento, y que tengas que hacerlos compatibles con otros servicios ya existentes en la empresa, programados en otros lenguajes. Ni te imaginas las pirulas que he tenido que hacer para comunicar procesos de diferentes lenguajes y plataformas. Lo más chapucero, y que conste que me avergüenzo de ello, sincronizar dos procesos a través de un fichero en el que escribía un log de lo que hacía uno, para que el otro se enterase y actuase en consecuencia.
#8 Yo no dudaría el hecho de que SAP desarrollase algun tipo de protoclo de comunicaciones para salvar princesas basado en ODATA con HTML5 y Javascipt y su puta madre en verso que resultase fascinante en el blueprint, le darían mil publicidad, eventos y mamadurrias por doquier y al final funcionase como el culo, para que al final todo caballero acabe usando un Report clásico en job que funcionar funciona.
#3 No sabes de lo que te has librado. No tienes ni puta idea de lo que te has librado. Todavía lloro paréntesis algunas noches de cuarto menguante. Joder, no tienes ni puta idea de lo que hemos tenido que sufrir otros. Tú en mi mundo no durarías ni cinco minutos.
#70 Y Frameworks cómo Laravel o MEAN, los CMSs sólo sirven realmente si es algo más general y para hacerlo en poco tiempo, si necesitas algo más especial vas a tener que tirar de un framework.
#3 aparte de los paréntesis que comentan #4, #5, #7 y #72, es un lenguaje declarativo en el que las funciones suelen ser recursivas, de ahí que salga la princesa en medio de forma desordenada, porque no se ha ejecutado la recursividad correctamente. Es el mejor de todos los que han salido.
#108 Yo no lo veo así. Si programas desde cero algo como facebook vas a meter mil bugs nuevos, te vas a dejar funcionalidades por el camino en las primeras versiones.. incluso puede que nunca lo acabes, ya que mientras lo rehaces tienes otro equipo que sigue manteniendo y evolucionando la versión en php..
Si te limitas a hacer un compilador, los bugs introducidos por este serán más fácilmente detectables y, si algo va realmente mal, es más fácil volver al modo interpretado.
Vamos si yo fuera el jefe técnico y tuviese que elegir entre ambas opciones (compilador, rehacer web desdde cero), habría tirado por el compilador fijo.
Y aquí las soluciones a los problemas planteados en la biblia de la programación funcional :
community.schemewiki.org/?SICP-Solutions
PD. Te digan lo que te digan la programación funcional plantea retos y soluciones algorítmicas tan interesantes como elegantes. Incluso permite enfocar la programación orientada a objetos. En ciertos sistemas permite la modificación del código en tiempo de ejecución del mismo.
en serio, a mi me también me divierte guarrear en PHP, pero es un desastre de lenguaje y de plataforma, es un jueguete que intentan mejorar a parches.
Evidentemente, poniendo capas de abstracción y literalmente luchando contra el lenguaje, al final consigues hacer cosas dignas, como Symfony.
¿Habéis visto el código que tiene Symfony solo para adaptarse a todos los posibles problemas de PHP?
Aquí el merito es de Symfony, que es decente A PESAR DE PHP.
Es que la lista es infinita, php.ini que modifica el comportamiento del lenguaje ¿Pero quien ha pensado que eso es una buena idea?
preg_match que tiene un modificador de la expresión regular, /e, que después de hacer el match, lo evalua con eval, claro que gran idea!!
Una configuración que permite que los errores y warnings se concatenen a la respuesta HTTP, mezclando churras con merinas.
En serio, es que no entiendo como nadie puede defender esto, es que es un desproposito extremo.
Ah! me dejaba que no tiene una abstracción decente de enteros, simplemente te expone los enteros nativos del sistema, por lo que si en un sistema de 32 bits haces un filesize() de un fichero de mas de 2^32 te sale tamaño 0, pero es que hace años te salía tamaño negativo...
Por no hablar de safe_mode, que eso mejor lo olvidamos.
#20 Me suena a que o no has usado una versión reciente de PHP o simplemente lo has usado como un niño de 10 años, con lo cual cualquier lenguaje es una puta mierda .
RoR se hizo muy muy popular y se usaba para todo, hasta el punto que Rails casi que absorbió un poco el propio lenguaje Ruby y raro era no estar tirando de Rails si trabajabas con Ruby.
Con el tiempo ha dejado de ser la tecnología de moda y si no recuerdo mal la cosa fue hacia NodeJS, luego se empezó a popularizar Golang y finalmente Elixir (con sus respectivos frameworks).
Dicho esto yo personalmente sigo currando en Ruby, pero dejé de hacer RoR monolítico para entrar en una empresa que curra con decenas de microservicios en Ruby (unos usando Rails y otros no). Casi que agradezco dejar de estar tan atado a un Framework y poder usar Ruby como lenguaje (que me encanta) centrándome más en mejorar como Ingeniero de Software en una arquitectura compleja que como experto en Rails.
#19 javascript,un error que no sale en ninguna parte y el debug del infierno de la consola...se interpreta diferente segun navegador...que podria salir mal?
#108 perdida de datos amigo mio...hay empresas que no pueden permitrse ni una perdida...banca y demas colosos de la economia,y hay estan con sus lenguajes de la edad de piedra..
#71 Si quieres hacer una mierda la puedes hacer en cualquier lenguaje.
La pega siempre ha sido que al ser fácil de aprender y no tener tipado fuerte, junto con otros elementos, ha permitido una intrusión de gente que no sabe programar y han creado toneladas de código castaña.
Pero eso no significa que el lenguaje tenga funcionalidades modernas y te permita estructurar tu software de forma limpia, ordenada, coherente y con elementos de integración que hagan mas robusto y colaborativo el código.
Twig
Doctrine
Symfony -> tipado fuerte
NameSpace
Class
Interface
Implements
Exceptions
Abstract Class
...
En todo caso con Node tienes un proceso que está corriendo, aunque sea PHP-CLI no es lo mismo lanzar una aplicación con el gasto en sistemas que esto implica a tener un proceso corriendo que ya tiene reservado recursos que espera vas a usar.
De los lenguajes interpretados te puedo asegurar que PHP es mas que digno
#94 Yo lo odiaba, hasta que un día vi la luz y me dediqué a hacer las prácticas de todos. Es un lenguaje que cuando le pillas el tranquillo tiene gracia.
#18 Me da una rabia los nombrecitos que les ponen siempre a las nuevas pamplinas... que al final suelen ser cosas más viejas que el cagar adaptadas a tal o cual tecnología.
#81 últimamente hago mas sistemas y pico mas /bin/bash pero si, PHP me gusta, que no significa que los demás no sean bueno... lo incorrecto es decir que PHP es malo.
#117 LISP era increible ya en los años 70 asi que dudo que fuese un mojon en el año 2000. Otra cosa es que no sea lo tuyo. Te recomiendo que te mires el curso "structure and interpretation of computer programs", verás a LISP con otros ojos.
ehh comose pasan con php, yo rescato al la princesa pero me tocaria meterle algun sacript en shell y cron junto con php pero la princesa cena ocn migo y como la princesa esté en una carcel online, file_get_contents("pricnesa.html") o exec ("wget pricnesa.html") y arreglao ya me gustaria ver a los de c...
#66 Un momento. PHP puede ser más rápido que Javascript interpretado en V8 (con NodeJS). El truco esta en hacer PHP asíncrono (o mejor dicho utilizar llamadas de funciones asíncronas). Si no me crees mira esto:
#20 El PHP fue la carta de presentación del código espagueti en la web, mezclando código javascript con código php y con código html. Estoy contigo, una auténtica mierda pinchada en un palo.
El inicio y fin de instruccion va con parentesis o algo así y acabas hasta el ojal, lo di en primero de carrera en una de libre de programacion para Autocad y tengo el vago recuerdo de que era un puto coñazo
De ahí el jinete llevando el caballo.
Programaban en ruby por encima de sus posibilidades.
Pregunto esto por que en toda mi carrera profesional, la mayoría de los problemas con el desarrollo de aplicaciones no tienen que ver con el rendimiento, sino con la fiabilidad, escalabilidad, código legacy, deuda técnica, obsolescencia de plataformas, carencia de librerías y soporte, baja oferta de trabajadores para la plataforma, etc etc.
Pero si quieres, podemos obviar todo eso y hablar exclusivamente de rendimiento, que es de lo que hablas cuando dices 'rápido'.
Si hablamos de rendimiento, lo que sucede es que es EXTREMADAMENTE raro encontrarse con que los problemas de rendimiento tengan su origen en la velocidad a la que una 'virtual machine' o un interprete ejecuta las instrucciones.
Normalmente los problemas, en la mayoría de aplicaciones que se me ocurren, tienen que ver con como está programada la aplicación y su solución es tan simple como refactorizar ciertas partes.
Normalmente los problemas tienen su origen en el uso de I/O, problemas algorítmicos básicos, incorrecto uso de la persistencia, problemas de concurrencia mal resueltos y leaks de todo tipo.
Por lo que, de tu comentario yo entiendo que te refieres a que en un bechmark controlado computando PI o algo similar, PHP era mas rápido bajo ciertas condiciones, lo cual habría que comprobar y crear un experimento repetible, ya que la mayoría de benchmark pasan por alto muchos asuntos... Pero aun y así, incluso siendo cierto, sería una anécdota sin mucha importancia.
Si te gusta la arquitectura y el diseño de lenguajes, te recomiendo leer:
eev.ee/media/2012-04/PHP Anatomía del mal diseño.pdf
Power off
Goto bar
Somos tan mierda o mas que cualquier otro lenguaje
- Quién es?
.......
.......
.......
pausa larga
.......
.......
- Java.
registry.gimp.org/
Tranquilos, podéis usar Python si queréis, aunque creo que luego no funcionan en Windows.
Yo hace mucho intenté programar uno en Scheme y si, funcionaba (algo cutre en el resultado), pero acabé maldiciendo a GIMP.
Posteriormente lo usé para procesar "elfos" (o como se traduzca "sprites" al español) de un juego, que son muchos y procesar cientos a mano es una lata.
Echale un ojo a todas las novedades que a traido php 5.4, 5.5, 5.6, y 7 y 7.1 (7.2 va a ser aún mejor), ya queme tiene pinta que debiste de quedar en la época de php 5.2
Es un lenguaje en el que todo va entre paréntesis.
El profesor hizo a su vez un algoritmo en un server para enfrentar a todos contra todos según íbamos subiendo nuevos bots. Había un ranking para "ganarse unos puntillos extra" en la asignatura.
Maldito lenguaje, qué mal lo pasé, era jodidísimo.
El que ganó confesó que su bot hacía movimientos random.
De hecho, es bastante normal empezar nuevos proyectos con la tecnología de moda del momento, y que tengas que hacerlos compatibles con otros servicios ya existentes en la empresa, programados en otros lenguajes. Ni te imaginas las pirulas que he tenido que hacer para comunicar procesos de diferentes lenguajes y plataformas. Lo más chapucero, y que conste que me avergüenzo de ello, sincronizar dos procesos a través de un fichero en el que escribía un log de lo que hacía uno, para que el otro se enterase y actuase en consecuencia.
No se que me da...
Y como ya es un LISP desde casa, ten por seguro que Geiser está desarrollado para hacer lo que sea con Clojure, Scheme o lo que pidas.
Y el caballo debe ser muy resistente, porque no te deja gestionar la memoria y lleva mucha carga.
#71 prueba Prolog y llorarás más.
Si te limitas a hacer un compilador, los bugs introducidos por este serán más fácilmente detectables y, si algo va realmente mal, es más fácil volver al modo interpretado.
Vamos si yo fuera el jefe técnico y tuviese que elegir entre ambas opciones (compilador, rehacer web desdde cero), habría tirado por el compilador fijo.
mitpress.mit.edu/sicp/
mitpress.mit.edu/sicp/full-text/book/book.html
Y aquí las soluciones a los problemas planteados en la biblia de la programación funcional :
community.schemewiki.org/?SICP-Solutions
PD. Te digan lo que te digan la programación funcional plantea retos y soluciones algorítmicas tan interesantes como elegantes. Incluso permite enfocar la programación orientada a objetos. En ciertos sistemas permite la modificación del código en tiempo de ejecución del mismo.
Ando haciendo los ejercicios en el pocketchip
eev.ee/media/2012-04/PHP Anatomía del mal diseño.pdf
en serio, a mi me también me divierte guarrear en PHP, pero es un desastre de lenguaje y de plataforma, es un jueguete que intentan mejorar a parches.
Evidentemente, poniendo capas de abstracción y literalmente luchando contra el lenguaje, al final consigues hacer cosas dignas, como Symfony.
¿Habéis visto el código que tiene Symfony solo para adaptarse a todos los posibles problemas de PHP?
Aquí el merito es de Symfony, que es decente A PESAR DE PHP.
Es que la lista es infinita, php.ini que modifica el comportamiento del lenguaje ¿Pero quien ha pensado que eso es una buena idea?
preg_match que tiene un modificador de la expresión regular, /e, que después de hacer el match, lo evalua con eval, claro que gran idea!!
Una configuración que permite que los errores y warnings se concatenen a la respuesta HTTP, mezclando churras con merinas.
En serio, es que no entiendo como nadie puede defender esto, es que es un desproposito extremo.
Ah! me dejaba que no tiene una abstracción decente de enteros, simplemente te expone los enteros nativos del sistema, por lo que si en un sistema de 32 bits haces un filesize() de un fichero de mas de 2^32 te sale tamaño 0, pero es que hace años te salía tamaño negativo...
Por no hablar de safe_mode, que eso mejor lo olvidamos.
En fin, que me altero
www.google.es/trends/explore?date=all&q=golang
www.google.es/trends/explore?date=all&q=elixir
RoR se hizo muy muy popular y se usaba para todo, hasta el punto que Rails casi que absorbió un poco el propio lenguaje Ruby y raro era no estar tirando de Rails si trabajabas con Ruby.
Con el tiempo ha dejado de ser la tecnología de moda y si no recuerdo mal la cosa fue hacia NodeJS, luego se empezó a popularizar Golang y finalmente Elixir (con sus respectivos frameworks).
Dicho esto yo personalmente sigo currando en Ruby, pero dejé de hacer RoR monolítico para entrar en una empresa que curra con decenas de microservicios en Ruby (unos usando Rails y otros no). Casi que agradezco dejar de estar tan atado a un Framework y poder usar Ruby como lenguaje (que me encanta) centrándome más en mejorar como Ingeniero de Software en una arquitectura compleja que como experto en Rails.
Twig
Doctrine
Symfony -> tipado fuerte
NameSpace
Class
Interface
Implements
Exceptions
Abstract Class
...
Fuente (por partida doble): github.com/gallir/Meneame
La pega siempre ha sido que al ser fácil de aprender y no tener tipado fuerte, junto con otros elementos, ha permitido una intrusión de gente que no sabe programar y han creado toneladas de código castaña.
Pero eso no significa que el lenguaje tenga funcionalidades modernas y te permita estructurar tu software de forma limpia, ordenada, coherente y con elementos de integración que hagan mas robusto y colaborativo el código.
Twig
Doctrine
Symfony -> tipado fuerte
NameSpace
Class
Interface
Implements
Exceptions
Abstract Class
...
En todo caso con Node tienes un proceso que está corriendo, aunque sea PHP-CLI no es lo mismo lanzar una aplicación con el gasto en sistemas que esto implica a tener un proceso corriendo que ya tiene reservado recursos que espera vas a usar.
De los lenguajes interpretados te puedo asegurar que PHP es mas que digno
¿Ha dicho ud. Python? Permitame una observación ...
www.google.es/trends/explore?date=all&q=ruby on rails
Eso si en la época era un mojóoon...
Y ya.
gist.github.com/nkt/e49289321c744155484c
philsturgeon.uk/php/2013/11/12/benchmarking-codswallop-nodejs-v-php/
es.slideshare.net/vanphp/react-php-the-node-js-challenger
Eso sí para ciertas tareas como parseo DOM o leer y escribir XHTML o XML siempre será mucho más rápido V8.