Python y JavaScript son pilares en el ámbito de la codificación, gozando de una inmensa popularidad y una adopción generalizada. Para quienes se aventuran en el cautivador universo de los lenguajes de programación, dominar Python y JavaScript promete un viaje transformador. Ya sea que sea un aspirante a desarrollador o un codificador experimentado que busca ampliar su conjunto de habilidades, profundizar en las complejidades de estos dos lenguajes seguramente remodelará su panorama de codificación. En este artículo, nos embarcamos en una exploración exhaustiva de Python y JavaScript, desentrañando sus matices y discerniendo las características contrastantes que los definen. Si bien ambos idiomas ejercen capacidades formidables y cuentan con un uso extensivo, cada uno posee características distintas que los distinguen. Al analizar estas disparidades, nuestro objetivo es brindarle conocimientos invaluables para navegar de manera efectiva por el mundo multifacético de los lenguajes de programación. Entonces, abróchese el cinturón mientras profundizamos en el fascinante reino donde Python y JavaScript convergen y divergen. Comprender JavaScript y Python JavaScript impulsa experiencias web dinámicas, mientras que la versatilidad de Python encuentra aplicación en la ciencia de datos y el desarrollo backend. Sintaxis y curva de aprendizaje: la sintaxis fácil de usar de Python lo hace ideal para principiantes, mientras que el parecido de JavaScript con lenguajes tipo C se adapta a los desarrolladores experimentados. Rendimiento: JavaScript prospera en entornos web, mientras que la fortaleza de Python reside en las tareas computacionales y las operaciones de backend. Ecosistema y bibliotecas: Python ofrece una variedad de bibliotecas para el análisis de datos, mientras que los marcos de JavaScript dominan el panorama del desarrollo web. Casos de uso: JavaScript encuentra popularidad en proyectos centrados en la web, mientras que Python brilla en análisis de datos, tareas de backend y aplicaciones de IA/ML. Tomar una decisión estratégica para su proyecto Evalúe los requisitos del proyecto: adapte su elección a las demandas únicas de su proyecto: JavaScript para aplicaciones web, Python para tareas centradas en datos. Considere el ecosistema: seleccione según la disponibilidad de bibliotecas y marcos esenciales para su proyecto. Evalúe las necesidades de rendimiento: elija JavaScript para un rendimiento web optimizado o Python para tareas computacionales, según los requisitos de su proyecto. Aproveche la experiencia del equipo: alinee su selección de idioma con las habilidades y experiencia de su equipo para lograr la máxima eficiencia. Nuestro enfoque para la selección de tecnología En Charter Global Inc., reconocemos la importancia crítica de seleccionar la tecnología adecuada para el éxito del proyecto. Utilizando nuestra competencia en dotación de personal y contratación remota desde la India, formamos equipos personalizados según las necesidades técnicas específicas de proyectos de JavaScript o Python. Nuestra estrategia garantiza que los proyectos no sólo cumplan sino que superen las expectativas al aprovechar las fortalezas únicas de cada lenguaje de programación. Conclusión La elección entre JavaScript y Python depende de las necesidades específicas de su proyecto, el ecosistema disponible y la experiencia de su equipo. En Charter Global Inc, capacitamos a nuestros clientes para que tomen decisiones informadas, guiándolos a través de las complejidades del desarrollo de software con confianza y precisión.
Etiqueta: pitón

Tiempo de lectura: 3 minutos, 26 segundos En la segunda parte de la serie, les presentaré una implementación del método de modificación de melodía que describí en la primera parte. Disponible aquí. En primer lugar, necesitamos tener una muestra de sonido sobre la que trabajar. Afortunadamente, librosa nos proporciona muestras de sonido interesantes. Echemos un vistazo al ejemplo del diagrama STFT de la parte I. Código: import librosa from librosa import display import matplotlib.pyplot as plt import numpy as np fig, ax = plt.subplots() y, sr = librosa.load(librosa. ex(‘trompeta’)) stft_absolute_values = np.abs(librosa.stft(y)) img = display.specshow(librosa.amplitude_to_db(stft_absolute_values, ref=np.max), y_axis=»log», x_axis=»time» , ax=ax) ax.set_title(‘Espectrograma de potencia’) fig.colorbar(img, ax=ax, format=»%+2.0f dB») plt.show() Fig. 1. Espectrograma STFT de muestra de ‘trompeta’ de librosa Podemos ver claramente cómo la melodía cambia a través del tiempo, pero la computadora no sabe qué contenedores de frecuencia contienen nuestra información de frecuencia F0. Usaremos la implementación del algoritmo pYIN proporcionada por librosa. Ahora agreguemos el resultado del cálculo F0 al gráfico. Fig. 2. La línea cian muestra cómo cambia la melodía a lo largo del tiempo import librosa from librosa import display import matplotlib.pyplot as plt import librosa.display import numpy as np n_fft = 4096 hop_length = 512 fig, ax = plt.subplots() muestras, sr = librosa.load(librosa.ex(‘trumpet’)) stft_absolute_values = np.abs(librosa.stft(samples)) img = display.specshow(librosa.amplitude_to_db(stft_absolute_values, ref=np.max), y_axis =»log», x_axis=»time», ax=ax) ax.set_title(‘Espectrograma de potencia’) fig.colorbar(img, ax=ax, format=»%+2.0f dB») // agregar f0 gráfico f0 , voiced_flag_t, voiced_probs_t = librosa.pyin(samples, fmin=librosa.note_to_hz(‘C2’), fmax=librosa.note_to_hz(‘C7’), sr=sr, hop_length=hop_length, frame_length=n_fft, pad_mode=»constante» , center=True) f0_times = librosa.times_like(f0) ax.plot(f0_times, f0, label=»f0″, color=»cyan», linewidth=2) plt.show() ¡Vamos a transformarnos! Ahora podemos aplicar algunos cambios a la melodía de la trompeta. Como dije en esta y en la primera parte, necesitamos mover todos los contenedores de frecuencia desde un cierto momento hacia arriba para que su tono suba y la melodía suene más alto en ese momento. De hecho, nuestro espectrograma representa una matriz de valores donde el eje horizontal describe intervalos de tiempo y el eje vertical describe intervalos de frecuencia. Fig. 3. Matriz de potencia sonora (dB) Todo lo que tenemos que hacer es girar una columna (o varias columnas en determinados momentos) n veces hacia arriba o hacia abajo para cambiar la melodía. Luego aplique la inversión de STFT para obtener el sonido transformado. Aquí está el código para el desplazamiento de columnas. Es bastante sencillo, así que échale un vistazo: def _roll_column(two_d_array, column, shift): two_d_array[:, column] = np.roll(dos_d_array[:, column]shift) return two_d_array Ahora usémoslo para modificar la melodía. Estoy aplicando el cambio a algunas columnas de la matriz de melodía de trompeta. Vea el código y cómo ha cambiado la trama después. Estoy aplicando una mezcla aleatoria a los intervalos de tiempo en el rango de 50 a 90 usando el siguiente código: img_modified = display.specshow(librosa.amplitude_to_db(stft_absolute_values_modified, ref=np.max), y_axis=»log», x_axis=»time», ax=ax) ax.set_title(‘Espectrograma de potencia’) fig.colorbar(img_modified, ax=ax, format=»%+2.0f dB») plt.show() Así es como se ve el espectrograma después de la transformación: Fig. 3. Frecuencias transformadas aleatoriamente Fig. 4 Datos originales Podemos ver que las frecuencias se han movido aleatoriamente hacia arriba/abajo en relación con los datos originales. Parece prometedor, pero el cambio en la melodía fue aleatorio y no sonaría bien. Es cierto, pero ahora tenemos una herramienta que abre un amplio espectro de posibilidades para modificar melodías que pueden sonar realmente interesantes. En la siguiente parte vamos a aumentar el tono de toda la pista, cambiar la melodía del habla humana y, por supuesto, reproducir el sonido (lo cual no sucedió en este artículo, sí, lo sé, solo ten paciencia :)). Espero que les haya gustado. En caso de cualquier pregunta y/o comentario, ¡no dudes en comentar o comunicarte conmigo! Feliz 1 100 % Triste 0 0 % Emocionado 0 0 % Sueño 0 0 % Enojado 0 0 % Sorpresa 0 0 %
Con el anuncio de NVIDIA de AI Enterprise 5.0 y NVIDIA Inference Microservices en la conferencia GTC, el CEO Jensen Huang planea comenzar una era para hacer que la implementación de AI empresarial sea más fácil y más aplicable que nunca, posiblemente mientras cambia la forma principal en que las personas interactúan con las computadoras. La idea de controlar y programar computadoras solo con indicaciones es similar a lo que Humane ha propuesto con su Ai Pin basado en indicaciones, pero Huang la extiende a los desarrolladores y TI, así como a los consumidores: “El trabajo de la computadora es no requerir C++ para será útil”, afirmó Huang durante la sesión de preguntas y respuestas de prensa de NVIDIA GTC celebrada el 19 de marzo en San José, California (Figura A). Figura A El director ejecutivo de NVIDIA, Jensen Huang, habla durante una sesión de preguntas y respuestas con la prensa durante el NVIDIA GTC en San José, California, el 19 de marzo. Imagen: Megan Crouse/TechRepublic El director ejecutivo de NVIDIA, Jensen Huang, habla durante una sesión de preguntas y respuestas con la prensa durante el NVIDIA GTC en San José, California, el 19 de marzo. Imagen: Megan Crouse/TechRepublic Huang: La ingeniería rápida está transformando la programación Cuando se le preguntó si la programación seguirá siendo una habilidad útil en la era de las indicaciones generativas de IA, Huang dijo: «Creo que la gente debería aprender todo tipo de habilidades» y comparó el código. hasta hacer malabares, tocar el piano o aprender cálculo. Sin embargo, Huang dijo: «La programación no será esencial para que usted sea una persona exitosa». VER: Huang anunció una amplia gama de productos NVIDIA para centros de datos, inteligencia artificial empresarial, criptografía y más durante el discurso de apertura de la conferencia GTC. (TechRepublic) La IA generativa, dijo Huang, está “cerrando la brecha tecnológica. No es necesario ser programador de C++ para tener éxito”, afirmó. “Solo hay que ser un ingeniero rápido. ¿Y quién no puede ser un ingeniero puntual? Cuando mi esposa me habla, rápidamente me manipula. … Todos necesitamos aprender a incitar a las IA, pero eso no es diferente a aprender a incitar a los compañeros de equipo”. Huang continuó diciendo: «Pero si alguien quiere aprender a hacerlo (programar), que lo haga porque estamos contratando programadores». PREMIUM: aprenda cómo convertirse en un ingeniero rápido en esta descarga Premium de TechRepublic La ingeniería rápida es una habilidad que cambia rápidamente. ¿La ingeniería rápida reemplazará la programación tradicional cuando se trata de crear IA generativa a partir de IA generativa como sugirió Huang? «No dejaría mi trabajo diario todavía para convertirme en un ingeniero rápido», dijo Chirag Dekate, analista de Gartner, en una llamada a TechRepublic el 19 de marzo. «Desafortunadamente, el mercado se está corrigiendo excesivamente». Y el mercado se está sobrecorregindo ante un aumento en la demanda de lo que solía ser la ingeniería rápida. En una industria que cambia rápidamente, optimizar las indicaciones para lograr que una IA genere el texto correcto puede que ya no sea la forma en que se realiza la ingeniería de indicaciones de IA; en cambio, las indicaciones pueden ser multimodales. Los NIM son notables, dijo Dekate, porque encajan perfectamente la IA generativa en el contexto de multinube híbrida en el que operan muchas empresas. «Lo que NVIDIA está construyendo ahora es una base para las empresas nativas de IA de próxima generación, donde donde quiera que vayan las empresas experimentarán NIM», dijo. Sin embargo, es posible que NVIDIA no sea la empresa que haga realidad la transformación. Dekate señaló a Cognition AI, que la semana pasada presentó a Devin, su “ingeniero de software de IA”, como una señal de que la forma en que se realiza la ingeniería de software puede cambiar en el futuro. Más cobertura de IA de lectura obligada No importa qué nombre termine en el software más común, Dekate dijo que la forma en que los desarrolladores interactúan con la IA generativa cambiará rápidamente. «El ritmo de innovación de la IA generativa continúa acelerándose», afirmó Dekate. “Lo más probable es que no interactuemos con ninguno de estos modelos utilizando nuestras percepciones heredadas. Me refiero a tecnología de hace tres o seis meses como legado. La IA generativa cambia así de rápido”. David Nicholson, director de investigación de The Futurum Group, dijo a TechRepublic por correo electrónico que en un futuro de IA generativa «una instalación con lenguaje humano se convierte en una habilidad informática importante». “Tu título en inglés (o) historia o derecho de repente te ayuda a convertirte en un ingeniero rápido, pero una especialización en ciencias de la computación nunca estará de más”, escribió Nicholson. “No es una exageración de NVIDIA. Es verdaderamente una revolución”. Descargo de responsabilidad: NVIDIA pagó mi pasaje aéreo, alojamiento y algunas comidas para el evento NVIDIA GTC que se llevó a cabo del 18 al 21 de marzo en San José, California.
Un nuevo informe de la Casa Blanca se centra en proteger la informática en la raíz de los ciberataques; en este caso, reduciendo la superficie de ataque con lenguajes de programación seguros para la memoria como Python, Java y C# y promoviendo la creación de medidas estandarizadas para la seguridad del software. El informe insta a los profesionales de la tecnología a: Implementar lenguajes de programación seguros para la memoria. Desarrollar y respaldar nuevas métricas para medir la seguridad del hardware. Este informe, titulado Regreso a los componentes básicos: un camino hacia un software seguro y medible, pretende transmitir a los profesionales de TI y líderes empresariales algunas de las prioridades del gobierno de EE. UU. cuando se trata de proteger el hardware y el software en la fase de diseño. El informe es un llamado a la acción sugerida, con consejos y pautas flexibles. «Incluso si se solucionaran todas las vulnerabilidades conocidas, la prevalencia de vulnerabilidades no descubiertas en todo el ecosistema de software aún presentaría un riesgo adicional», afirma el informe. «Un enfoque proactivo que se centra en eliminar clases enteras de vulnerabilidades reduce la superficie de ataque potencial y da como resultado un código más confiable, menos tiempo de inactividad y sistemas más predecibles». Las vulnerabilidades de seguridad de la memoria son una preocupación en los lenguajes de programación Las vulnerabilidades de seguridad de la memoria existen desde hace más de 35 años, señala el informe, sin que aparezca ninguna solución. Los autores del informe afirman que no existe una solución milagrosa para todos los problemas de ciberseguridad, aunque el uso de lenguajes de programación con seguridad de memoria incorporada puede reducir una gran cantidad de posibles tipos de ataques cibernéticos. La ONCD señala que C y C++ son lenguajes de programación muy populares utilizados en sistemas críticos pero no son seguros para la memoria. Rust es un lenguaje de programación seguro para la memoria, pero no ha sido probado en el tipo de sistemas aeroespaciales que el gobierno desea proteger particularmente. Los creadores de software y hardware son las partes interesadas más relevantes para hacerse cargo de la creación de hardware seguro para la memoria, dijo la ONCD. Esas partes interesadas podrían trabajar en la creación de nuevos productos en lenguajes de programación seguros para la memoria o en la reescritura de funciones o bibliotecas críticas. ¿Qué lenguajes de programación son seguros para la memoria? Python, Java, C#, Go, Delphi/Object Pascal, Swift, Ruby, Rust y Ada son algunos lenguajes de programación seguros para la memoria, según un informe de la NSA de abril de 2023. Nuevas métricas para medir la seguridad del software El informe afirma que «es fundamental desarrollar métricas empíricas que midan la calidad de la ciberseguridad del software». Este es un esfuerzo más difícil que cambiar a lenguajes de programación seguros para la memoria; después de todo, los desafíos y beneficios de crear métricas o herramientas generales para medir y evaluar la seguridad del software se han discutido durante décadas. Desarrollar métricas para medir la seguridad del software es difícil por tres razones principales: la ingeniería de software puede ser tanto un arte como una ciencia, y la mayor parte del software no es uniforme. El comportamiento del software puede ser muy impredecible. El desarrollo de software avanza muy rápidamente. Para superar estos desafíos, la ONCD señala que cualquier métrica desarrollada para evaluar la seguridad del software debería ser monitoreada y abierta a cambios constantemente, y el software debería medirse de forma dinámica, no estática. Cobertura de seguridad de lectura obligada Respuesta de la industria a las prioridades del informe El vicepresidente y analista de Gartner, Paul Furtado, dijo a TechRepublic por correo electrónico que «en última instancia, todo lo que podemos hacer para minimizar el potencial de un incidente de seguridad es beneficioso para el mercado». Señaló que las empresas pueden tener un largo camino por recorrer para reducir su superficie de ataque utilizando métodos como los sugeridos en el informe de la ONCD. “Incluso dentro de las aplicaciones desarrolladas internamente se depende de bibliotecas de códigos subyacentes. Todos estos entornos y aplicaciones tienen algún nivel de deuda tecnológica”, dijo Furtado. “Hasta que la deuda tecnológica se aborde en toda la cadena, el riesgo subyacente persiste, aunque se comience a reducir la superficie de ataque. El informe proporciona un camino a seguir para centrarse en nuevos desarrollos, pero la realidad es que faltarán muchos años para abordar toda la deuda tecnológica residual que aún puede dejar a las organizaciones susceptibles de ser explotadas”. VER: Prepárese para el panorama de ciberseguridad del futuro en los principales eventos tecnológicos de 2024. (TechRepublic) Algunas grandes organizaciones tecnológicas ya están de acuerdo con las recomendaciones del informe. «Creemos que la adopción de lenguajes seguros para la memoria presenta una oportunidad para mejorar la seguridad del software y proteger aún más la infraestructura crítica de las amenazas a la ciberseguridad», dijo Juergen Mueller, director de tecnología de SAP, en una declaración a la ONCD. «Felicito a la Oficina del Director Cibernético Nacional por dar el importante primer paso más allá de la política de alto nivel, traduciendo estas ideas en llamados a la acción que las comunidades técnicas y empresariales puedan entender», dijo Jeff Moss, presidente de DEFCON y Black Hat. , en declaraciones a la ONCD. «Apoyo la recomendación de adoptar lenguajes de programación seguros para la memoria en todo el ecosistema porque hacerlo puede eliminar categorías enteras de vulnerabilidades que hemos estado curando durante los últimos treinta años». Conclusiones para la alta dirección sobre áreas de interés para la ciberseguridad El informe señala que la seguridad no está solo en manos del director de seguridad de la información de una empresa que utiliza el software afectado; en cambio, los directores de información, que tomarán la iniciativa en la compra de software, y los directores de tecnología de las empresas que fabrican software en particular deberían compartir la responsabilidad de los esfuerzos de ciberseguridad entre sí y con el CISO. Según el informe, estos líderes deberían fomentar la ciberseguridad en tres áreas principales: Desarrollo de software: de mayor interés para los CTO y CIO. El análisis de productos de software es de mayor interés para los CTO y CIO. Un entorno de ejecución resiliente, de mayor interés para los CISO.
TL;DR: Desde el manejo avanzado de archivos hasta la programación de tareas, este paquete de certificación PowerShell lo ayuda a dominar el marco de scripting por menos de $19,99. Si es un fundador técnico o un departamento de TI unipersonal, puede verse fácilmente ocupado con pequeñas tareas de mantenimiento. Como resultado, tiene tiempo limitado para hacer crecer el negocio o agregar nuevas funciones. El paquete de certificación de Windows PowerShell 2024 soluciona ese problema. Con seis cursos completos en vídeo, esta biblioteca de aprendizaje le muestra cómo automatizar las tareas diarias y la administración del servidor. La capacitación vale $78, pero hoy puedes obtener acceso de por vida por solo $19,99 a través de TechRepublic Academy. Acerca de PowerShell PowerShell es una solución de tres partes para la automatización en Windows. Consiste en un shell de línea de comandos, un lenguaje de programación y un marco de configuración. En combinación, estas características son muy poderosas. Puedes crear una automatización bastante impresionante si sabes lo que estás haciendo. Qué está incluido El paquete de certificación de Windows PowerShell 2024 proporciona la introducción ideal. A través de 18 horas de instrucción práctica, descubrirá cómo tomar el control de Windows en el escritorio y en Windows Server. A través de lecciones concisas, aprenderá cómo administrar los procesos y servicios del sistema, acceder al Visor de eventos y usar PowerShell con el Programador de tareas. La capacitación también lo guía a través de interacciones de bases de datos, administración de Active Directory, scripts de validación y reinicios planificados. Incluso aprenderá a crear GUI y automatizarlas con código Python. Todo el contenido es adecuado para principiantes de PowerShell y usted aprenderá del instructor de primer nivel Vijay Saini. Es un profesional de TI activo con una amplia gama de habilidades y ha ayudado a más de 80.000 estudiantes hasta la fecha, obteniendo una calificación promedio de 4,5/5 estrellas. Solicite el paquete de certificación Windows PowerShell 2024 por solo $19,99 para obtener acceso bajo demanda de por vida a las 18 horas de contenido, que normalmente valen un total de $78. Los precios y la disponibilidad están sujetos a cambios.
Los lenguajes de programación de Google hicieron dos movimientos notables en el índice TIOBE entre enero y febrero de 2024: Go alcanzó el puesto 8 (su posición más alta en estas clasificaciones) y Carbon entró en el top 100. El índice de la comunidad de programación TIOBE muestra las tendencias año tras año en Lenguajes de programación basados en el volumen de los motores de búsqueda. Go brilla en el octavo lugar en el índice de la comunidad de programación de TIOBE «Gracias a su creciente adopción en la industria, Go parece ser un lenguaje que tiene la capacidad de permanecer en el top 10 del índice TIOBE durante mucho tiempo», escribió el CEO de TIOBE Software, Paul Jansen. la publicación del Índice TIOBE de febrero. VER: La lista completa de los diez primeros de febrero muestra Python, C y C++ en sus primeros lugares habituales. (TechRepublic) Cobertura de lectura obligada para desarrolladores Go se lanzó en noviembre de 2009, apenas unos años después del lanzamiento del conjunto de software empaquetado como Google Workspace, que incluye Gmail y Google Docs. Ganó el premio TIOBE al idioma del año 2009, lo que indica que ganó la mayor popularidad durante todo el año. Go descendió gradualmente hasta la posición 122 en 2015. En 2015, comenzó un agresivo ciclo de lanzamiento de medio año y poco a poco volvió a la prominencia. «Con cada nuevo lanzamiento, Go mejoró», escribió Jansen. «Paralelamente, Docker y Kubernetes (ambos escritos en Go) comenzaron a volverse muy populares a partir de 2016. Esto ayudó a recuperar la confianza en Go». Go se usa ampliamente, particularmente para programación back-end, servicios web y API. “Tiene la misma curva de aprendizaje baja [as Python]pero es más fácil de distribuir (también entre plataformas)”, dijo Jansen a TechRepublic en un correo electrónico. «Es más rápido y escalable». VER: Curso intensivo de Python (Academia TechRepublic) Carbon ingresa al top 100 del índice de la comunidad de programación TIOBE El lenguaje experimental de código abierto Carbon ingresa al top 100 de TIOBE por primera vez. Carbon es un lenguaje de programación muy joven desarrollado por el ingeniero de Google Chandler Carruth en 2022. Desarrolló Carbon para trabajar con código C++ y sistemas de compilación C++ existentes. Carbon está destinado a proporcionar los beneficios de C++ al tiempo que agrega una sintaxis más simple, un sistema genérico moderno y una organización de código modular. Carbon se utiliza a menudo para programación back-end, servicios web y API. Jansen dijo a TechRepublic que es notable que Carbon haya tardado “tanto” en llegar al top 100. “El otro idioma de Google, Go, entró en el top 20 del índice TIOBE dos meses después de su nacimiento. El carbono tiene ahora más de un año y medio y las cosas están cambiando más rápido hoy en día”, afirmó. «Entonces, si realmente hubiera sido un éxito, ya debería haber estado cerca del top 10 en lugar de estar entre los 100 primeros». Tendencias de TIOBE de febrero de 2023 a febrero de 2024 En febrero de 2024, los tres lenguajes de programación principales son Python, C y C++. Sin embargo, todos perdieron popularidad a lo largo de 2023 en el sistema de clasificación patentado de TIOBE. Otros cambios importantes entre febrero de 2023 y febrero de 2024 son: C# tuvo el mayor crecimiento año tras año con un +1,15 %. JavaScript ganó popularidad del séptimo al sexto lugar. SQL ganó popularidad del octavo al séptimo lugar. Visual Basic cayó del 6º al 9º lugar. Fortran subió dramáticamente del puesto 24 al 11.
TIOBE Software ha declarado C# el lenguaje de programación de 2023 basándose en su índice de popularidad de larga data. El índice de la comunidad de programación TIOBE muestra tendencias año tras año en lenguajes de programación según el volumen de los motores de búsqueda. En enero de 2024, los tres lenguajes de programación principales eran Python, C y C++. Sin embargo, todos perdieron popularidad a lo largo de 2023 en el sistema de clasificación patentado de TIOBE. Otros cambios importantes entre enero de 2023 y enero de 2024 son los siguientes: C# tuvo el mayor crecimiento año tras año con un +1,43 %. JavaScript subió del séptimo al sexto lugar. PHP subió del décimo al séptimo lugar. Visual Basic cayó del 6º al 8º lugar. SQL cayó del octavo al noveno lugar. Scratch subió dramáticamente desde el puesto 20 para ingresar al top 10 en el décimo lugar. C# gana el premio al lenguaje de programación del año 2023 “C# le está quitando cuota de mercado a Java y se está volviendo cada vez más popular en dominios como backends de aplicaciones web y juegos (gracias a Unity)”, escribió Paul Jansen, director ejecutivo de TIOBE Software, en el TIOBE Index publicación de enero. “C# se puede utilizar de forma gratuita y evoluciona a un ritmo constante, lo que hace que el lenguaje sea más expresivo con cada nueva versión. C# llegó para quedarse y pronto podría incluso superar a Java”. Cobertura de lectura obligada para desarrolladores Scratch y Fortran obtuvieron el segundo y tercer mayor puntaje en 2023, con 0,83% y +0,64%, respectivamente. Fortran es un lenguaje muy antiguo que sigue siendo un elemento básico para digerir grandes cantidades de datos en entornos de investigación universitaria. VER: Lista de los 10 principales lenguajes de programación del índice TIOBE para enero de 2024 y meses anteriores (TechRepublic) Jansen señaló que, en el transcurso de 2023, Kotlin se convirtió en residente permanente entre los 20 principales porque es un competidor viable de Java y porque es relativamente fácil de aprender y escribir. Esté atento a Dart y TypeScript en 2024. Jansen señaló que es muy difícil predecir qué lenguajes de programación aumentarán en popularidad lo suficiente como para llegar al top 20. Por ejemplo, Julia llegó brevemente al top 20 en agosto de 2023, pero no permaneció. allá. «El lenguaje de Julia no está documentado formal ni oficialmente, mientras que el lenguaje evoluciona con cada lanzamiento», dijo Jansen. «Esto dificulta que los proveedores de herramientas creen herramientas para el lenguaje». Jansen ve a Dart (con su aplicación complementaria SDK, Flutter, creada por Google) y TypeScript como posibles contendientes para ingresar al top 20 en 2024. “Este último ya se usa mucho en la industria, pero por alguna razón no se está abriendo paso en el mercado. Índice TIOBE todavía”, escribió Jansen.
Los cuatro lenguajes de programación más populares siguen siendo los mismos este mes, mientras que Kotlin sube en el ranking. Imagen: iStockphoto/Chalirmpoj Pimpisarn TIOBE Software ha publicado su lista mensual de los principales lenguajes de programación de noviembre. Este mes, no ha habido mucho movimiento en la lista de los 10 primeros; Python, C, C++ y Java mantuvieron sus coronas entre los cuatro primeros. El director ejecutivo de TIOBE Software, Paul Jansen, está atento a Kotlin, que dio un salto espectacular del puesto 18 al 15 en el índice. A continuación se muestra la lista de los 10 principales lenguajes de programación en noviembre de 2023, según la clasificación del Índice TIOBE. Saltar a: Los 10 principales lenguajes de programación en noviembre de 2023 Los 10 principales lenguajes de programación en el sistema de clasificación patentado de TIOBE (Figura A) se mantuvieron estables en su mayoría en noviembre. PHP y Visual Basic intercambiaron puntos. Python y C experimentaron caídas del 3,02% y 3,31% respectivamente. C++ disminuyó un 0,39%. C# aumentó su popularidad en un 3,40%. Python C C++ Java C# JavaScript PHP Visual Basic SQL Lenguaje ensamblador Figura A Los 10 lenguajes de programación más populares del índice TIOBE para noviembre de 2023. Imagen: TIOBE Software Los 10 lenguajes de programación más populares del índice TIOBE para noviembre de 2023. La columna de cambios indica cambios mes a mes -mes. El sistema de puntos utilizado en la columna de calificaciones está determinado por la cantidad de ingenieros capacitados en todo el mundo, cursos y proveedores externos que interactúan con cada idioma en una variedad de motores de búsqueda populares. Los 10 principales lenguajes de programación en octubre de 2023 Los tres principales lenguajes de programación de la lista de TIOBE (Python, C y C++) permanecen en sus posiciones en octubre, al igual que el resto de la lista. La competencia entre Java y C#, y el reciente cambio entre los dos lenguajes de programación, se puede ver en la gran caída de Java de -3,92% puntos en el sistema propietario TIOBE (Figura B). C# ganó un 3,29% en el sistema de puntos de TIOBE, la mayor ganancia anual de todos los lenguajes de programación. Python C C++ Java C# JavaScript Visual Basic PHP SQL Lenguaje ensamblador Figura B Los 10 lenguajes de programación más populares del índice TIOBE para septiembre de 2023. Imagen: TIOBE Software. Los 10 principales lenguajes de programación en septiembre de 2023 El mes pasado, el CEO de TIOBE, Paul Jansen, sugirió que el próximo cambio en los tres principales lenguajes de programación podría ser que C++ supere a C. Entre agosto y septiembre, C perdió un 2,70 % en el sistema de clasificación propietario, pero eso no fue así. suficiente para desplazarlo del segundo lugar (Figura B). Python C C++ Java C# JavaScript Visual Basic PHP Lenguaje ensamblador SQL Figura B Los 10 lenguajes de programación más populares del índice TIOBE para septiembre de 2023. La columna de cambios indica los cambios mes tras mes. El sistema de puntos utilizado en la columna de calificaciones está determinado por la cantidad de ingenieros capacitados en todo el mundo, cursos y proveedores externos que interactúan con cada idioma en una variedad de motores de búsqueda populares. Imagen: TIOBE Software Los 10 principales lenguajes de programación en agosto de 2023 Los tres principales lenguajes de programación del índice se mantuvieron estables entre julio y agosto, con Python, C y C++ manteniendo los primeros lugares, respectivamente. Un cambio notable en el índice de este mes es que Julia alcanzó el puesto 20, lo que marca la primera vez que el lenguaje de programación relativamente nuevo ingresa a los niveles superiores de popularidad en estas clasificaciones. Python C C++ Java C# JavaScript Visual Basic SQL Lenguaje ensamblador PHP VER: Curso intensivo de Python (TechRepublic Academy) Los 10 lenguajes de programación principales en julio de 2023 “Hace unos meses, el lenguaje de programación C++ ocupó la posición 3 del índice TIOBE (a expensas de Java)”, escribió Jansen en la publicación de julio sobre el índice. Python C C++ Java C# JavaScript Visual Basic SQL PHP MATLAB VER: El paquete de programación C++: principiante a experto (TechRepublic Academy) Los 10 lenguajes de programación principales en junio de 2023 Mientras que en mayo era demasiado pronto para saber qué impacto podría tener el auge de la inteligencia artificial en En el índice TIOBE, el impacto es claro en junio. “Si herramientas como ChatGPT siguen siendo la comidilla del día, (atraerán) a los recién llegados, y entonces Python definitivamente llegó para quedarse. De lo contrario, Python debería temer por su primera posición”, escribió Jansen. ChatGPT de OpenAI fue escrito principalmente en Python. ChatGPT se puede utilizar para escribir código en varios idiomas, aunque no siempre con un 100% de precisión. Python C C++ Java C# Visual Basic JavaScript PHP SQL Lenguaje ensamblador Los 10 principales lenguajes de programación en mayo de 2023 Todos los lenguajes de programación más populares han mantenido sus lugares en el top 10 del índice TIOBE este año, con pocos cambios. Python C Java C++ C# Visual Basic JavaScript PHP SQL Lenguaje ensamblador VER: The Ultimate Programming Bundle (TechRepublic Academy) Los 10 lenguajes de programación principales en abril de 2023 Python mantuvo su primer lugar en la lista TIOBE de abril. Zig, un lenguaje de programación surgido de Google e inventado para solucionar algunos de los problemas del equipo de Zig con C y C++, entró en el top 50 debido a que funciona particularmente bien en proyectos que involucran big data. Python C Java C++ C# Visual Basic JavaScript SQL PHP Go VER: El curso completo de carrera en programación (TechRepublic Academy) Los 10 principales lenguajes de programación en marzo de 2023 Python reclamó el puesto número uno en el índice TIOBE este mes. El índice ha cambiado recientemente debido a un caballo oscuro, Go, que pasó a la posición número 10. Jansen señaló que Go recibe el respaldo de Google, lo que aumenta la confianza en el lenguaje de programación. Python C Java C++ C# Visual Basic JavaScript SQL PHP Go VER: Clase magistral de Python (TechRepublic Academy) Los 10 lenguajes de programación principales en febrero de 2023 Los dos lenguajes de programación principales de este mes fueron Python y C, respectivamente. El tercer lugar en esta lista fue C++, que tuvo un aumento estelar año tras año del 5,93%, un salto muy grande en comparación con aproximadamente el 1% de crecimiento año tras año para los otros lenguajes de programación más populares. Python C C++ Java C# Visual Basic JavaScript SQL Lenguaje ensamblador PHP VER: The Complete Computer Programmer Super Bundle (TechRepublic Academy) Los 10 principales lenguajes de programación en enero de 2023 TIOBE nombró a C++ su lenguaje de programación del año, ya que ganó mayor popularidad a lo largo de 2022. El excelente rendimiento de C++ y su capacidad para crear sistemas de software muy grandes sin muchos problemas de mantenimiento al ser un lenguaje orientado a objetos de alto nivel contribuyeron a su popularidad, dijo Jansen. Python C C++ Java C# Visual Basic JavaScript SQL Lenguaje ensamblador PHP ¿Qué es el índice TIOBE? El índice TIOBE es un indicador de qué lenguajes de programación son los más populares en un mes determinado. Su propietario, Paul Jansen, director ejecutivo de TIOBE Software, señala que el índice no es un premio al “mejor” lenguaje ni una lista de en qué lenguaje de programación se ha escrito la mayor cantidad de código; en cambio, utiliza motores de búsqueda populares para determinar qué lenguajes son más utilizados entre los programadores profesionales, los cursos de programación y los proveedores externos. VER: Tutorial de C++ intermedio y avanzado (Academia TechRepublic)
Tiempo de lectura: 5 minutos, 5 segundos A partir de este artículo, presentaré una serie sobre un tema original (al menos para mí y para este blog). En primer lugar por el lenguaje de programación que estoy usando para mostrar mi idea y en segundo lugar por el tema: modificación de melodías, o para ser más precisos, procesamiento de sonido usando el lenguaje Python. Ya escribí una tesis sobre este tema en mi idioma nativo (polaco), por lo que decidí comenzar esta serie para que la audiencia mundial pueda aprender sobre ello. Teoría En primer lugar, debemos introducir algunos conceptos clave para poder transformarlos en una aplicación funcional. Necesitamos comprender los dominios que son el procesamiento de sonido y señales. Sonido Todo sonido que podemos escuchar puede ser en realidad una onda que se propaga por el aire. Es un cambio en la presión del aire a lo largo del tiempo. Fig. 1, Por Rburtonresearch – Trabajo propio, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=45035734 Esos cambios de presión y amplitudes se pueden medir y guardar como un archivo para el ordenador (como un archivo WAVE, por ejemplo). El archivo WAVE contiene información clara sobre las amplitudes. Procesamiento de señales FT y FFT Ok, ya hemos hojeado el tema, pero ¿cómo encontrar qué frecuencia estamos escuchando en un momento particular? Necesitamos utilizar un método brillante llamado Transformada de Fourier (FT) o, para ser más precisos, su versión de algoritmo adaptada a computadora llamada Transformada Rápida de Fourier (FFT). Una versión ingenua de este algoritmo (FT) es realmente ineficaz y tomaría demasiado tiempo procesar datos de sonido, así que ahí es donde entra en juego la FFT. Sin embargo, la historia de FT y FFT es una gran idea para un artículo diferente. Gracias a wiki podemos visualizar la idea de FT en gráficos. Fig 2. Función y su La primera figura muestra un gráfico de amplitud en el tiempo ya conocido para la función: este último presenta el resultado del operador Transformada de Fourier (matemáticamente hablando, FT es un operador lineal) aplicado a la entrada de muestra que se muestra en el primer gráfico. Como resultado obtenemos frecuencias que forman la onda de entrada y su potencia en dB. STFT Tenemos frecuencias de toda la muestra pero aún no sabemos qué frecuencia (nota) tiene el sonido en un determinado momento. Para ese problema, tenemos que utilizar otro método brillante con un acrónimo genial Short Time Fourier Transform (STFT). STFT nos permite calcular la frecuencia y su potencia en dB en un momento determinado. Una nota, por ejemplo un sonido C7, es una onda sonora que tiene una frecuencia de 2093,00 Hz. La tabla disponible en https://pages.mtu.edu/~suits/notefreqs.html muestra las frecuencias de la mayoría de las notas sonoras que el oído humano puede oír. ¡La conclusión es que tener un valor de frecuencia y su potencia en un determinado momento nos permite reproducir la melodía de toda la muestra! Fig. 3, Resultado de STFT en una muestra de voz humana: análisis espectral La figura anterior muestra el resultado de STFT aplicado a la muestra de sonido: un análisis espectral. (es una muestra diferente, no la misma ola que en las dos figuras anteriores). La línea verde, etiquetada como F0, es un gráfico de la melodía calculada por el algoritmo pYIN. Modificando las frecuencias en determinados momentos podemos cambiar la melodía. Entonces sólo necesitamos usar iSTFT (operación inversa) para adquirir sonido modificado. Frecuencia fundamental Una última pieza de teoría. ¿Cuál es la frecuencia fundamental etiquetada como F0? Según wikipedia, «lo fundamental es el tono musical de una nota que se percibe como el presente parcial más bajo». El tono se puede asignar a la frecuencia en nuestros términos. Mirando la Fig. 3 podemos ver el área más brillante que abarca desde aproximadamente 0,06 a 0,36 s. – el mismo que ha sido marcado con línea azul. Esta es la frecuencia más baja de todos los armónicos en un momento determinado. Todos los armónicos más altos (F1, F2) también se pueden ver en la figura como franjas más brillantes (mayor potencia en dB) en frecuencias más altas. Implementación Hay mucha teoría detrás de este concepto. Afortunadamente, tenemos una maravillosa biblioteca de Python que hace los cálculos por nosotros para que podamos centrarnos en nuestra idea en lugar de implementarla a mano (aunque eso también sería divertido). librosa es una rica biblioteca para análisis de música y audio. Sólo necesitamos obtener Python, instalarlo, luego obtener librosa e instalarlo también. Estoy usando PyCharm de JetBrains, lo que hace que sea bastante fácil de hacer, pero puedes elegir tu IDE favorito. PyCharm Una vez que haya adquirido PyCharm, vaya a Archivo -> Configuración. Luego elija el intérprete de Python y haga clic en el signo «más». Escribe ‘librosa’ y elige la última versión (0.8.0 en el momento de escribir esto). Haga clic en Instalar paquete, luego en Aceptar, espere a que se instale y estará listo. Otras bibliotecas que deben instalarse para mostrar un gráfico son ‘matplotlib’ y ‘numpy’. Repita los pasos anteriores e instale la versión más reciente. Probando librosa Cree un nuevo archivo .py y escriba el código a continuación. importar librosafrom librosa importar displayimport matplotlib.pyplot como pltimport numpy como npfig, ax = plt.subplots()y, sr = librosa.load(librosa.ex(‘trumpet’))stft_absolute_values = np.abs(librosa.stft(y) )img = display.specshow(librosa.amplitude_to_db(stft_absolute_values, ref=np.max), y_axis=»log», x_axis=»time», ax=ax)ax.set_title(‘Espectrograma de potencia’)fig.colorbar(img , ax=ax, format=»%+2.0f dB»)plt.show() Ejecute el código y ¡listo! Transformamos rápidamente ondas sonoras en frecuencias y creamos un diagrama realmente claro usando Python y librosa. Buen trabajo. Aquí es donde me detengo. En la siguiente parte, les mostraré una implementación real del código de modificación de melodías, conversión de muestras usando STFT y viceversa. Explique detalladamente cómo leer, comprender y modificar los resultados de la Transformación de Fourier. ¡Espero verte allí! Si tiene alguna pregunta o comentario, ¡no dude en comunicarse conmigo! Feliz 0 0 % Triste 0 0 % Emocionado 0 0 % Sueño 0 0 % Enojado 0 0 % Sorpresa 0 0 %