Aprender CS y codificación
Actualización: este repositorio está haciendo una reconstrucción significativa.
Créditos: imágenes cómicas en este repositorio de XKCD
Algunos enlaces increíbles
- Libros (Programación, Teoría, Matemáticas)
- https://github.com/namvdo/cs-andprogramming-books
- https://github.com/ebookfoundation/free-programming-books/
- Cosas puramente matemáticas (con enlaces a libros de texto)
- https://github.com/rossant/awesome-math
- Obtener un título de CS, gratis
- https://toachyourselfcs.com/
- https://www.reddit.com/r/learnprogramming/comments/acuakt/ossu_or_toachyourselfcscom_for_self_learning_cs/
- https://github.com/nushackers/notes-to-cs-freshmen-from-the-future
- https://github.com/jwasham/coding-interview-university
- https://github.com/jasonsbarr/comuter-science-program
- https://github.com/prakhar1989/awesome-courses
- https://github.com/cs-mohamedayman/coursera
- https://www.reddit.com/r/learnprogramming/comments/akbeqk/the_open_source_comuter_science_degree/
- https://github.com/salimt/courses-
- https://github.com/ossu/computer-science
- OSSU/Computer-Cience#664
- OSSU/DATA-CIENCE#61
- https://functionalcs.github.io/curriculum/
- http://blog.agupieware.com/2014/06/online-letarning-intensive-bachelors.html?m=1 y http://blog.aguieware.com/2014/05/online-lelarning-bachelors.html
- https://github.com/farhankarim/my-computer-science-curriculum
- MOOCS
- https://www.coursera.org/specializations/algorithms
- https://www.coursera.org/instructor/~250165
- https://see.stanford.edu/course
- https://openlearninglibrary.mit.edu/courses/course-v1:ocw+6.042j+2t2019/about
- https://isaacComputerScience.org/topics
- Un resumen más útil: https://btholt.github.io/four-semesters-of-cs/
Este repositorio es para mí como un registro personal de mi viaje al ámbito de la informática, las matemáticas y el desarrollo de software. Sin embargo, para las legiones de programadores de aspirantes interesados, puede usar esta página como punto de partida.
El principio rector de mis notas es la creación de un registro conciso de lo que he aprendido, por ejemplo, si las definiciones o explicaciones detalladas de un determinado tema pueden buscar en Google fácilmente, entonces no incluiré la definición o explicación. Incluyendo solo el nombre del tema me ayudará a recordar que he aprendido este tema y evitaré que las explicaciones innecesarias desordenen las notas
Vea las siguientes descripciones de las carpetas:
- Comienzos: para los principiantes completos de Python y/o codificación
- Coursera - Informática: Programación con un propósito - Mis soluciones al curso
- Hackerrank: mis soluciones Hackerrank + enlaces a las soluciones de otras personas ( incompletas )
- Linux y OSE - Todo sobre Linux
- Java - Mis recursos de aprendizaje para Java
- Avanzado: incompleto hasta ahora
La advertencia justa a la informática no iniciada, que puede considerarse un subconjunto de matemáticas, es diferente de la tarea de programación bastante mundana y ahora fácil de automatizar. Y si se lo preguntaba, aprender nunca se detiene en CS. Desde nuevos lenguajes, hasta nuevos sistemas operativos, nuevos conceptos como la programación funcional o el núcleo de Linux o la arquitectura del sistema operativo o la álgebra lineal, si no te desafían a ti mismo a diario, simplemente terminarás como un mono de código. Dura verdad.
Este repositorio es en forma de muestras de código que creé al aprender CS y la codificación, y las notas cortas que están destinadas a servir como una plataforma de buceo para estudios más profundos o para la revisión del conocimiento del individuo sobre el tema. También estoy publicando colecciones de recursos que he reunido.
Mi consejo es que comience primero con Python, luego haga la transición a OOP con C ++ o Java o front-end con JavaScript. Luego, aprenda la programación funcional y otros estilos de programación en Lisp, Haskell, etc. Practique la codificación y participe en competiciones y hackones en línea para ganar algo de experiencia. Hay algunos bootcamps increíbles por ahí, pero la programación es un campo en gran medida meritocrático y los estudiantes pueden diseñar su propio plan de estudios a su propio ritmo de forma gratuita. Acostumbrarse a Linux. El terminal es la característica más genial y rápida de Linux. Período. ¡Los programas de código abierto también son comparables a los propietarios!
Vías de aprendizaje
- Lo último y lo más popular
- AI, ML, Data Science, Robotics, Quantum Computing
- Cadena de bloques
- Criptografía y ciberseguridad
- El aburrido y el estacionario
- Sistemas operativos y núcleos
- Electrónica, instrumentación, hardware
- Matemáticas y algoritmos
- Lenguajes de programación
Peligros de programación
- RSI
- ¡Se cambió el diseño del teclado a Colemak! (Qwerty Max. WPM: 94, actual Max. Colemak WPM: 48)
- http://xahlee.info/kbd/most_eficiente_keyboard_layout.html
- http://xahlee.info/kbd/keyboard_remap_copy_cut_paste_undo.html
- https://www.quora.com/what- ear-the-advantages-of colemak-vs.-dvorak
- http://xahlee.info/kbd/dvorak_vs_colemak.html
- http://xahlee.info/kbd/dvorak_and_all_keyboard_layouts.html
- Comprar un teclado ergonómico
- Fatídico
- Ojos secos
- Extensión de ojos seguros, te recuerda que te tomes un descanso
- Filtro de luz azul
Idiomas que quiero aprender en profundidad
- Scripting
- Intento
- Perl
- Rubí
- Pitón
- Oop
- Kotlin (Java mejorado)
- Rust (sexy Java)
- Otros
- Haskell
- Escala
- Ceceo
- Mecanografiado
- Frontend (bostezo)
- HTML y CSS (aburrido, aburrido, aburrido)
Idiomas soy decente/bueno en
- JavaScript (Node.js, React)
- Java
- Python (Django)
- C ++
Software de computación en la nube que he usado
- Firebase
- AWS
Lista de software de programación requerido
- Para codificar
- Herramientas eléctricas para profesionales
- Emacs (para aprender el modo org)
- Empuje
- Para los perezosos y para los estudiantes
- Cualquier editor de texto
- Bloc de notas (para los exfoliantes de Windows)
- Kate (de KDE)
- Átomo
- Sublime
- Para los hombres trabajadores
- IntestiJ
- VCODE
- Para un producto de Microsoft, bastante sólido
- Para Markdown
- Typora-sin duda el mejor, pero no de código abierto
- Para látex
- TexWorks
- Estos dos complementos de ideas IntelliJ funcionan bastante bien
- Texificar
- Visor PDF: o simplemente puede usar con Okular/cualquier otro visor PDF, pero Okular no se actualiza automáticamente
- Terminal
- intento
- Una búsqueda rápida en Google revela una serie de emuladores de terminales maravillosas, cada uno con sus propias herramientas o animaciones especiales. Sin embargo, uso KDE's Konsole como conductor diario
- Rápido
- estrellarse
- Debian's
- pez
- ¡Se ve bien hasta ahora!
- Este sitio resume concisamente por qué me gusta el pescado
- https://medium.com/better-programming/why-i-use-fish-shell-over-bash-and-zsh-407d23293839
- ksh
- Honestamente, me di por vencido en esta cosa, y sospecho que muchos otros principiantes simplemente no se molestan
- CSH
- http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/
Lista de un software de código abierto que he usado (he usado muchos más, pero me he olvidado y no puedo molestarme en recordar)
- Calibre (para libros)
- Productividad
- P3X OneNote (ahora noción)
- LibreOffice (lol no hace falta decir)
- Xournal ++
- Bitwarden
- ngrok
- Guardaespaldas
- GIMP (fotos)
- Audio y video
- Edición de subtítulos (para subtítulos, duh)
- Audacia
- Arbitraje
- Kdenlive
- Kodi
- VLC
- Navegadores
- Vivildi
- Firefox
- Corajudo
- Ópera (de código abierto debido al cromo, pero el factor chino es intrigante)
- Juego
- Colección de rompecabezas sgt
- Batalla por Wesnoth (qué juego encantador)
- 0 AD
- Wot
- Halo: alcance
- Openttd
- Todas las aplicaciones KDE
- Kate (Just Bloody Lovely) (Actualización a partir de octubre de 2021 - Kate en Kubuntu 21.10 es increíble)
- Sysadmin
- Medios ópticos
- cdck
- QPXTOOL
- Brasero
- disco de prueba
- htop
- nmap
Lista de otras aplicaciones que he usado
- Spotify
- Discordia
- Señal
- Cromo
- scrcpy
- instaloader
- YouTube -DL (útil para descargar cualquier videos de blob - enlace 1 enlace 2 vlc stream blob mejor hack)
- Google Earth
- Tesseract-OocR
- OpenMediavault
- Anfetipo
- gitui?
Extensiones de Firefox
- Bypasspaywalls
- Grepador
- Integración de plasma
Extensiones de cromo
- Gosterio
- Listón
- VideOdownloadHelper
- Limitador de red WEBRTC