Computer Science Books: ¿Por qué se critica tanto a Yashwant Kanitkar?

Leí Let Us C cuando estaba aprendiendo C. Esto fue antes de la escuela secundaria, antes de que pudieras buscar recomendaciones en Internet y Yahoo todavía era la primera página de Internet. Anteriormente solo había programado en variantes de BASIC y apenas entendía el concepto de un lenguaje compilado.

En ese momento, pensé que era un gran libro, porque tomó algunos conceptos muy importantes como punteros, cadenas, estructuras y uniones, y los aturdí lo suficiente como para que yo los entendiera.

Creo que el mayor inconveniente del libro fue que no pudo informar a los lectores, la mayoría de los cuales están aprendiendo un idioma por primera vez, sobre cómo evolucionan los idiomas y los estándares. Tenía toneladas de preguntas “engañosas” que se basaban en un comportamiento indefinido. Muchos estudiantes indios sin pretensiones heredan esta comprensión defectuosa de C y no es raro encontrar preguntas similares en la programación de entrevistas o pruebas realizadas por empresas y colegios indios. Esto lleva a estudiantes frustrados que piensan que C tiene este extraño conjunto de reglas que debes aprender y recordar “de memoria”, mientras que la intención original de C era simplificar las cosas para los programadores. El problema de demasiadas reglas para recordar no vendría hasta la llegada de C ++.

Me gustaría ampliar la excelente respuesta del usuario de Quora. El alma de los lenguajes de programación es que facilitan una forma particular de pensar para resolver problemas.

Let Us C es mucho jugo sintáctico y no es suficiente para resolver problemas a través de C. Esto enfoca al estudiante a memorizar las características sintácticas del lenguaje en lugar de resaltar cómo las características específicas del lenguaje C pueden usarse en el contexto de un problema específico.

Tampoco discutió las buenas prácticas de programación. El problema es que si esta fue su introducción a la programación, tendrá que desaprender mucho para ser un programador eficiente. Un libro mucho mejor fue The C Programming Language de K&R.

La respuesta del usuario es válida y me gustaría agregar solo un punto más.

‘Let us C’ no es un buen libro para comenzar a programar. También me gustaría agregar que ni siquiera es un buen libro para aprender C. El entorno de programación del libro es Turbo C y nos enseña las idiosincrasias del compilador más que el estándar C. Casi todos los que aprendieron C en ese momento, usaron un entorno de programación Turbo C basado en Windows. Este es un consejo obstinado, pero la mejor manera de aprender C es en su entorno nativo, un sistema basado en Unix. Una persona que aprende C está mejor aprendiendo también su entorno de apoyo, incluidos Make, Valgrind y gdb.

‘Let us C’ también es responsable de ahuyentar a los estudiantes que comienzan a programar. En los primeros días de Internet sin acceso a buenas plataformas de recomendación y Github / Stackoverflow, los ingenieros, especialmente de la India, abandonaron los cursos C y, peor aún, recurrieron a memorizar programas, lo cual fue muy desafortunado.

Finalmente, dado que esto es Internet y un estudiante iniciado puede sentir curiosidad, aquí están mis recomendaciones y consejos sobre el lenguaje C:

¿Cuál es el mejor libro para aprender completamente C de lo básico?

¿Se puede reemplazar el lenguaje de programación C por otro lenguaje de programación?

Por favor lee esto:

Hoy, un ingeniero mecánico fue seleccionado para un puesto superior en mi empresa debido a sus habilidades de TI y gerenciales.

Se le pidió que presentara a la audiencia. Comenzó su discurso y al principio mencionó que “yo era un ingeniero mecánico … y por requisitos de programación leí el libro de YPK Vamos a C por primera vez …”. ¡Y hoy estoy aquí!

¿Crees que significa eso?

Se llama motivación.

Permítanos que C book lo motive a explorar más.

También observé lo mismo cuando no pude entender la programación memorizando los libros 11 y 12.

Después de obtener un puntaje bajo en ciencias de la computación, comencé seriamente a leer Let C.

Me desempeñé bien en la universidad.

Estoy de acuerdo en que las preguntas formuladas en las pruebas de trabajo están relacionadas con este libro. Incluso me enfrenté al mismo tipo de preguntas en el examen HPCL.

Puede que no sea tan efectivo para ser un programador experto … pero le da suficiente empuje para explorar y aprender más.

No responderé esta pregunta directamente

Cuando estudiaba C por primera vez, me recetaron YK’s “Let Us C”. Eché un vistazo y elegí otro libro (Serie Schaum) en su lugar.

En retrospectiva, diría que el libro de YK parecía más tonto que mi elección.

No he leído sus otros libros (aunque tenía su libro en VC ++ y era lo suficientemente flojo como para no leerlo), pero si el patrón es el mismo, creo que sus libros pueden ser tontos y no serios (cuando el intento es hacer ellos simples)

¿Has visto “3 idiotas”?

Utilizando esa metáfora de las películas, Kanetkar representa el lado “Chatur” de mirar la ingeniería en lugar del lado “Rancho”.

¡Es culpable de haber arruinado la comprensión adecuada de C para varias generaciones de estudiantes!

Eso es un síndrome de profesor. Tienden a menospreciar cualquier libro que no trate el tema con cierta profundidad. Pero si usted es serio acerca de la programación, estoy seguro de que lo hará por motivación, tome otro libro en profundidad y lea. Pero si usted es ingeniero mecánico y desea escribir un programa para una simulación simple, realmente no vale la pena pasar por Kernighan & Ritchie.

Para ser justos, el libro proporcionó una introducción decente en un lenguaje simple. No creo, es un mal libro en absoluto.