Estoy comenzando mis estudios de posgrado en ciencias de la computación este año y estoy confundido sobre qué dominio de investigación de calidad (alguna innovación o descubrimiento nuevo) elegiría específicamente entre virtualización, computación distribuida, contenedores y/o blockchain.
Mi problema principal es que entiendo pero no estoy interesado en los algoritmos y sus eficiencias. Del mismo modo, puedo entender las matemáticas de mi nivel universitario, pero eso no me interesa. Tengo un buen conocimiento y comprensión de los conceptos de sistemas operativos, virtualización y contenedores.
Investigué sobre esto en línea y llegué a conocer personas que normalmente solo comparan la eficiencia de un algoritmo sobre otro en problemas de uso compartido de memoria, cambio de procesos y otros problemas similares; ¿Hay algún otro método o medio para hacer algo nuevo en el campo de la computación en la nube, los contenedores o la cadena de bloques?
Sería muy útil si algún experto de estos dominios pudiera aclararme qué tipo de investigación se está llevando a cabo actualmente en estos dominios y cómo se puede realizar el trabajo de investigación en estos dominios (manteniéndose alejado de los algoritmos y las matemáticas complejas). ).
Gracias a todos los que respondieron y comentaron. Respondiendo algunos comentarios y para dar algo más de contexto a mi pregunta:
Busco seleccionar mi área de investigación de los amplios dominios de la nube (virtualización y administración), metodologías y herramientas DevOps (optimización de flujos de trabajo y procesos), tecnología de contenedores (por ejemplo, acopladores y kubernetes) y optimización de Blockchain (soy consciente de esto). implicaría algoritmos complejos).
No estoy buscando escribir scripts PHP o JS (sé que eso es ingeniería). Personalmente, no me gustan las secuencias de comandos front-end. Algunos de mis proyectos incluyen configurar una infraestructura de nube privada para una empresa en prácticas, escribir scripts de shell para fines de CI/CD y crear un RHEL ISO personalizado que ya tiene software preinstalado (no, no plantillas). Básicamente, soy competente en Python, bash shell, Java, C y tengo una buena comprensión de cómo funciona el sistema operativo, la nube y la infraestructura de TI en general. Puede decir que estoy interesado en el centro de datos o la optimización de la infraestructura.
Entonces, la perspectiva principal de mi pregunta es: me resulta difícil creer que la investigación en informática (al menos el desarrollo de nuevas técnicas, herramientas y plataformas) sea imposible sin un conocimiento profundo de las matemáticas y el diseño de algoritmos (puede que me equivoque, pero ese es el punto de la pregunta). ¿Existe un trabajo de investigación establecido o un progreso realizado en estos dominios que no involucre un uso muy complejo de algoritmos y matemáticas como integración, diferenciación y demás? Tenga en cuenta que estoy tratando de evitar el uso complejo y la modificación de algoritmos y sus matemáticas. Estoy interesado en descubrir metodologías de dicha investigación (apenas puedo encontrar mucho en Internet).
La triste verdad es que absolutamente no necesita CS para la mayoría de las tareas de programación prácticas.
Pero sin un título en informática, tendrá casi cero posibilidades de obtener mejores trabajos de programación.
Además, sin un conocimiento de matemáticas/cs de alto nivel, sus habilidades mentales permanecen significativamente subdesarrolladas, en comparación con sus propias posibilidades o con las de los que realmente obtuvieron este título.
La triste verdad es que el trabajo de un programador, la capacidad de escribir un programa por el que paga un cliente , es difícil, pero es un tipo de conocimiento absolutamente diferente, como saber las matemáticas de la Relatividad General. Esta verdad es tan triste, tan catastrófica, que probablemente pasarás algunas décadas de tu vida lloriqueando sobre ella. Pero es la verdad.
CS , es matemática, sí, es tal conocimiento. Por ejemplo, entender por qué no existe el "mejor compresor" (más exactamente: existe, pero no hay ningún programa que pueda implementarlo), es un conocimiento igualmente complejo e interesante, como la física de vanguardia. Pero absolutamente no necesitas esta habilidad para ser un programador de éxito que elige libremente entre trabajos bien pagados.
Así es como funciona el mundo. Puedes luchar contra eso, puedes quejarte de eso. Hice ambos, durante décadas... y nunca me convertí en científico, solo en programador .
Estas peleas y estas lágrimas aún están ante ti.
Mi consejo sería este: aprende matemáticas y obtén tu título . Entonces:
Pero
Créeme: si haces esto ahora , te enorgullecerás de eso toda tu vida . A pesar del dolor de toda la vida de tus metas nunca alcanzadas.
Acerca de mí: soy matemático con un doctorado en informática. Ahora, a tu pregunta:
Básicamente,
Hay campos de la informática que están menos inclinados a las matemáticas, como "informática y sociedad". ¡Hay al menos un campo en CS que vive entre las matemáticas, CS y la filosofía de todas las ciencias! Programación lógica, eso es.
Pero como científico informático, necesitaría cierta cantidad de matemáticas de nivel universitario. ¿Análisis de O grande? ¡Matemáticas! DAC? ¡Matemáticas! Diablos, mover una cámara en tu juego 3D es más matemática de lo que muchos se sienten cómodos.
(No bromeo, habitualmente pensaba en una ruta de cámara para una escena 3D muy simple en coordenadas esféricas hoy en día, con código y demás, completamente conveniente y natural. Y luego se me ocurrió que las coordenadas esféricas solían ser un gran problema durante escuela secundaria.)
Y no me hagas empezar con software matemático o lenguajes formales.
Como algunos afirman, la informática es un acrónimo de "información" y "matemáticas".
Me cuesta creer que la investigación en informática (al menos el desarrollo de nuevas técnicas, herramientas y plataformas) sea imposible sin un conocimiento profundo de las matemáticas y el diseño de algoritmos.
Es cierto que la investigación de CS requiere cierto conocimiento de matemáticas y diseño de algoritmos.
Sin embargo, es discutible que tal conocimiento sea un conocimiento profundo . Podría ser superficial en algunos aspectos.
Algunos matemáticos profesionales -piensen en los profesores universitarios o, en Francia, los investigadores en matemáticas del CNRS- podrían (bromeando) decir que la CS es para aquellos que no han podido evaluar conocimientos matemáticos profundos .
Tengo un doctorado en CS, y las matemáticas que he usado son mucho más simples que algunas lecciones de topología algebraica que traté de seguir en mi maestría (fallé el examen en estas lecciones).
IIRC, D.Knuth dijo una vez que la informática es la matemática de los recursos.
Como explican otras respuestas, necesitas algunas matemáticas para hacer informática. (pero probablemente necesite menos matemáticas que un matemático profesional).
En algún comentario agregas:
Creo que estoy más interesado en la optimización del centro de datos (o en la infraestructura de TI en general) con el uso de la nube, la virtualización, los contenedores y/o la cadena de bloques.
Entonces aún necesita aprender y usar muchas matemáticas (cualquier tipo de trabajo de optimización implica algo de matemáticas). Pero no es tan pesado como dices.
(así que tiendo a llamar "conocimiento superficial de las matemáticas" a lo que usted describe como "conocimiento profundo de las matemáticas" y lo que se necesita en informática)
Sin embargo, probablemente necesite unos miles de horas de capacitación en matemáticas para hacer CS (no lo llamo conocimiento profundo).
(para que no os imaginéis lo pesado que es el conocimiento de los matemáticos profesionales)
Asegúrese de leer http://norvig.com/21-days.html
Puedes probar un doctorado en Computación Evolutiva. Estas personas hacen mucho trabajo sin apenas Matemáticas. Busque documentos en IEEE Transactions on Evolutionary Computation. Encontrarás muchos artículos que podrás leer como una novela. Pero si quieres trabajar seriamente, las matemáticas son importantes y te deben empezar a gustar.
Incluso si desea hacer un esfuerzo serio para desarrollar algo utilizando herramientas de CS, sin Math nunca puede estar seguro de que lo que está haciendo es correcto. Llevará tiempo aprenderlo y, si deja de aprenderlo durante un tiempo o se toma un descanso, es posible que empiece a olvidarlo.
Basile Starynkevitch
Pedro
Descifrador
Shión
Pedro
Shión
Pedro
Pedro
Parto Patel
Parto Patel
usuario9646
Parto Patel
JeffE
leucocitaria
Un lector rural
Parto Patel