Opiniones sobre que lenguaje aprender

neondunker

Badass goodguy :3
Reviewer
Se incorporó
31 Mayo 2006
Mensajes
4.835
Hola chicos,

Estoy en una disyuntiva, les cuento por si me quieren dar su opinion.

Soy Ing. conectividad y redes, pero siempre me ha gustado la programacion/scripting. De chico jugue con scripts en batch, luego vbs, tuve mis revolcones con bash y estoy ultimamente activo con Powershell.

Hace rato que tengo el bicho de dedicarle mas tiempo a programacion, pero nunca he definido un lenguaje porque la verdad no se cual es mas "rentable" (menos tiempo para aprender, mas facil, mas "multiplataforma", etc).

Porque me dio la tontera ahora? Hace un tiempo que vengo haciendo un script que analiza reglas de firewall en Powershell y funciona de pelos, el tema es que es feo, esta ligado a Powershell y quiero algo mas "apropiado" e idealmente con interfaz grafica, a pruebas de diputados, un "ejecutable" como tal.


¿Que lenguaje me recomiendan aprender?

  • Estuve leyendo que Python es la cumbia (y al parecer se ocupa bastante en CyberSec) y bastante facil de usar, solo no se como es el tema de "ejecutables" para distribuir el programa, si requiere dependencias o si tiene GUI.
  • Por todos lados hablan de Java que corre en cualquier lugar, pero en teoria dicen que va en "bajada" y es bastante complicado de aprender, no se si valga la pena
  • Estuve viendo que Powershell permite usar los Forms de windows, ocupando las librerias .NET core y hacer algo casi como un .exe estandar de windows, pero en scripts. En teoria es baja curva de aprendizaje pero, ¿Valdra la pena?

Opiniones son bien recibidas.


Gracias!
 

sr_meck

a.k.a chikogollo
REPORTERO
Se incorporó
14 Mayo 2004
Mensajes
6.517
Puta por tu pega yo diría que Phyton toda ask apis e integraciones están en ese código si es algo aplicado a lo laboral vamos por phyton… para la certificación de devnet de cisco te recomiendas al menos 1 año en phyton
 
Upvote 0

K3rnelpanic

non serviam
Miembro del Equipo
MOD
Se incorporó
1 Octubre 2007
Mensajes
6.065
Para automatizar weas fijo Python. La sintaxis es sencilla, hay montón de librerías y la curva de aprendizaje para escalarlo a weas más Pro no es tan difícil como en Java, por ejemplo.
 
Upvote 0

Carlit0s

Miembro Regular
Se incorporó
19 Junio 2013
Mensajes
32
Depende lo que quieras hacer, si no tienes un proyecto en mente y solo quieres aprender, python es lo indicaado.

Luego que domines python y te encuentres con proyectos que necesiten de un lenguaje más potente, te será más fácil adaptarte
 
Upvote 0

Ena McEna

Capo
Se incorporó
26 Marzo 2009
Mensajes
225
La única gente que va a decirte que java va de bajada son los fanáticos de javascript. Coincidentemente, los fanáticos de java te dirán que javascript va en bajada.

Ninguno va "en bajada". Cada lenguaje tiene un campo específico (si, se pasan a otros, y ahi es donde dan jugo, pero es harina de otro costal). Piensa que vas a hacer y ahí ves que lenguaje es LA herramienta de esa área.

Dicho eso, si sólo quieres aprender, iría por kotlin. El equipo de desarrollo está en slack y si la pregunta es brígida el diseñador en jefe no le hace ascos a meterse (Roman Elizarov), y la operatoria para multiplaforma es la primera con un enfoque racional (creas librerias para cada plataforma en lugar de intentar reemplazar todo el ecosistema).

Sent from my Pixel 3a using Tapatalk
 
Upvote 0

tglaria

InExperto
Se incorporó
10 Febrero 2005
Mensajes
9.753
Un "detalle" de Python (aunque creo que es para todas), dependiendo de que quieras hacer, el hacer GUI no es tan simple/rápido, no es difícil, pero no es tan simple (al menos en mi caso, el código de GUI para cosas simples ha sido mayor que el codigo de algoritmo/funcionamiento del programa).

Lo otro, lo que vi es que para crear archivos ejecutables, el peso del archivo es bastante pesado comparado con las versiones en C o Rust (y asumo que con cualquier otro lenguaje compilado).

Yo voto por Python eso sí, aunque depende exctamente qué quiered hacer.
 
Upvote 0

hpf

Lector entusiasta
Miembro del Equipo
MOD
Se incorporó
7 Mayo 2011
Mensajes
370
Como vienes del mundo de redes, Python sería una buena forma para aprender conceptos clave de programación o computer science, en vez de un lenguaje en particular:
  • Fundamentos (variables, operadores, decision loops, arreglos, funciones, I/O, interfaces, clases, etc)
  • Algoritmos
  • Estructuras de datos
  • Patrones de diseño
Con esa base podrás saltar de un lenguaje a otro, aprendiendo cosas triviales como sintaxis o restricciones de cada uno.
 
Upvote 0

neondunker

Badass goodguy :3
Reviewer
Se incorporó
31 Mayo 2006
Mensajes
4.835
Como vienes del mundo de redes, Python sería una buena forma para aprender conceptos clave de programación o computer science, en vez de un lenguaje en particular:
  • Fundamentos (variables, operadores, decision loops, arreglos, funciones, I/O, interfaces, clases, etc)
  • Algoritmos
  • Estructuras de datos
  • Patrones de diseño
Con esa base podrás saltar de un lenguaje a otro, aprendiendo cosas triviales como sintaxis o restricciones de cada uno.
Ojo, tengo una buena base de eso en scripting. No soy taaaaan novato, solo que no sé cuál escojer

Enviado desde mi M2102J20SG mediante Tapatalk
 
  • Like
Reactions: hpf
Upvote 0

tglaria

InExperto
Se incorporó
10 Febrero 2005
Mensajes
9.753
Ojo, tengo una buena base de eso en scripting. No soy taaaaan novato, solo que no sé cuál escojer

Enviado desde mi M2102J20SG mediante Tapatalk
Python es facil de aprender, si no te sirve, no es mucho lo que pierdes (si es que se pierde algo aprendiendo algo nuevo).
En distribución de ejecutables no más es donde no me gusta mucho, pero bueno, es una cosa por otra.
 
Upvote 0

hpf

Lector entusiasta
Miembro del Equipo
MOD
Se incorporó
7 Mayo 2011
Mensajes
370
Ojo, tengo una buena base de eso en scripting. No soy taaaaan novato, solo que no sé cuál escojer

Enviado desde mi M2102J20SG mediante Tapatalk
Póngale a Python, rey. Librerías para todo, y posible uso para una gama de componentes y dispositivos, sideral.

Regards,
 
Upvote 0

unreal4u

I solve problems.
Miembro del Equipo
ADMIN
Se incorporó
2 Octubre 2005
Mensajes
13.599
Hola chicos,

Estoy en una disyuntiva, les cuento por si me quieren dar su opinion.

Soy Ing. conectividad y redes, pero siempre me ha gustado la programacion/scripting. De chico jugue con scripts en batch, luego vbs, tuve mis revolcones con bash y estoy ultimamente activo con Powershell.

Hace rato que tengo el bicho de dedicarle mas tiempo a programacion, pero nunca he definido un lenguaje porque la verdad no se cual es mas "rentable" (menos tiempo para aprender, mas facil, mas "multiplataforma", etc).

Porque me dio la tontera ahora? Hace un tiempo que vengo haciendo un script que analiza reglas de firewall en Powershell y funciona de pelos, el tema es que es feo, esta ligado a Powershell y quiero algo mas "apropiado" e idealmente con interfaz grafica, a pruebas de diputados, un "ejecutable" como tal.


¿Que lenguaje me recomiendan aprender?

  • Estuve leyendo que Python es la cumbia (y al parecer se ocupa bastante en CyberSec) y bastante facil de usar, solo no se como es el tema de "ejecutables" para distribuir el programa, si requiere dependencias o si tiene GUI.
  • Por todos lados hablan de Java que corre en cualquier lugar, pero en teoria dicen que va en "bajada" y es bastante complicado de aprender, no se si valga la pena
  • Estuve viendo que Powershell permite usar los Forms de windows, ocupando las librerias .NET core y hacer algo casi como un .exe estandar de windows, pero en scripts. En teoria es baja curva de aprendizaje pero, ¿Valdra la pena?

Opiniones son bien recibidas.


Gracias!
Otro voto para Python.

No tendrá la misma interfaz gráfica que los Forms de Windows, pero sí es multiplataforma y corre en cualquier sabor de Linux y/o Windows. Además tiene librerías que pueden hacer cosas muy avanzadas y es relativamente rápido tb.

Java necesitas correrlo dentro de una suerte de VM, lo cual pide bastantes recursos y no cualquier equipo por enano que sea va a poder correrlo. Eso sí, puedes hacer cosas increíblemente complicadas con Java, pero a su vez también requiere de bastante estudio para saber qué estás haciendo y la estructura del mismo. No va en bajada, pero para tu caso en particular, te será más útil Python pq verás resultados en menos tiempo y con menos recursos. Sin embargo, si tener una GUI es un requisito fundamental, Java lo hará harto mejor que Python.

Powershell no lo conozco pq... sorpresa, sólo corre en Windows. Eso te limita mucho sobretodo con equipamiento de redes que por lo general corren algo basado en Linux.

Saludos.
 
Upvote 0

NaNoX

Ingeniebrio
Se incorporó
20 Abril 2008
Mensajes
82
Me compré el curso que recomendé más arriba. Es una buena opción para empezar. A 10 luquitas no era malo. Gracias por compartir la lista de cursos Python
 
Upvote 0

Boulala22

Capo
Se incorporó
29 Abril 2020
Mensajes
173
Yo tengo cero experiencia con esto de programación, de hecho estoy practicando con html.

Cual tiene la mejor curva de aprendizaje, Python o Java?

Quien tiene ebook o link de material con un enfoque didactico (pa wnes)?
 
Upvote 0

jabarcag

Miembro Activo
Se incorporó
16 Marzo 2022
Mensajes
2
Voto por python también.
Veo que se habla mucho de diseño de interfaces con python, para los interesados recomiendo probar pyside, se pueden lograr grandes cosas con código simple y rápido, qtdesginer tb es clave, ventanas full personalizadas.
 
Upvote 0
Subir