Entre JavaScript y la ciencia de datos, ¿qué debo hacer? Tengo que aprender a los dos desde cero.

Reformulemos su pregunta lógicamente manteniendo las mismas variables. Entre X o Y, donde X es una herramienta que se puede utilizar para realizar Y, ¿qué debo elegir? Entre inglés y derecho, ¿a qué debo recurrir? Javascript es uno de los muchos lenguajes de programación. Ha evolucionado enormemente desde su inicio. HTTP no es un protocolo con estado y javascript permitió que sucedieran muchas cosas en el lado del cliente de una sesión La ciencia de datos es un conjunto completo de habilidades, no hay consenso absoluto sobre lo que es o incluso necesariamente cuánto tiempo ha existido. En términos generales, implica un gran almacenamiento de datos (en términos de tamaño y velocidad), análisis estadístico y aprendizaje automático y / o inteligencia artificial.

A riesgo de simplificar demasiado las cosas, puede usar Javascript para hacer todo tipo de ciencia de datos. Mire los documentos controlados por datos (también conocidos como d3js) por ejemplo. Si tiene una fuente de datos, puede visualizar prácticamente cualquier cosa con ella – D3.js – Documentos basados ​​en datos. Si tuviera un servicio web que devolviera datos, podría hacer bastante ciencia de datos en virtud de consumirlos. Muchas de las bases de datos NoSQL populares como CouchDb, MongoDb o Cassandra devuelven objetos JSON, donde JS en JSON significa JavaScript.

Para aprender Javascript solo tendrías que ser esencialmente autodidacta o encontrar material didáctico que fuera muy limitado. Javascript es muy poderoso y se ha vuelto muy popular nuevamente por razones por las que no entraré aquí, pero si fueras bueno con él, podrías encontrar mucho trabajo. Pero sin conocer otras tecnologías, HTML o CSS en particular, sería difícil hacer mucho en el trabajo después de escribir bibliotecas javascript y sin comprender más, sería difícil saber qué escribir a pesar de poder escribirlo (piense en saber cómo hablar inglés pero sin saber cómo recitar la Declaración de Independencia).

Dudo que alguien pueda discutir que Javascript y Data Science no son mutuamente excluyentes: los conozco a ambos, todos los que trabajan en mi departamento saben ambos y eso es común. Literalmente, puede aprender la totalidad de JavaScript: es un lenguaje fijo con diferentes versiones, por lo que, al igual que cualquier otro lenguaje de programación de computadoras o incluso lenguaje humano, puede * aprenderlo en su totalidad, incluso si hacerlo no tuviera mucho sentido b / c saber más, y saber cómo encontrar el resto sería un mejor uso del tiempo. La ciencia de datos no tiene límites firmes. Nadie lo administra o define centralmente. Muchos dicen que es una palabra elegante para un estadístico que puede programar. Pero solo conocer el aspecto estadístico podría abarcar una carrera (afortunadamente, la velocidad de las matemáticas no es tan alta y las herramientas cambian rápidamente, mientras que las matemáticas no cambian tanto). Conocer el almacenamiento de datos podría ser una especialidad y es para muchas personas, conociendo Hadoop, Spark, MongoDb, Cassandra, y mucho menos las tiendas SQL tradicionales como SQL Server, Postgres u Oracle de Microsoft, todos pueden ser trabajos a tiempo completo. El aprendizaje automático y la inteligencia artificial están en su infancia. El procesamiento del lenguaje natural ha evolucionado mucho a lo largo de mi vida, pero apenas ha evolucionado en términos absolutos.

Entonces mi respuesta es en última instancia esto. Cualquier cosa en tecnología es dinámica y necesita estar preparado para toda una vida de aprendizaje. Las personas se engañan a sí mismas al pensar que pueden aprender más de una cosa a la vez, pero en cualquier momento debes concentrarte en una cosa: puedes estudiar 50 materias al día, pero estudiarás cada una a la vez. Elija algo que tenga una curva de aprendizaje más pequeña para generar confianza y comience a ganar impulso: Javascript cumple con los requisitos (también es un lenguaje basado en C para que pueda aprender otros mucho más fácilmente después). Concéntrese en aprender cosas pequeñas pero aprendiéndolas exhaustivamente. Hagas lo que hagas, es mejor saberlo bien y ser bueno en eso, luego saber muchas cosas a nivel superficial. Segmente su aprendizaje y use las herramientas según lo previsto, así que concéntrese en algo como Javascript, luego pase a HTML, desde allí puede comenzar a aprender Ciencia de datos en términos de HTML o Procesamiento de lenguaje natural. O aprenda Data Storage y Hadoop o SQL y trabaje de regreso. En cualquier oportunidad aprenda Matemáticas: las estadísticas son tremendamente valiosas y siempre lo serán. Tenemos computadoras que hacen el trabajo, pero los humanos aún necesitan interpretar y con estadísticas, incluso los mejores modelos están limitados por la calidad de los datos que los hidratan. Por lo tanto, se necesitará gente por un tiempo e incluso si el campo ve obsolescencia, será uno de los últimos en desaparecer.

Aprenda a ambos: si se ve obligado a elegir (no lo será), pero céntrese en la ciencia de los datos: aprender a pescar en lugar de aprender a usar una caña de pescar específica. El desarrollo de software se ha transformado básicamente en ciencia de datos, aunque gran parte de la industria aún no se ha dado cuenta, y mucho es solo mantenimiento y actualización. Data Science es un campo candente y una apuesta muy segura.

Si está buscando una carrera, le sugiero que consulte también BlockChain. Hay un artículo popular donde un gran jugador en el mercado señala que no conoce a ningún desarrollador de Ethereum que no sea millonario. La solidez es casi idéntica a la de Javascript e igual de fácil de aprender; sin embargo, hay muchos trabajos y muchos desarrolladores. Con solidez, hay un montón de trabajos persiguiendo a algunos desarrolladores. Le dije que no, pero pensé que le daría una respuesta tan completa como hubiera querido cuando estaba en su lugar. Buena suerte.

Esas son dos cosas muy diferentes.

JavaScript es solo un lenguaje de programación. Se usa en desarrollo web. Si quieres ser un desarrollador web, debes ser competente en ello, pero también debes saber muchas otras cosas. Realmente no aprendes lenguajes de programación de una vez. Aprende los conceptos básicos de la programación en general, y luego usa diferentes lenguajes de programación para diferentes propósitos. Empiezas con un nivel mínimo de competencia y mejoras tus habilidades practicando en proyectos de desarrollo.

La ciencia de datos es un campo profesional que abarca varios tipos de trabajo ligeramente diferentes. El cuerpo de conocimiento en ciencia de datos es vasto. Conocer varios lenguajes de programación es solo una de las muchas habilidades que necesita para trabajar en este campo. También necesita dominar estadísticas, aprendizaje automático, bases de datos, big data y muchas otras cosas.

Como dicen otras respuestas, son áreas completamente diferentes. Sin embargo, si los amas a ambos, hay una superposición. Necesita JavaScript para la visualización de datos (D3 en específico). Esa es mi área de interés.

Estoy persiguiendo maestros a tiempo parcial en Data Science. Y he estado aprendiendo y practicando JavaScript (principalmente D3 y Angular 2). JavaScript es una habilidad súper importante y no se puede ignorar. Entonces aprende ambos. Conocimiento en forma de T => profundidad y amplitud.

Salud,

DV