Hace 1 año | Por anje a genbeta.com
Publicado hace 1 año por anje a genbeta.com

Ahora, Microsoft ha contratado a un equipo de seis ingenieros junto con Van Rossum para que se encarguen de las mejoras de rendimiento a través de CPython. Hay que recordar que Mark Shannon, uno de los principales colaboradores de CPython (o Core Python), redactó en 2020 un plan de implementación para acelerar CPython cinco veces. Microsoft destaca el trabajo de seis empleados, que han contribuido a mejorar el rendimiento de Python 3.10 y 3.11, lo que, según Microsoft, ha supuesto un aumento de la velocidad de entre el 10% y el 60% en ...

Comentarios

M

#12 Al final se inventa una cosa nueva para terminar llegando al origen: C y C++ pero con capas de abstraccion encima, como una cebolla... en vez de dedicar el tiempo a incluir mejoras en C y C++ y librerias estandar para diferentes tipo de aplicaciones...

a

#12 gracias pensaba que me había transportado a un universo paralelo

D

#43 Vaya argumento, una batallíta que tuviste con ciertos idiotas. Ahora me has convencido, Python es el lenguaje supremo del universo.

D

Es lento, pero es muy bonico.

D

#19 Lo de siempre sencillez vs eficiencia, los programadores mediocres prefieren sencillez y que se gasten muchos más recursos de hardware y energía.

kampanita

#39 o sea que los programadores que usan python son mediocres ¿?

sorrillo

#39 Los programadores mediocres son los que su elitismo les impide reconocer cuando otras herramientas son más aptas para el objetivo que se busca.

Los programadores mediocres son quienes solo valoran el tiempo de ocupación del procesador y no valoran el tiempo del humano encargado de programarlo ni el uso realista que se va a dar de ello.

D

#45 Los programadores mediocres son los que necesitan mucho tiempo humano para hacer su trabajo

sorrillo

#46 Así es, y un buen programador sabe que python permite reducir drásticamente el tiempo requerido para ciertas tareas a cambio de rendimiento cuando éste no es la prioridad.

Los mediocres son los elitistas incapaces de reconocer lo anterior.

D

#47 la prioridad es que incompetentes se dedique a la programación a costa de usar lenguajes de mierda

sorrillo

#48 Cuando priorizas tu odio hacia ciertos lenguajes y tu odio hacia quienes los usan en vez de priorizar los objetivos estás demostrando tu mediocridad.

D

#49 Claro, porque no hay crisis de semiconductores ni crisis energéticas, sólo importa que cuñados mediocres hagan programitas usando lenguajes para bebés. Sino saben programar en lenguajes de verdad porque es muy complicado y mucho lío para sus limitadas cabezas que se dediquen a otra cosa. En la hostelería falta gente.

M

#13 Lo curioso es que Qt-C++ al menos es España y en mi experiencia y apreciacion, es un gran desconocido y muy pocas compañias lo usan o incluso saben de su existencia.

Supercinexin

#16 Se usa mucho en aplicaciones de software libre (claro, éstos no te pagan, o pagan a unos pocos desarrolladores y el resto son voluntarios) y en IUs de sistemas empotrados, rollo pantallitas de navegadores GPS por ejemplo y cosas similares.

También lo he visto mucho en UIs de sistemas financieros, para monitorización de valores, transferencias y esas cosas.

Pero es cierto que no suele ser la primera opción para muchos proyectos o empresas. Y yo también me he preguntado siempre por qué, porque es un framework co-jo-nu-do, de lo mejorcito que hay con mucha diferencia, y C++, especialmente dentro de ese framework, tampoco está tan mal.

Fingolfin

#c-31" class="content-link" style="color: rgb(227, 86, 20)" data-toggle="popover" data-popover-type="comment" data-popover-url="/tooltip/comment/3743819/order/31">#31 Si, o en Microsoft sin ir más lejos, donde les dio por usar python y ahora, como te cuentan en la noticia, tienen que invertir en un equipo de desarrollo específico para intentar mejor algo el estropicio de rendimiento. Si hubieran utilizado un lenguaje decente (C#, por ejemplo) podrían habérselo ahorrado. A ver quien reescribe ahora bases de código viejas gigantescas y en producción.

Pero nada, unos putos genios los que escriben software complejo en un lenguaje de tipado dinámico diseñado para scripts cuya implementación de referencia es un intérprete sin JIT y lento incluso para eso.

Repito, el visual basic de nuestros días, el más popular porque es lo que se enseña a todo el que no sea informático pero tiene que fabricar algún churro.

Supercinexin

#37 Dinero que compensas de sobra encontrando muchos más ingenieros a los que contratar y desarrollando más rápidamente.

Pero como decía, ahora llega Rust y se está abriendo camino también en ese nicho. ¿Has visto Rocket, o Actix?

D

#40 ingenieros mediocres que necesitan lenguajes facilitos para que no se les atraganten

Supercinexin

#17 Lo sé, y tampoco está mal, pero es mucho mejor usar directamente el de C++, por todos esos motivos en los que tu también estás pensando

Cuñado

Hombre, qué raro... Genbeta lamiéndole los huevos a Microsoft...

En Faster CPython hay gente de Microsoft, pero no es un proyecto de Microsoft.

sorrillo

Un poquito relacionado

Someone improved my code by 40,832,277,770%

[ENG]

En gran medida las optimizaciones no son en el lenguaje de programación sino de concepto, de técnicas para procesar los datos, pero también las hay por el cambio a otro lenguaje. Un interesante vídeo donde queda en evidencia el resultado de un prototipo funcional pero mejorable cuando se convierte en una competición el optimizar el cálculo.

Shinu

Para hacer scripts para uno mismo (donde el rendimiento no es muy importante) es de lo mejor que hay.

M

#7 Qt C++ se puede usar para GUIs de escritorio, en Windows, Linux, Android y iPhone.. mismo codigo compilado en todas las plataformas sin un gran esfuerzo...

Supercinexin

#11 Así es.

R

#7 Qt funciona con Python también.

zentropia

#7 typescript en el browser y en backend. Su sistema de tipos es excelente.

D

#7 Y para aplicaciones web donde los cuellos de botella no están en el código de la aplicación, sino en el acceso a datos y las transmisiones de red, también.
tener que poner el triple de servidores consumiendo mucha más energía ya tal.

M

Pero si ya existen lenguajes rapidos como C y C++ (C++11, C++14, C++17, C++20) con el std y con smart_pointers como std::shared_ptr y std:.unique_ptr para evitar memory leaks y con una amplitud que va desde alto nivel hasta bajo nivel (incluso se puede agregar codigo ensamblador en el codigo)... no tiene sentido inventar 100 lenguajes nuevos cada año...

D

#8 Lo que no quita que para proyectos donde la optimización y rendimiento son lo fundamental python no es el lenguaje adecuado ni ahora ni aunque lo mejoren. No es su objetivo.

Vamos que es como el BASIC de toda la vida

kampanita

#5 pero con una curva de aprendizaje muchísimo mayor.
Python lo que tiene es que es fácil de aprender y con la cantidad de librerias que hay, se puede hacer de todo de manera muy sencilla, cierto es que muchas de esas librerias están implementadas en C

M

#10 Para usar C C++ no hace falta que uses el 100% de todo el lenguaje desde el principio. Con lo basico (que incluye ya lo mismo que otros lenguajes y mas) puedes ir poco a poco aprendiendo. Y ahora con C++11 en adelante, tienes muchas caracteristicas de alto nivel que no tienes ni que preocuparte de estar todo el rato con new y delete... y con memory leaks que eso pueda provocar si no estas familiarizado.

Cuñado

#5 no tiene sentido inventar 100 lenguajes nuevos cada año...

Python lleva 30 años inventado... Este proyecto trabaja sobre el core de la implementación oficial de Python, CPython (escrito en C), para lograr que el código nativo de Python se ejecute más rápidamente, no implica ningún cambio en el lenguaje.

Por otra parte C y Python, como lenguajes, no tienen nada que ver y se emplean para resolver problemas muy diferentes. De hecho un simple vistazo al ecosistema de ambos lenguajes da buena muestra de ello.

M

#c-20" class="content-link" style="color: rgb(227, 86, 20)" data-toggle="popover" data-popover-type="comment" data-popover-url="/tooltip/comment/3743819/order/20">#20 Y C y C++ llevan muchos mas de 30 años inventados... y justo vinieron a resolver muchos problemas que esos lenguajes que ya existian antes como Pascal, Cobol y Fortran entre otros no podian resolver... lo que vino despues son refritos de lenguajes basados en sintaxis de C y C++ como Java y C# con sus maquinas virtuales programadas en C/C++ pero con mucho marketing detras mas que otra cosa... Igual que NodeJS ahoira, con un nucleo programado en C/C++ que lo unico que se hace es meter capas y capas como una cebolla pero siempre teniendo como base C y C++

Y es que ,muchas veces se olvida que el software se tiene que ejecutar en un hardware... y acceder a ese hardware para que ejecute diferentes instrucciones muy pocos lenguajes lo tienen al alcance sin tener que ser traducidos con infinidad de mierda por debajo...

Cuñado

#21 Y otros lenguajes, como Rust, han venido a resolver problemas de esos lenguajes... Y otros vendrá a resolver los problemas de Rust... La vida es así, no se detiene.

La programación ha cambiado mucho en las últimas décadas y los lenguajes se adaptan a las nuevas necesidades. C y Python siguen siendo lenguajes fantásticos para sus usos, pero C++, a pesar de que ha evolucionado mucho, muy probablemente se verá sustituido a medio plazo por Rust. De hecho, Microsoft, uno de los grandes valedores de C++ ya ha dado los primeros pasos en esa dirección.

Shinu

#5 El otro día necesitaba validar unos XML. Lo podría hacer hecho en C++ pero me hubiese costado bastante trabajo, en Python fue muy rápido. El script se ejecuta en menos de un segundo, seguro que en C++ sería 10 veces más rápido (o más) pero en ese caso tampoco necesitaba tanta eficiencia.

M
M

#28 Y por cierto, imagina que en vez de validad unos XML tienes que validar muchos XML en un servicio online con miles de conexiones... quizas la diferencia entre tu proceso en Python y algo en C++ es que en Python el servidor iria mucho mas lento y la carga de las webs irian mas lentas...

Shinu

#30 Si hubiese tenido que hacer algo donde el rendimiento fuese importante, no lo hubiera hecho en Python. Y esto solo era un ejemplo, me he hecho más scripts de eso tipo que si lo hubiese tenido que hacer en C++ ni me lo hubiese planteado porque me hubiese costado demasiado tiempo programarlos, pero en Python es muchísimo más sencillo y obtienes resultados en muy poco tiempo.

D

Yo ya lo veo... lo llamarán Python# y lo joderán... sus estándares privados y sus librerías propietarias.

frankiegth

#4. Esa es la razón por la que no meneo esta noticia. Una lástima que los de Redmond le metan mano a Python.
Deberian meter a todos los de Redmond en una ventana y lanzarlos al espacio profundo.

eldarel

#15 El creador de Python está en Microsoft ahora.

frankiegth

#33. Sin duda perderá con ello indepencia en cuanto al desarrollo de Python. Entiendo que busque ganarse la vida con ese contrato laboral pero tengo serias dudas de que el mundo del Software Libre, sus ideales y sus proyectos sean compatibles con las multinacionales de software "clásicas". Creo que #4 señala muy bien la problemática.

D

Jejejeje más rápido por los cojones. Llenarlo de bugs y telemetría.

J

#1 disculpa que me cuelgue de ti, pero de que lenguaje habla? En que se usa el día a día? No se si se refiere a algún país o idioma. Te lo agradezco por adelantado

Fingolfin

Por mucho que optimicen, es como ponerle ruedas nuevas a un carro. Aparte de casos específicos como numpy, python es lento y la gente debería saberlo. Hay todo un universo de proyectos que empiezan en python, se van haciendo más grandes, y al final tienen que reescribirlo en otro lenguaje y cuando lo hacen obtienen ganancias de rendimiento espectaculares.

Además, es un lenguaje con tipado dinámico (y no, las mejoras recientes que permiten especificar el tipo no son la solución). Python viene a ser el visual basic de nuestra época, el lenguaje en el que se hace todo tipo de basura, compadezco a quienes tengan que seguir manteniendo dentro de 20 años el código en python que se está escribiendo hoy...

a

#25 Todo un visionario, estoy seguro que en estas 16 empresas te quieren como CTO
https://www.trio.dev/blog/companies-using-python