Es posible especializarse en ciencias de la computación en la universidad sin experiencia previa en CS y programación?

Todo el mundo debería decir esto, fácilmente la mitad o más de los estudiantes de primer año de CS tienen cero habilidades de codificación y a veces eso es bueno.

Para ayudarte:

1) Asegúrate de que tus habilidades matemáticas están al día. Repasa un libro de texto de Álgebra II y Precálculo y, si el tiempo lo permite, un libro de texto básico de estadística y probabilidad - ESTO ES IMPORTANTE. También, un libro de texto de lógica corto pero muy revisado (como el que se usa en la introducción a la lógica para las clases de filosofía o si quieres un libro más largo pero no súper no que fue escrito por un científico de la computación en la lógica y la teoría de conjuntos para los estudiantes de CS y Matemáticas, trate de "How To Prove It". Es impresionante.)

Otra lectura corta, pero impresionante para futuros estudiantes de CS, Matemáticas, Física y Economía que ayudará a presentar algunas matemáticas discretas (el primer curso de matemáticas de la carrera de CS que tomarás) se llama "Principios de Matemáticas" por Allendoerfer y Oakley. Cubre todo, desde la lógica básica y las pruebas, la revisión del núcleo precalc, conjunto y la teoría de grupos, teoría de grafos, conjunto de probabilidad teórica, y diferencial básica y calc integral y es una gran lectura y de edad por lo que será barato - si usted pasa 1-2 horas al día, y tienen una sólida formación precalc entonces en un mes usted debe obtener a través de él y si usted comenzó la codificación es probable que ya comienzan a ver algunas de las cosas útiles la teoría de los números y la combinatoria (cosas matemáticas) puede hacer por usted.

Usted ve mi punto de vista, sin embargo: Solidificar las matemáticas y y ganar habilidades lógicas mientras se amplían los conocimientos de Estadística/Probabilidad y se centran en la comprensión y la intuición, no en el aprendizaje de memoria o la memorización. Los libros que he sugerido ayudan a forzar esta última idea en ti.

2) Recoge un libro de Python o JavaScript (Python en la opinión de la mayoría de la gente, incluyendo la mía, es realmente fácil de empezar, con una sintaxis muy simple, muy popular, y no da miedo como los lenguajes basados en C) en Amazon- ASEGÚRATE DE QUE ES CORTO. No intentes dominarlo, pero escucha los fundamentos para que no cojas malos hábitos como el formateo, los comentarios o la fuerza bruta. Sólo coge algunos términos e ideas y mira que no es magia. No lo parecerá desde un libro corto de introducción, pero después de tus cursos de CS1 y CS2 y de matemáticas discretas, cuando llegues a Algoritmos, verás por qué la lógica y las matemáticas harán que el diseño de tu código sea mucho mejor en todos los sentidos posibles (mucho más importante que escribirlo, ya que en la vida real, un Informático es realmente como un ingeniero, hacen algo de codificación, pero mucho del "trabajo no importante, pero gruñón que fue expuesto por el Informático" lo hacen los codificadores.

"Python the Hard Way" de Shaw o "Python Crash Course:..." de Matthes son grandes opciones pero para python HAY MUCHAS GRANDES OPCIONES. Sólo asegúrate de que sean cortos. Aprender cada concepto de programación no es el objetivo, acostumbrarse a escribir programas simples y conceptos básicos lo es ya que significa que puedes enfocarte en cosas más complejas en clase, escribir programas más concisos, etc.

3) Trabaja en tus habilidades de mecanografía, llega a 80 WPM POR LO MENOS con la técnica adecuada, trata de tener una meta de técnica adecuada de tres dígitos. Trata de aprender algunas habilidades básicas de LaTex (búscalo en google, no es necesario dominarlo).

4) Aprende MS Office (Excel principalmente, aprende mucho sobre funciones, no está directamente relacionado con la codificación, pero tiene conceptos que ayudan y una bonita GUI) y Chrome incluyendo atajos. También aprende comandos especiales de google como -X excluirá X de tus resultados o site:X buscará sólo el sitio web X. Aprende todos los atajos de windows e idealmente también los de Linux. Además, aprende los fundamentos del símbolo del sistema de Windows y los fundamentos del shell de Linux, busca en Google y habrá TONELADAS de información.

5) Aprende la última versión de Windows y una distro (edición) popular de Linux (un sistema operativo como Windows pero mucho mejor y la mayoría de los estudiantes de CS eventualmente comenzarán a usarlo). Ubuntu es popular pero hay otras que son fáciles también, una simple búsqueda en google de algo como "mejor distro de linux para usuario de windows" o algo así ayudará.

6) Idealmente, ya que te ayudará con la terminología, trata de tomar un auto-estudio o uno basado en línea si no hay uno presencial (un colegio comunitario local casi seguramente ofrecerá uno, tal vez bajo un nombre diferente así que pregunta por ahí) el curso de certificación CompTia A+- te enseñará el hardware de un ordenador, los fundamentos del software , las redes, y los fundamentos de seguridad (es vocacional, así que no hay codificación ni nada). Además, si el tiempo te lo permite, haz o estudia también los cursos de Network+ y/o Security+ porque te darán tantos conocimientos sobre informática como el 15% de los estudiantes.

Deberías real este post del blog, Lo que todo informático debe saber.

Sólo tienes que saber, que incluso saber una décima parte de lo anterior será súper útil, pero acabarás cogiendo mucho de ello en tus estudios y cuanto más aprendas ahora no sólo mejora tu autoaprendizaje y tus habilidades de investigación (clave para un informático cuando, digamos, te dan un nuevo proyecto o trabajo y te dicen que aprendas el lenguaje F# en una semana o Ruby cuando has usado JS, VB.net, C++, C#, Python y Matlab junto con SQL durante toda tu carrera o toda tu vida escolar; o te dan una nueva API geográfica para integrar en un proyecto, pero no sabes nada de mapas.

También recuerda esto:
"¿Qué nos gustaría que nuestros hijos -el público general del futuro- aprendieran sobre informática en las escuelas? Tenemos que acabar con el mito de que la informática tiene que ver con los ordenadores. La informática no tiene más que ver con los ordenadores que la astronomía con los telescopios, la biología con los microscopios o la química con los vasos y las probetas. La ciencia no tiene que ver con las herramientas, sino con cómo las usamos y lo que descubrimos cuando lo hacemos". - Michael R. Fellows, Ian Parberry (1993), "SIGACT tratando de entusiasmar a los niños con la CS".

***** Si repasas e intentas dominar un libro de precalc, has cursado calc en algún momento (aunque no lo domines, pero lo has hecho bien), has mirado un libro de lógica o idealmente How to prove it, y el libro de Allendoerfer y eres muy, muy valiente y quieres ser un buen calculista, Si eres muy bueno con las pruebas y la lógica, entonces prueba el Cálculo de Spivak, que es técnicamente para alguien sin experiencia en pruebas o cálculo, pero es difícil, fue o sigue siendo el texto de introducción a las matemáticas de alto nivel del MIT, Ann Arbors, Notre Dame y otros para el cálculo de una sola variable. Sin embargo, si no tienes tiempo, sáltatelo, realmente dudo que muchos estudiantes de matemáticas lo hayan tocado antes de entrar en la universidad.