Libros de Programación

Bueno, por resumir brevemente: Soy programador en paro, y viendo que no tengo dinero para pagar un curso, y que se me hace muy cuesta arriba el aprender mediante los miles de millones de tutoriales, cada uno de su padre y de su madre, que hay en la red, he pensado en buscar algún buen libro para empezar a aprender cosas nuevas.

Lo que mas me interesa ahora mismo es diseño web. HTML5, CSS... pero me gustaría algo que me enseñara a crear una web completa, no lo que he estado viendo por la red de "Esto es una hoja CSS", "Esto es una propiedad nueva de HTML5"... ya, vale... ¿pero cómo las pongo juntas?.

¿Me podéis recomendar algún libro que REALMENTE valga la pena?. No me refiero a gratuitos, si no a un libro que pueda comprar y aprender de él.

Gracias.
Yo también he estado buscando algún libro desentillo de HTML5 y CSS, me uno a la pregunta.
http://librosweb.es/

Libro de HTML5 no hay, pero el de XHTML sirve igualmente. Una vez sabes como va eso, miras los cambios de HTML5 y ya está.
Yo aconsejo aprender primero HTML, CSS y Javascript (que es un temazo largo) y DESPUÉS de eso mirar lo específico a HTML5.
Hace poco he estado leyendo "El gran libro de html5 css3 y javascript" y para mi gusto esta bastante bien.
Si se te hace difícil con un tutorial, lo vas a tener complicado con un libro. Es más, lo vas a tener complicado en general el ser programador.
DevilKeeper escribió:Bueno, por resumir brevemente: Soy programador en paro, y viendo que no tengo dinero para pagar un curso, y que se me hace muy cuesta arriba el aprender mediante los miles de millones de tutoriales, cada uno de su padre y de su madre, que hay en la red, he pensado en buscar algún buen libro para empezar a aprender cosas nuevas.


Pero si hay cursos gratuitos de lo que quieres en el Inem! Yo me plantearía hacerlo así, siempre lo más difícil es el empezar y si lo tienes que hacer solo...
Iknewthat escribió:Si se te hace difícil con un tutorial, lo vas a tener complicado con un libro. Es más, lo vas a tener complicado en general el ser programador.


El problema de los tutoriales de internet es que mucha información está incompleta, o los tutos se quedan a la mitad, o dan por hecho muchas cosas...

QuiNtaN escribió:Pero si hay cursos gratuitos de lo que quieres en el Inem! Yo me plantearía hacerlo así, siempre lo más difícil es el empezar y si lo tienes que hacer solo...


Si, los hay cuando ponen bien las fechas de inicio. Vi uno de diseño web en mi ciudad pero la fecha que aparecía señalaba que ya había comenzado, y dos dias después, cuando ya no quedaban plazas, me entero de que la fecha estaba mal puesta y empezaba en unos dias.

Gracias por las sugerencias.
Ok, a ver, HTML y CSS son cosas muy básicas, no hay mucho que aprender, yo para esto te recomendaría que cogieras el libro más barato que veas.

Lenguajes de programación tienes de 2 tipos, los que se ejecutan en el cliente y los que se ejecutan en el servidor, para ejecutar en el cliente Javascript, en el 90% de los casos no necesitas unos conocimientos avanzados y te bastará con coger ejemplos y adaptarlos a tu web, por lo que tampoco necesitas gran cosa (a no ser que tengas trabajos muy específicos para ejecutar en clientes).

Sobre lenguaje en servidor pues si que hace falta más conocimientos y son muy importantes, yo te recomendaría aprender PHP en lenguaje de programacion y My Sql como base de datos, y libro para eso tiene buena pinta este http://www.amazon.es/Domine-PHP-MySQL-2 ... s=php+rama. Yo antiguamente aprendí PHP con un libro de RAMA también y del mismo autor.

Espero que con esto puedas empezar.


EDITO:
Si quieres ir un poco más haya pues aquí tienes, pero creo que con algo más básico te bastaría.
Libro HTML5 + CSS3 + javascript
kindle:
http://www.amazon.es/gran-libro-HTML5-C ... words=html
Libro Fisico:
http://www.amazon.es/gran-libro-HTML5-C ... Javascript
Otra cosa que no he mencionado.

Si lo que quieres es empezar aprendiendo HTML y CSS no te hace falta un libro en concreto. Sino marcarte objetivos prácticos. Después de leerte por ejemplo los manuales de librosweb.es buscas una web cualquiera y simplemente la intentas hacer tú. Esto te hará ganar práctica y te enfrentarás a problemas que de otra forma no conocerías.

A partir de ahí es cuestión de usar Google. Tienes cientos de foros con gente que te puede ayudar. Páginas con recursos. Youtube con centenares de video-tutoriales.
Muchas gracias por los consejos, voy a ponerme manos a la obra. :)
Iknewthat escribió:Si se te hace difícil con un tutorial, lo vas a tener complicado con un libro. Es más, lo vas a tener complicado en general el ser programador.


Que yo soy programador, y tutoriales y libros me resultan imposibles

Los tutos a como no me den el codigo ya medio echo, nunca me entero, y los libros, no paso de la segunda pagina

Solo he tenido la paciencia de leer un libro de programacion, ya hace algun tiempo

Imagen
theelf escribió:
Iknewthat escribió:Si se te hace difícil con un tutorial, lo vas a tener complicado con un libro. Es más, lo vas a tener complicado en general el ser programador.


Que yo soy programador, y tutoriales y libros me resultan imposibles

Los tutos a como no me den el codigo ya medio echo, nunca me entero, y los libros, no paso de la segunda pagina

Solo he tenido la paciencia de leer un libro de programacion, ya hace algun tiempo

Imagen


Pues no sé como puedes ser programador sin poder leerte un libro. Si no tienes una base teórica sobre programación, abstracción, orietación a objetos, diseño de patrones, etc, ¿qué puedes programar?

Saber declarar una variable y una función no convierte a nadie en programador. No estoy diciendo que sea tu caso, pero es que una vez te adentras un poco en la programación necesitas mucha base teórica además de práctica.
Alecs7k escribió:Pues no sé como puedes ser programador sin poder leerte un libro. Si no tienes una base teórica sobre programación, abstracción, orietación a objetos, diseño de patrones, etc, ¿qué puedes programar?

Saber declarar una variable y una función no convierte a nadie en programador. No estoy diciendo que sea tu caso, pero es que una vez te adentras un poco en la programación necesitas mucha base teórica además de práctica.


+1 tengo la estantería llena de libros de programación y derivados y 3 más en camino y cada vez creo que sé menos de informática, no se cómo puede uno actualizarse sin leer libros y manuales.
Deberían obligar a aprender de memoria "Algoritmos y Estructuras de Datos" de Niklaus Wirth, a cualquiera que quisiera llamarse "programador".
Y ya puestos, también todos los volúmenes de "The Art of Computer Programming" de Donald Knuth (hay ediciones en castellano).
Alecs7k escribió:Pues no sé como puedes ser programador sin poder leerte un libro. Si no tienes una base teórica sobre programación, abstracción, orietación a objetos, diseño de patrones, etc, ¿qué puedes programar?

Saber declarar una variable y una función no convierte a nadie en programador. No estoy diciendo que sea tu caso, pero es que una vez te adentras un poco en la programación necesitas mucha base teórica además de práctica.



Ni siquiera se lo que es orientacion a objetos, disenios de patrones... me hablas en chino, ahora que sepa poder poner en practica algo de eso, es otra cosa

Asi que si, sin tener ni idea de esas cosas, puedes programar un cojon. Ahora estoy portando codigo de assembler de Motorola 68k a ARM 11, para una compania, y no paro de escribir lineas cada dia

Si a alguien le sirven los manuales, genial. Yo o aprendo a base a de programar, o nada. Asi que eso de libros, depende quien. Para mi mejor codigo con comentarios
Entonces eres lo que en el gremio se viene llamando un "retruñador de ejemplos" XD

No te mosquees, es guasa.
Ostia, retruñador, no conocia la palabra

A ver, si los ejemplos estan por la red, hay que usarlos, y estudiarlos, para mi eso es basico, si no, nadie compartiria codigo

Edito: Me hicieron acordar, a un tutorial... a esto me refiero con condigo explicado... esto es lo maximo q normalmente logro leer

http://www.elotrolado.net/hilo_tutorial-programacion-megadrive-basico_1371287
theelf escribió:Ostia, retruñador, no conocia la palabra (...)


En el mundo periodístico/editorial, un "retruño" viene a ser un "copy/paste tuneado" de algo ya escrito por otro.


si los ejemplos estan por la red, hay que usarlos, y estudiarlos, para mi eso es basico, si no, nadie compartiria codigo


Cierto. Pero tu trabajo creativo es cero. No creas nada. Solo modificas cosas existentes. Eres un Tarantino del código. Pellizcas de aquí y allá, pero no creas nada original XD

¿Y si te dicen que desarrolles varias alternativas, con diferentes órdenes de complejidad para aplicarlos según el tamaño del problema?
¿O que adaptes una función iterativa a su variante recursiva?
Deschamps escribió:¿Y si te dicen que desarrolles varias alternativas, con diferentes órdenes de complejidad para aplicarlos según el tamaño del problema?
¿O que adaptes una función iterativa a su variante recursiva?


Hablas en chino.. si los libros ensenian a enredar las palabras asi, mejor ni tocarlos por lo que veo [mad]

Estoy trabajando en una compania de videojuegos, como programador, y la verdad que no me suena toda ese vocabulario, y me toca usar el teclado todos los dias

Y para eso lees codigo de otros, para hacer una idea, y luego programar lo tuyo a tu medida. Es para mi, lo mas facil que hay
DevilKeeper escribió:
Iknewthat escribió:Si se te hace difícil con un tutorial, lo vas a tener complicado con un libro. Es más, lo vas a tener complicado en general el ser programador.


El problema de los tutoriales de internet es que mucha información está incompleta, o los tutos se quedan a la mitad, o dan por hecho muchas cosas...

Gracias por las sugerencias.



Pues eso dependerá del tutorial que elijas, pero anda que no hay tutoriales buenos para todos los lenguajes. Igual que con los libros, que los verás malos y los verás buenos.

theelf escribió:
Deschamps escribió:¿Y si te dicen que desarrolles varias alternativas, con diferentes órdenes de complejidad para aplicarlos según el tamaño del problema?
¿O que adaptes una función iterativa a su variante recursiva?


Hablas en chino.. si los libros ensenian a enredar las palabras asi, mejor ni tocarlos por lo que veo [mad]

Estoy trabajando en una compania de videojuegos, como programador, y la verdad que no me suena toda ese vocabulario, y me toca usar el teclado todos los dias

Y para eso lees codigo de otros, para hacer una idea, y luego programar lo tuyo a tu medida. Es para mi, lo mas facil que hay


Flipando me hallo... Tienes que ser muy bueno en lo tuyo para poder compensar tales carencias.
theelf escribió:
Deschamps escribió:¿Y si te dicen que desarrolles varias alternativas, con diferentes órdenes de complejidad para aplicarlos según el tamaño del problema?
¿O que adaptes una función iterativa a su variante recursiva?


Hablas en chino.. si los libros ensenian a enredar las palabras asi, mejor ni tocarlos por lo que veo [mad]

Estoy trabajando en una compania de videojuegos, como programador, y la verdad que no me suena toda ese vocabulario, y me toca usar el teclado todos los dias

Y para eso lees codigo de otros, para hacer una idea, y luego programar lo tuyo a tu medida. Es para mi, lo mas facil que hay


No entiendo como te puedes apañar entonces.

Si solo estás tocando pequeñas cosas y haciendo modificaciones puedo entender que vayas haciendo, pero si te toca diseñar una aplicación o un módulo para una aplicación la existente, ¿qué harías? Porque para eso sí hace falta tener una buena base o si no te sale todo un churro y luego no hay quien se lo fume.
theelf escribió:Estoy trabajando en una compania de videojuegos, como programador, y la verdad que no me suena toda ese vocabulario, y me toca usar el teclado todos los dias

No conoces la POO? No usarás GoTo: no? xD

Suena a coña, pero no comprendo como puedes hacer según qué sin algunos conocimientos.
Quizás los hayas aprendido sobre la marcha sin conocer el término que les hace referencia pero vaya, es todo un caso para estudio.
Mas bien supongo que será eso...espero...
Pero cabe la posibilidad de que no sepa. Todos esos terminos son ingenieria de software, destinados a diseñar aplicaciones, quiza solo sepa codificar. Pero vamos si te metes con cosas como Java o las variantes de C son todas con POO.
EL 80% del tiempo programo en assembler, basicamente de motorola y x86, pero ahora no queda otra que ARM que esta muy extendida, asi que me actualize un poco

Basic tambien se me da bien, lo suelo usar bastante aun, el otro 20% y de C no tengo ni puta idea


Y realmente en el dia a dia, no uso ninguno de esos terminos, POO ni nada de eso

Soy un defensor de que a mas conocimientos mejor, y tambien del que nadie puede saber todo, asi que mejor especializarse. Y realmente, siempre me ha funcionado aprender de codigos y tutoriales

Para mi el programador es el que programa, le llame por ejemplo, a un jg o jmp "jump" o no sepa siquiera que es, pero lo sepa usar. Da igual


El Goto es un clasico, hay que respetarlo, aunque prefiero el gosub si el basic lo permite, ya qgoto puede ser un lio para tipos como yo, que se olvidan de anotar bien el codigo

El "goto", no propiamente esta funcion, se usa un cojon en assembler
theelf escribió:Soy un defensor de que a mas conocimientos mejor, y tambien del que nadie puede saber todo, asi que mejor especializarse. Y realmente, siempre me ha funcionado aprender de codigos y tutoriales


Estoy de acuerdo contigo, el problema es que si adquieres conocimientos "on the fly" muchas veces sabes hacer las cosas pero sin un criterio común (que no digo que sea tu caso) como no poner bien comentarios, usar malos hábitos (depende del lenguaje, algunos permiten no declarar variables)... cosas que hacen que el que va detrás tuyo a mirar el código se cague en todo.

Yo los libros los uso más como ayuda y apoyo mientras programo, diseño, ..., no me los "empollo" de pe a pa, si necesito funciones miro en el libro las opciones con sus ejemplos...
QuiNtaN


Los malos habitos de programacion, son terribles, como dices, para el pobre que viene luego, pero incluso para uno mismo... porque cuando agarras codigo de hace 6 meses, y tienes que volverlo a escribir, es cuando tienes que comenzar a cambiar habitos

Pero bueno, es como todo, al principio tienes malas practicas, cometes errores, y luego con el tempo vas mejorando, y haciendo un estilo propio

Eso se apende de muchas maneras, leyendo, de ejemplos, de otros, pero segun he aprendido, es experiencia con el tiempo

Normalmente en empresas grandes, donde tu codigo pasa por varias manos, tienes que dejar estilo personal un poco de lado, y usar el criterio comun, que normalmente esta expuesto en publico

Bueno grupos de programacion, tienen definidas las reglas por ejemplo en una pizarra, documentos internos, etc, donde se especifica la cantidad de comentarios, el tipo de formato del codigo, etc


Luego en tu casa, programas como te sale de los cojones [+risas]
theelf escribió:Eso se apende de muchas maneras, leyendo, de ejemplos, de otros, pero segun he aprendido, es experiencia con el tiempo

Normalmente en empresas grandes, donde tu codigo pasa por varias manos, tienes que dejar estilo personal un poco de lado, y usar el criterio comun, que normalmente esta expuesto en publico


Pues sí, yo defiendo los libros no para estudiar mil definiciones sino porque te muestras unos hábitos de programación comunes a tu lenguaje, como declarar variables, si son case sensitive, te explican las diferencias entre tipos de declaración (int, long, float, int 32... en cada puto lenguaje son diferentes)... se pueden aprender también con la experiencia, lo malo es cuando los ejemplos no son buenos y que así cuesta más tiempo y cometes más errores al principio.
En el mundo hay de todo, pero una cosa esta clara, los buenos programadores leen libros, básicamente porque en ellos encuentras no sólo código sino el PORQUE de ese código y no otro. Puedes leer mucho código y no entender nunca porque se hace de una manera de o de otra, pasa a diario xD

Os recomiendo este libro:

Apprenticeship Patterns - Guidance for the Aspiring Software Craftsman

Una especie de guía con problemas y soluciones a situaciones típicas del día a día.

Saludos,
Bueno, ahora que ya ha quedado claro que los programadores leen/deben leer libros, viene de nuevo la pregunta por la que abrí el hilo... ¿Qué libros recomiendan los programadores leer?.

Es decir, ¿De alguna editorial en concreto?. ¿De alguna colección?. Yo tengo alguno de Anaya, de los grises pequeños, y no son gran cosa.

¿Qué libros enseñan realmente bien?.
DevilKeeper escribió:Bueno, ahora que ya ha quedado claro que los programadores leen/deben leer libros, viene de nuevo la pregunta por la que abrí el hilo... ¿Qué libros recomiendan los programadores leer?.

Es decir, ¿De alguna editorial en concreto?. ¿De alguna colección?. Yo tengo alguno de Anaya, de los grises pequeños, y no son gran cosa.

¿Qué libros enseñan realmente bien?.


tienes varias recomendaciones en el hilo tio
DevilKeeper escribió:Bueno, ahora que ya ha quedado claro que los programadores leen/deben leer libros, viene de nuevo la pregunta por la que abrí el hilo... ¿Qué libros recomiendan los programadores leer?.

Es decir, ¿De alguna editorial en concreto?. ¿De alguna colección?. Yo tengo alguno de Anaya, de los grises pequeños, y no son gran cosa.

¿Qué libros enseñan realmente bien?.

Es que esos son libros de bolsillo, es de sentido común, cuanto más gordo es el libro más materia cubre, y al revés xD
Los de la McGraw Hill no estaban mal, aunque ojeatelo primero a ver si crees que las explicaciones cubren lo que esperas porque si con internet no te gusta lo que concretan, algunos de éstos tampoco estaban muy allá en ese sentido.

Y asegúrate de que la versión que compres sea la más reciente disponible.
Porque en internet si hay un error, la solución es más rápida. En un libro, si hay un error en la solución propuesta de un ejercicio (y las hay, te lo aseguro), hasta que lo solucionan y se vende el stock de la anterior en la tienda de turno eso va a seguir ahí. Y eso si no tienes ya cierta experiencia y no vas a poder consultar a alguien puede darte algún dolor de cabeza que otro o llevar a confusión.
QuiNtaN escribió:tienes varias recomendaciones en el hilo tio


Si, y las he visto. Pero me refería a si hay alguna editorial cuyos libros destaquen sobre los de las demás.
DevilKeeper escribió:
QuiNtaN escribió:tienes varias recomendaciones en el hilo tio


Si, y las he visto. Pero me refería a si hay alguna editorial cuyos libros destaquen sobre los de las demás.


Yo huyo siempre de Anaya y O'reily. [buaaj]

Los que tengo por aquí de Apress me han gustado bastante. Aunque teniendo internet y muchos recursos no buscaría libros a no ser que sean de algo muy concreto.
Hola, a referencia de este hilo, ¿cuáles son los libros para aprender a programar?
Yo tengo un par de libros de aprender a programar en java, pero para hacer un programa creo que me falta muchos conceptos básicos

Saludos
36 respuestas