PDA

View Full Version : Inicio a la programación



Ficher
November 19th, 2007, 11:19 PM
Hola, antes que nada me presento me llamo Federico y resulta que quiero aprender a programar se que es difícil pero no importa. Según he estado investigando es un tema de mucho debate porque algunos dicen:

Que empiece con algoritmos.
Que empiece directamente con un lenguaje de programación ( y ninguno se pone de acuerdo en cual).

¿Ustedes que me recomiendan? ¿Algún libro o link para empezar?.

Desde ya muchísimas gracias.

Fikcio
November 20th, 2007, 12:15 AM
¿Lenguaje? Python (http://www.python.org/). Y no conozco mejor introducción a la programación que ésta (http://www.freenetpages.co.uk/hp/alan.gauld/spanish/tutcont.htm) por Alan Gauld (a no preocuparse, que está en español), en que convenientemente usa Python (y Basic y TCL).

Éxitos.

clasificado
November 20th, 2007, 12:51 AM
Python.

y como segundo lenguaje: C#

No sera la excelencia en lenguaje, ni en etica, ni en consumo de recursos.

Pero los cambios que hay para el desarrollo en C# para windows no es tan grande.

De hecho, si vas a programar web, C# es 98% igual

Pero no dejes que el arbol te tape el bosque: dije Python

Clasificado

PD: Cada vez que dije C# va acompañado de MONO, que es la implementacion del Framework .net, para linux

xpelaox
November 20th, 2007, 01:15 AM
Bue, yo creo que en realidad depende de lo que quieras programar, pero a mi en la facu(estudio ingenieria) primero me enseñaron C#/C++ , despues en Intro redes, me enseñaron PhP que es MUY parecido a C# solo que tambien se mezcla un poquito con HTML, pero no es nada tragico xD

Saludos!

p.d: Si tenes la posibiilidad te recomiendo que te metas en algun curso o algo asi es lo mas rapido y util, a mi parecer, igual en internet hay muchisimo material.

faktorqm
November 20th, 2007, 12:37 PM
python y c#? vos queres ganar 5000 pesos por mes, no tenes ganas de programar de verdad..................... jajajajajajjaj :P :P

hablando en serio, empezar podes empezar en lo quieras, algunas cosas son mas faciles, otras mas dificiles, cada uno te recomienda algo distinto.
yo por ejemplo empece con quick basic :o, segui con visual basic, abandone rapidamente y pase a C. vi algo de C++ pero no puedo decir que se programar en eso. y ASM un poco para 8086 y otro poco para micros (soy tecnico en electronica) pero la onda es saber el algoritmo.

salu2!

eldragon
November 20th, 2007, 01:01 PM
Si nunca programaste en la vida. agarrarle la mano a la implementacion de algoritmos puede costarte un poco.

Antes deberias de hacerte la cabeza de como es el tema de la programacion.

para esto, ansi C y una terminal en linux deberia de sobrarte. siempre en la mano el libro de kernighan y ritchie (o como se escriban). es un libro manual de ayuda (digamos, la guia T de la programacion en C).

tzulberti
November 20th, 2007, 01:35 PM
La verdad es que no se si empezaria por C/C++. Me gusta python porque es casi lo que uno piensa, y se aprende rapido. El problema es que casi todos los libros que lei sobre el tema lo orientan a trabajar con objectos, y no se si eso esta bueno para empezar.

No importa que clase de programa quieras hacer (para servidores, de computadoras normales, etc..) lo mas importante siempre es el tema de la cabeza, es decir, una vez que sabes programar pasarte de un lenguaje a otro no te toma mas que un par de dias hasta aprenderte los nuevos trucos....

En resumen: empezaria viendo Python, y luego pasaria a C/C++ para ver el tema de la memoria dinamica (punteros).

niko_3100
November 20th, 2007, 01:39 PM
Muchos dicen c o c++ pero la verdad que son lenguajes dificiles para empezar. Yo creo que deberias empezar tal ves con java o c#, no digo que sean los mejores ni los mas faciles, pero los nombres de los metodos son bastante intuitivos y mas que nada vas a encontrar tutos, ejemplos y codigo fuente a rolete por la web. Te podes leer un libro tambien del lenguaje que vas a empezar pero vas a ver que no basta con leer el libro y ver lo ejemplos del libro tenes que meter mano en la compu para darte cuenta y asimilar lo que dice el libro con lo que hace realmente en una pc. Mas alla de programar tambien tendrias que leer un poco de introduccion a las pc, que es un cpu qe funcion cumple, que es la memoria ram su funcion, que diferencia hay con la rom etc etc... OJO una leida para tener en cuenta, despues eso vas a asimilarlo tal ves para hacer un programa que ocupe menos recursos del sistema y sea mas liviano. Es muy amplio y empezar cuesta horrores.

faktorqm
November 20th, 2007, 03:49 PM
yo haria lo que dice tomas, pero al reves. primero C, python, ultimo memoria dinamica y punteros a funcion.

todos esos lenguajes derivados de C, como java, php, ni te gastes, si aprendes bien ansi C, ya tenes aprendido todo lo otro.

c# olvidate, muy pesado. y no aprendes nada (para mi)

tzulberti
November 20th, 2007, 04:05 PM
El problema de empezar con C/C++ es que nadie entiende los errores del compilador...

Di cuando estas definiendo una clase te falto el ; al final de la misma no te vas a dar cuenta hasta que realmente pase mucho tiempo... Por el otro lado esta bueno el hecho de que sea fuertemente tipeado porque al principio eso te ayuda... Lo que hace que aparezca una tercera recomendacion de mi parte: Java. Ojo: esta bueno para aprender a trabajar con el: los errores no son tan feos comos los de C++, y tampoco es tan light como Python.

Sin embargo, cuando empezas a trabajar con el lo odias (por lo menos yo lo odio y trabajo con el 6 horas por dia), y te decis a vos mismo "porque no hacemos esto en Python. "

De C# o .net no puedo decir nada porque nunca lei nada sobre esos lenguajes.

faktorqm
November 20th, 2007, 04:14 PM
JAJAJA sos un grosso tomas! me hiciste c***r de risa. no es "tipeado" es "tipado" JAJAJAJAJAJA (se refiere a los tipos de las variables, si es un caracter o un numero por ejemplo) programas en java?

eso es verdad, al principio saber si es un error del linkeador, del compilador, o de otra cosa es imposible. para evitar eso (asi aprendi yo) con un libro de esos de 20 pesos en los kioscos de diarios viste? me lo compre, y te va llevando, vas copiando los ejemplos del libro, te explica todo, entonces despues si la deliras vos como queres. salu2!

Kasa.Ramone
November 20th, 2007, 04:23 PM
Es depende de tu perseverancia, si al encontrarte con un minimo problema te cerras y dejas todo entonces te recomiendo empezar con algo sencillo como Pascal o Basic. (podes usar Free pascal y RealBasic en linux)
Si sos mas del tipo de persona que hasta que no le sale algo no para, podes empezar con algo como C/C++,Python que es un poco mas complejo.
Lo importante en programacion es que aprendas algoritmos, es decir que aprendas los conceptos, las estructuras,los paradigmas.Todo lo demas esta en vos ya que es pura logica.

Saludos.

Hernán-Amaya
November 20th, 2007, 04:25 PM
Yo aprendí a programar en ansi C, te recomiendo que empieces por ahí otra alternativa es PASCAL es con lo que empiezan en la Facultad de Ingeniería en la UBA para que aprendas bien el tema de la programación estructurada, pero ojo no te metas con punteros ni memoria dinámica, y despues para cambiar de paradigma yo te recomiendo python que es como escribir pseudo código en inglés.

por el tema de libros de algoritmos hay uno que es muy piola de Niklaus Wirth que se llama Algoritmos + Estructuras de Datos = Programas

otro libro es La Práctica de la Programación de Kernighan y Pike

cualquier cosita que necesites de apuntes sobre c o pascal mandame un privado

suerte!

tzulberti
November 20th, 2007, 04:27 PM
JAJAJA sos un grosso tomas! me hiciste c***r de risa. no es "tipeado" es "tipado" JAJAJAJAJAJA (se refiere a los tipos de las variables, si es un caracter o un numero por ejemplo)

Las letras no son lo mio...



programas en java?


La verdad es que me gano la vida programando en Java. Pero para trabajar en serio no me gusta... Desde mi punto de vista SUN agarro C++, le hizo 200000 cosas malas, y despues hizo una Virtual Machine que al menos que tengas un P4 se arrastre...
De todas las cosas que le hicieron lo unico que esta bueno son los errores del compilador/linker y que meneje mas Exceptions que C++

Hei Ku
November 21st, 2007, 12:07 AM
Mi experiencia es que depende adonde apuntes. Si queres aprender a programar en serio, empeza por C/C++. Es mas dificil al principio, pero aprendes a programar bien.

Si lo tenes como hobby, agarra el que este de moda, que vas a tener un monton de ejemplos, y podes sacar las cosas de ahi.

Y despues tene en cuenta tres cosas:
- pensa siempre en reutilizar codigo. ("roba" de donde puedas, incluso de vos mismo)
- la regla de KISS (Keep it simple, stupid!) :D
- el mejor programador es el mas vago. Ese que quiere hacer las cosas una sola vez y despues no tener que volver a verlas nunca mas. ;)

tzulberti
November 21st, 2007, 02:02 AM
Mi experiencia es que depende adonde apuntes. Si queres aprender a programar en serio, empeza por C/C++. Es mas dificil al principio, pero aprendes a programar bien.


Cualquier cosa sobre los errores nos podes preguntar sin problemas... Lo que si: tene en cuenta que C/C++ es case-sensitive. Cuando empeze con C++ venia de pascal y tarde bastante en darme cuenta que se distinguian las mayusculas de las minusculas.




Si lo tenes como hobby, agarra el que este de moda, que vas a tener un monton de ejemplos, y podes sacar las cosas de ahi.


Esto siempre esta claro... Es decir, si queres empezar a programar profesionalmente ya, no te recomiendo empezar con python, sino que con alguna otra cosa mas conocida.

faktorqm
November 21st, 2007, 01:19 PM
La verdad es que me gano la vida programando en Java. La verdad es que para trabajar en serio no me gusta... Desde mi punto de vista SUN agarro C++, le hizo 200000 cosas malas, y despues hizo una Virtual Machine que al menos que tengas un P4 se arrastre...
De todas las cosas que le hicieron lo unico que esta bueno son los errores del compilador/linker y que meneje mas Exceptions que C++

jo! me parece barbaro que vivas de eso. a mi java no me gusta, por dos motivos basicos para mi, que no hay punteros, y el tema del garbage collector (y ni hablar si usa el metodo de corte y copia). salu2!

rretamar
November 22nd, 2007, 04:21 AM
Object Pascal

Es un lenguaje muy potente, es compilado (y por lo tanto muy veloz) con una sintaxis muy amigable y muy fácil de aprender. Hay muchas librerías para hacer lo que se te ocurra. Es usado por herramientas privativas como Borland Delphi. Soporta el paradigma de orientación a objetos casi por completo, aunque se puede también programar en forma "procedural". Para darnos una idea de la potencia, puede rivalizar perfectamente con C++ .

Existe un muy buen compilador libre (Free Pascal). Es multiplataforma: funciona en Linux, Windows, Mac, etc. Y está en desarrollo (aún en beta) un entorno RAD llamado Lazarus.
para desarrollar aplicaciones "a lo Delphi".

No sólo se utiliza para PCs, sino que existen compiladores de Pascal para programación de microcontroladores, por ejemplo la línea PIC de Microchip.

Los enlaces:

Free Pascal: http://www.freepascal.org

Proyecto Lazarus: http://www.lazarus.freepascal.org

Club Delphi (la mayor comunidad de habla hispana): http://www.clubdelphi.com

Saludetes !

Alejandro Vidal
November 22nd, 2007, 02:55 PM
Buenas,
Creo que nadie mencionó php.
¿Qué opinión les merece?
Saludos.

margori
November 22nd, 2007, 04:11 PM
Uf. Por suerte no soy el unico que solo programa en Pascal. Lo he usado desde mis inicios y la verdad podes todo, con su correspondiente estabilidad y potencia.

Aguante Pascal!

Fikcio
November 22nd, 2007, 11:41 PM
¡Pascal! Es verdad... El lenguaje propedéutico por excelencia, dicen.

Hei Ku
November 23rd, 2007, 01:29 AM
Buenas,
Creo que nadie mencionó php.
¿Qué opinión les merece?
Saludos.

No tengo experiencia directa con php, pero por el codigo que vi, y mi experiencia con programadores que empezaron con php, no es lo ideal. Parecen mas hacks que algo ordenado, y por lo que se te permite hacer demasiadas ******* como para que sea bueno empezar a programar en ese lenguaje. Por supuesto que es rapido para sacar algo andando y lo usa mucha gente, esto es solo mi impresion personal.

faktorqm
November 23rd, 2007, 12:27 PM
que bien, veo que salto otra vez la famosisima discusion pascal vs c jajajaj

obvio que no voy a perder tiempo en discutir, pero para empezar a programar pascal o c son 2 buenas opciones, muy buenas, yo particularmente tuve la suerte de arrancar con C desde los 16 años.... y nunca vi pascal (por suerte), en la facu tampoco. Tanto para pascal como para C tenes 1500000 foros y tutoriales y manuales y compiladores, asi que tranquilo que vas a ir bien. Es mas, para que veas que aprender a programar NO es aprender un lenguaje, te invito a que programes en los dos, pero de a uno, eso si.
Vas a encontrar en la web miles de chabones que se matan discutiendo ventajas y desventajas entre pascal y C, lo cual esta re bueno para conocer mas sobre cada lenguaje, y yo llegue a la conclusion de que depende para que lo vas a usar, es mejor uno u otro. C no es mejor que pascal y pascal no es mejor que C, son distintos y listo.
Lo que si me hizo reir mucho una vez que estaba leyendo sobre esto es uno que agarro y dijo: "Con C/C++ hicieron un sistema operativo, con pascal que hicieron?" y los de pascal nadie decia nada..... cri cri jajaja

bueno salu2!!

Alejandro Vidal
November 23rd, 2007, 01:58 PM
Me picó la curiosidad y estoy siguiendo un tutorial de python al que llegué desde el site de ellos. http://swaroopch.info/text/Byte_of_Python:Main_Page
Me parece muy interesante y puedo dedicarle una hora diaria en la oficina bajo windows y otra en mi casa con linux.
Como editor de texto en linux estoy usando vim.
Leí que toma la sintaxis de python pero no tengo idea de como activarla.
Leí en algún lugar que era simplemente con :syntax on pero me dice que no es una orden compatible con la versión del vim del ubuntu 7.10.
¿alguna sugerencia?

Saludos.

rbarbe
November 23rd, 2007, 03:44 PM
En la uni estudiamos Pascal y C++, y te puedo decir que los dos son muy buenos.

Pero me quedo con Pascal, la última herramienta que usé fue el Delphi 6, hace rato que no programo nada pero entonces me pareció muy intuitivo y fácil de usar. En ese entonces era la única herramienta de desarrollo no M$ que teníamos...

No tengo idea como será con Linux, pero el lenguaje es relativamente fácil de aprender.

Saludos

margori
November 23rd, 2007, 09:26 PM
"Con C/C++ hicieron un sistema operativo, con pascal que hicieron?" y los de pascal nadie decia nada..... cri cri jajaja

Esto me desperto curiosidad y busque programas se han hecho en Pascal o Delphi (Que es lo mismo al fin y al cabo). Encontre esta pagina que esta excelente Good Quality Applications (http://delphi.wikia.com/index.php/Good_Quality_Applications_Built_With_Delphi).

Personalmente me sorprendio que encontre en esa lista nombres tales como Skype, Vista Boot Manager, The Bat!, Ares Galaxy, etc., etc.

Parece que Pascal solo tiene perfil bajo, pero igual la clava en el angulo cuando la tiene que clavar.

Los programas tracienden por la idea, no por el lenguaje en el que fueron escritos.

marianom
November 23rd, 2007, 09:46 PM
Leí en algún lugar que era simplemente con :syntax on pero me dice que no es una orden compatible con la versión del vim del ubuntu 7.10.
¿alguna sugerencia?

En tu home, asegurate de tener la carpeta oculta .vim, dentro de la misma asegurate de tener una carpeta llamada syntax.
Dentro de esa carpeta descarga el siguiente archivo (http://www.hlabs.spb.ru/vim/python.vim).
Listo.
Reiniciá vim con un archivo .py e ingresá :syntax on y lo vas a tener funcionando.

Si querés que siempre inicie vim con las sintaxis por defecto y con algunos hacks más que son los recomendados por la guía de estilo de python (tabs reemplazados por 4 espacios, etc), creá un archivo llamado .vimrc en tu home y agregale este contenido:


syntax on
set tabstop=4
set shiftwidth=4
set expandtab
set number
match errorMsg /[^\t]\zs\t\+/


Con eso debería andar más que bien. Más dudas con vim, no tenés más que avisar.

marianom
November 23rd, 2007, 10:01 PM
Otro comentario: saber programar en python no es solo sobre las estructuras sino también utilizar un estilo muy estricto cuando se hace (y nunca cuestionar a Guido es parte del trabajo también). Acá (http://www.python.org/doc/essays/styleguide.html) está la guía de estilo que mencionaba en mi post anterior.

Alejandro Vidal
November 23rd, 2007, 11:38 PM
En tu home, asegurate de tener la carpeta oculta .vim, dentro de la misma asegurate de tener una carpeta llamada syntax.
Dentro de esa carpeta descarga el siguiente archivo (http://www.hlabs.spb.ru/vim/python.vim).
Listo.
Reiniciá vim con un archivo .py e ingresá :syntax on y lo vas a tener funcionando.


Seguí tus instrucciones pero se ve que hay algo mal porque recibo el siguente error dentro del vim cuándo pongo :syntax on

E319: Sorry, the command is not available in this version

Te comento que cree la carpeta /.vim/syntax primero dentro de la /home/alejandro y luego dentro de /home y siempre tuve el mismo resultado.
¿Qué será lo que estoy haciendo mal?
¿Las carpetas esas no deberían existir previamente?
Aclaro que el vim ya estaba instalado en mi ubuntu 7.10.
¿Alguna otra sugerencia?
Gracias!

marianom
November 24th, 2007, 12:00 AM
Che, le estamos arruinando el thread al poster original.

Hagamos esto:
abrí un nuevo thread con la salida de los siguientes comandos:


vim --version
y

sudo aptitude search vim

y vamos viendo que pasa. Yo estoy en feisty con el vim que viene en los repos y anda de maravillas (supongo que el tuyo está compilado sin syntax pero vamos a ver).

rretamar
November 24th, 2007, 12:18 AM
Esto me desperto curiosidad y busque programas se han hecho en Pascal o Delphi (Que es lo mismo al fin y al cabo). Encontre esta pagina que esta excelente Good Quality Applications (http://delphi.wikia.com/index.php/Good_Quality_Applications_Built_With_Delphi).

Personalmente me sorprendio que encontre en esa lista nombres tales como Skype, Vista Boot Manager, The Bat!, Ares Galaxy, etc., etc.

Agrego a la lista tres programas desarrollados con Object Pascal que no son moco de pavo:

* El entorno RAD Delphi está hecho en Object Pascal (con el mismo Delphi).

* La suite Altium Designer (una suite/CAD para diseño electrónico muy avanzada. Incorpora herramientas para dibujo de esquemas, diseño de placas -el conocido "Protel"-, simulación, etc).

* El compilador Mikropascal (un compilador de Pascal para microcontroladores Pic -Microchip-) está hecho con Delphi.

Entiendo que están muy de moda los lenguajes interpretados (quién iba a decirlo hace 15 años...), pero para muchas tareas lo más adecuado son los compiladores de toda la vida. Y Pascal sigue vivo.

Saludetes ! :)

Alejandro Vidal
November 24th, 2007, 03:21 AM
Che, le estamos arruinando el thread al poster original.

Perdón por arruinar el post :(
De todas formas agradezco porque el problema esta resuelto.
Al parecer viene instalada la versión vim-tiny.
Todo lo que hice fue instalar el vim-full siguiendo las instrucciones del siguiente post:
http://ubuntuforums.org/showthread.php?t=306855
Voy a seguir tus consejos en lo que respecta al estilo.
Saludos.
Alejandro.:)

faktorqm
November 26th, 2007, 01:16 PM
estuve leyendo en la wikipedia acerca de c y de pascal, y creo que todo el problema surge de que dice que C lo inventaron para poder crear sistemas operativos, y por eso su solvencia. pascal lo invento un matematico para enseñar programacion a sus alumnos, lo que no quita obviamente que sea igual de bueno. personalmente, utilizar un lenguaje de programacion de medio/bajo nivel siempre es mejor, aunke este mas propenso a errores, y utilizar un lenguaje que esta diseñado para sistemas operativos para implementar aplicaciones "de entre casa" me parece mucho mas atractivo que usar uno que no.

De todas maneras, lamento comunicarles que nos estamos quedando viejos, la movida ahora es python y otro mas que anda por ahi. y vi cosas demasiado alucinantes en python como para abandonar c para siempre jajaja (como por ejemplo parchear un programa en tiempo de ejecucion y cambiar las funciones)

para los curiosos: busquen en wikipedia c y pascal, la historia de c esta muy buena, los tipos querian jugar a un juego con una "compu" y ... terminaron creando c. parece imposible no? lean la historia!
salu2!

p.d.: ¿pascal tiene punteros?

Hernán-Amaya
November 26th, 2007, 02:04 PM
y el que inicio el post, ficher si mal no recuerdo, que paso? por donde vas a empezar, ya tomaste una decisión o te abrumamos con las respuestas?



para los curiosos: busquen en wikipedia c y pascal, la historia de c esta muy buena, los tipos querian jugar a un juego con una "compu" y ... terminaron creando c. parece imposible no? lean la historia!
salu2!

p.d.: ¿pascal tiene punteros?


la historia real de como desarrollaron el lenguaje es muy buena igual hay muchos mitos e historias paralelas

y a tu pregunta si pascal maneja punteros



var
punteroEntero : ^integer; // declaro el puntero
pEntero : ^integer; // declaro el puntero
entero: integer;
begin
new(punteroEntero); // asigna la memoria dinamica que va usar el puntero
punterEntero^ : = 5; // modifico a lo que apunta el puntero;
entero := 45;
pEntero := @entero;
end.


alguno que programe en Pascal que me corrija por favor estoy muy muy oxidado hace unos cuantos años que no escribía una linea en Pascal

suerte

Ficher
November 27th, 2007, 10:36 PM
Perdonen estaba sin tiempo. No me arruinaron el post en absoluto.

¿La decision que elegi? Por ahora ninguna jeje, estoy entre:

Object Pascal, Python y Ruby.

Por parte de Ruby me parece que es el que estoy por elegir estoy por comprarme el libro "Learn to Program" de Chris Pine.
En python "Beginning Python From Novice To Professional".
Y Object Pascal me intereso, segun lei es la evolucion de Pascal, necesito primer aprender Pascal para Object Pascal?. ¿Algun libro o link? (No importa el idioma)

Che y sigo escuchando consejos y por ahi lei que dicen que no conviene aprender con un lenguaje orientado a objetos y segun estube leyendo, Ruby, Python, y Object Pascal son orientados a objetos :S.

Cuando me respondan esta duda y me den algun libro o link de Object Pascal o otro libro o link de Python. Vere cual elegir. Desde ya muchisimas gracias.

PD: Ya se que el lenguaje de programacion no es importante, lo que mas estoy buscando en un libro que explique bien los conceptos de programacion con un lenguaje de programacion nombrado arriba.

vk-cdg
November 27th, 2007, 11:03 PM
Quien dice que no conviene un lenguaje orientado a objetos y por que?
Hoy se está tendiendo a trabajar con metodologías (Proceso unificado por ejemplo) y todas se apoyan sobre un lenguaje orientado a objetos.

Por otro lado, la mayoría del mercado apunta a .net, java o php en la actualidad (hablando del mercado comercial).

Depende de para que quieras vos aprender un lenguaje de programación. Si es para trabajar, buscá algo que tenga salida laboral.

Ficher
November 27th, 2007, 11:06 PM
Quien dice que no conviene un lenguaje orientado a objetos y por que?
Hoy se está tendiendo a trabajar con metodologías (Proceso unificado por ejemplo) y todas se apoyan sobre un lenguaje orientado a objetos.

Por otro lado, la mayoría del mercado apunta a .net, java o php en la actualidad (hablando del mercado comercial).

Depende de para que quieras vos aprender un lenguaje de programación. Si es para trabajar, buscá algo que tenga salida laboral.

Gracias por aclararme la duda, no es para trabajar, seria como un hobbie.

vk-cdg
November 28th, 2007, 03:57 PM
Si es como hobbie tenés que fijarte sobre que querés apoyarlo, si sobre Linux, sobre web o sobre MS.

Yo en lo particular me inclino por lo web, algo que está creciendo mucho, que permite ser visto desde cualquier plataforma y que si te tirás para el lado free tenés php o java.

Montsegur87
November 28th, 2007, 04:24 PM
C++ para empezar porque podes usar paradigma procedural u objetos.

Despues Java , paga mejor que .NET

rretamar
November 28th, 2007, 05:55 PM
que bien, veo que salto otra vez la famosisima discusion pascal vs c jajajaj

Como las de KDE versus Gnome.

O Gimp versus Photoshop.

Son todo un clásico, y no hay foro, canal de IRC o Blog donde no aparezcan.

:cool:

vk-cdg
November 28th, 2007, 07:04 PM
C++ para empezar porque podes usar paradigma procedural u objetos.

Despues Java , paga mejor que .NET

Es cierto, paga mejor porque no hay tantos. En varias búsquedas internas aparece catalogado como "la figurita dificil"

Hernán-Amaya
November 28th, 2007, 11:07 PM
si empezas con python hay info a pasto en internet yo estoy aprendiendo y la verdad es muy piola, te dejo unos links no se si ya te los habián pasado:

www.diveintopython.org/
www.python.org
www.python.com.ar/

y para hacer GUI te recomiendo pythoncard

http://pythoncard.sourceforge.net/

suerte

Hei Ku
November 29th, 2007, 01:47 AM
Es cierto, paga mejor porque no hay tantos. En varias búsquedas internas aparece catalogado como "la figurita dificil"

Somos gente cotizada :lolflag:

Pero no tiene sentido usar JEE para cosas chicas. En ese caso yo me inclinaria por php, o python.

vk-cdg
November 29th, 2007, 01:13 PM
Yo recién estoy empezando en la facu. Vi Pascal, C++, .NET y ahora Java.

Veremos con cual me quedo para salir a ganarme el mango. Java me gusta bastante.
Con PHP tengo una asignatura pendiente, pero será después de las vacaciones, ya recibido de Analista de Sistemas

faktorqm
November 29th, 2007, 02:57 PM
che aviso por las dudas a alguien que dijo por ahi, creo que fue vk-cdg, que la onda era php y no se que. yo segun lo que veo en el mercado, o sea, la onda es xml, no se de donde habras sacado eso, o capaz yo estoy mirando otra cosa, no se. wml para celulares, xml para consultas, svg para graficos (basado tb en xml) son la base de la web 2.0.....
digo, si queremos seguir en la ola, mas nos vale que nos aprendamos eso jajajaj
(yo no se xml, intentaron enseñarme algo en la facultad xDXD)

vk-cdg
November 29th, 2007, 03:02 PM
No, yo no dije que la onda fuera php, sino que yo tengo una asignatura pendiente con php, pero que será para cuando me reciba, es decir en 15 días!

sharkg
November 29th, 2007, 03:11 PM
uhhh bueno... felicitaciones.. yo con suerte el año q viene llego a analista.. espermos
volviendo al tema... xml parece venir con todo.... pero la verdad mire un poco y me parece q primero voy a aprender php. es una deuda q tengo pendiente tmb, aunque por ahi tengo mis dudas... pero bueno, no creo q venga para nada mal saber php a esta altura no?

marianom
November 29th, 2007, 03:16 PM
yo segun lo que veo en el mercado, o sea, la onda es xml...digo, si queremos seguir en la ola, mas nos vale que nos aprendamos eso

Bueno pero con el xml solo no vas a ningún lado, necesitás algo con que interpretarlo. Además XML es un medio para un fin (aguante Joy Division) y solo son archivos de texto con esteroides.

faktorqm
November 29th, 2007, 03:33 PM
No, yo no dije que la onda fuera php, sino que yo tengo una asignatura pendiente con php, pero que será para cuando me reciba, es decir en 15 días!

felicitaciones chabon!!!!!!!!!! a mi me faltan 30 materias jajajajaj (me rio para no llorar...)
si sabes bien c, php es una paponia.

marianom: aguante joy division!!

si si estamos de acuerdo que xml solo no va a ningun lado, pero digo, todas las tecnologias que se vienen estan basadas en el, como por ejemplo svg.

curiosidad: xml lo invento la nasa! yo no sabia, me dijeron el otro dia.....

Hei Ku
November 29th, 2007, 03:34 PM
xml es solo una forma de guardar datos. son archivos de texto con jerarquia, no mas que eso. Siempre vas a necesitar algun lenguaje para interpretarlo y procesarlo. Yo laburo con xml tanto desde java como desde C++.

O sea, la onda puede ser php que lea xml :lolflag:

Ficher
January 8th, 2008, 04:31 PM
Chicos perdonen por revivir el post, es que estube muy desaparecido ultimamente.
Como dije anteriormente busco un libro que explique desde 0. Osea los algoritmos, los dinstitos tipos de lenguajes de programación y no eso que desde el principio ya vas con la sintaxis del programa.
Aprenda a pensar como un programador en Python parece bueno pero sigue recibiendo consejos que es muy bueno empezar con pascal, lamentablemente no encuentro nada que empieze desde lo que yo quiero y no por la sintaxis. Gracias.

qntal
January 8th, 2008, 07:04 PM
Tener una base didáctica ayuda muchísimo, si podés meterte en algún curso como para arrancar seguro te va a facilitar mucho las cosas. Después seguís solo el camino que quieras.

Yo no toco un código de programación hace 10 años más o menos, desde la secundaria. Empecé con algoritmos, seguí con qbasic y después Visual Basic 5... por esas cosas de la vida tuve que dejar de programar.

Voy a ver si puedo arrancar de nuevo. No es algo que me vuelva loco pero tampoco me disgusta y veo que se paga bastante mejor que otras cosas.

Por lo que estuve viendo en el thread habría que dominar Java, C y Phyton... Respecto a bases de datos qué se está usando? PostgreSQL?

AJAX no lo mencionó nadie... qué onda?

jclevien
January 9th, 2008, 04:07 AM
qntal,

Te cuento lo que estoy haciendo yo: empecé a estudiar Java, decidí cambiar de un área muy diferente (Business Intelligence) por el desarrollo en Java.

¿Porqué Java? Java se paga bien, sobre todo si tenés las certificaciones enterprise de Sun y experiencia, claro. Yo estoy estudiando por mi cuenta para rendir libre la certificación de programador java, con el libro "Thinking in Java" de Bruce Eckel.

Te comento que es de lo mejor para ese examen, eso si, son 1500 hojas mas o menos.

Con Java tenés la opción de programar en JRuby, para ser más productivo, y hay compiladores JIT para aumentar la velocidad en runtime.

Con respecto a la base de datos... depende en donde trabajes. Si vas a una pyme... puede ser que te conectes a bases como MySQL... si vas a una corporación, Oracle es principalmente el motor, aunque he visto la SAP MaxDB basada en MySQL.

Yo tengo un proyecto de software, utilizo REALbasic (¿que es eso?... :) ) y la base de datos Firebird (eh??).

Por si te interesa, REALbasic es una especie de Visual Basic multiplataforma, es decir, de un mismo fuente generás binarios para Windows, Linux y Mac OS X. Es muy bueno, pero es pago.

Y la base Firebird es una buena alternativa gratuita al MySQL.

www.realbasic.com
www.firebirdsql.org



Ficher,

Yo aprendí a programar en papel. Nada de máquina, IDEs, debuggers. Pruebas de escritorio a full.
Después aprendí Pascal, C, un poco de C++, QuickBASIC, Visual Basic, REALbasic, algo de PHP, y alguna que otra cosa.

Que te puedo decir... lo mejor es tener una buena base en papel, entender mucho pseudocódigo, porque te sirve para entender cualquier lenguaje. Claro que cada uno de ellos tiene sus peculiaridades, que lleva su tiempo aprenderlas.

Mi recomendación es aprender algo que sirva tanto comercialmente y también otro tanto como hobby. Uno no sabe con que se va a encontrar, hablando del tema laboral, me pasó que me decidí por hacerme experto en REALbasic, pero lamentablemente no hay empresa que necesite esa herramienta, al menos en Argentina.

Igualmente no me arrepiento, el producto que logré funciona bien, es estable y por el momento continuaré su desarrollo en REAL.

Saludos.


Juan

brunovecchi
January 10th, 2008, 02:19 PM
¿Y Perl? ¿Nadie habla de 'la sangre' de Internet? Ja!
No estoy para decirle a nadie qué es mejor, porque sé muy poco. Empecé con BASIC, después Visual Basic (donde fui muy malcriado) y ahora hace poco menos de un año estoy aprendiendo Perl. Todo por hobby también.
Estuve en la misma situación que vos Fischer, y todavía estoy con dudas! Supongo que es como elegir una distribución de Linux; hay tantas que aunque hayas instalado una que te guste y funcione, a veces es inevitable pensar qué otras te estás perdiendo (yo ahora estoy mirando de reojo a Linux Mint!).
Perl está muy bueno; tiene una sintaxis muy clara y es muy permisivo para principiantes. Me asombra lo que se puede hacer con muy poco código! No está limitado por un solo paradigma; es a la vez procedural y orientado a objetos, permite ambos estilos. También está en el medio entre ser un lenguaje compilado e interpretado: por eso es más rápido que lenguajes como Java pero a la vez mantiene una velocidad de desarrollo de las aplicaciones que es muy buena (esto lo logra armando pequeños paquetes de código compilado llamados opcodes e interconectandolos mediante un script). Por ejemplo, no es necesario ocuparse por tipos de variables (cadenas, enteros, punto flotante) ni por el uso de memoria.

Les tiro un hello World:


#!perl
print "Hola Mundo!\n";

¿Alguien lo conocía a Perl??

lavaramano
January 11th, 2008, 05:04 AM
Les tiro un hello World:


#!perl
print "Hola Mundo!\n";



perl -e '@arr=('hola','mundo');foreach(@arr){print"$_ "};print"\n"'
(?)
:lolflag:

facundocorradini
January 11th, 2008, 09:01 AM
Perl es un excelente leguaje, muy complejo y muy completo, pero tales cualidades lo vuelven (en mi opinión) una opción inadmisible para iniciarse en la programación

brunovecchi
January 11th, 2008, 03:44 PM
perl -e '@arr=('hola','mundo');foreach(@arr){print"$_ "};print"\n"'
(?)
:lolflag:

JA! Estás ilustrando el slogan del lenguaje! "Hay más de una manera de hacerlo".
La tuya me parece... emm.. pintoresca. Je.


Perl es un excelente leguaje, muy complejo y muy completo, pero tales cualidades lo vuelven (en mi opinión) una opción inadmisible para iniciarse en la programación

¿Puedo disentir muy respetuosamente con vos? Yo pensaba eso cuando veía código (sobre todo código como el que posteó el amigo jeje) de otros y no entendía absolutamente nada. La realidad es que es un lenguaje que tiene una curva de aprendizaje muy suave. Es muy permisivo con la sintaxis y tiene muchos recursos; dudo que después de leer un tuto por primera vez de dos horas no puedas escribir un programita sencillo. Puede ser muy complejo como vos decís pero sólo si el programador lo quiere.

Razones que lo hacen sencillo:


No te preocupás por el manejo de memoria
No te procupás por tipos de variables
Es flexible con el manejo de espacios en la sintaxis
No es estrictamente necesario declarar variables
Las instrucciones tienen un correlato intuitivo con su significado
Podés escribir orientado a objetos o NO.
No es necesario compilar antes de ejecutar


Decime si no se entiende esto:



# Programa de amarreteo

foreach $producto (@lista_supermercado) {
print $producto if $precio_de{$producto} < 20;
print "\n";
}

Y, la inflación obliga!! :lolflag:

faktorqm
January 13th, 2008, 03:45 AM
La verdad no conozco a perl, me parece que esta bueno, deberia leer algo sobre él a ver que tal se porta. por ahora, me quedo con assembler, c y python. :D
Ahh y por que subrayan todo el tiempo que podes programar con objetos o no? En cualquier lenguaje orientado a objetos podes hacer un programa asi no mas.... o no?

ahh y reviviendo un viejo tema...... alguien puso los punteros de pascal por ahi... por que yo pregunte si existian... existen punteros a funciones en pascal? no? uhh que pena.... :KS

tzulberti
January 13th, 2008, 04:36 AM
Ahh y por que subrayan todo el tiempo que podes programar con objetos o no? En cualquier lenguaje orientado a objetos podes hacer un programa asi no mas.... o no?

Ej Java, vos tenes que crear una clase y a la misma le tenes que crear un metodo estatico publico. Esos detalles son particulares de la programacion orientada a objetos... Creo que el hecho de que no sea orientado a objetos esta bueno para empezar.



ahh y reviviendo un viejo tema...... alguien puso los punteros de pascal por ahi... por que yo pregunte si existian... existen punteros a funciones en pascal? no? uhh que pena.... :KS

Punteros a funciones? Existen los punteros a variables seguro, pero nunca hice un puntero a funcion...

margori
January 13th, 2008, 05:52 AM
Llevo muchos años programando en Turbo Pascal y Delphi. Confirmo la existencia de punteros a funciones. Obviamente las funciones declaradas y apuntadas deben tener lo mismos parametros que espera el puntero. Realmente esa posibilidad del lenguaje me ha permitido hacer codigo muy flexible.

faktorqm
January 13th, 2008, 04:37 PM
delphi es otra cosa, en pascal digo yo. que programas? (de curioso no mas) salu2!

phxnd
June 8th, 2008, 07:26 PM
y que compilador me recomiendan para C, para python y para perl?,,, lo que quiero es ejecutarlo antes de compilar,,,y un opcional seria no usar un procesador de texto aparte xD,,,(pido mucho¿?):lolflag:

tzulberti
June 9th, 2008, 01:05 AM
y que compilador me recomiendan para C, para python y para perl?,,, lo que quiero es ejecutarlo antes de compilar,,,y un opcional seria no usar un procesador de texto aparte xD,,,(pido mucho¿?):lolflag:

Me parece que estas un poco perdido...
Veamos:
C es un lenguaje compilado, por lo tanto, lo tenes que compilar para poder crear el ejecutable.
Sin embargo, Python es un lenguaje interpretado por lo que no necesitas compilaro. No se nada de perl, pero sino me equivoco el mismo tambien es interpretado.

Ahora para compilar C, te recomiendo gcc que es mas o menos el default cuando se trata de compilaciones en linux, y para python ya te lo trae instalado (desde una consola escribi python y vas a tener acceso al interprete interactivo de python).

Lo que no entiendo es lo del procesador de texto. Si te referis a que no necesites un IDE, entonces vas bien porque las dos cosas son el interprete y el compilador sin ningun extra.

pol666
June 9th, 2008, 01:22 AM
a ver y para un usuario como yo que no sabe NADA absolutamente nada programacion, cuales serian los elementos para aprender

¿que manual? ¿que libro? ¿que lenguaje de prog?

xpelaox
June 9th, 2008, 04:42 AM
Gente tengo una duda que me carcome, que no esta relacionada del todo con el thread pero si:P alguien me podria decir como se pronuncia python?

Graciass y disculpen si estoy fuera de lugar:P

leo_rockway
June 9th, 2008, 06:14 AM
@paul666: mirá el segundo post de este hilo.
@xpelaox: /pai.θən/ acá podés escuchar como se pronuncia: http://www.merriam-webster.com/cgi-bin/audio.pl?python01.wav=python

xpelaox
June 9th, 2008, 01:56 PM
aaaaaaaaaaaaaaaa Mil gracias! Ya encaminado tengo otra preguntita :D

A mi en la facu me enseñaron primero C y ahora estoy viendo c++ orientado a objetos, lo ultimo que vi fue sobrecarga de operadores y herencia, todo muy lindo, lo entiendo, lo se hacer entiendo la idea... pero la verdad, me cuesta ver como se puede hacer algo realmente util con esto:P no hay alguna pagina que puedan recomendarme para ver ejemplos de programas en C++ utiles?:P para darme una idea... lo que hize, por ejemplo me baje el source code de el "emesene", pero estaba en python, igual algo creo que entendi, pero se me hizo demaciado complicado, sobretodo por la cantidad de archivos:P asi que bueno:P escucho sugerencias =D

y gracias!

faktorqm
June 9th, 2008, 02:16 PM
en c++ esta programado el amule. Capaz es muy avanzado, pero para que veas lo grosso que es. de c++ sabe mucho hei ku. Salu2!

madelaki
June 9th, 2008, 02:41 PM
a ver y para un usuario como yo que no sabe NADA absolutamente nada programacion, cuales serian los elementos para aprender

¿que manual? ¿que libro? ¿que lenguaje de prog?

Lenguaje: Python.
IDE: DrPython (sudo apt-get install drpython, se instala en Programacion).
Manual: Este. Es una traduccion de thinkCSpy, uno de los mejores libros de Python. (http://www.google.com.ar/url?sa=t&ct=res&cd=1&url=http%3A%2F%2Frevor.files.wordpress.com%2F2008% 2F01%2Fthinkcspyes.pdf&ei=1TFNSLbACqHgeNjmzLkE&usg=AFQjCNGzMK2P69RGy7b2ywsUGl6ybGIMog&sig2=G62H6D9mKZhdw57TI5br9w)

Al menos eso recomiendo. Python esta teniendo mucho exito en GNU/Linux (1° en la categoria Mejor Lenguaje de Programacion en una encuesta realizada por LinuxQuestions.org en febrero de este año) y por lo tanto es muy facil encontrar scripts, ejemplos, plugins, otros programadores, documentacion, IDEs, etc.

gefarion
June 11th, 2008, 02:31 AM
Mi humilde recomendacion:
Primero empeza con pascal con Programacion Estructurada, de esta forma vas a adquirir una buena costumbre como programador, ya que pascal esta hecho para aprender a programar, y su uso esta marcado por una programacion bien estructurada y ordenada. Despues cuando le agarres bien la mano, pasate a C, vas a notar que es muy similar, salvo que C es mas flexible. Cuando te termines de adaptar a C, comenza a estudiar Programacion Orientada a Objetos en C++. Procura ir lento, no trates de aprender todo muy rapido, practica mucho y lee mucho. Cuando domines C++, pasarte a otro lenguaje te va a resultar muy sencillo.

No importa con que aprendras a programas, lo importante es que formes una buena base teorica, el lenguaje es solo una herramienta para programar. Con una buena base teorica pasarte de un lenguaje a otro te va a resultar muy sencillo.

Saludos.

Estacion01
July 11th, 2008, 10:54 PM
Yo te recomiendo que empieces con un lenguaje facil de aprender, C++ es potente y todo, pero para mi no ofrece gran cosa, y si no tienes experiencia programando es logico que primero empieces con programas basicos, es decir no de gran poder, para eso serviria VisualBasic o si quieres algo mas reciente RealBasic, descargate l demos de su web www.RealBasic.com y en www.macprogramadores.org hay un material y en el blog www.icreate.es/alewaxon, en ese blog el admin "Alewaxon" a empezado a hacer videos y cursos pdf en RealBasic.

Pero todo depende de la plataforma y compilador.

RealBasic viene en las 3 plataformas asi que no tendras problemas si sigues un curso de realbasic para mac, es lo mismo

faktorqm
July 13th, 2008, 05:11 PM
Yo te recomiendo que empieces con un lenguaje facil de aprender, C++ es potente y todo, pero para mi no ofrece gran cosa, y si no tienes experiencia programando es logico que primero empieces con programas basicos, es decir no de gran poder, para eso serviria VisualBasic o si quieres algo mas reciente RealBasic, descargate l demos de su web www.RealBasic.com y en www.macprogramadores.org hay un material y en el blog www.icreate.es/alewaxon, en ese blog el admin "Alewaxon" a empezado a hacer videos y cursos pdf en RealBasic.

Pero todo depende de la plataforma y compilador.

RealBasic viene en las 3 plataformas asi que no tendras problemas si sigues un curso de realbasic para mac, es lo mismo

Me parece a mi o he visto un lindo gatito?!

Hei Ku
July 13th, 2008, 05:20 PM
jejejeje

Para aprender a programar bien, Pascal es una muy buena opcion. Fue creado especificamente para eso. Y muchos aca lo utilizan para aplicaciones comerciales. Y luego pasar a un lenguaje orientado a objetos, como Python o C++.

steve_ignorant
July 20th, 2008, 01:04 AM
simple...


para agarrar mano en los algoritmos, usa el visual davinci, es un pseudo codigo, con las intrucciones en pascal, tenes todo, menos tipos de datos definidos, por el usuario, pero tenes pasajes de parametros por valor y referencia.

despues aprendete algo de pascal(por lo estricto que es el compilador). y despues tirate a C(a secas) que es de mas bajo nivel que pascal pero un poco mas alto que el assembler.

pascal mas que nada para que te acostumbres a manejar diseño descendente y bla bla bla...
el davinci para manejar algoritmos y diseños y pasajes de parametros y variables al mismo tiempo jugando con algo en castellano

Hei Ku
July 20th, 2008, 01:41 AM
Y los objetos???
despues me programan en Java como si fuera un lenguaje estructurado!!!!

Y esto es posta, eh! Sólo les faltaba ponerle un GOTO! :lolflag:

steve_ignorant
July 20th, 2008, 01:48 AM
Y los objetos???
despues me programan en Java como si fuera un lenguaje estructurado!!!!

Y esto es posta, eh! Sólo les faltaba ponerle un GOTO! :lolflag:

pascal tiene POO, el borland pascal o el turbo pascal 7 tiene objetos y pilas y colas, con lo cual no te tenes que programarlas en el caso que lo necesites, ademas, es para que se acostumbre a hacer las cosas estructuradas... no es muy lindo leeer un programa en 1 linea de un notepad...