# 1. Principiante

* Habilidades Personales
  * [Aprender a Depurar](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/01-learn-to-debug)
  * [¿Cómo depurar dividiendo el espacio del problema?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/02-how-to-debug-by-splitting-the-problem-space)
  * [¿Cómo eliminar un error?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/03-how-to-remove-an-error)
  * [¿Cómo Depurar Utilizando un Registro (Log)?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/04-how-to-debug-using-a-log)
  * [¿Cómo Entender Problemas de Rendimiento?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/05-how-to-understand-performance-problems)
  * [¿Cómo Solucionar Problemas de Rendimiento?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/06-how-to-fix-performance-problems)
  * [¿Cómo Optimizar Bucles?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/07-how-to-optimize-loops)
  * [¿Cómo Manejar el Costo de la Entrada/Salida (E/S)?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/08-how-to-deal-with-io-expense)
  * [¿Cómo Gestionar la Memoria?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/09-how-to-manage-memory)
  * [¿Cómo Manejar Errores Intermitentes?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/10-how-to-deal-with-intermittent-bugs)
  * [¿Cómo Aprender Habilidades de Diseño?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/11-how-to-learn-design-skills)
  * [¿Cómo Realizar Experimentos?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/personal-skills/12-how-to-conduct-experiments)
* Habilidades de Equipo
  * [¿Por qué es importante la estimación?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/01-why-estimation-is-important)
  * [¿Cómo estimar el tiempo de programación?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/02-how-to-estimate-programming-time)
  * [¿Cómo encontrar información?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/03-how-to-find-out-information)
  * [¿Cómo utilizar a las personas como fuentes de información?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/04-how-to-utilize-people-as-information-sources)
  * [¿Cómo documentar de manera inteligente?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/05-how-to-document-wisely)
  * [¿Cómo trabajar con un código deficiente?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/06-how-to-work-with-poor-code)
  * [¿Cómo Utilizar el Control de Código Fuente?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/07-how-to-use-source-code-control)
  * [¿Cómo realizar pruebas unitarias?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/08-how-to-unit-test)
  * [Tomarse descansos cuando te sientes bloqueado](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/09-take-breaks-when-stumped)
  * [¿Cómo reconocer cuándo es hora de ir a casa?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/10-how-to-recognize-when-to-go-home)
  * [¿Cómo lidiar con personas difíciles?](https://braydie.gitbook.io/how-to-be-a-programmer/es/1-beginner/team-skills/11-how-to-deal-with-difficult-people)
