Duda sobre lenguajes de programación

¡Muy buenas a todos!

Actualmente estoy trabajando de desarrollador. En la carrera estudié C/C++, pero ahora en el trabajo la verdad es que no lo he tocado nada.

He aprendido Java, del cual no tenía ni idea, así como Javascript, Jquery...
Por hacer un resumen, trabajo con Spring, el back en Java y el front en Javascript/HTML. Para las BBDD uso Hibernate. No llevo mucho tiempo con esto, pero la verdad es que me está gustando mucho.
Para control de versiones usamos Tortoise.

Ahora bien, aunque está genial y me gusta mucho, me gustaría empezar a hacer proyectos propios. He estado viendo que para control de versiones se usa más Git, y la plataforma Github ya lo integra. De hecho creo que me vendría bien tener ahí una cuenta para subir todos los proyectos, de cara a mejorar CV y tenerlo todo guardado en algún sitio.
Lo siguiente sería escoger un lenguaje de programación. En su día C/C++ me gustaba mucho, pero creo que hoy día se usa más C#. Sin embargo los tutoriales que he encontrado para C# tiran más de .net, y usan Visual Studio, pero al ser de pago la verdad es que me resulta algo complicado. Por ahora es lo que más me tira, aprender bien .net ya que no lo conozco mucho. Sin embargo no sé si el tema de Git y eso se puede integrar bien con lo que busco.

También he pensado en Symfony (solo he visto Django hace tiempo), e incluso PHP.

¿Qué recomendáis vosotros? Me tira mucho tanto aplicaciones web como aplicaciones móviles, pero creo que lo segundo es algo más complicado.

Muchas gracias :)
C# es un lenguaje de Microsoft, por tanto no es multiplataforma.

Las mejores opciones son: C++, Java y Python. Salvo que quieras hacer algo Web.
amchacon escribió:C# es un lenguaje de Microsoft, por tanto no es multiplataforma.

Las mejores opciones son: C++, Java y Python. Salvo que quieras hacer algo Web.


Pues la verdad es que de los que me comentas, creo que me quedaría con C++, ya que Java es el que uso en el trabajo. Sin embargo, no se me ocurre qué proyectos hacer de escritorio...

Para web (que es prácticamente lo que más se pide hoy día), ¿Qué recomiendas?

Aun así por ahora creo que iré tirando con C++. ¿Qué IDE es el que más se suele usar? Si puede ser distinto de eclipse mejor.

Muchas gracias amchacon :)
Uchigatame escribió:Pues la verdad es que de los que me comentas, creo que me quedaría con C++, ya que Java es el que uso en el trabajo. Sin embargo, no se me ocurre qué proyectos hacer de escritorio...

Escritorio o móvil :o

Uchigatame escribió:Para web (que es prácticamente lo que más se pide hoy día), ¿Qué recomiendas?

C++ en backend [hallow]
http://cppcms.com/wikipp/en/page/main

La verdad esque en web voy más justo, en backend uso PHP, pero tampoco esque sea la panacea [+risas]

Uchigatame escribió:Aun así por ahora creo que iré tirando con C++. ¿Qué IDE es el que más se suele usar? Si puede ser distinto de eclipse mejor.

Muchas gracias amchacon :)

Codeblocks es una alternativa buena, multiplataforma y ligera.

También puedes usar VIM + Makefile, pero eso es solo para machos alfa [sati]
Yo como siempre recomiendo python + flask como microframework para montarte el backend como te de la gana.

De orm sqlalchemy mas alembic para el sistema de migraciones, siempre que tires por alguna base de datos relacional.

Para IDE, siempre me he sentido agusto con los editores de texto "avanzados" tipo atom/sublime text cargado de plugins. Sino alguno de jetbrains adaptado al lenguaje correspondiente.
Para temas web o SPA (Single Page Application) se habla mucho de NodeJS, React, Angular; pero puede que sea cuestión de modas.

Mi consejo aprovechar eso que sabes de PHP para profundizar en PHP7 que le han metido bastante caña y ha mejorado bastante respecto a versiones anteriores. No creo que PHP vaya a quedar en el olvido; seguirá al igual que siguen otros lenguajes cómo C/C++; es por eso que invertiría en un lenguaje "clásico".

Pero todo depende hacía que entorno quieres tirar profesionalmente.

Un saludo,
Muchas gracias a todos por las respuestas, lo tengo todo apuntado.

Profesionalmente no sé muy bien donde quiero tirar, la verdad. Por eso es por lo que quiero ir probando cada lenguaje, para ver las potencias y carencias, las características de cada uno... para así poder elegir uno u otro dependiendo de lo que me vaya gustando más.

Por ahora Java y Javascript (Spring) me está gustando bastante, pero no creo que sea con lo que me quede para toda la vida.
Tu historia es muy similar a la mía pero aun no me decido por que aprender XD

He programado en Java Puro (Servlets, jsp, etc) , PlayFramework2, Express , Laravel 5, ZendFramework2 (Con estos he hecho autenticacion, crud, cosas así) En el front end, javasctipt puro, jquery, y un poco muy poco de angular 1. (React lo conozco casi por nombre XD )

Pero a mi de todas estas cosas me gusta java y un profesor me ha dicho que lo mejor es c# y java para especializarse. Pero mmmm me gustaría saber cual podría ser un buen framework mvc para aprender. He escuchado se struts, spring pero nunca los he tocado y no se que tal serán. (playframework aun si bien es bueno, he visto que los otros (Spring, Struts) son mas pedidos entre los requisitos de CV )

Si alguien puede dar su recomendación estarla agradecido. Saludos :)
En C++ hay trabajo (sistemas en tiempo real).

GO es un lenguaje nuevo que promete también (hecho por Google). Tengo pendiente de echarle un ojo, vaya a ser que se ponga de moda también.
Yo la verdad es que lo que más me llama es C#/C++ y Angular, aunque de este último no tengo ni idea...

C# creo que tiene el problema de que es con Visual Studio, y al ser de pago es más jodido.

Si me pongo con C++, ¿Qué puedo desarrollar? No sé como desarrollar una interfaz, o qué es más o menos el tipo de cosas que piden. El lenguaje más o menos lo sé manejar, ya que en la carrera programamos mil y una cosas, pero todo en la ventana de comandos, recorrer árboles, etc...

Muchas gracias :)
Uchigatame escribió:C# creo que tiene el problema de que es con Visual Studio, y al ser de pago es más jodido.

Hay una versión gratuita: Visual Studio Community.

Uchigatame escribió:Si me pongo con C++, ¿Qué puedo desarrollar? No sé como desarrollar una interfaz, o qué es más o menos el tipo de cosas que piden. El lenguaje más o menos lo sé manejar, ya que en la carrera programamos mil y una cosas, pero todo en la ventana de comandos, recorrer árboles, etc...

QT es lo más usado para interfaces.
amchacon escribió:En C++ hay trabajo (sistemas en tiempo real).

GO es un lenguaje nuevo que promete también (hecho por Google). Tengo pendiente de echarle un ojo, vaya a ser que se ponga de moda también.


Un amigo me dice que firebase es una buena opción a aprender, otro me habla de RoR (igual me llama la atención este framework, creo que todo se trabaja como objeto) pero la verdad no sè que tan factible sean, C++ nunca lo he tocado y de go no he visto nada.

Uchigatame escribió:Yo la verdad es que lo que más me llama es C#/C++ y Angular, aunque de este último no tengo ni idea...

C# creo que tiene el problema de que es con Visual Studio, y al ser de pago es más jodido.

Si me pongo con C++, ¿Qué puedo desarrollar? No sé como desarrollar una interfaz, o qué es más o menos el tipo de cosas que piden. El lenguaje más o menos lo sé manejar, ya que en la carrera programamos mil y una cosas, pero todo en la ventana de comandos, recorrer árboles, etc...

Muchas gracias :)


Si de c# justo hoy me comentaban de LinQ creo se llama y me hablaban maravillas sobre el manejo de json de mas de 50mb de tamaño. Pero claro el problema es el visual studio. He leído de angular que de la migración de la ver 1 a la 2 cambiaron muchas cosas y varios dejaron de usarlo. Para Single page application (SPA) creo que es bueno meteor pero por tiempo no le echado a un ojo (la documentación esta incluso en español por lo que recuerdo)
Consulta ¿Què tal es Spring ?
Saludos.
@kyo2009 A mi Spring la verdad es que me gusta mucho. No soy ningún experto, y realmente no llevo tanto usándolo, pero la verdad es que facilita bastante las cosas. El problema para mi es montar el proyecto. Cuando entré a trabajar en este puesto ya estaba el proyecto montado, por lo que me quité ese problema y tan solo tenía que ir añadiendo cosas, pero hacer un proyecto de 0... no sé muy bien cómo hacerlo.

@amchacon No conocía esa versión gratuíta. Si merece la pena, entonces creo que tiraré con esa y con C#... Y cuando me canse, pues tiraré otro tiempo con C++.

La idea es que quiero ir aprendiendo a manejar estos lenguajes. De siempre me ha gustado mucho C, y la verdad es que me gustaría especializarme en ellos, pero prácticamente el 90% de las ofertas de trabajo son en Java.

Llevo poquito trabajando, por lo que lo mismo tengo muchos pájaros en la cabeza, pero bueno, poco a poco...
Uchigatame escribió:@kyo2009 A mi Spring la verdad es que me gusta mucho. No soy ningún experto, y realmente no llevo tanto usándolo, pero la verdad es que facilita bastante las cosas. El problema para mi es montar el proyecto. Cuando entré a trabajar en este puesto ya estaba el proyecto montado, por lo que me quité ese problema y tan solo tenía que ir añadiendo cosas, pero hacer un proyecto de 0... no sé muy bien cómo hacerlo.

@amchacon No conocía esa versión gratuíta. Si merece la pena, entonces creo que tiraré con esa y con C#... Y cuando me canse, pues tiraré otro tiempo con C++.

La idea es que quiero ir aprendiendo a manejar estos lenguajes. De siempre me ha gustado mucho C, y la verdad es que me gustaría especializarme en ellos, pero prácticamente el 90% de las ofertas de trabajo son en Java.

Llevo poquito trabajando, por lo que lo mismo tengo muchos pájaros en la cabeza, pero bueno, poco a poco...

Especializate en lo que más te gusta. Si tienes material/proyectos para enseñar no creo que te falte trabajo. Lo que hace falta es gente especializada que domine de verdad el lenguaje que utilice.
Si te ha gustado C, no dudaría y iría con C++. Tal y cómo te han citado ofertas para entornos muy determinados hay.

Un saludo,
amchacon escribió:C# es un lenguaje de Microsoft, por tanto no es multiplataforma.


C# con instalando mono puedes ejecutarlo en Linux y hace unos meses Microsoft liberó gran parte del código para conseguir que sea multiplataforma.

Además, con Xamarin que es un framework que corre sobre C# puedes incluso usarlo para IOS y Android.


En cuanto a que lenguaje aprender, desgraciadamente cada vez hay más y depende de que quieras hacer tendrás que usar uno u otro. Te recomendaría que le echases un vistazo a un par frameworks JS como Angular, que conozcas bases de datos como Mysql y Mongo y algo de programación móvil.

En cuanto a temas de Java, cada vez está más «de moda» usar lenguajes alternativos que funcionan sobre la JVM, como Kotlin (en Android especialmente) o Groovy. La ventaja de estos lenguajes es que se pueden combinar perfectamente en el mismo proyecto. Tú puedes escribir tus clases con Kotlin, tu compañero en Groovy y otro tercero en Java y todos podréis usar las clases de los demás en las vuestras sin problemas.

Finalmente, cualquier IDE minimamente decente soportará git sin problemas.
elchicosinhada escribió:
amchacon escribió:C# es un lenguaje de Microsoft, por tanto no es multiplataforma.


C# con instalando mono puedes ejecutarlo en Linux y hace unos meses Microsoft liberó gran parte del código para conseguir que sea multiplataforma.

Sí, y también puedes ejecutar programas de Windows en wine [hallow]

C# fue diseñado y pensado para Windows, mono no le llega a la altura.
Que casualidad, yo también estoy eligiendo por donde tirar "definitivamente" tras años currando, acutalmente he trabajado en bastantes lenguajes pero quiero enfocarme a algunos en concreto, y digo alguno por que siempre hacen falta varios para un proyecto (más teniendo en cuenta si quieres servicios web).

Estoy más o menos como tu, no sé si elegir C, C++, C# O Java. Actualmente Xamarin ofrece muchas posibilidades con C# y me parece muy interesante.

Mirando ofertas de trabajo para el futuro se ve más o menos por donde va el mercado, pero tampoco quiero "enfocar" mi vida por eso.

Por otra parte la web pemite más y más cosas,y si contamos con los dispositivos móviles más aún.

Total, que no sé por donde tirar. A ver si entre todos llegamos a una conclusión [+risas] [+risas]
elenano2 escribió:Que casualidad, yo también estoy eligiendo por donde tirar "definitivamente" tras años currando, acutalmente he trabajado en bastantes lenguajes pero quiero enfocarme a algunos en concreto, y digo alguno por que siempre hacen falta varios para un proyecto (más teniendo en cuenta si quieres servicios web).

Estoy más o menos como tu, no sé si elegir C, C++, C# O Java. Actualmente Xamarin ofrece muchas posibilidades con C# y me parece muy interesante.

Mirando ofertas de trabajo para el futuro se ve más o menos por donde va el mercado, pero tampoco quiero "enfocar" mi vida por eso.

Por otra parte la web pemite más y más cosas,y si contamos con los dispositivos móviles más aún.

Total, que no sé por donde tirar. A ver si entre todos llegamos a una conclusión [+risas] [+risas]


El problema es que creo que no existe una conclusión. De hecho, creo que no se puede hablar de que un lenguaje de programación sea mejor que otro, sino que sus características son diferentes.

Gracias a todos los compañeros por las respuestas, la verdad es que siempre he querido mirar Angular, dicen que es muy potente.

@elchicosinhada Gracias por el comentario, me has aclarado muchas cosas :)

El problema también es que estoy en el trabajo desde que me levanto hasta las 6 de la tarde, y sinceramente en casa no me apetece mucho ponerme a programar, ya que es a lo que me dedico prácticamente todo el tiempo.
Sin embargo en el trabajo tengo muchos "huecos", debido a que al terminar una tarea no puedo hacer otra hasta que otro compañero acaba, o el cliente dice lo que quiere. En vez de ponerme a "mamonear", o a perder el tiempo, me gustaría aprovechar el tiempo en ir formándome.
Con Git lo bueno que tengo es que puedo tener mi proyecto, dedicarle un ratillo a meter una función nueva, en otro momento otra... Y sobre todo ir aprendiendo.

Realmente me sorprendió mucho cuando llegué aquí el ver cómo era un proyecto de verdad. Yo en la carrera solo había programado en ventana de comandos, y ver aquí como todo el código se convierte en aplicaciones web, que se comunican con bases de datos, y la potencia que tiene todo esto... La verdad es que es apasionante.

De base de datos la verdad es que solo se SQL. Aquí se usan bases de datos oracle, pero creo que tendría que aprender a usar MySQL y otras, ya que creo que no son iguales.

Por ahora estoy muy contento porque estoy aprendiendo MUCHO, pero no quiero quedarme solo con lo que me enseñan en el trabajo, quiero mirar un poco más allá.

Muchas gracias por todo :)
Uchigatame escribió:Si me pongo con C++, ¿Qué puedo desarrollar? No sé como desarrollar una interfaz, o qué es más o menos el tipo de cosas que piden.

Puedes desarrollar lo que te de la gana, el limite lo pones tu (salvando cosas imposibles por el hardware, claro XD).

Usando un framework como Qt, y un minimo cuidado, puedes crear programas multiplataforma con muy poco esfuerzo, soportando GNU, MSWindows, OSX, Android, iOS, y algunas otras plataformas menos populares.

La interfaz de usuario la puedes crear manualmente con C++, manualmente con QML, o visualmente con Qt Designer o el modulo Designer del gran IDE que es Qt Creator :D
Uchigatame escribió:
elenano2 escribió:Que casualidad, yo también estoy eligiendo por donde tirar "definitivamente" tras años currando, acutalmente he trabajado en bastantes lenguajes pero quiero enfocarme a algunos en concreto, y digo alguno por que siempre hacen falta varios para un proyecto (más teniendo en cuenta si quieres servicios web).

Estoy más o menos como tu, no sé si elegir C, C++, C# O Java. Actualmente Xamarin ofrece muchas posibilidades con C# y me parece muy interesante.

Mirando ofertas de trabajo para el futuro se ve más o menos por donde va el mercado, pero tampoco quiero "enfocar" mi vida por eso.

Por otra parte la web pemite más y más cosas,y si contamos con los dispositivos móviles más aún.

Total, que no sé por donde tirar. A ver si entre todos llegamos a una conclusión [+risas] [+risas]


El problema es que creo que no existe una conclusión. De hecho, creo que no se puede hablar de que un lenguaje de programación sea mejor que otro, sino que sus características son diferentes.

Gracias a todos los compañeros por las respuestas, la verdad es que siempre he querido mirar Angular, dicen que es muy potente.

@elchicosinhada Gracias por el comentario, me has aclarado muchas cosas :)

El problema también es que estoy en el trabajo desde que me levanto hasta las 6 de la tarde, y sinceramente en casa no me apetece mucho ponerme a programar, ya que es a lo que me dedico prácticamente todo el tiempo.
Sin embargo en el trabajo tengo muchos "huecos", debido a que al terminar una tarea no puedo hacer otra hasta que otro compañero acaba, o el cliente dice lo que quiere. En vez de ponerme a "mamonear", o a perder el tiempo, me gustaría aprovechar el tiempo en ir formándome.
Con Git lo bueno que tengo es que puedo tener mi proyecto, dedicarle un ratillo a meter una función nueva, en otro momento otra... Y sobre todo ir aprendiendo.

Realmente me sorprendió mucho cuando llegué aquí el ver cómo era un proyecto de verdad. Yo en la carrera solo había programado en ventana de comandos, y ver aquí como todo el código se convierte en aplicaciones web, que se comunican con bases de datos, y la potencia que tiene todo esto... La verdad es que es apasionante.

De base de datos la verdad es que solo se SQL. Aquí se usan bases de datos oracle, pero creo que tendría que aprender a usar MySQL y otras, ya que creo que no son iguales.

Por ahora estoy muy contento porque estoy aprendiendo MUCHO, pero no quiero quedarme solo con lo que me enseñan en el trabajo, quiero mirar un poco más allá.

Muchas gracias por todo :)


La verdad que es es la "putada", estando todo el día currando de 6 a 6, llegar a casa, hacaer las cosas de la misma y los quehaceres diarios pues te deja poco tiempo disponible...

Conclusión como tal no existe, cada lenguaje tiene unas aplicaciones determinadas pero nunca sabes de lo que vas a encontrar trabajo. Lo que si se puede afirmar es que si te haces "experto" en alguna es raro que te falte trabajo, muy muy raro.

En mi caso, me apasiona todo lo relacionado con redes, ahora estoy pensando en crearme mi propia aplicación de torrent para meterme en ese mundo y formarme en ello.

En fin, ya se verá. Lo que si me parece genial es que podamos hablarlo entre todos y ver por lo que tira cada uno, a mi personalmente me parece muy interesante (aparte de las experiencia de cada uno en el curro o proyecto en el que trabaje).

[beer]
@JanKusanagi Ya había visto alguna cosilla de Qt, pero no sabía si realmente era útil o no, o si se usaba para algo. La verdad es que me llama mucho la atención... A ver si le echo un ojo. Muchísimas gracias ^^

@elenano2 Me pasa lo mismo. Llego a casa, limpiar, limpiar la ropa, hacer la cena + la comida para el táper para el día siguiente... Se te va la tarde y la hora que tienes para descansar pues o enchufas la consola, o te pones un capítulo en Netflix, o te pones a hacer otra cosa.
En verano trabajaba hasta las 3 (horario intensivo), y si fuera así todo el año la verdad es que me daban la vida.

Yo por mi parte, soy todo lo contrario que tú. Las redes se me dan horriblemente mal. En la carrera no me lo explicaron bien, la verdad es que me dieron un temario bastante mediocre, y les he cogido un poco de tirria y miedo.
A día de hoy realmente me gustan muchas cosas. Hice mis pinitos con Unity3D haciendo algún juego, pero el tiempo necesario para sacar algo viable me parece demasiado, sobre todo siendo solo un hobby.
El tema de hacer aplicaciones móviles "útiles" también me gusta mucho, o aplicaciones web para algo que le resulte útil a la gente (como una especie de red social).

Me parece increíble cuando, aparece una pantalla de una aplicación, y son 4 botones y 5 opciones, y luego miras el código y ves que es una burrada todo lo que hace por detrás. Me parece increíble poder reducir a algo tan simple algo tan complejo.

La cuestión es que me gusta mucho, pero estoy un poco quemado del trabajo. Mucho tiempo, muchas exigencias, muchas peticiones imposibles (el cliente lo pide negro, el jefe lo pide negro, y por supuesto gris no vale), etc.

Yo creo que voy a retomar C++ o C#, aunque como especialista no creo que valga mucho, ya que hay muchísima gente de ello.
Uchigatame escribió:@JanKusanagi Ya había visto alguna cosilla de Qt, pero no sabía si realmente era útil o no, o si se usaba para algo. La verdad es que me llama mucho la atención... A ver si le echo un ojo. Muchísimas gracias ^^

@elenano2 Me pasa lo mismo. Llego a casa, limpiar, limpiar la ropa, hacer la cena + la comida para el táper para el día siguiente... Se te va la tarde y la hora que tienes para descansar pues o enchufas la consola, o te pones un capítulo en Netflix, o te pones a hacer otra cosa.
En verano trabajaba hasta las 3 (horario intensivo), y si fuera así todo el año la verdad es que me daban la vida.

Yo por mi parte, soy todo lo contrario que tú. Las redes se me dan horriblemente mal. En la carrera no me lo explicaron bien, la verdad es que me dieron un temario bastante mediocre, y les he cogido un poco de tirria y miedo.
A día de hoy realmente me gustan muchas cosas. Hice mis pinitos con Unity3D haciendo algún juego, pero el tiempo necesario para sacar algo viable me parece demasiado, sobre todo siendo solo un hobby.
El tema de hacer aplicaciones móviles "útiles" también me gusta mucho, o aplicaciones web para algo que le resulte útil a la gente (como una especie de red social).

Me parece increíble cuando, aparece una pantalla de una aplicación, y son 4 botones y 5 opciones, y luego miras el código y ves que es una burrada todo lo que hace por detrás. Me parece increíble poder reducir a algo tan simple algo tan complejo.

La cuestión es que me gusta mucho, pero estoy un poco quemado del trabajo. Mucho tiempo, muchas exigencias, muchas peticiones imposibles (el cliente lo pide negro, el jefe lo pide negro, y por supuesto gris no vale), etc.

Yo creo que voy a retomar C++ o C#, aunque como especialista no creo que valga mucho, ya que hay muchísima gente de ello.


Sin ánimo de seguir le offtopic tío, HAS DESCRITO MI DÍA A DÍA [360º] [360º] . Eso es justamente lo que hago yo todos los días, cuando acabo todo son las 10:00-11:00 de la noche y ya me pongo el capitulo de Netflix en la cama [+risas] .

También he hecho mis pinitos con apps para android y mi proyecto final fue un juego en 2D con Unity XD

¡Que pena no tener amigos de la misma profesión para compartir con ellos!

PD: Yo tiraré al final por c++ con QT para hacer la aplicación de torrent jeje, a ver que tal se da :)
@elenano2 Jajaja tio offtopic para nada, a fin de cuentas busco conocer gente como tú para saber con qué trabajais, lo que os gusta, posibilidades...

Yo también hice juego en 2D para proyecto de fin de carrera, la verdad es que fue de los proyectos con los que más disfruté.

Yo lo mismo me pongo a hacer alguna cosilla para familiares, ya que les vendría bien alguna aplicación para cosas sencillas, y para empezar no está mal, ya que no me gusta ponerme a lo loco.

El día a día la verdad es que es un poco regular en lo que respecta a tiempo libre.
Yo suelo llegar a casa, y me doy media horita de merienda + consola o juego de mesa con mi compañero. Luego hacer la comida para el día siguiente, poner lavadora, fregar platos, limpiar la casa, luego hacer la cena porque ya se ha ido la tarde, y poner un capítulo de algo en Netflix mientras cenamos. Luego fregar los platos, y a acostarse que si no al día siguiente estás muerto.
La verdad es que me gustaría encontrar algo con jornada intensiva, en verano estaba genial... Pero bueno, me lo tomo como que ahora estoy haciendo curriculum para el futuro :)

Un abrazo tio, la verdad es que me alegra ver que hay buena gente en el mundillo de la programación. Por desgracia normalmente suelo encontrarme con gente que se ríe de mi por no saber esto o aquello...
Uchigatame escribió:¡Muy buenas a todos!

Actualmente estoy trabajando de desarrollador. En la carrera estudié C/C++, pero ahora en el trabajo la verdad es que no lo he tocado nada.

He aprendido Java, del cual no tenía ni idea, así como Javascript, Jquery...
Por hacer un resumen, trabajo con Spring, el back en Java y el front en Javascript/HTML. Para las BBDD uso Hibernate. No llevo mucho tiempo con esto, pero la verdad es que me está gustando mucho.
Para control de versiones usamos Tortoise.

Ahora bien, aunque está genial y me gusta mucho, me gustaría empezar a hacer proyectos propios. He estado viendo que para control de versiones se usa más Git, y la plataforma Github ya lo integra. De hecho creo que me vendría bien tener ahí una cuenta para subir todos los proyectos, de cara a mejorar CV y tenerlo todo guardado en algún sitio.
Lo siguiente sería escoger un lenguaje de programación. En su día C/C++ me gustaba mucho, pero creo que hoy día se usa más C#. Sin embargo los tutoriales que he encontrado para C# tiran más de .net, y usan Visual Studio, pero al ser de pago la verdad es que me resulta algo complicado. Por ahora es lo que más me tira, aprender bien .net ya que no lo conozco mucho. Sin embargo no sé si el tema de Git y eso se puede integrar bien con lo que busco.

También he pensado en Symfony (solo he visto Django hace tiempo), e incluso PHP.

¿Qué recomendáis vosotros? Me tira mucho tanto aplicaciones web como aplicaciones móviles, pero creo que lo segundo es algo más complicado.

Muchas gracias :)

github si no te importa que esté accesible a todo quisqui bien, sino montatelo en local o paga por un repositorio online.

Si no es para algo comercial tienes los visual studio express.
De todas formas tienes la alternativa libre multiplataforma para c# Monodevelop (el que integra mismamente Unity3D por ejemplo).

Git se integra bien, al igual que SVN. Ya depende si quieres tener control de versiones también en local o no. Yo como los locales hago una copia a parte de ficheros muy concretos solos, para la mayoría de proyectos sigo usando SVN. Generalmente si no hay mucha dependencia con varios usuarios svn es suficiente, depende de vuestra forma de trabajar y costumbres.

Para tema web, Django es una buena opción a día de hoy.
Docker está escrito en GO. Tiene presente y futuro.

Resumen: GO, nodejs y python
Con el SaaS-ismo que hay ahora mismo controlar de stacks web no es mal plan... el problema es las mil alternativas a un lado y otro xD

RoR, py, php, js, incluso .net son muy usados en back, con dbs tanto sql y nosql. Algo de redis/rabbid tmp va mal controlar, y nociones de devops de lo que se desarrolle pueden ser un buen conocimiento extra, que nos paramos en desarrollar pero eso luego tiene que salir de alguna forma on the wild xD

En frontend el guirigai es bastante importante. A pesar de que lo que lean los navegadores siga siendo practicamente lo mismo los ultimos quince años, el desarrollo ha cambiado mil y hay muchisimas variantes.

Una buena base de html,css y js vanilla es indespensable para el sector, jQuery se ha convertido en la standard library auxiliar y despues ya optaria por aprender alguna stack popular para quedarme con el flow y los conocimientos de diseño, porque aunque la sintaxis es distinta las ideas generalea se repiten de una a otra. jade-gup/sass/angular/gulp por elegir algo

El tema de testing y las tools tipicas de checkeo,, tests automatizados, integracion continua etc tmb son importantes
Ojo porque node.js no es un lenguaje. Si queréis usar jQuery, node o cualquier otra tecnología que usa JS, primero es recomendable aprender bien JS.
Yo soy programador de Java tambien. Programar me flipa tanto que cuando llego a casa me pongo en mi ordenador a seguir programando. Me molaria ponerme un dia a trastear con Unity o Android, quiero hacer algo mas alla de la interfaz web de la que ultimamente no salgo. Pero me pasa que me cuesta muchisimo pensar en un proyecto sobre el que ponerme a trabajar, no me salen ideas... Ademas que estoy aun terminandole la web a un amigo y no quiero empezar algo sin haber terminado lo otro.

Git esta muy guay, espero que no tengas que trabajar con Maven nunca, a mi me ha vuelto loco pero hasta niveles exagerados, cada dia tenia poltergeists de lo mas raros. Con decirte que cuando ya lo considere dominado me tatue en el brazo "PUTO MAVEN" como mi medalla personal...

Me gustaria hacer una pregunta colectiva, que veo bastante programador en este hilo: ¿sabeis de foros, o webs, donde la gente busque colaboradores para sus proyectos? me gustaria involucrarme en alguna historia asi...

Saludos :)
lburbano escribió:Pero me pasa que me cuesta muchisimo pensar en un proyecto sobre el que ponerme a trabajar, no me salen ideas...

Fácil: Rehaz ideas antiguas.

Por ejemplo, podrías proponerte hacer un Comecocos en Java. Es un reto bastante interesante y que yo encontré muy gratificante.

Aquí está el mío en C++:
https://github.com/miachm/Pacman
lburbano escribió:¿sabeis de foros, o webs, donde la gente busque colaboradores para sus proyectos?

Casi todos los proyectos de software libre buscan colaboradores, y en muchos de ellos incluso tienen tareas designadas como "junior", precisamente marcadas por ser ideales para alguien que quiera empezar a colaborar en el proyecto.

Piensa en que software libre usas, y a cualquiera de esos proyectos podrias aportar algo.
Pues esta mañana me la tuve que perder porque me llamaron de una fabrica de llantas donde les solia hacer mantenimiento en el pasado, desesperados porque se les jodio un robot, tenian la linea parada, y no conseguian a nadie

Estos robot usan un lenguaje muy similar al ensamblador de motorola, va, seria casi identico con algunos añadidos extras

Y me dijeron que en ninguna de las otras fabricas del mismo grupo tampoco tienen nadie que pueda programar estos robots, cuando hay un problema... tienen que llamar a alguien de alemania


Asi que parece ser que aprender estos lenguajes tiene salida laboral, y de la buena, porque por una mañana, les cobre 500 euros y tan contentos
@lburbano Ni se te ocurra mentar a Maven o salto a través de la pantalla a darle un puñetazo al creador de semejante mierda.

3 malditos días creando un fichero a mano (no había ningún otro del que pudiese reaprovechar algo), dándole a compilar y fallando, compilar y fallar, constantemente. Luego que si falta X librería del REPO, a editar el properties una y otra y otra vez hasta ir afinándolo. Eso sí, una vez lo tienes es tan sencillo como hacer un maven "loquequierashacer" y ver que compila todo (o casi todo) sin demasiados problemas.

Acostumbrado a otros compiladores, usar Maven ha sido mi calvario personal esta semana. Si ya le tenía poco asco a este proyecto, ahora es que no puedo ni verlo XD

Si no estás ligado a un SO en concreto y te puedes poner el Visual Studio 2015, hay varios proyectos de UWP con buena pinta. Mismamente un fork de Telegram en C# (Unigram), hasta la fecha van por buen camino y si tienes experiencia en desarrollo de este tipo de cosas siempre viene bien una mano extra.

@theelf son casos puntuales, normalmente los programadores de ese tipo de cosas ya tienen sus buenos 40 y tantos años. Ojo, no le quito ningún mérito, ponerse a hacer cosas en ensamblador a estas alturas es desbloquear un logro en la vida. Pero difícil es de cojones, y por cada un programador que sepa ensamblador hay 40.000 que saben Java/C++/C#. Y las ofertas de trabajo están mayormente para esos lenguajes. De ahí que cobrarles 500€ por una mañana es algo relativamente fácil si es un lenguaje que apenas se usa en la actualidad, como si les quieres pedir la virginidad de sus hijas, si no quieren quedarse en la estacada van a pagar [sati]
@Mr.Gray Fox Odio infinito hacia esta mierda. Su creador es mas malo que Fu-Manchú

Imagen
Mr.Gray Fox escribió: @theelf son casos puntuales, normalmente los programadores de ese tipo de cosas ya tienen sus buenos 40 y tantos años. Ojo, no le quito ningún mérito, ponerse a hacer cosas en ensamblador a estas alturas es desbloquear un logro en la vida. Pero difícil es de cojones, y por cada un programador que sepa ensamblador hay 40.000 que saben Java/C++/C#. Y las ofertas de trabajo están mayormente para esos lenguajes. De ahí que cobrarles 500€ por una mañana es algo relativamente fácil si es un lenguaje que apenas se usa en la actualidad, como si les quieres pedir la virginidad de sus hijas, si no quieren quedarse en la estacada van a pagar [sati]


Pues no es tan puntual parece, xq me llaman bastante a pesar de que he dicho que estoy retirado, ya que ahora tengo mi empresa, y no me apetece trabajar para cuenta ajena.

Entiendo que uno aprende un lenguaje como algo personal, laboral o una mezcla de ambos. Y visto lo visto, parece q hay trabajo en el area, por eso lo comentaba

No creas que es tan dificil, requiere experiencia, pero como todo en la vida. Y como dices, ahora todo el mundo estudia otras areas de la programacion, ennfocandose todo el mundo en lo mismo, y quedan puestos vacios que aun tienen salida laboral


Y si, normalmente somos tipos de mas edad... jeje yo comenze mis primeros aprendizajes informaticos con targetas perforadas y cobol.... ahora ya mucha gente ni sabe lo que es eso
theelf escribió:
Mr.Gray Fox escribió: @theelf son casos puntuales, normalmente los programadores de ese tipo de cosas ya tienen sus buenos 40 y tantos años. Ojo, no le quito ningún mérito, ponerse a hacer cosas en ensamblador a estas alturas es desbloquear un logro en la vida. Pero difícil es de cojones, y por cada un programador que sepa ensamblador hay 40.000 que saben Java/C++/C#. Y las ofertas de trabajo están mayormente para esos lenguajes. De ahí que cobrarles 500€ por una mañana es algo relativamente fácil si es un lenguaje que apenas se usa en la actualidad, como si les quieres pedir la virginidad de sus hijas, si no quieren quedarse en la estacada van a pagar [sati]


Pues no es tan puntual parece, xq me llaman bastante a pesar de que he dicho que estoy retirado, ya que ahora tengo mi empresa, y no me apetece trabajar para cuenta ajena.

Entiendo que uno aprende un lenguaje como algo personal, laboral o una mezcla de ambos. Y visto lo visto, parece q hay trabajo en el area, por eso lo comentaba

No creas que es tan dificil, requiere experiencia, pero como todo en la vida. Y como dices, ahora todo el mundo estudia otras areas de la programacion, ennfocandose todo el mundo en lo mismo, y quedan puestos vacios que aun tienen salida laboral


Y si, normalmente somos tipos de mas edad... jeje yo comenze mis primeros aprendizajes informaticos con targetas perforadas y cobol.... ahora ya mucha gente ni sabe lo que es eso


Totalmente de acuerdo con lo comentado por @theelf , además pienso que si todo el mundo se dedica a profundizar en los mismos temas, tendrás más gente compitiendo en ese campo ¿no?.

Desde luego mi opinión personal es que si te gusta de verdad y tienes capacidad no dudaría en profundizar en Ensamblador.

Un saludo ;)
La discusión entre si aprender ensamblador u otro lenguaje moderno de más alto nivel es un poco tonta. Si te quieres dedicar al desarrollo web sabes de entrada que ensamblador te va a servir de poco y si te gusta la robótica sabes que PHP te va a servir de poco.

Los lenguajes no son el fin, sino la herramienta. Para empezar te vale cualquiera que se use de forma profesional en tu campo.
@Alecs7k ole!

Ser un profesional es exactamente lo que te comenta el compi de arriba. Una vez dominas un lenguaje, el que sea, si el paradigma no cambia, te adaptaras a cualquier otro lenguaje de programación en cuestión de días. Solo tendrás que googlear en busca de sintaxis del nuevo lenguaje y a volar!

Para empezar o java o python (orientados a objetos)
Bueno gente, al final sí que me he decidido por C++. Sé que quizás no sea lo mejor, pero le tengo mucho cariño y es el lenguaje que más me gusta.

¿Cómo se trabaja con C++ en entornos profesionales? Me gustaría ir practicando, pero no sé cómo se usa en trabajos reales. Por ejemplo, Java se usa programando con Android Studio, o con Spring para aplicaciones web... mientras que Java a pelo para sacar programas de escritorio pues es más raro.

¿Qué hace exactamente un programador de C++?

Muchas gracias :)
Uchigatame escribió:Bueno gente, al final sí que me he decidido por C++. Sé que quizás no sea lo mejor, pero le tengo mucho cariño y es el lenguaje que más me gusta.

¿Cómo se trabaja con C++ en entornos profesionales? Me gustaría ir practicando, pero no sé cómo se usa en trabajos reales. Por ejemplo, Java se usa programando con Android Studio, o con Spring para aplicaciones web... mientras que Java a pelo para sacar programas de escritorio pues es más raro.

¿Qué hace exactamente un programador de C++?

Muchas gracias :)

Dependerá de dónde trabajes.
He visto sitios que utilizaban Dev C++, Vi + gcc y Visual Studio. Para qué se utiliza sería difícil de especificar, no es lo mismo trabajar en una empresa que desarrolla software profesional y/o en una empresa de maquinaría industrial (y desarrolla sus programillas para algunos procesos).

En algunas ofertas de desarrolladores de software suelen poner que herramientas utilizan.

Seguro que por EOL tienes más de uno que se dedica profesionalmente en su día a día con C++ y te pueda orientar más adecuadamente.
Uchigatame escribió:¿Qué hace exactamente un programador de C++?



Beber cafe, tratear de escaquearse un poco en el curro, leer revistas del sector, ver porno en el PC, y a dos dias de la fecha de entrega de lo q sea, abre el Visual Studio, el Notepad o lo que le guste para programar y no duerme en 3 dias (porque lo entrega 1 retrasado)

A que te refieres con que hace??
@theelf Me refiero a si se usa más orientado a aplicaciones web, aplicaciones de escritorio, móvil...

Por ejemplo, si preguntara por java, sería algo así como "Ahora mismo se está usando mucho para hacer aplicaciones web, usando Spring, con eclipse o intellij". Algo así. Más que nada por tirar para un sitio u otro.

Yo no puedo decir que sepa de C++. Lo he usado en la carrera desde los printf hasta estructuras de datos, memoria, etc... Pero todo en ventana de comandos, y compilando con g++. No creo que alguien que trabaje de esto programe de esta manera, ya que no le veo demasiada utilidad (que seguro que la tiene, pero es complicado verlo para mi).

Veo que Java se usa para todo (aplicaciones web, programación móvil, etc...), que PHP se usa muchísimo para páginas web, y entiendo para qué se usa Javascript, pero sin embargo no sé C++ cómo es usado por un profesional.

Siento explicarme como el culo, hoy estoy hecho un lío xD. Y muchas gracias por dedicarme un rato, la verdad es que me viene genial para ir tirando.
@Uchigatame

Es que eso lo decide un poco o totalmente tu trabajo, compania, etc

No es lo mismo trabajar en una empresa solo, dirigiendo un grupo, como parte de un grupo, trabajar en tu casa, etc etc

En mi caso, ya casi no trabajo mas de programador, me dedico a otras cosas ahora, pero si que hago trabajos para sega japon, y normalmente es en ordenadores antiguos, PC98 o sharp x68000

Mi trabajo normalmente es todo en consola, no necesito nada grafico para programar/compilar, aunque normalmente es asm, tambien programo en C

A mi lo que me piden es rescatar codigo antiguo de soportes viejos, tipo floppy, zip, datasettes, etc compilarlo, portar codigo...


Si hablamos del programador medio/estandar de hoy en dia, lo normal es usar algun IDE y hacer programacion visual, pero lo que luego haga con el codigo.... sera lo que le pidan

Si te pregunta es "que pide?" pues normalmente no te van a pedir un juegito de mobil en C, te pediran aplicaciones para usos concretos
wxwidget, gtk y qt, son las interfaces graficas que se usan mayoritariamente en pc. yo miraria por ahi, a ver cual te gusta mas para tus programas.
matuanime escribió:wxwidget, gtk y qt, son las interfaces graficas que se usan mayoritariamente en pc. yo miraria por ahi, a ver cual te gusta mas para tus programas.


Pues yo diria mas Win32, Mfc, GDI+, .Net Winforms, .Net WPF y WinRT... como las que se usan mayoritariamente. Supongo que un mac ahora es un PC, asi q ... hace mil anios q no programo en mac... cocoa?

Otra cosa es que digas de las mas usadas multiplataforma
theelf escribió:
matuanime escribió:wxwidget, gtk y qt, son las interfaces graficas que se usan mayoritariamente en pc. yo miraria por ahi, a ver cual te gusta mas para tus programas.


Pues yo diria mas Win32, Mfc, GDI+, .Net Winforms, .Net WPF y WinRT... como las que se usan mayoritariamente. Supongo que un mac ahora es un PC, asi q ... hace mil anios q no programo en mac... cocoa?

Otra cosa es que digas de las mas usadas multiplataforma

por decir, yo veo qt hasta en la sopa ultimamente [+risas]
matuanime escribió:por decir, yo veo qt hasta en la sopa ultimamente [+risas]

Es que Qt rox que te cagas [chulito]
matuanime escribió:por decir, yo veo qt hasta en la sopa ultimamente [+risas]


Si y yo, aunque entiendo que es mas por el tipo de software que uso. Pero si veo el total de aplicaciones de forma global, la GUIs nativa de windows siguen siendo lo mas usado.

Si tuviera que programar para unix, no me quedaria otra que motif que es lo unico que aun recuerdo algo jeje ya me quede desactualizado

Y en windows... solo se usar el visual basic 6 para hacer GUI [+risas] menos mal q aun va bien
theelf escribió:Si tuviera que programar para unix, no me quedaria otra que motif que es lo unico que aun recuerdo algo jeje ya me quede desactualizado

yo diría que si, motif lleva como 6 años sin actualizarse y segun wikipedia ya esta obsoleto [+risas]


edit:
theelf escribió:Y en windows... solo se usar el visual basic 6 para hacer GUI [+risas] menos mal q aun va bien

dale un vistazo a wxwidgets, seguro te es muy util ya que funciona bien hasta en w98.
pero es que qt no es solo para interfaces gráficas, es un framework que facilita la creación de aplicaciones multiplataforma y provee desde la interfaz grafica a conexiones de red, 3d, sdl, bluetooth, bbdd, webkit, websocket

Para aplicaciones web el único framework que conozco es CppCMS

Sobre ides, pues con el que te sientas mas cómodo, la verdad es que no toco c++ desde la uni y ahí con un editor de texto bastaba.

A ver si me toca algún proyecto en el que no tenga que correr, y lo desarrollo en GO, que tengo un par de amigos que me dan bastante mal con él.
@matuanime

Gracias, promesa q le echere vistazo. Igual ya te digo, en windows aun estoy muy contento con el VisualBasic 6, aunque claro,compila para 32bits..... llegara un dia q estare jodido [+risas]

Aunque viendo como esta la mano, al menos me quedan 10 anios o asi de vida..minimos
60 respuestas
1, 2