Entradas

Usando Flet: una primera mirada a las aplicaciones para móviles desde Python

Imagen
 Hola amigos! Por quizas la primera vez en mi vida, me sucedio que debo realizar una pequeña aplicacion para Android. Como no tengo mucha experiencia en aplicaciones móviles (hice algunas hace un tiempo usando Flutter principalmente para iOS, pero no me gusta mucho Dart), empecé a buscar con que framework realizar la aplicación. Y para mi sorpresa, resulta que hay frameworks para aplicaciones móviles en Python! Bueno, no es realmente Python ya que las aplicaciones deben ser empaquetadas con Flutter y hay todo un proceso atrás, el caso es que existe Flet. Flet es un framework que usando Python como lenguaje permite realizar aplicaciones móviles muy fácil. Estaré probándolo mucho más estos días y luego les contaré la experiencia de hacer desarrollo móvil para un programador de backend Python. Saludos! Damian

Novedades de Python 3.13

Hola! Como suelo hacer cada tanto, vamos a revisar las novedades de Python 3.13. Un nuevo y mejorado intérprete interactivo, basado en PyPy, con edición multilínea y compatibilidad con colores, así como seguimiento de excepciones coloreado. Un modo de compilación experimental de subprocesos libres que deshabilita el bloqueo global del intérprete, lo que permite que los subprocesos se ejecuten con mayor concurrencia. Este modo de compilación también está disponible como función experimental en los instaladores de Windows y macOS. Un JIT preliminar y experimental que sienta las bases para mejoras significativas en el rendimiento. La función integrada locals() (y su equivalente en C) ahora tiene una semántica bien definida al mutar la asignación devuelta, lo que permite a los depuradores operar de forma más consistente. Se incluye una versión modificada de mimalloc, opcional, pero habilitada por defecto si la plataforma la admite, y necesaria para el modo de compilación de subprocesos lib...

Mirando Nerdearla

Hola!  Este es un post chiquito para avisarte que si queres ver Nerdearla, lo tenés acá: https://www.youtube.com/watch?v=v9LNEa2OoWo Saludos! Damian

Reflexiones a los 50 años

Este post es un poco diferente de los demas de este blog porque hoy es un dia muy especial para mi. Cumplo 50 años. No es una fecha diferente de las demas, pero tiene ese algo especial que tienen los numeros que terminan en cero. Es como si uno - inconscientemente - hiciera un balance de la ultima decada. Y si bien estos ultimos años fueron muy pero muy dificiles por muchas cuestiones, no solo lo economico, el balance por suerte es bastante positivo. Estoy en una etapa donde definitivamente aun tengo mucho por hacer, pero a su vez es una etapa donde uno pone mas filtros en todo. Quizas por la experiencia o quizas por la falta de paciencia, todo lo que hago va relacionado (en mi caso) con cosas que me gustan. Ni loco me pongo a trabajar o a hacer algo en mi vida personal que sea algo que no me guste. Es asi, uno se pone mas selectivo. En cuanto a los hobbies, no hay dudas que seguire con la fotografia, la musica y quizas este blog tambien pueda considerarlo algo asi como un hobby. Digam...

No te la compliques con el SSH

Imagen
 Si necesitas usar SSH y no tenes ganas de renegar (a mi tambien me pasa a a veces) una muy buena recomendacion es utilizar un cliente con una buena GUI para tus conexiones. En este caso te voy a recomendar un software que se llama Termius, que se puede descargar gratuitamente desde la pagina www.termius.com o desde la App Store de Mac. Lo vengo usando desde hace algun tiempo, y una de las grandes ventajas que tiene este software (aparte de almacenar usuarios y claves etc) es que ademas permite utilizar la terminal local. En Mac solo se puede hacer si descargas la aplicacion desde la web debido a las restricciones del App Store, pero igualmente es muy util. Otra de las cosas que me encanto de este software (aunque es una cuestion subjetiva) es los temas de color que trae. Actualmente estoy utilizando uno que se llama Hacker Blue, aunque trae muchos y podes elegir el que quieras. Ademas de todo lo que te mencione, Termius tambien incorpora SFTP, por lo que es muy util para manejar l...

Cambios programando en 2025

Imagen
 Hola amigos! Este año arranca con muchos cambios, especialmente para los programadores. Ya es un hecho que la IA (en cualquiera de sus formas) va a ser parte de nuestra vida diaria, y sobre todo como programadores vamos a ver un verdadero avance en estas herramientas para acelerar nuestros desarrollos y todo lo relacionado con este hermoso mundo de la programación. Más del 60% de todo el código que se produce en el mundo está hecho con IAs, y esto desde mi punto de vista va a generar ventajas y un problema: vamos a tener que revisar muuuucho código, sobre todo teniendo en cuenta que en el futuro las recomendaciones de las IA se van a basar en código que ya fué generado por otra IA.... va a ser interesante ver como evoluciona esto. Si están utilizando alguna herramienta de IA para desarrollar, no duden en comentar que usan? Yo como ya dije hace un tiempito por el momento estoy usando Codeium, pueden ver mi post sobre eso. Saludos!

Usando IA para programar

Imagen
  En un mundo donde todos los días vemos más novedades en inteligencia artifical, es casi imposible siendo programadores no usar una tecnología que nos ayude a programar más fácil. O al menos que autocomplete nuestro código. Es un mar de herramietnas entre las que se encuentran Copilot, Blackbox, Codeium, Llama, Supermaven, Replit... y un montón más.  Si bien todas las herramientas hacen lo básico, hay algunas que destacan más, y luego de haber probado varias, por el momento estoy usando Codeium. Por que? Porque cumple con todo lo básico, y porque me encanta el dashboard que ofrece para ir monitoreando como la usamos. No creo que sea la mejor herramienta, pero como dicen algunos, la mejor herramienta es la que usas... Y además probando Codeium con NeoVim me funciona MEJOR para Python que otras como Copilot. Y es gratis! Por lo tanto, te invito a visitar la web de Codeium en https://www.codeium.com y comanzar a usarlo. Saludos, Damian

Proyecto: un libro por semana

Imagen
Hola amigos!  Espero estén todos muy bien. El viernes pasado empecé un proyecto que estoy documentando principalmente en Twitter, de leer un libro por semana durante el siguiente año.  Luego de pensarlo un poco asumí que sería interesante también para los que leen este blog, por lo que iré actualizando este post con la lista completa de los libros que voy leyendo. Así que sin más preámbulo, les paso la lista: Hábitos atómicos (James Clear) The Coming Wave (Mustafa Suleyman) Saludos, Damian

Python y la ciencia de datos

Imagen
 Si bien Python no es el único lenguaje para realizar tareas de ciencia de datos (está también por ejemplo R y hay otros lenguajes que podrían usarse), es sin duda un gran candidato debido a la gran cantidad de librerías que posee, y principalmente al gran ecosistema del lenguaje. Y también se utiliza bastante dentro de Excel de Microsoft, por lo que es un lenguaje interesante para realizar estas tareas. Vamos a ver algunas de las librerías que podríamos usar para realizar tareas y aplicaciones relacionadas con un entorno de análisis de datos y en que situación nos conviene utilizarlas.  Las voy a enumerar por orden alfabético y les comentaré brevemente también mi experiencia con ellas: - MatPlotLib . Esta es una hermosa librería para realizar gráficos, es muy fácil de usar y es ideal para la persona que se está metiendo en el análisis de datos, ya que permite representar conjuntos de datos de manera muy fácil. En mi GitHub hay ejemplos de su uso o sinó pueden visitar su web e...

Escribiendo un blog para programadores

Imagen
  Si bien hace años que hago desarrollo y bastante tiempo que tengo el blog, cuando me preguntan porque escribir en un blog no tengo una respuesta específica. Hay muchos motivos por los que podés empezar a escribir en un blog. El primero de ellos quizás sea el ego propio, eso de tener un lugar propio donde contar tus vivencias e ideas. Pero en mi caso uno de los motivos principales es que me gusta enseñar. Es por ese motivo que estuve varios años dando clases de programación y diseño. Y es por eso que también tengo los canales de Youtube y de Twitch. Entonces el blog es un lugar más donde mostrar lo que uno hace, lo que diariamente sentimos que es importante mostrar y enseñar. Espero que les guste el contenido de este sitio. Hasta la próxima, Damian

QuickFlask v3

 Hola amigos! Al que le interese trabajar con Flask, ya está disponible nueva versión de mi aplicación para arrancar a trabajar con Flask rápido, actualizada a la versión 3.0.3 de Flask. Pueden descargarla desde mi GitHub, les paso link: DamianK/quickflask: A quick way to start a Flask v3 application (github.com) Saludos!

Como trabajar para el exterior desde Argentina

Imagen
Cuando trabajamos como freelancers una de las cuestiones mas importantes es como conseguir trabajos y como cobrar desde el exterior. Vamos a ver primero donde buscar trabajo y luego como cobrar. PAGINAS DE TRABAJO FREELANCE Empezaremos por ver donde buscar trabajo. Las paginas mas conocidas son las siguientes: UPWORK.COM .  Upwork es uno de los sitios mas viejos de trabajo freelance. Es una pagina que tiene muchisimos trabajos. Si bien al principio la use mucho, ahora hace mucho que no la uso porque tuve problemas para cobrar (que me dicen que ya estan solucionados, pero...) y por eso deje de usarla. FREELANCER.COM Quizas uno de los mejores sitios para conseguir trabajos, esta tambien en español. El problema en este sitio es que hay muchisima gente buscando trabajo y los precios de las ofertas por trabajar estan bastante bajos. Hay mucha gente de India, por lo que el pago por hora de los trabajos es bastante bajo. FIVERR.COM Este sitio es diferente a los otros en el sentido de que...

Porque uso Windows, Linux y MacOS

Imagen
Hoy me hicieron esta pregunta y me pareció interesante para poner acá algunos comentarios sobre los sistemas operativos y porque usar uno u otro para programar. Antes de empezar, en rasgos generales da lo mismo cual uses, en definitiva salvo casos muy específicos que voy a comentar, con cualquier sistema operativo se puede programar. Empezamos... Porque usar Windows? Tradicionalmente convenia programar en Windows si tenias que hacer aplicaciones para Windows, ya que lo mejor era sin duda Visual Studio. De esta manera, al igual que pasa con Apple y comentare mas abajo, para desarrollar aplicaciones con WFP el Visual Studio es lo mejor. Hoy por hoy, también me parece una opción muy interesante para desarrollo web, ya que gracias a WSL tenemos un Linux muy bueno incorporado a Windows.  Y no hay que olvidarnos de algo en lo que Windows es el rey: los juegos. Si sos gamer, tener instalado Windows tiene la ventaja que no necesitas mas una maquina para programar: podes tener ambos SO (en ...

Porque usar WSL

Imagen
Hace un tiempo a esta parte que básicamente deje de usar Linux la mayor parte del tiempo y pase a usar WSL. Porque? Porque la realidad es que WSL funciona MUY BIEN. Y como la mayoría de las otras aplicaciones que uso mas allá de las de programar son para Windows, es muy útil tener todo en la misma maquina sin necesidad de usar maquinas virtuales (aunque en realidad WSL lo es , pero es mas fácil de usar). Otra de las grandes ventajas de WSL es la facilidad con la que se accede al sistema de archivos de Ubuntu desde el explorador de Windows. En resumen, es muy útil. Mas sobre el WSL2 muy pronto. Saludos! Damián

Ya estoy de vuelta :)

Imagen
Queria contarles que despues de 10 dias obligado fuera de la computadora por los problemas en el ojo, ya estoy de vuelta casi recuperado. O sea que en breve empiezo a publicar en este blog de nuevo :) Saludos! Damian

Descanso obligado

Imagen
Debido a una situación con mi ojo izquierdo debo estar fuera de la pantalla lo mas posible por los próximos 3 días. Y eso me hizo pensar como a pesar de no usar la computadora cuando no estoy trabajando, siempre estamos frente a una pantalla, sea el tele, o el celular o incluso la misma computadora para jugar o cualquier otra tarea que no es trabajo (hola, twitter?). Así que en los próximos dias voy a estar desarrollando mas este tema del descanso de la pantalla, pero por el momento lo tengo que hacer casi obligado.... Nos vemos la próxima semana... Saludos Damian

Entorno de desarollo en Windows (WSL + Ubuntu 22.04 + MobaXterm + NeoVim)

Imagen
 Vamos a configurar un entorno de desarrollo completo bajo Windows usando WSL. 1) INSTALAR WSL Esto es ahora muy sencillo, simplemente abrí la tienda de Microsoft y busca "ubuntu" e instala. 2) INSTALAR MOBAXTERM El MobaXterm es un terminal MUY completo que podes bajar desde esta web: MobaXterm Xserver with SSH, telnet, RDP, VNC and X11 - Download (mobatek.net) Una vez instalado, podes acceder a tu Ubuntu de WSL. 3) NEOVIM Es un editor de código excelente, yo lo prefiero por sobre VSCode.  Yo para instalarlo directamente baje el binario de Ubuntu desde acá:  Installing Neovim · neovim/neovim Wiki (github.com) Luego, en el caso de que te interese mis configuraciones están en este repositorio: DamianK/new-dotfiles: These are the configurations and scripts I'm using in Manjaro Linux (Arch) (github.com) Igualmente mas adelante voy a hacer un post sobre como usar NeoVim. 4) INSTALAR WSLU WSL Utilities es un paquete con muchas utilidades que nos serviran, para instalarlo: sudo ...

Novedades en Python 3.12

Imagen
Y bueno como sucede cada tanto cuando sale una nueva versión, estoy empezando a probar Python 3.12. Entonces, mientras lo voy probando voy a poner acá un resumen de las novedades que tiene y luego iré ampliando. En resumen: 1. Nueva sintaxis de anotación de tipo para clases genéricas (PEP 695) : Esta característica permite una forma más concisa y legible de anotar el tipado en las clases genéricas. 2. Análisis de f-string más flexible (PEP 701) : Ahora se permiten muchas construcciones que antes estaban prohibidas en las f-strings, lo que proporciona una mayor flexibilidad a los desarrolladores. 3. Mensajes de error mejorados : Se han mejorado aún más los mensajes de error. Ahora, más excepciones que podrían ser causadas por errores tipográficos ofrecen sugerencias al usuario, lo que facilita la depuración. 4. Mejoras de rendimiento (PEP 709) : Se han realizado numerosas mejoras de rendimiento, tanto grandes como pequeñas, para hacer que Python 3.12 sea más rápido y eficiente. 5.  ...

Porque estoy haciendo este blog

Imagen
 Ayer me di cuenta que no habia explicado bien la idea de este blog: esto no va a ser un lugar donde vayas a encontrar muchos articulos tecnicos con explicacion de como hacer cosas, este es un blog en el buen sentido: voy a ir publicando las cosas interesantes que descubro, o cosas que me pasan, o lo que sea. Asi, como es domingo y no tengo muchas ganas de nada publico esto! Gracias por comprender :) Damian

Que Framework usar?

Imagen
 Este es un post que seguramente voy a estar editando con el tiempo, pero actualmente utilizo 3 frameworks: - Django - Flask - FastAPI Entonces, cual usar y por que? Si estas haciendo un proyecto GRANDE, sin dudas: Django. Tenes muchas cosas ya armadas del vamos, es practico y de usar y tiene muchas cosas que hacen el desarrollo muy facil. El problema: es LENTO para algunas cosas.  Por ejemplo, si tu proyecto va a tener un API, y es un proyecto mediano/grande te recomendaria usar FastAPI para el API, y quizas Django para el resto. Entonces, cuando usar Flask? Si el proyecto va a tener MUCHO hecho a medida, y lo "estandar" no te sirve tanto, entonces tener que reescribir muchas de las cosas que ofrece Django es un sin sentido. En ese caso, Flask es ideal. Todavia me falta comentar mas sobre este tema, pero por el momento eso es todo. Hasta la proxima, Damian