Mi futuro: la programcion; dudas

Buenas es mi primer mensaje en este gran foro y tengo varias dudas sobre la programación, ya que es lo que quiero estudiar, ingenería de software. Este año terminare 2º de bachillerato, y me gustaría empezar algo sobre la programcion antes de empezar la carrera asi que hay van las preguntas:
1-¿Con que lenguaje me recomendarían empezar? He leído en muchos foros que ciertos lenguajes con VBasic te da malos hábitos de programación así que me gustaría saber con que lenguaje cogería los mejores hábitos.
2-¿Alguien ha estudiado en la Universidad de Almería y sabe con que lenguajen suelen empezar?

Si alguien me puede facilitar enlaces a tutoriales o algún libro para aprender se lo agredecería mucho. :)

PD: No se si he creado el tema en el sitio correcto asi que si no es así, perdonen. [ayay]
Empieza con C, a partir de ahí es fácil pasar a otros lenguajes de programación
No sabes donde te metes [agggtt]
Te recomiendo lo mismo, C o C++. Yo estoy estudiando 1º de grado y damos C++. Soy de Tenerife, pero digo yo que la cosa no cambiará mucho.
C o C++. Y tomatelo con calma.
spcat escribió:No sabes donde te metes [agggtt]


Programación es lo PEOR!

Hay muchísimos lenguajes: C, C++, VB, .net, JavaScript ,Java, Pascal, Ajax, Perl, Phyton, Delphi.. y luego están los de programación web (php,asp,html..) aunque estos son algo más 'facilitos'.
También es indispensable saber SQL.

Mi consejo es que huyas literalmente de todo esto, pero vaya si lo quieres empezar y te gusta, se suele empezar por C y C++. Y si quieres forrarte y tener una mansión en Marbella debes saber Delphi y Phyton.

Suerte, la necesitarás..
¿Huir? ¿Por qué? Si precisamente lo que hace falta es gente con vocación...

Opiniones para empezar vas a tener tantas como personas. Al final el lenguaje de programación es lo de menos, es sólo una herramienta. Tutoriales online de lenguajes como C y recursos vas a tener a petadas, sin más que usar cualquier buscador.

Mi consejo un poco diferente es que empieces con lo que empieces, asegúrate de que pones los medios para llegar a tener un buen nivel de inglés. Créeme, tarde o temprano, te hará falta.
Cualquiera que recomiende no meterse a programar es simplemente porque no le gusta...
Hay muchos lenguajes, pero conociendo bien un par de ellos te desenvuelves sin problemas en los demás. Y tampoco es tan difícil con una buena base.
Recomiendo encarecidamente empezar con C, y aprenderlo bien, desde lo más básico hasta punteros o sockets. Cuando te veas "limitado" con él, pásate a alguno orientado a objetos.

Saludos.
Claro que hace gente con vocación.. ¿Pero porqué? Por que es muuuy difícil, en programación como se te olvide un simple '{' te dan muchísimos errores, y averigua cual es.
Por muchos manuales que haya sigue siendo complicadísimo, por eso se paga tan bien ser programador y por eso hay tan pocos.

Si le gusta y se ve capacitado que lo intente pero que también sepa la verdad, que tendrá que echarle muchas horas solo para solucionar un simple error.
Un error de sintaxis lo solucionará tras el primer intento de compilación, si no se lo avisa el IDE. Los que no son de sintaxis son los que le pueden dar problemas pero para eso están los debuggers.

Programadores los hay a patadas y ése es un buen problema, he visto hasta químicos programando en empresas que nada tienen que ver con lo suyo.

En mi uni los informáticos empiezan con Ada, C y Java, los industriales creo que empezaban con pascal. Si es para aprender algo por tu cuenta, C -> C++ es una buena opción si te metes a fondo, luego hay lenguajes mucho más sencillos (y también más complejos). También puedes meterte en otros paradigmas distintos al estructurado y al orientado a objetos, personalmente siempre me ha gustado la programación funcional aunque sólo he tocado Lisp y Erlang. Para aprender por tu cuenta hay mucho de todo.
Yo en mi universidad empecé con C, seguí con C++ y de ahí Java, SQL y Python. Yo empezaría con C y seguiría con alguno orientado a objetos.
Si que es verdad que la programacion tiene que gustarte.

No se, yo soy electricista y por casualidad empece a estudiar programacion, y ahora me gustaria cambiar de profesion. Conociendo ambos mundillos (aunque menos el de la programacion), reconozco que electricista puede ser cualquiera. Mejor o peor. Pero si te pones, puedes serlo. Ahora, programador, o te gusta, o como dijeron, es un infierno. Es distinto. Si te gusta, lo disfrutaras. Y lo veras como un arte. Pero como no te guste, no creo que llegues muy lejos.
En la UPV hemos empezado con Java, tocando migajas de ensamblador... y vamos hasta con ensamblador me lo he pasado bien. Y por mi cuenta estoy usando C++.


Total, empieza por el lenguaje que te parezca que tiene un nombre más chulo... aunque yo te diría, como muchos aquí, C o C++. (Java es bastante más sencillo para empezar con según que cosas, igual también es buena elección)
Mejor empezar con C o C++, que es mas duro y para coger las bases de programacion, le vendra mejor. Si empieza por uno mas "sencillo" como dices, si luego quiere ponerse con C o C++ se le haria muy cuesta arriba.
Disfrute del verano y de lo que te queda de bach, sólo te digo desde mi experiencia, aunque bueno ahora con bolonia no hay septiembre xD, pero bueno tu aprovecha el time ahora =).

En las ingenierías enseñan al principio a familiarizarte con los algoritmos, no a programar en un lenguaje concreto , al final todos se parecen xD, luego a la larga sufrirás al pasar de iterativo a los algoritmos recursivos , aqui te darás cuenta de que amas la programación o la odias XD, creo que es el punto donde se produce el cambio de opinión , pero puede que no eh. Hay gente a la que le gusta rucarse y darle vueltas al problema y disfruta con ello claro , como todo en la villa del señor =).

No me preocuparía por aprender ahora, porque = vas a familiarizarte con un compilador distinto o con un lenguaje distinto al que te van a enseñar en clase , creo que la finalidad del principio en la carrera no va a saber programar, sino más bien a entender lo que se hace ... que es un concepto muy importante.

Pero si tienes ganas de familiarizarte opino como todo cristo C o C++ son buenas opciones.
Yo tambien pensaba estudiar en un futuro una ingenieria relacionada con la informatica, pero, ¿ cuales son las diferencias entre la ingenieria en software e ingenieria en sistemas? Y si pueden nombrar alguna mas tambien seria de ayuda, gracias.
Si realmente estas interesado, C. Si comprendes y llegas a saber trabajar con todos los "componentes" de C, podras defenderte con casi cualquier otro lenguaje, y tendras una gran base para adaptarte a otros tipos de programacion como orientacion a objetos, etc.

Como dicen, hay lenguajes mas sencillos, pero esconderte ciertas cosas internas y ciertos "porques", tiene cosas buenas, y cosas malas.
Hay gente que dice "odio C, odio la mierda de los punteros". Yo creo son algo que cualquier programador deberia conocer y comprender, aunque luego no lo use a diario en su trabajo.


Por otra parte, tambien puedes empezar por Python, pero corres el riesgo de acomodarte con ciertas facilidades que te ofrece, y luego no querer ir a algo mas bajo nivel... (ver parrafo anterior XD)

Por cierto, se requiere bastante paciencia, e ir paso a paso. No esperes hacer un programon el segundo dia. Lo normal es que tus primeros programas no tengan entorno grafico, y solo saquen algun feo mensaje por pantalla. Tiempo al tiempo.

Scribenici escribió:Por muchos manuales que haya sigue siendo complicadísimo, por eso se paga tan bien ser programador y por eso hay tan pocos.

Sigue siendo "complicadisimo"... para ti, dilo entero. No a todo el mundo se le dan bien las mismas cosas, ni le gustan las mismas cosas. A ti se te daran mejor otras.
Y la programacion no es solo "leer manuales", por cierto.
Bueno muchas gracias a todos por contestar.
Por ahora no voy a hacer mucho por que he pillado la gripe. Pero cuando me recupere emepezaré poco a poco con C.

Saludos
Uno a bajo nivel C (pero ansi C, y sin C++)
Uno orientado a objetos (C++, Java)
HTML, lo acabarás usando sí o sí.

Y si te ves con ganas, uno un poco más freestyle: python

De cara al futuro laboral JAVA es la llave de muchas puertas, y si de verdad te gusta programar te esforzarás por hacerlo bien y huir de los malos hábitos.
No se por qué recomendais tanto C. Yo estoy por ver una oferta de trabajo que lo pida (y tengo la alerta diaria de ofertas de infojobs y tecnoempleo). Vamos, que veo muchas ofertas que piden COBOL pero de C ni una. Conste que no digo que C no se use, pero hoy por hoy no es lo más usado, vaya.
Porque no le estamos recomendando lenguajes para trabajar en 1 mes sino para aprender a programar. Tiene que coger buenos hábitos y saber cómo se hacen las cosas y por qué, después cambiar de un lenguaje a otro será sencillo. Si empieza por cobol lo tiene jodido.
Aparte, la sintaxis de C y la de Java son practicamente la misma.
Si vas a empezar la ingenieria de software antes que c me miraba el temario absurdamente grande de matematicas que te van a meter xD.
pataquias está baneado por "insultos"
una preguntilla.
me gusta la informatica estoy en un nivel mas o menos bajo el tipico que sabe editar viedos hd montar ordenadores repararlos y varias cosas mas y me empeze a meter en paginas mirando cursos de programacion de c o c+ creo que eran y me pico el gusanillo.

no se si hace falta algun tipo de estudios tengo hasta 2 fp2 de electricidad.

se puede llegar a saber programacion con los cursillos que se ven en algunas sitios web.
se que es muy dificil por gente que conozco que lo ha intentado y se ha quedado a medias con profesores en academias .

aunque yo lo que ley lo comprendia bastante todo tambien vi para hacer paginas web y lo vi bastante sencillo.

yo la unica pega que le he visto es que tenga que hechar horas y horas bueno mejor dicho meses.

saludos.
Pues te voy a contestar y espero no desanimarte... en la carrera no se montan pcs ni se editan videos jejeje

En cuanto a programar, lo importante no es aprender C, C++ o java, lo importante es ser capaz de sintetizar el problema y tener un algoritmo que te lo solucione. Con esto que quiero decir, a mi modo de ver, lo que buscan en la facultad es que seas capaz de desenvolverte en cualquier lenguaje o situación (para eso serás un ingeniero) y no solo saber JAVA.

Además la carrera no es sólo programar hay muchisimas cosas a parte de picar código y muchas mates jejeje...

Para el que preguntaba diferencia entre ingenieria de sistemas y de gestión, se supone que el de gestión se especializará en desarrollo de software y el de sistemas en mantenimiento de hardware (servidores y tal). Digo se supone porque yo hice la de sistemas y de optativas hice las demás de gestión (así se las dos cosas :) )

Saludos y espero haberte ayudado!

pataquias escribió:una preguntilla.
me gusta la informatica estoy en un nivel mas o menos bajo el tipico que sabe editar viedos hd montar ordenadores repararlos y varias cosas mas y me empeze a meter en paginas mirando cursos de programacion de c o c+ creo que eran y me pico el gusanillo.

no se si hace falta algun tipo de estudios tengo hasta 2 fp2 de electricidad.

se puede llegar a saber programacion con los cursillos que se ven en algunas sitios web.
se que es muy dificil por gente que conozco que lo ha intentado y se ha quedado a medias con profesores en academias .

aunque yo lo que ley lo comprendia bastante todo tambien vi para hacer paginas web y lo vi bastante sencillo.

yo la unica pega que le he visto es que tenga que hechar horas y horas bueno mejor dicho meses.

saludos.
pataquias está baneado por "insultos"
PLAN 2

ya ya sabia que no es nada de editar viedos me referia al grado en el que estoy.

pero bueno desanimarme no me has deajao kO totalmente ya me puedo dedicar a otra cosa .
gracias
saludos.
pataquias escribió:PLAN 2

ya ya sabia que no es nada de editar viedos me referia al grado en el que estoy.

pero bueno desanimarme no me has deajao kO totalmente ya me puedo dedicar a otra cosa .
gracias
saludos.


Coño tampoco es eso, solo quería que supieras que "te enseñan", eso si, mates y fisica son obligatorias (no se si te ha desanimado esto)
pataquias está baneado por "insultos"
Pla2 escribió:
pataquias escribió:PLAN 2

ya ya sabia que no es nada de editar viedos me referia al grado en el que estoy.

pero bueno desanimarme no me has deajao kO totalmente ya me puedo dedicar a otra cosa .
gracias
saludos.


Coño tampoco es eso, solo quería que supieras que "te enseñan", eso si, mates y fisica son obligatorias (no se si te ha desanimado esto)


ahora mas todavia las mates mal y la fisica solo de pasada.

pero bueno no pasa nada ya que de tiempo voy muy justo y para dedicarme al completo necesitaria bastante tiempo es igual .

saludos y gracias de nuevo por los animos.
Bueno he de decir que yo estoy acabando el ciclo de Grado Superior en Administración de Sistemas Informáticos, y aunque sé que se da mucha menos programación que en el módulo de Desarrollo de Aplicaciones Informáticas, yo en el primer curso dí Java y algo basiquisimo de PHP, y ahora en segundo estoy dando MySQL (lenguaje orientado a bases de datos), ambos en modo comando obviamente. A parte también programe en modo gráfico (que no es programar) bases de datos en Access y PHPMyAdmin.

Lo primero decirte que el lenguaje más complicado de todos los que dí en este ciclo fue Java, más que nada por el tema de arrays y las colecciones.

Segundo, la programación a mí también me gusta, pero llega un punto que puede ser un muro infranqueable, en serio, desespera mucho... lo digo por experiencia propia, y eso que es Java.

Tercero, te recomiendo empezar por Java y Visual Basic, y bueno también podrías probar con MySQL para bases de datos. Y cuando ya tengas algo de control con estos, metete a C o C++ que es igual que Java, sólo que en el lenguaje C hay punteros, y la verdad que es un tema un poco delicado, por lo menos para mí.

La verdad que yo cuando acabe este grado también tenía pensado meterme a esa o a la de tecnologías de la información, per no sé en que se diferencian..

Saludos
Coincido con la mayoría, ponte con C para aprender a programar.
Luego toca también alguno orientado a objetos como C++, Java o incluso C#.
Tampoco estaría de más que te pusieras con SQL y toda la colección web: HTML, CSS, JavaScript, PHP...
BaGuZiD escribió:ingenería de software.


Dato: Ingeniería del software no es ingeniería informática, ni es programación. Si realmente quieres estudiar ingeniería del software y no te has columpiado (que es la impresión que me da a mí), aparte de estudiar los paradigmas de programación más usuales (como orientado a objetos, concurrente, etc.) tienes que estudiar UML, elicitación de requisitos, metodologías de desarrollo de proyectos, técnicas de análisis y validación, etc. Ingeniería del software NO es ser programador, un ingeniero del software diseña y modela lo que los programadores y desarrolladores más tarde implementarán en código siguiendo las especificaciones del ingeniero.

Un saludo.
LLoid escribió:
BaGuZiD escribió:ingenería de software.


Dato: Ingeniería del software no es ingeniería informática, ni es programación. Si realmente quieres estudiar ingeniería del software y no te has columpiado (que es la impresión que me da a mí), aparte de estudiar los paradigmas de programación más usuales (como orientado a objetos, concurrente, etc.) tienes que estudiar UML, elicitación de requisitos, metodologías de desarrollo de proyectos, técnicas de análisis y validación, etc. Ingeniería del software NO es ser programador, un ingeniero del software diseña y modela lo que los programadores y desarrolladores más tarde implementarán en código siguiendo las especificaciones del ingeniero.

Un saludo.


Hola, segun lo que has escrito dices que el ingenerio de software no es el que programa no? Entonces hay va mi pregunta, entonces que habría que estudiar para ser programador?

Un saludo.
Hola BaGuZiD,
te respondo con mi experiencia, en teoria si obtienes la carrera de ingenieria técnica en informática de gestión o la superior o incluso la de sistemas podrías hacer diseño y uml. Luego en la vida real, incluso teniendo la carrera no conozco a nadie que no programe nada, si bien es cierto que un ingeniero diseña y analiza más que un ténico que venga de un módulo que es el que en teoría está por debajo.

Es mi opinión, yo tengo los conocimientos para diseñar pero los primeros años acabas picando... todos mis compañeros de facultad tambien empezaron picando, algunos ahora diseñan, otros siguen picando y otros hacen las dos cosas y luego están 2 o 3 que directamente se han puesto a estudiar para ser funcionarios porque están cansados de picar...
Bueno mira...te habla alguien con mucha experiencia y conocimiento en el área.

Si vas a estudiar ingeniería de sistemas, vas a ver bastante matemática, un poco de física y de electrónica.

también vas a ver lo que te interesa. Algoritmia, programación y programación web.

Creo que sin excepción todos los cursos empiezan con C. aprendes las estructuras de control y ale...ya tienes lo básico. pero antes que nada lo que tienes que aprender es ALGORITMIA, si no eres bueno resolviendo problemas y creando algoritmos...así te den el "mejor lenguaje de programación del mundo" no vas a crear nada....si no puedes pensar y resolver un problema lógicamente retirate...por que no sirves para esto.

un consejo final. mira amigo la lógica NO se enseña....sencillamente si ves que ni a martillazos te entra retirate por que no vas para ningún lado...tu te das cuenta en los primeros cursos....si ves que puedes resolver los problemas que te ponen por medio de algoritmos(no importa para nada el lenguaje) vas muy bien y vas a ser muy bueno en lo tuyo...por que tienes la habilidad mental que se necesita.

Después de que se quede corto el muy viejo y poco amigable C...puedes pasar a un lenguaje de alto nivel como C#...amigo...te lo digo por experiencia...puedo decir que este lenguaje es casi perfecto.

con el puedes crear prácticamente todo. es un lenguaje netamente orientado a objetos pero permite perfectamente la orientación a eventos y programación estructurada o secuencial.

que he hecho yo con el??

Aplicaciones de escritorio con bases de datos
Programas para el hackeo de xbox 360
programas de transmisión de datos(FTP; descarga, Subidas, servers de actualziaciones, chats...etc)
Cracks
Programas de reconocimiento de voz
Autoclickers
Keyloggers
Manejo del sistema desde bajo nivel por medio de apis y wrappers(acceso al mouse y teclado por código)
Programas de visión artificial(reconocimiento de colores, rostros, objetos, caracteres)
Inteligencia artificial(Programas para robots y maquinas inteligentes)
Programas para el envió de Emails y mensajes de texto a celulares

entre otras tantas miles de cosas....he hecho tantas cosas con este lenguaje que ya olvido los detalles.

eso si todo requiere tiempo y todo es un respectivo proceso....no esperes hacer nada de lo que te dije con C apenas empieces...como te dije primero tienes que aprender a pensar, luego a programar y después a investigar y hacer cosas "guais" y realmente útiles como las que te dije.

Salu2!
DarkBoss17 escribió:Tercero, te recomiendo empezar por Java y Visual Basic, y bueno también podrías probar con MySQL para bases de datos. Y cuando ya tengas algo de control con estos, metete a C o C++ que es igual que Java, sólo que en el lenguaje C hay punteros, y la verdad que es un tema un poco delicado, por lo menos para mí.


Eso es empezar la casa por el tejado un poco...aprender a programar en un lenguaje de alto nivel para luego meterse en uno de "bajo" nivel no tiene demasiado sentido, sobre todo cuando el primero de ellos es el que te van a pedir luego al buscar trabajo. Precisamente Java trata de hacer las cosas un poco más fáciles eliminando el concepto de puntero, pero es algo que tienes que comprender, para que luego no te encuentres con "muros infranqueables". Por ejemplo, el concepto de array está íntimamente relacionado con los punteros, y si comprendes estos últimos, no suponen ningún misterio para nada.
Sarggent escribió:Bueno mira...te habla alguien con mucha experiencia y conocimiento en el área.

Si vas a estudiar ingeniería de sistemas, vas a ver bastante matemática, un poco de física y de electrónica.

también vas a ver lo que te interesa. Algoritmia, programación y programación web.

Creo que sin excepción todos los cursos empiezan con C. aprendes las estructuras de control y ale...ya tienes lo básico. pero antes que nada lo que tienes que aprender es ALGORITMIA, si no eres bueno resolviendo problemas y creando algoritmos...así te den el "mejor lenguaje de programación del mundo" no vas a crear nada....si no puedes pensar y resolver un problema lógicamente retirate...por que no sirves para esto.

un consejo final. mira amigo la lógica NO se enseña....sencillamente si ves que ni a martillazos te entra retirate por que no vas para ningún lado...tu te das cuenta en los primeros cursos....si ves que puedes resolver los problemas que te ponen por medio de algoritmos(no importa para nada el lenguaje) vas muy bien y vas a ser muy bueno en lo tuyo...por que tienes la habilidad mental que se necesita.

Después de que se quede corto el muy viejo y poco amigable C...puedes pasar a un lenguaje de alto nivel como C#...amigo...te lo digo por experiencia...puedo decir que este lenguaje es casi perfecto.

con el puedes crear prácticamente todo. es un lenguaje netamente orientado a objetos pero permite perfectamente la orientación a eventos y programación estructurada o secuencial.

que he hecho yo con el??

Aplicaciones de escritorio con bases de datos
Programas para el hackeo de xbox 360
programas de transmisión de datos(FTP; descarga, Subidas, servers de actualziaciones, chats...etc)
Cracks
Programas de reconocimiento de voz
Autoclickers
Keyloggers
Manejo del sistema desde bajo nivel por medio de apis y wrappers(acceso al mouse y teclado por código)
Programas de visión artificial(reconocimiento de colores, rostros, objetos, caracteres)
Inteligencia artificial(Programas para robots y maquinas inteligentes)
Programas para el envió de Emails y mensajes de texto a celulares

entre otras tantas miles de cosas....he hecho tantas cosas con este lenguaje que ya olvido los detalles.

eso si todo requiere tiempo y todo es un respectivo proceso....no esperes hacer nada de lo que te dije con C apenas empieces...como te dije primero tienes que aprender a pensar, luego a programar y después a investigar y hacer cosas "guais" y realmente útiles como las que te dije.

Salu2!



Sí que has hecho cosas para tener 22 años..
Sarggent escribió:Después de que se quede corto el muy viejo y poco amigable C...puedes pasar a un lenguaje de alto nivel como C#...amigo...te lo digo por experiencia...puedo decir que este lenguaje es casi perfecto.

viejo y poco amigable... pasar a C#... oju... con lo bien que iba tu texto hasta estas lineas...

con el puedes crear prácticamente todo.

Con cualquier lenguage general (como C) puedes crear todo. No hay nada que con C# puedas que con C no. Y te ahorras las porquerias que arrastra C# con el.

Cuando quiera hacer interfaces, con algo como C++ y Qt puede hacer de todo muy facilmente, de manera totalmente portable entre plataformas y SO's diferentes, con una integracion altisima, etc.
Por poder, se puede crear todo en ensamblador. Comparar C# y C es absurdo, porque son lenguajes con ámbitos de aplicación y propósitos muy diferentes.
Scribenici escribió:
Sarggent escribió:Bueno mira...te habla alguien con mucha experiencia y conocimiento en el área.

Si vas a estudiar ingeniería de sistemas, vas a ver bastante matemática, un poco de física y de electrónica.

también vas a ver lo que te interesa. Algoritmia, programación y programación web.

Creo que sin excepción todos los cursos empiezan con C. aprendes las estructuras de control y ale...ya tienes lo básico. pero antes que nada lo que tienes que aprender es ALGORITMIA, si no eres bueno resolviendo problemas y creando algoritmos...así te den el "mejor lenguaje de programación del mundo" no vas a crear nada....si no puedes pensar y resolver un problema lógicamente retirate...por que no sirves para esto.

un consejo final. mira amigo la lógica NO se enseña....sencillamente si ves que ni a martillazos te entra retirate por que no vas para ningún lado...tu te das cuenta en los primeros cursos....si ves que puedes resolver los problemas que te ponen por medio de algoritmos(no importa para nada el lenguaje) vas muy bien y vas a ser muy bueno en lo tuyo...por que tienes la habilidad mental que se necesita.

Después de que se quede corto el muy viejo y poco amigable C...puedes pasar a un lenguaje de alto nivel como C#...amigo...te lo digo por experiencia...puedo decir que este lenguaje es casi perfecto.

con el puedes crear prácticamente todo. es un lenguaje netamente orientado a objetos pero permite perfectamente la orientación a eventos y programación estructurada o secuencial.

que he hecho yo con el??

Aplicaciones de escritorio con bases de datos
Programas para el hackeo de xbox 360
programas de transmisión de datos(FTP; descarga, Subidas, servers de actualziaciones, chats...etc)
Cracks
Programas de reconocimiento de voz
Autoclickers
Keyloggers
Manejo del sistema desde bajo nivel por medio de apis y wrappers(acceso al mouse y teclado por código)
Programas de visión artificial(reconocimiento de colores, rostros, objetos, caracteres)
Inteligencia artificial(Programas para robots y maquinas inteligentes)
Programas para el envió de Emails y mensajes de texto a celulares

entre otras tantas miles de cosas....he hecho tantas cosas con este lenguaje que ya olvido los detalles.

eso si todo requiere tiempo y todo es un respectivo proceso....no esperes hacer nada de lo que te dije con C apenas empieces...como te dije primero tienes que aprender a pensar, luego a programar y después a investigar y hacer cosas "guais" y realmente útiles como las que te dije.

Salu2!



Sí que has hecho cosas para tener 22 años..


Pues amigo ya voy a cumplir 23 y empece a programar desde los 13 años...yo creo que antes he hecho muy poco por culpa de otras cosas como la unviersidad, el trabajo y el vicio de los juegos(Hasta los 20 años).

blackmasquerade escribió:Por poder, se puede crear todo en ensamblador. Comparar C# y C es absurdo, porque son lenguajes con ámbitos de aplicación y propósitos muy diferentes.


Amigo no estoy comparando C con C#...creo que leíste muy mal...y obvio tienes razón son dos lenguajes totalmente diferentes y con "miras" muy diferentes.

JanKusanagi escribió:
Sarggent escribió:Después de que se quede corto el muy viejo y poco amigable C...puedes pasar a un lenguaje de alto nivel como C#...amigo...te lo digo por experiencia...puedo decir que este lenguaje es casi perfecto.

viejo y poco amigable... pasar a C#... oju... con lo bien que iba tu texto hasta estas lineas...

con el puedes crear prácticamente todo.

Con cualquier lenguage general (como C) puedes crear todo. No hay nada que con C# puedas que con C no. Y te ahorras las porquerias que arrastra C# con el.

Cuando quiera hacer interfaces, con algo como C++ y Qt puede hacer de todo muy facilmente, de manera totalmente portable entre plataformas y SO's diferentes, con una integracion altisima, etc.


Man...me refería a que C es muy viejo, y no tiene soporte oficial desde el 86. que otras "compañias" y la propia comunidad lo hayan mantenido por su velocidad y grandes pros no significa que un lenguaje no se haga viejo y hasta obsoleto de aquí a un tiempo....por eso salio C++...no por nada se creo.

C tiene las siguientes carencias ya conocidas por todos los programadores:

- Recolección de basura nativa
- Soporte para programación orientada a objetos
- Encapsulación.
- Funciones anidadas
- Polimorfismo en tiempo de código en forma de sobrecarga, sobrecarga de operadores y sólo dispone de un soporte rudimentario para la programación genérica.
- Soporte nativo para programación multihilo y redes de computadores.

Y yo le añado una desventaja enorme respecto a lenguajes como C++ o mi tan amado C# 4.0 NO PERMITE NI DE LEJOS LA PROGRAMACIÓN PARALELA....en que influye esto??...fácil...que no se podrá desarrollar inteligencia artificial ni procesos complejos como los que hacemos los humanos, aparte que no se podrá explotar la programación multinucleo, ni multithread nunca...y sin hablar de las ejecuciones paralelas que menos se podrán llevar a cabo para explotar al 100% todos los núcleos de tu procesador.

quizá algunos no entiendan mi punto de vista....pero el futuro de la computación en general(Incluyendo consolas, computadores, mainframes, clusters, supercomputadortes etc) es la programación o computo paralelo y si hay un lenguaje que no lo soporta..pues sencillamente ya es obsoleto.

Por cierto los que dicen que se puede crear TODO con C deberían informarse un poquito mas...los lenguajes modernos no se crean por capricho...y es OBVIO que traen mejoras y muchas características nuevas....por cierto...un ejemplo: con C no se puede hacer absolutamente nada de esto que mencione en mi anterior post:

- Programas de transmisión de datos(FTP; descarga, Subidas, servers de actualizaciones, chats...etc)

- Programas para el envió de Emails y mensajes de texto a celulares

Muy chungo que a estas alturas de la vida no se pueda hacer eso no??...es casi la vida de algunas personas...XDDDDDDDD

bueno creo que he terminado...todo en buen rollo...si tienen alguna duda o comentario referente a lo que postee bienvenido sea.

Salu2!
BaGuZiD escribió:
LLoid escribió:
BaGuZiD escribió:ingenería de software.


Dato: Ingeniería del software no es ingeniería informática, ni es programación. Si realmente quieres estudiar ingeniería del software y no te has columpiado (que es la impresión que me da a mí), aparte de estudiar los paradigmas de programación más usuales (como orientado a objetos, concurrente, etc.) tienes que estudiar UML, elicitación de requisitos, metodologías de desarrollo de proyectos, técnicas de análisis y validación, etc. Ingeniería del software NO es ser programador, un ingeniero del software diseña y modela lo que los programadores y desarrolladores más tarde implementarán en código siguiendo las especificaciones del ingeniero.

Un saludo.


Hola, segun lo que has escrito dices que el ingenerio de software no es el que programa no? Entonces hay va mi pregunta, entonces que habría que estudiar para ser programador?

Un saludo.


Si sólo quieres ser programador debes hacer un módulo o FP de programación, que son 2 años menos que el grado en ingeniería informática (4 años) y saldrás programando mucho mejor que cualquier ingeniero informático (aparte del ahorro de tiempo y dinero). Como veo que lo tienes bastante claro, te recomiendo el susodicho módulo/FP, ya que además, si posteriormente decides hacer el grado en ingeniería informática, es posible que te convaliden varias asignaturas.

Si sólo quieres ser programador, debes hacer un módulo o FP de programación, que son 2 años menos que el grado en ingeniería informática (4 años) y saldrás programando mucho mejor que cualquier ingeniero informático (aparte del ahorro de tiempo y dinero). Como veo que lo tienes bastante claro, te recomiendo el susodicho módulo/FP, ya que además, si posteriormente decides hacer el grado en ingeniería informática es posible que te convaliden varias asignaturas.


tienes mucha razón..y acá en Colombia peor que son 5 o incluso 6 años.

Salu2!
Sarggent escribió:
JanKusanagi escribió:
con el puedes crear prácticamente todo.

Con cualquier lenguage general (como C) puedes crear todo. No hay nada que con C# puedas que con C no. Y te ahorras las porquerias que arrastra C# con el.

Cuando quiera hacer interfaces, con algo como C++ y Qt puede hacer de todo muy facilmente, de manera totalmente portable entre plataformas y SO's diferentes, con una integracion altisima, etc.


Man...me refería a que C es muy viejo, y no tiene soporte oficial desde el 86. que otras "compañias" y la propia comunidad lo hayan mantenido por su velocidad y grandes pros no significa que un lenguaje no se haga viejo y hasta obsoleto de aquí a un tiempo....por eso salio C++...no por nada se creo.

Claro, C99 es un invento del gobierno...
C++ no salio para sustituir a C, son cosas diferentes, con objetivos diferentes.

C tiene las siguientes carencias ya conocidas por todos los programadores:

- Recolección de basura nativa
- Soporte para programación orientada a objetos
- Encapsulación.
- Funciones anidadas
- Polimorfismo en tiempo de código en forma de sobrecarga, sobrecarga de operadores y sólo dispone de un soporte rudimentario para la programación genérica.
- Soporte nativo para programación multihilo y redes de computadores.

La mitad de eso que mencionas que "le falta", no le "falta". Que tu lo quieras, no implica que le "falte", ni que sea necesario.

Y yo le añado una desventaja enorme respecto a lenguajes como C++ o mi tan amado C# 4.0 NO PERMITE NI DE LEJOS LA PROGRAMACIÓN PARALELA....en que influye esto??...fácil...que no se podrá desarrollar inteligencia artificial ni procesos complejos como los que hacemos los humanos, aparte que no se podrá explotar la programación multinucleo, ni multithread nunca...y sin hablar de las ejecuciones paralelas que menos se podrán llevar a cabo para explotar al 100% todos los núcleos de tu procesador.

Lo dicho, no mientas. C permite todo. Que te resulte mas complicado o menos, o mas a tu gusto o menos, es otro tema. Ahora resultara que no existen programas multihilo o multiproceso en C, claaro claro [qmparto]

Por cierto los que dicen que se puede crear TODO con C deberían informarse un poquito mas...los lenguajes modernos no se crean por capricho...y es OBVIO que traen mejoras y muchas características nuevas....por cierto...un ejemplo: con C no se puede hacer absolutamente nada de esto que mencione en mi anterior post:

- Programas de transmisión de datos(FTP; descarga, Subidas, servers de actualizaciones, chats...etc)

- Programas para el envió de Emails y mensajes de texto a celulares

Muy chungo que a estas alturas de la vida no se pueda hacer eso no??...es casi la vida de algunas personas...XDDDDDDDD

Ay que risa xDDD
Sin animo de ofender, igual deberias informarte tu un poquito... o no lo hagas si no quieres, pero no vayas desinformando a la gente, gracias.
Claro, C99 es un invento del gobierno...
C++ no salio para sustituir a C, son cosas diferentes, con objetivos diferentes.

C tiene las siguientes carencias ya conocidas por todos los programadores:

- Recolección de basura nativa
- Soporte para programación orientada a objetos
- Encapsulación.
- Funciones anidadas
- Polimorfismo en tiempo de código en forma de sobrecarga, sobrecarga de operadores y sólo dispone de un soporte rudimentario para la programación genérica.
- Soporte nativo para programación multihilo y redes de computadores.

La mitad de eso que mencionas que "le falta", no le "falta". Que tu lo quieras, no implica que le "falte", ni que sea necesario.

Y yo le añado una desventaja enorme respecto a lenguajes como C++ o mi tan amado C# 4.0 NO PERMITE NI DE LEJOS LA PROGRAMACIÓN PARALELA....en que influye esto??...fácil...que no se podrá desarrollar inteligencia artificial ni procesos complejos como los que hacemos los humanos, aparte que no se podrá explotar la programación multinucleo, ni multithread nunca...y sin hablar de las ejecuciones paralelas que menos se podrán llevar a cabo para explotar al 100% todos los núcleos de tu procesador.

Lo dicho, no mientas. C permite todo. Que te resulte mas complicado o menos, o mas a tu gusto o menos, es otro tema. Ahora resultara que no existen programas multihilo o multiproceso en C, claaro claro [qmparto]

Por cierto los que dicen que se puede crear TODO con C deberían informarse un poquito mas...los lenguajes modernos no se crean por capricho...y es OBVIO que traen mejoras y muchas características nuevas....por cierto...un ejemplo: con C no se puede hacer absolutamente nada de esto que mencione en mi anterior post:

- Programas de transmisión de datos(FTP; descarga, Subidas, servers de actualizaciones, chats...etc)

- Programas para el envió de Emails y mensajes de texto a celulares

Muy chungo que a estas alturas de la vida no se pueda hacer eso no??...es casi la vida de algunas personas...XDDDDDDDD

Ay que risa xDDD
Sin animo de ofender, igual deberias informarte tu un poquito... o no lo hagas si no quieres, pero no vayas desinformando a la gente, gracias.[/quote]

Amigo yo creo que entonces estamos hablando de C's diferentes...no se si tu programes...pero lo que creo es que ya tienes cierta edad...empezaste y te especializaste en C y ahora no quieres salir de el ni mirar mas allá....y segun tu es el mejor lenguaje de programación que existe por que tu lo dcies(Si no es así te pido disculpas por mi atrevimiento).

y creo que confundiste programación paralela con multihilo...lo que mencione respecto al tema fue solo para ubicar en el contexto....y te repito C NO soporta programación paralela.

así que por favor deja de estarme llamando desinformado...y si puedes hacer correr hasta 100 procesos al MISMO tiempo en C sin importar si tu procesador es de 1,2,4 o 6 núcleos y sin importar threads o cualquier otra tecnica de ejecución...te pido que me pases el código de tu aplicación por que quizá reinventaste el lenguaje y no te diste cuenta.

Salu2!
Primero, no la lies con las citas, queda muy mal...

Sarggent escribió:Amigo yo creo que entonces estamos hablando de C's diferentes...no se si tu programes...pero lo que creo es que ya tienes cierta edad...empezaste y te especializaste en C y ahora no quieres salir de el ni mirar mas allá....y segun tu es el mejor lenguaje de programación que existe por que tu lo dcies(Si no es así te pido disculpas por mi atrevimiento).

Hablamos de C's diferentes, si... yo hablo del real, y tu de uno muy limitado que crees conocer...
Soy mayor que tu, pero te aseguro que C no es ni de lejos el unico lenguaje que conozco. Pero si mientes sobre algo, es logico pensar que la gente te replicara.

y creo que confundiste programación paralela con multihilo...lo que mencione respecto al tema fue solo para ubicar en el contexto....y te repito C NO soporta programación paralela.

Hilos:
http://pubs.opengroup.org/onlinepubs/00 ... reate.html
Procesos:
http://www.csl.mtu.edu/cs4411/www/NOTES ... reate.html
Sarggent escribió:y creo que confundiste programación paralela con multihilo...lo que mencione respecto al tema fue solo para ubicar en el contexto....y te repito C NO soporta programación paralela.


Anda que lo que hay que leer. ¿No has oído nunca hablar de OpenMP? ¿Ni MPI?

Por supuesto que no son construcciones integradas en el lenguaje, sino bibliotecas. Como lo son Parallel LINQ y TPL en el mundo .NET.
No quiero hurgar en la llaga pero que me digas que con C no sé puede hacer un cliente FTP ni programación paralela roza lo absurdo.

En una práctica tuvimos que hacer algo parecido a un servidor y un cliente FTP, y lo hicimos con C. También la asignatura de Programación Paralela la hicimos en parte con C. No es que sea yo especialmente listo, gGTP está escrito en C, y por supuesto soporta FTP, entre otros protocolos.

C no es un lenguaje orientado a objetos ni tiene recolector de basura, bien, que tú necesites eso no significa que el lenguaje no sea capaz de servir para todo.
JanKusanagi escribió:Primero, no la lies con las citas, queda muy mal...

Sarggent escribió:Amigo yo creo que entonces estamos hablando de C's diferentes...no se si tu programes...pero lo que creo es que ya tienes cierta edad...empezaste y te especializaste en C y ahora no quieres salir de el ni mirar mas allá....y segun tu es el mejor lenguaje de programación que existe por que tu lo dcies(Si no es así te pido disculpas por mi atrevimiento).

Hablamos de C's diferentes, si... yo hablo del real, y tu de uno muy limitado que crees conocer...
Soy mayor que tu, pero te aseguro que C no es ni de lejos el unico lenguaje que conozco. Pero si mientes sobre algo, es logico pensar que la gente te replicara.

y creo que confundiste programación paralela con multihilo...lo que mencione respecto al tema fue solo para ubicar en el contexto....y te repito C NO soporta programación paralela.

Hilos:
http://pubs.opengroup.org/onlinepubs/00 ... reate.html
Procesos:
http://www.csl.mtu.edu/cs4411/www/NOTES ... reate.html


Volviste a confundir multithread con programación paralela.

blackmasquerade escribió:
Sarggent escribió:y creo que confundiste programación paralela con multihilo...lo que mencione respecto al tema fue solo para ubicar en el contexto....y te repito C NO soporta programación paralela.


Anda que lo que hay que leer. ¿No has oído nunca hablar de OpenMP? ¿Ni MPI?

Por supuesto que no son construcciones integradas en el lenguaje, sino bibliotecas. Como lo son Parallel LINQ y TPL en el mundo .NET.


Amigo...claro que los conozco sobre todo el OpenMP...pero es que yo estoy hablando de lo que ofrece el lenguaje de forma NATIVA...por favor ya dejen de tirarse a mi cuello como tigres que no estoy diciendo nada que no sea verdad.

y estas un poquito equivocado en lo que en .NET lo de paralelismo va en las librerias...para nada...en C# y C++ CLI estos los soporta directamente el lenguaje...solo estos dos lenguajes son capaces de ofrecer esta forma de programación....si lo que tu dices fuera cierto...F#,VB Y J# ofrecerian lo mismo por estar utilizando los ensamblados de .NET y por venir en la suite de visual estudio todos juntos y NO es asi...oki??

amuchamu escribió:No quiero hurgar en la llaga pero que me digas que con C no sé puede hacer un cliente FTP ni programación paralela roza lo absurdo.

En una práctica tuvimos que hacer algo parecido a un servidor y un cliente FTP, y lo hicimos con C. También la asignatura de Programación Paralela la hicimos en parte con C. No es que sea yo especialmente listo, gGTP está escrito en C, y por supuesto soporta FTP, entre otros protocolos.

C no es un lenguaje orientado a objetos ni tiene recolector de basura, bien, que tú necesites eso no significa que el lenguaje no sea capaz de servir para todo.


Amigo...se puede desarrollar en C obvio pero con librerias externas, pero es que yo estoy hablando de lo que ofrece el lenguaje de forma NATIVA...por favor ya dejen de tirarse a mi cuello como tigres que no estoy diciendo nada que no sea verdad.

Salu2!
Ante todo, sin malos rollos XD

Sarggent escribió:Volviste a confundir multithread con programación paralela.


Si quiero hacer programación multiproceso de forma nativa, fork(), si quiero hacer multihilo pthread(), si quiero algo más con un poco más de abstracción: PVM, MPI, OpenMP.

Que yo sepa, la programación paralela es básicamente multiproceso y/o multihilo, si no explica a qué te refieres.

amuchamu escribió:No quiero hurgar en la llaga pero que me digas que con C no sé puede hacer un cliente FTP ni programación paralela roza lo absurdo.


No lo roza, lo sobrepasa de largo [carcajad], casi todas mis prácticas de redes han sido en C (otras en python y java). De hecho, para hacer un servidor, normalmente lo hacíamos multiproceso para que pudiese atender múltiples peticiones simultáneas.

Sarggent escribió:Y yo le añado una desventaja enorme respecto a lenguajes como C++ o mi tan amado C# 4.0 NO PERMITE NI DE LEJOS LA PROGRAMACIÓN PARALELA....en que influye esto??...fácil...que no se podrá desarrollar inteligencia artificial ni procesos complejos como los que hacemos los humanos, aparte que no se podrá explotar la programación multinucleo, ni multithread nunca...y sin hablar de las ejecuciones paralelas que menos se podrán llevar a cabo para explotar al 100% todos los núcleos de tu procesador.


Para un trabajo de ampliación el año pasado, paralelicé AES con C y OpenMP de modo que casi cuadruplicaba el rendimiento con un Quad. Te puedo asegurar que los núcleos los explotaba que daba gusto, y si no me crees, siempre puedes ver el código y compilarlo:
https://github.com/mpedrero/aesth

(Antes de que me digas que está en C++ mira el contenido de los archivos porque de C++ tiene la extensión mas que otra cosa)

Que conste que no pongo en duda que haya o pueda haber mejores alternativas a C para según que cosas, pero de ahí a decir las barbaridades que estoy leyendo va un trecho...
Yo también hice la famosa práctica del cliente-servidor FTP en C. Ni siquiera era complicada.
Todo se puede hacer con C, absolutamente todo, y en general, con un mejor desempeño. Eso sí, para muchas cosas vas a necesitar cientos de líneas más que en un lenguaje que te proporcione una mayor abstracción.
Sarggent escribió:


Volviste a confundir multithread con programación paralela.

No, yo no he confundido nada. Tu has vuelto a ignorar lo que te ha interesado.
54 respuestas
1, 2