From becf7f0de213c8d3c17e6ed02f160d6db1b41644 Mon Sep 17 00:00:00 2001 From: Daniel Ossorio Date: Tue, 20 Dec 2016 19:10:43 +0000 Subject: [PATCH 01/17] Another chunk --- README-es.md | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/README-es.md b/README-es.md index 38ff7a8..a3f2ab4 100644 --- a/README-es.md +++ b/README-es.md @@ -4,25 +4,27 @@ Version original: [Inglés](README.md) ## Qué es? -Es mi guía de estudio en varios meses para ir de desarrollador web (Autodidacta, sin grado en Ciencias de Computadores) a ingeniero de software en Google. +Es mi guía de estudio en varios meses para ir de desarrollador web (Autodidacta, sin grado en Ciencias de Computadores) +a ingeniero de software en Google. ![Coding at the whiteboard - from HBO's Silicon Valley](https://dng5l3qzreal6.cloudfront.net/2016/Aug/coding_board_small-1470866369118.jpg) -This long list has been extracted and expanded from **Google's coaching notes**, so these are the things you need to know. -There are extra items I added at the bottom that may come up in the interview or be helpful in solving a problem. Many items are from -Steve Yegge's "[Get that job at Google](http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html)" and are reflected -sometimes word-for-word in Google's coaching notes. +Esta lista tan larga, ha sido extraída y ampliada de las **Google's coaching notes**, asi que estas son las cosas que +tienes que saber. +Hay algunas cosas extra que he añadido al final, que pueden aparecer en una entrevista, o ser de ayuda al solucionar +problemas. Extraje muchas de ellas de "[Get that job at Google](http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html)" +de Steve Yegge, y a veces aparecen, palabra por palabra en las notas de coaching de Google. -I've pared down what you need to know from what Yegge recommends. I've altered Yegge's requirements -from information received from my contact at Google. This is meant for **new software engineers** or those switching from -software/web development to software engineering (where computer science knowledge is required). If you have -many years of experience and are claiming many years of software engineering experience, expect a harder interview. -[Read more here](https://googleyasheck.com/what-you-need-to-know-for-your-google-interview-and-what-you-dont/). +He reducido lo que tienes que saber de lo que Yegge recomienda. He alterado los requerimientos de Yegge acorde con la +información que me facilitó me contacto en Google. Está orientado para **nuevos ingenieros de software** or para aquellos +que cambian el desarrollo de software o web, por ingeniería de software (donde se necesita conocimiento en ciencias de +computadores). Si tienes muchos años de experiencia y gran parte es experiencia en ingeniería de software, espera que +la entrevista sea más dura. [Lee más aquí](https://googleyasheck.com/what-you-need-to-know-for-your-google-interview-and-what-you-dont/). -If you have many years of software/web development experience, note that Google views software engineering as -different from software/web development and they require computer science knowledge. +Si tienes muchos años de experiencia en desarrollo de software o web, ten en cuenta que Google ve la ingenieria del software +como algo diferente al desarrollo web, y ellos requiren conocimiento en ciencias de computadores. -If you want to be a reliability engineer or systems engineer, study more from the optional list (networking, security). +Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de sistemas, estudia más de la lista opcional (redes, seguridad). --- From cf5c932caaa8a7de08b04066cfbb0f9e3ff94bdf Mon Sep 17 00:00:00 2001 From: Severiano Jaramillo Quintanar Date: Wed, 21 Dec 2016 11:30:15 -0600 Subject: [PATCH 02/17] Another little chunk Y just don know how to translate stack and heap to Spanish --- README-es.md | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/README-es.md b/README-es.md index a3f2ab4..8f840c7 100644 --- a/README-es.md +++ b/README-es.md @@ -2,7 +2,7 @@ Version original: [Inglés](README.md) -## Qué es? +## ¿Qué es? Es mi guía de estudio en varios meses para ir de desarrollador web (Autodidacta, sin grado en Ciencias de Computadores) a ingeniero de software en Google. @@ -28,11 +28,11 @@ Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de s --- -## Table of Contents +## Tabla de Contenidos -- [What is it?](#what-is-it) -- [Why use it?](#why-use-it) -- [How to use it](#how-to-use-it) +- [¿Qué es?](#qué-es) +- [¿Por qué usarlo?](#por-qué-usarlo) +- [Cómo-usarlo](#cómo-usarlo) - [Get in a Googley Mood](#get-in-a-googley-mood) - [Did I Get the Job?](#did-i-get-the-job) - [Follow Along with Me](#follow-along-with-me) @@ -151,27 +151,27 @@ Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de s --- -## Why use it? +## ¿Por qué usarlo? -I'm following this plan to prepare for my Google interview. I've been building the web, building -services, and launching startups since 1997. I have an economics degree, not a CS degree. I've -been very successful in my career, but I want to work at Google. I want to progress into larger systems -and get a real understanding of computer systems, algorithmic efficiency, data structure performance, -low-level languages, and how it all works. And if you don't know any of it, Google won't hire you. +Estoy siguiendo este plan para prepararme para mi entrevista en Google. He estado construyendo la web, construyendo +servicios, e iniciando empresas desde 1997. Tengo un grado en economía, no un grado en ciencias de los computadores. He sido +muy exitoso en mi carrera, pero quiero trabajar en Google. Quiero progresar dentro de sistemas más grandes +y tener un entendimiento real de ciencias de los computadores, eficiencia algorítmica, rendimiento de estructuras de datos, +lenguajes de bajo nivel, y cómo todo esto funciona. Y si tú no sabes alguno de estos, Google no te contratará. -When I started this project, I didn't know a stack from a heap, didn't know Big-O anything, anything about trees, or how to -traverse a graph. If I had to code a sorting algorithm, I can tell ya it wouldn't have been very good. -Every data structure I've ever used was built into the language, and I didn't know how they worked -under the hood at all. I've never had to manage memory unless a process I was running would give an "out of -memory" error, and then I'd have to find a workaround. I've used a few multidimensional arrays in my life and -thousands of associative arrays, but I've never created data structures from scratch. +Cuando comencé este proyecto, no sabía la diferencia entre **un stack y un heap**, no conocía la notación Big-O, nada acerca de árboles, ni cómo +cruzar una gráfica. Si tenía que programar un algoritmo de clasificación, puedo decir que no sería muy bueno. +Cada estructura de datos que había utilizado estaba incorporada al lenguaje, y yo no sabía cómo funcionaban +realmente. Yo nunca tuve que manejar memoria a menos que un proceso que yo estaba corriendo diera un error de “out of +memory”, y tenía que encontrar una alternativa. He usado pocos arreglos de varias dimensiones en mi vida y +miles de arreglos asociativos, pero nunca he creado estructuras de datos desde cero. -But after going through this study plan I have high confidence I'll be hired. It's a long plan. It's going to take me -months. If you are familiar with a lot of this already it will take you a lot less time. +Pero después de pasar por todo este plan de estudios tengo mucha confianza de que seré contratado. Me toará +meses. Si mucho de ésto te resulta familiar entonces te tomará mucho menos tiempo. -## How to use it +## Cómo usarlo -Everything below is an outline, and you should tackle the items in order from top to bottom. +Todo lo que aparece abajo es un plan, y deberías abordar los elementos en orden de arriba a abajo. I'm using Github's special markdown flavor, including tasks lists to check progress. From cc5b9a67d16a15e1851db9c5ccbb6a2bd6a454f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Andr=C3=A9s=20P=C3=A9rez=20P=C3=A9rez?= Date: Wed, 21 Dec 2016 21:06:32 +0100 Subject: [PATCH 03/17] Chunk 4 Issue #2 --- README-es.md | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/README-es.md b/README-es.md index 8f840c7..663ee7b 100644 --- a/README-es.md +++ b/README-es.md @@ -33,9 +33,9 @@ Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de s - [¿Qué es?](#qué-es) - [¿Por qué usarlo?](#por-qué-usarlo) - [Cómo-usarlo](#cómo-usarlo) -- [Get in a Googley Mood](#get-in-a-googley-mood) -- [Did I Get the Job?](#did-i-get-the-job) -- [Follow Along with Me](#follow-along-with-me) +- [Envuelvete en la googlemanía](#envuelvete-en-la-googlemanía) +- [¿Cómo conseguí el trabajo en Google?](#como-consegui-el-trabajo-en-google) +- [Sigue el progreso conmigo](#sigue-el-progreso-conmigo) - [Don't feel you aren't smart enough](#dont-feel-you-arent-smart-enough) - [About Google](#about-google) - [About Video Resources](#about-video-resources) @@ -198,26 +198,25 @@ I'm using Github's special markdown flavor, including tasks lists to check progr [More about Github-flavored markdown](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown) -## Get in a Googley Mood +## Envuelvete en la googlemanía -Print out a "[future Googler](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)" sign (or two) and keep your eyes on the prize. +Imprime una copia de "[futuro Googler](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)" (o dos) y mantente enfocado en la meta. -[![future Googler sign](https://dng5l3qzreal6.cloudfront.net/2016/Oct/Screen_Shot_2016_10_04_at_10_13_24_AM-1475601104364.png)](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf) +[![Futuro Googler](https://dng5l3qzreal6.cloudfront.net/2016/Oct/Screen_Shot_2016_10_04_at_10_13_24_AM-1475601104364.png)](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf) -## Did I Get the Job? +## ¿Cómo conseguí el trabajo en Google? -I haven't applied yet. +!Aun no he aplicado!. -Right now I'm doing programming problems all day long. That will continue for a few weeks, and then I'll -apply through a referral I've been holding onto since February (yes, February). +Ahora estoy haciendo problemas de programación todo el día y continuarña las próximas por un par de semanas más, posteriormente aplicaré por medio de una recomendación que he estado posponiedno hasta Febrero (sí, como lo leiste, hasta Febrero). - Thanks for the referral, JP. +Gracias la la perosna que me esta recomendando, JP. -## Follow Along with Me +## Sigue el progreso conmigo -My story: [Why I Studied Full-Time for 8 Months for a Google Interview](https://medium.com/@googleyasheck/why-i-studied-full-time-for-8-months-for-a-google-interview-cc662ce9bb13) +Mi breve historía: [¿Por que estudie a tiempo completo por 8 meses para una entrevista en Gooogle?](https://medium.com/@googleyasheck/why-i-studied-full-time-for-8-months-for-a-google-interview-cc662ce9bb13) -I'm on the journey, too. Follow along: +Aún sigo estudiando, sigue el progresso en: - **Blog**: [GoogleyAsHeck.com](https://googleyasheck.com/) - Twitter: [@googleyasheck](https://twitter.com/googleyasheck) From d20b85db0574a5151036db196b479e98f51ebfb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Andr=C3=A9s=20P=C3=A9rez=20P=C3=A9rez?= Date: Wed, 21 Dec 2016 21:09:55 +0100 Subject: [PATCH 04/17] Fix grammar --- README-es.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README-es.md b/README-es.md index 663ee7b..effd110 100644 --- a/README-es.md +++ b/README-es.md @@ -208,9 +208,9 @@ Imprime una copia de "[futuro Googler](https://github.com/jwasham/google-intervi !Aun no he aplicado!. -Ahora estoy haciendo problemas de programación todo el día y continuarña las próximas por un par de semanas más, posteriormente aplicaré por medio de una recomendación que he estado posponiedno hasta Febrero (sí, como lo leiste, hasta Febrero). +Ahora estoy haciendo problemas de programación todo el día y continuará las próximas semanas, posteriormente aplicaré por medio de una recomendación que he estado posponiedno hasta Febrero (sí, como lo leiste, hasta Febrero). -Gracias la la perosna que me esta recomendando, JP. +Gracias la perosna que me esta recomendando, JP. ## Sigue el progreso conmigo From 11c22e569e3f37f30f85a6479203644a0d075d1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Andr=C3=A9s=20P=C3=A9rez=20P=C3=A9rez?= Date: Wed, 21 Dec 2016 21:12:44 +0100 Subject: [PATCH 05/17] Add missing "a" --- README-es.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README-es.md b/README-es.md index effd110..8e5c6a8 100644 --- a/README-es.md +++ b/README-es.md @@ -210,7 +210,7 @@ Imprime una copia de "[futuro Googler](https://github.com/jwasham/google-intervi Ahora estoy haciendo problemas de programación todo el día y continuará las próximas semanas, posteriormente aplicaré por medio de una recomendación que he estado posponiedno hasta Febrero (sí, como lo leiste, hasta Febrero). -Gracias la perosna que me esta recomendando, JP. +Gracias a la perosna que me esta recomendando, JP. ## Sigue el progreso conmigo From ff258a53c2e47a40a7d15935d6f00f52790e0592 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Andr=C3=A9s=20P=C3=A9rez=20P=C3=A9rez?= Date: Wed, 21 Dec 2016 21:13:48 +0100 Subject: [PATCH 06/17] Fix "persona" --- README-es.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README-es.md b/README-es.md index 8e5c6a8..f0fc608 100644 --- a/README-es.md +++ b/README-es.md @@ -210,7 +210,7 @@ Imprime una copia de "[futuro Googler](https://github.com/jwasham/google-intervi Ahora estoy haciendo problemas de programación todo el día y continuará las próximas semanas, posteriormente aplicaré por medio de una recomendación que he estado posponiedno hasta Febrero (sí, como lo leiste, hasta Febrero). -Gracias a la perosna que me esta recomendando, JP. +Gracias a la persona que me esta recomendando, JP. ## Sigue el progreso conmigo From 8be5452855a3c5fcb593a028c586ed3d4651d28a Mon Sep 17 00:00:00 2001 From: Daniel Ossorio Date: Wed, 21 Dec 2016 22:06:23 +0000 Subject: [PATCH 07/17] Closes #3 --- README-es.md | 108 ++++++++++++++++++++++++++------------------------- 1 file changed, 55 insertions(+), 53 deletions(-) diff --git a/README-es.md b/README-es.md index f0fc608..de3b94b 100644 --- a/README-es.md +++ b/README-es.md @@ -36,10 +36,10 @@ Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de s - [Envuelvete en la googlemanía](#envuelvete-en-la-googlemanía) - [¿Cómo conseguí el trabajo en Google?](#como-consegui-el-trabajo-en-google) - [Sigue el progreso conmigo](#sigue-el-progreso-conmigo) -- [Don't feel you aren't smart enough](#dont-feel-you-arent-smart-enough) -- [About Google](#about-google) -- [About Video Resources](#about-video-resources) -- [Interview Process & General Interview Prep](#interview-process--general-interview-prep) +- [No pienses que no eres suficientemente inteligente](#no-pienses-que-no-eres-suficientemente-inteligente) +- [Acerca de Google](#acerca-de-google) +- [Acerca de los recursos en vídeo](#acerca-de-los-recursos-en-video) +- [Prepárate para la entrevista](#preparate-para-la-entrevista) - [Pick One Language for the Interview](#pick-one-language-for-the-interview) - [Book List](#book-list) - [Before you Get Started](#before-you-get-started) @@ -226,68 +226,70 @@ Aún sigo estudiando, sigue el progresso en: ![John Washam - Google Interview University](https://dng5l3qzreal6.cloudfront.net/2016/Aug/book_stack_photo_resized_18_1469302751157-1472661280368.png) -## Don't feel you aren't smart enough -- Google engineers are smart, but many have an insecurity that they aren't smart enough, even though they work at Google. -- [The myth of the Genius Programmer](https://www.youtube.com/watch?v=0SARbwvhupQ) +## No pienses que no eres suficientemente inteligente +- Los ingenieros de Google son inteligentes, pero muchos tienen la inseguridad de que no son suficientemente inteligentes, incluso trabajando en Google. +- [El mito del genio en programación](https://www.youtube.com/watch?v=0SARbwvhupQ) -## About Google +## Acerca de Google -- [ ] For students - [Google Careers: Technical Development Guide](https://www.google.com/about/careers/students/guide-to-technical-development.html) -- [ ] How Search Works: - - [ ] [The Evolution of Search (video)](https://www.youtube.com/watch?v=mTBShTwCnD4) - - [ ] [How Search Works - the story](https://www.google.com/insidesearch/howsearchworks/thestory/) - - [ ] [How Search Works](https://www.google.com/insidesearch/howsearchworks/) - - [ ] [How Search Works - Matt Cutts (video)](https://www.youtube.com/watch?v=BNHR6IQJGZs) - - [ ] [How Google makes improvements to its search algorithm (video)](https://www.youtube.com/watch?v=J5RZOU6vK4Q) +- [ ] Para Estudiantes - [Trabaja en Google: Guía de desarrollo técnico](https://www.google.com/about/careers/students/guide-to-technical-development.html) +- [ ] Como funciona el motor de búsqueda: + - [ ] [La evolucion (video)](https://www.youtube.com/watch?v=mTBShTwCnD4) + - [ ] [Como funciona - Historia](https://www.google.com/insidesearch/howsearchworks/thestory/) + - [ ] [Como funciona](https://www.google.com/insidesearch/howsearchworks/) + - [ ] [Como funciona - Matt Cutts (video)](https://www.youtube.com/watch?v=BNHR6IQJGZs) + - [ ] [Como Google hace mejoras en su algoritmo (video)](https://www.youtube.com/watch?v=J5RZOU6vK4Q) - [ ] Series: - - [ ] [How Google Search Dealt With Mobile](https://backchannel.com/how-google-search-dealt-with-mobile-33bc09852dc9) - - [ ] [Google's Secret Study To Find Out Our Needs](https://backchannel.com/googles-secret-study-to-find-out-our-needs-eba8700263bf) - - [ ] [Google Search Will Be Your Next Brain](https://backchannel.com/google-search-will-be-your-next-brain-5207c26e4523) - - [ ] [The Deep Mind Of Demis Hassabis](https://backchannel.com/the-deep-mind-of-demis-hassabis-156112890d8a) -- [ ] [Book: How Google Works](https://www.amazon.com/How-Google-Works-Eric-Schmidt/dp/1455582344) -- [ ] [Made by Google announcement - Oct 2016 (video)](https://www.youtube.com/watch?v=q4y0KOeXViI) + - [ ] [Como Google afrontó el móvil](https://backchannel.com/how-google-search-dealt-with-mobile-33bc09852dc9) + - [ ] [El estudio secreto de Google para averiguar lo que necesitamos](https://backchannel.com/googles-secret-study-to-find-out-our-needs-eba8700263bf) + - [ ] [Google sera tu cerebro](https://backchannel.com/google-search-will-be-your-next-brain-5207c26e4523) + - [ ] [La mente de Demis Hassabis](https://backchannel.com/the-deep-mind-of-demis-hassabis-156112890d8a) +- [ ] [Libro: Como funciona Google](https://www.amazon.com/How-Google-Works-Eric-Schmidt/dp/1455582344) +- [ ] [Hecho por Google comunicado - Oct 2016 (video)](https://www.youtube.com/watch?v=q4y0KOeXViI) -## About Video Resources +## Acerca de los recursos en vídeo -Some videos are available only by enrolling in a Coursera, EdX, or Lynda.com class. These are called MOOCs. -Sometimes the classes are not in session so you have to wait a couple of months, so you have no access. Lynda.com courses are not free. +Algunos vídeos estan disponibles sólo al inscribirte en Coursera, EdX o Lynda.com. Éstos se llaman MOOCs (Massive Open Online Courses, +Cursos en línea abiertos masivos). +A veces las clases no están disponibles, por lo que tienes que esperar un par de meses, lo que significa que no tienes acceso. +Los cursos de Lynda.com no son gratis. - I'd appreciate your help to add free and always-available public sources, such as YouTube videos to accompany the online course videos. - I like using university lectures. + Agradecería tu ayuda para añadir recursos públicos gratis, que siempre estuvieran disponibles, como video s de YouTube + para acompañar los videos de cursos online. + Me gusta usar recursos procedentes de universidades. - -## Interview Process & General Interview Prep +## Prepárate para la entrevista - [ ] Videos: - - [ ] [How to Work at Google: Prepare for an Engineering Interview (video)](https://www.youtube.com/watch?v=ko-KkSmp-Lk) - - [ ] [How to Work at Google: Example Coding/Engineering Interview (video)](https://www.youtube.com/watch?v=XKu_SEDAykw) - - [ ] [How to Work at Google - Candidate Coaching Session (video)](https://www.youtube.com/watch?v=oWbUtlUhwa8&feature=youtu.be) - - [ ] [Google Recruiters Share Technical Interview Tips (video)](https://www.youtube.com/watch?v=qc1owf2-220&feature=youtu.be) - - [ ] [How to Work at Google: Tech Resume Preparation (video)](https://www.youtube.com/watch?v=8npJLXkcmu8) + - [ ] [Como trabajar en Google: Prepara la entrevista de ingeniero (video)](https://www.youtube.com/watch?v=ko-KkSmp-Lk) + - [ ] [Como trabajar en Google: Ejemplo de entrevista de ingeniero (video)](https://www.youtube.com/watch?v=XKu_SEDAykw) + - [ ] [Como trabajar en Google - Sesion de Coaching para el Candidato (video)](https://www.youtube.com/watch?v=oWbUtlUhwa8&feature=youtu.be) + - [ ] [Reclutadores de Google, comparten trucos para la entrevista (video)](https://www.youtube.com/watch?v=qc1owf2-220&feature=youtu.be) + - [ ] [Como trabajar en Google: Preparacion de Currículum (video)](https://www.youtube.com/watch?v=8npJLXkcmu8) -- [ ] Articles: - - [ ] [Becoming a Googler in Three Steps](http://www.google.com/about/careers/lifeatgoogle/hiringprocess/) - - [ ] [Get That Job at Google](http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html) - - all the things he mentions that you need to know are listed below - - [ ] _(very dated)_ [How To Get A Job At Google, Interview Questions, Hiring Process](http://dondodge.typepad.com/the_next_big_thing/2010/09/how-to-get-a-job-at-google-interview-questions-hiring-process.html) - - [ ] [Phone Screen Questions](http://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions) +- [ ] Artículos: + - [ ] [Ser un Googler en tres pasos](http://www.google.com/about/careers/lifeatgoogle/hiringprocess/) + - [ ] [Consigue ese trabajo en Google](http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html) + - Todas las cosas que menciona que necesitas saber están en una lista más abajo + - [ ] _(Desactualizado)_ [Como conseguir un trabajo en Google, Preguntas de Entrevista, Processo de selección](http://dondodge.typepad.com/the_next_big_thing/2010/09/how-to-get-a-job-at-google-interview-questions-hiring-process.html) + - [ ] [Preguntas para la selección por teléfono](http://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions) -- [ ] Prep Courses: - - [ ] [Software Engineer Interview Unleashed (paid course)](https://www.udemy.com/software-engineer-interview-unleashed): - - Learn how to make yourself ready for software engineer interviews from a former Google interviewer. +- [ ] Cursos de preparacion: + - [ ] [Entrevista para Ingeniero de Software al descubierto (Curso de pago)](https://www.udemy.com/software-engineer-interview-unleashed): + - Prepárate para entrevistas de Ingeniero de Software con consejos de un entrevistador de Google. -- [ ] Additional (not suggested by Google but I added): - - [ ] [ABC: Always Be Coding](https://medium.com/always-be-coding/abc-always-be-coding-d5f8051afce2#.4heg8zvm4) - - [ ] [Four Steps To Google Without A Degree](https://medium.com/always-be-coding/four-steps-to-google-without-a-degree-8f381aa6bd5e#.asalo1vfx) - - [ ] [Whiteboarding](https://medium.com/@dpup/whiteboarding-4df873dbba2e#.hf6jn45g1) - - [ ] [How Google Thinks About Hiring, Management And Culture](http://www.kpcb.com/blog/lessons-learned-how-google-thinks-about-hiring-management-and-culture) - - [ ] [Effective Whiteboarding during Programming Interviews](http://www.coderust.com/blog/2014/04/10/effective-whiteboarding-during-programming-interviews/) - - [ ] Cracking The Coding Interview Set 1: +- [ ] Adicional (No sugerido por Google, pero los añadí): + - [ ] [ABC: Programa siempre que puedas](https://medium.com/always-be-coding/abc-always-be-coding-d5f8051afce2#.4heg8zvm4) + - [ ] [Cuatro pasos a Google sin tener un grado](https://medium.com/always-be-coding/four-steps-to-google-without-a-degree-8f381aa6bd5e#.asalo1vfx) + - [ ] [Whiteboarding (Usar una pizarra blanca)](https://medium.com/@dpup/whiteboarding-4df873dbba2e#.hf6jn45g1) + - [ ] [Que piensa Google de contratar personas, Gestión y Cultura](http://www.kpcb.com/blog/lessons-learned-how-google-thinks-about-hiring-management-and-culture) + - [ ] [Whiteboarding efectivo durante entrevistas de programacion](http://www.coderust.com/blog/2014/04/10/effective-whiteboarding-during-programming-interviews/) + - [ ] Hacer muy bien la entrevista de programación Set 1: - [ ] [Gayle L McDowell - Cracking The Coding Interview (video)](https://www.youtube.com/watch?v=rEJzOhC5ZtQ) - - [ ] [Cracking the Coding Interview with Author Gayle Laakmann McDowell (video)](https://www.youtube.com/watch?v=aClxtDcdpsQ) - - [ ] How to Get a Job at the Big 4: - - [ ] ['How to Get a Job at the Big 4 - Amazon, Facebook, Google & Microsoft' (video)](https://www.youtube.com/watch?v=YJZCUhxNCv8) - - [ ] [Failing at Google Interviews](http://alexbowe.com/failing-at-google-interviews/) + - [ ] [Cracking the Coding Interview con el autor Gayle Laakmann McDowell (video)](https://www.youtube.com/watch?v=aClxtDcdpsQ) + - [ ] Como conseguir un trabajo en una de las 4 grandes: + - [ ] ['Como conseguir un trabajo en una de las 4 grandes - Amazon, Facebook, Google & Microsoft' (video)](https://www.youtube.com/watch?v=YJZCUhxNCv8) + - [ ] [Haciendo las entrevistas de Google mal](http://alexbowe.com/failing-at-google-interviews/) ## Pick One Language for the Interview From 1cfa144d4c5c9fb5d274d4b115bccc12e5828c04 Mon Sep 17 00:00:00 2001 From: Daniel Ossorio Date: Thu, 22 Dec 2016 07:38:04 +0000 Subject: [PATCH 08/17] Some updates re pr comments --- README-es.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README-es.md b/README-es.md index de3b94b..4fdc75a 100644 --- a/README-es.md +++ b/README-es.md @@ -4,12 +4,12 @@ Version original: [Inglés](README.md) ## ¿Qué es? -Es mi guía de estudio en varios meses para ir de desarrollador web (Autodidacta, sin grado en Ciencias de Computadores) +Es mi guía de estudio en varios meses para ir de desarrollador web (Autodidacta, sin grado en Ciencias de la computación) a ingeniero de software en Google. ![Coding at the whiteboard - from HBO's Silicon Valley](https://dng5l3qzreal6.cloudfront.net/2016/Aug/coding_board_small-1470866369118.jpg) -Esta lista tan larga, ha sido extraída y ampliada de las **Google's coaching notes**, asi que estas son las cosas que +Esta larga lista, ha sido extraída y ampliada de las **Google's coaching notes**, asi que estas son las cosas que tienes que saber. Hay algunas cosas extra que he añadido al final, que pueden aparecer en una entrevista, o ser de ayuda al solucionar problemas. Extraje muchas de ellas de "[Get that job at Google](http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html)" From 04ea64f7aa3a996824113f5ec46b37b0a16a5814 Mon Sep 17 00:00:00 2001 From: Daniel Ossorio Date: Fri, 23 Dec 2016 07:19:59 +0000 Subject: [PATCH 09/17] chunk more knowledge --- README-es.md | 70 ++++++++++++++++++++++++++-------------------------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/README-es.md b/README-es.md index 4fdc75a..04e37e0 100644 --- a/README-es.md +++ b/README-es.md @@ -53,9 +53,9 @@ Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de s - [Stack](#stack) - [Queue](#queue) - [Hash table](#hash-table) -- [More Knowledge](#more-knowledge) - - [Binary search](#binary-search) - - [Bitwise operations](#bitwise-operations) +- [Para saber más](#para-saber-mas) + - [Búsqueda binaria](#busqueda-binaria) + - [Operaciones bit a bit](#operaciones-bit-a-bit) - [Trees](#trees) - [Trees - Notes & Background](#trees---notes--background) - [Binary search trees: BSTs](#binary-search-trees-bsts) @@ -699,42 +699,42 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input - get(key) - remove(key) -## More Knowledge +## Para saber más -- ### Binary search - - [ ] [Binary Search (video)](https://www.youtube.com/watch?v=D5SrAga1pno) - - [ ] [Binary Search (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search) - - [ ] [detail](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/) - - [ ] Implement: - - binary search (on sorted array of integers) - - binary search using recursion +- ### Búsqueda binaria + - [ ] [Búsqueda binaria (video)](https://www.youtube.com/watch?v=D5SrAga1pno) + - [ ] [Búsqueda binaria (video)](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search) + - [ ] [Detalle](https://www.topcoder.com/community/data-science/data-science-tutorials/binary-search/) + - [ ] Implementacion: + - Búsqueda binaria (En arrays de enteros ordenados) + - Búsqueda binaria con recursividad -- ### Bitwise operations +- ### Operaciones bit a bit - [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32) - - [ ] Get a really good understanding of manipulating bits with: &, |, ^, ~, >>, << - - [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture)) - - [ ] Good intro: - [Bit Manipulation (video)](https://www.youtube.com/watch?v=7jkIUgLC29I) - - [ ] [C Programming Tutorial 2-10: Bitwise Operators (video)](https://www.youtube.com/watch?v=d0AwjSpNXR0) - - [ ] [Bit Manipulation](https://en.wikipedia.org/wiki/Bit_manipulation) - - [ ] [Bitwise Operation](https://en.wikipedia.org/wiki/Bitwise_operation) + - [ ] Entiende como manipular bits perfectamente con: &, |, ^, ~, >>, << + - [ ] [Palabras](https://en.wikipedia.org/wiki/Word_(computer_architecture)) + - [ ] Buena introduccion: + [Manipulacion de bits (video)](https://www.youtube.com/watch?v=7jkIUgLC29I) + - [ ] [Tutorial de programacion en C 2-10: Operadores bit a bit (video)](https://www.youtube.com/watch?v=d0AwjSpNXR0) + - [ ] [Manipulacion de bits](https://en.wikipedia.org/wiki/Bit_manipulation) + - [ ] [Operacion bit a bit](https://en.wikipedia.org/wiki/Bitwise_operation) - [ ] [Bithacks](https://graphics.stanford.edu/~seander/bithacks.html) - - [ ] [The Bit Twiddler](http://bits.stephan-brumme.com/) - - [ ] [The Bit Twiddler Interactive](http://bits.stephan-brumme.com/interactive.html) - - [ ] 2s and 1s complement - - [Binary: Plusses & Minuses (Why We Use Two's Complement) (video)](https://www.youtube.com/watch?v=lKTsv6iVxV4) - - [1s Complement](https://en.wikipedia.org/wiki/Ones%27_complement) - - [2s Complement](https://en.wikipedia.org/wiki/Two%27s_complement) - - [ ] count set bits - - [4 ways to count bits in a byte (video)](https://youtu.be/Hzuzo9NJrlc) - - [Count Bits](https://graphics.stanford.edu/~seander/bithacks.html#CountBitsSetKernighan) - - [How To Count The Number Of Set Bits In a 32 Bit Integer](http://stackoverflow.com/questions/109023/how-to-count-the-number-of-set-bits-in-a-32-bit-integer) - - [ ] round to next power of 2: - - [Round Up To Next Power Of Two](http://bits.stephan-brumme.com/roundUpToNextPowerOfTwo.html) - - [ ] swap values: - - [Swap](http://bits.stephan-brumme.com/swap.html) - - [ ] absolute value: - - [Absolute Integer](http://bits.stephan-brumme.com/absInteger.html) + - [ ] [El manipulador de Bits](http://bits.stephan-brumme.com/) + - [ ] [El manipulador de bits interactivo](http://bits.stephan-brumme.com/interactive.html) + - [ ] Complementos de a 2 y de a 1 + - [Binario: Mas y Menos (Porqué utilizamos el complemento a 2) (video)](https://www.youtube.com/watch?v=lKTsv6iVxV4) + - [Complemento a 1](https://en.wikipedia.org/wiki/Ones%27_complement) + - [Complemento a 2](https://en.wikipedia.org/wiki/Two%27s_complement) + - [ ] Contar bits activados + - [$ maneras de contar bits en un byte (video)](https://youtu.be/Hzuzo9NJrlc) + - [Contar bits](https://graphics.stanford.edu/~seander/bithacks.html#CountBitsSetKernighan) + - [Como contar los bits activados en un entero de 32 bits](http://stackoverflow.com/questions/109023/how-to-count-the-number-of-set-bits-in-a-32-bit-integer) + - [ ] Redondear a la siguiente potencia de 2: + - [Redondear a la siguiente potencia de 2](http://bits.stephan-brumme.com/roundUpToNextPowerOfTwo.html) + - [ ] Intercambiar valores: + - [Intercambio](http://bits.stephan-brumme.com/swap.html) + - [ ] Valor absoluto: + - [Entero absoluto](http://bits.stephan-brumme.com/absInteger.html) ## Trees From 8ffdd05bd7bd743ab2872318296e4858f78a897a Mon Sep 17 00:00:00 2001 From: Rodolfo Rodriguez Date: Fri, 30 Dec 2016 18:01:14 -0600 Subject: [PATCH 10/17] Select a language for the interview -> Spanish --- README-es.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README-es.md b/README-es.md index 04e37e0..db9d7d2 100644 --- a/README-es.md +++ b/README-es.md @@ -291,31 +291,31 @@ Los cursos de Lynda.com no son gratis. - [ ] ['Como conseguir un trabajo en una de las 4 grandes - Amazon, Facebook, Google & Microsoft' (video)](https://www.youtube.com/watch?v=YJZCUhxNCv8) - [ ] [Haciendo las entrevistas de Google mal](http://alexbowe.com/failing-at-google-interviews/) -## Pick One Language for the Interview +## Selecciona un lenguaje para la entrevista -I wrote this short article about it: [Important: Pick One Language for the Google Interview](https://googleyasheck.com/important-pick-one-language-for-the-google-interview/) +Escribí un articulo pequeño sobre esto: [Important: Pick One Language for the Google Interview](https://googleyasheck.com/important-pick-one-language-for-the-google-interview/) -You can use a language you are comfortable in to do the coding part of the interview, but for Google, these are solid choices: +Puedes usar un lenguaje en el que estas cómodo para hacer la parte de código para la entrevista, pero para Google, estas selecciones son sólidas: - C++ - Java - Python -You could also use these, but read around first. There may be caveats: +También podrías usar estos. Pueden haber advertencias: - JavaScript - Ruby -You need to be very comfortable in the language and be knowledgeable. +Necesitas ser muy cómodo en el lenguaje y conocerlo bien. -Read more about choices: +Lee mas sobre elecciones: - http://www.byte-by-byte.com/choose-the-right-language-for-your-coding-interview/ - http://blog.codingforinterviews.com/best-programming-language-jobs/ - https://www.quora.com/What-is-the-best-language-to-program-in-for-an-in-person-Google-interview [See language resources here](programming-language-resources.md) -You'll see some C, C++, and Python learning included below, because I'm learning. There are a few books involved, see the bottom. +Verás algo de C, C++, y aprendizaje Python abajo, porque estoy aprendiendo. Hay algunos libros involucrados, ve abajo. ## Book List From c525ec8c67066d7aeaed1d803c81465997547546 Mon Sep 17 00:00:00 2001 From: Daniel Ossorio Date: Mon, 26 Dec 2016 17:07:20 +0000 Subject: [PATCH 11/17] Chunk 9 --- README-es.md | 334 +++++++++++++++++++++++++-------------------------- 1 file changed, 167 insertions(+), 167 deletions(-) diff --git a/README-es.md b/README-es.md index 04e37e0..db604f5 100644 --- a/README-es.md +++ b/README-es.md @@ -145,7 +145,7 @@ Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de s - [Discrete math](#discrete-math) - [Machine Learning](#machine-learning) - [Go](#go) -- [Additional Detail on Some Subjects](#additional-detail-on-some-subjects) +- [Información adicional en algunos temas](#informacion-adicional-en-algunos-temas) - [Video Series](#video-series) - [Computer Science Courses](#computer-science-courses) @@ -891,7 +891,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input - [ ] [Randomization: Matrix Multiply, Quicksort, Freivalds' algorithm (video)](https://www.youtube.com/watch?v=cNB2lADK3_s&index=8&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp) - [ ] [Sorting in Linear Time (video)](https://www.youtube.com/watch?v=pOKy3RZbSws&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf&index=14) -If you need more detail on this subject, see "Sorting" section in [Additional Detail on Some Subjects](#additional-detail-on-some-subjects) +If you need more detail on this subject, see "Sorting" section in [Información adicional en algunos temas](#informacion-adicional-en-algunos-temas) ## Graphs @@ -957,44 +957,44 @@ Graphs can be used to represent many problems in computer science, so this secti You'll get more graph practice in Skiena's book (see Books section below) and the interview books -## Even More Knowledge +## Aún más conocimiento -- ### Recursion - - [ ] Stanford lectures on recursion & backtracking: - - [ ] [Lecture 8 | Programming Abstractions (video)](https://www.youtube.com/watch?v=gl3emqCuueQ&list=PLFE6E58F856038C69&index=8) - - [ ] [Lecture 9 | Programming Abstractions (video)](https://www.youtube.com/watch?v=uFJhEPrbycQ&list=PLFE6E58F856038C69&index=9) - - [ ] [Lecture 10 | Programming Abstractions (video)](https://www.youtube.com/watch?v=NdF1QDTRkck&index=10&list=PLFE6E58F856038C69) - - [ ] [Lecture 11 | Programming Abstractions (video)](https://www.youtube.com/watch?v=p-gpaIGRCQI&list=PLFE6E58F856038C69&index=11) - - when it is appropriate to use it - - how is tail recursion better than not? - - [ ] [What Is Tail Recursion Why Is It So Bad?](https://www.quora.com/What-is-tail-recursion-Why-is-it-so-bad) - - [ ] [Tail Recursion (video)](https://www.youtube.com/watch?v=L1jjXGfxozc) +- ### Recursividad + - [ ] Artículos de Stanford acerca de recursividad y backtracking: + - [ ] [Artículo 8 | Abstracciones en Programación (video)](https://www.youtube.com/watch?v=gl3emqCuueQ&list=PLFE6E58F856038C69&index=8) + - [ ] [Artículo 9 | Abstracciones en Programación (video)](https://www.youtube.com/watch?v=uFJhEPrbycQ&list=PLFE6E58F856038C69&index=9) + - [ ] [Artículo 10 | Abstracciones en Programación (video)](https://www.youtube.com/watch?v=NdF1QDTRkck&index=10&list=PLFE6E58F856038C69) + - [ ] [Artículo 11 | Abstracciones en Programación (video)](https://www.youtube.com/watch?v=p-gpaIGRCQI&list=PLFE6E58F856038C69&index=11) + - Cuando es apropiado usarla + - Recursividad de cola + - [ ] [Que es recursividad de cola Por qué es tan mala?](https://www.quora.com/What-is-tail-recursion-Why-is-it-so-bad) + - [ ] [Recursividad de cola (video)](https://www.youtube.com/watch?v=L1jjXGfxozc) -- ### Object-Oriented Programming - - [ ] [Optional: UML 2.0 Series (video)](https://www.youtube.com/watch?v=OkC7HKtiZC0&list=PLGLfVvz_LVvQ5G-LdJ8RLqe-ndo7QITYc) - - [ ] Object-Oriented Software Engineering: Software Dev Using UML and Java (21 videos): - - Can skip this if you have a great grasp of OO and OO design practices. - - [OOSE: Software Dev Using UML and Java](https://www.youtube.com/playlist?list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO) - - [ ] SOLID OOP Principles: - - [ ] [Bob Martin SOLID Principles of Object Oriented and Agile Design (video)](https://www.youtube.com/watch?v=TMuno5RZNeE) - - [ ] [SOLID Design Patterns in C# (video)](https://www.youtube.com/playlist?list=PL8m4NUhTQU48oiGCSgCP1FiJEcg_xJzyQ) - - [ ] [SOLID Principles (video)](https://www.youtube.com/playlist?list=PL4CE9F710017EA77A) - - [ ] S - [Single Responsibility Principle](http://www.oodesign.com/single-responsibility-principle.html) | [Single responsibility to each Object](http://www.javacodegeeks.com/2011/11/solid-single-responsibility-principle.html) - - [more flavor](https://docs.google.com/open?id=0ByOwmqah_nuGNHEtcU5OekdDMkk) - - [ ] O - [Open/Closed Principal](http://www.oodesign.com/open-close-principle.html) | [On production level Objects are ready for extension for not for modification](https://en.wikipedia.org/wiki/Open/closed_principle) - - [more flavor](http://docs.google.com/a/cleancoder.com/viewer?a=v&pid=explorer&chrome=true&srcid=0BwhCYaYDn8EgN2M5MTkwM2EtNWFkZC00ZTI3LWFjZTUtNTFhZGZiYmUzODc1&hl=en) - - [ ] L - [Liskov Substitution Principal](http://www.oodesign.com/liskov-s-substitution-principle.html) | [Base Class and Derived class follow ‘IS A’ principal](http://stackoverflow.com/questions/56860/what-is-the-liskov-substitution-principle) - - [more flavor](http://docs.google.com/a/cleancoder.com/viewer?a=v&pid=explorer&chrome=true&srcid=0BwhCYaYDn8EgNzAzZjA5ZmItNjU3NS00MzQ5LTkwYjMtMDJhNDU5ZTM0MTlh&hl=en) - - [ ] I - [Interface segregation principle](http://www.oodesign.com/interface-segregation-principle.html) | clients should not be forced to implement interfaces they don't use - - [Interface Segregation Principle in 5 minutes (video)](https://www.youtube.com/watch?v=3CtAfl7aXAQ) - - [more flavor](http://docs.google.com/a/cleancoder.com/viewer?a=v&pid=explorer&chrome=true&srcid=0BwhCYaYDn8EgOTViYjJhYzMtMzYxMC00MzFjLWJjMzYtOGJiMDc5N2JkYmJi&hl=en) - - [ ] D -[Dependency Inversion principle](http://www.oodesign.com/dependency-inversion-principle.html) | Reduce the dependency In composition of objects. - - [Why Is The Dependency Inversion Principle And Why Is It Important](http://stackoverflow.com/questions/62539/what-is-the-dependency-inversion-principle-and-why-is-it-important) - - [more flavor](http://docs.google.com/a/cleancoder.com/viewer?a=v&pid=explorer&chrome=true&srcid=0BwhCYaYDn8EgMjdlMWIzNGUtZTQ0NC00ZjQ5LTkwYzQtZjRhMDRlNTQ3ZGMz&hl=en) +- ### Programacion orientada a objetos + - [ ] [Opcional: UML 2.0 (video)](https://www.youtube.com/watch?v=OkC7HKtiZC0&list=PLGLfVvz_LVvQ5G-LdJ8RLqe-ndo7QITYc) + - [ ] Ingeniería de Software orientada a objetos (OOSE): Desarrollo de Software usando UML y Java (21 videos): + - Puedes obviar esto si tienes un buen conocimiento de prácticas de diseño de POO. + - [OOSE: Desarrollo de Software usando UML y Java](https://www.youtube.com/playlist?list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO) + - [ ] Principios SOLID de Desarrollo de Software: + - [ ] [Principios SOLID en diseño ágil y orientado a objetos, por Bob Martin (video)](https://www.youtube.com/watch?v=TMuno5RZNeE) + - [ ] [Patrones de diseño SOLID en C# (video)](https://www.youtube.com/playlist?list=PL8m4NUhTQU48oiGCSgCP1FiJEcg_xJzyQ) + - [ ] [Principios SOLID (video)](https://www.youtube.com/playlist?list=PL4CE9F710017EA77A) + - [ ] S - [Single Responsibility Principle (Principio de responsabilidad única)](http://www.oodesign.com/single-responsibility-principle.html) | [Single responsibility to each Object](http://www.javacodegeeks.com/2011/11/solid-single-responsibility-principle.html) + - [Para saber más](https://docs.google.com/open?id=0ByOwmqah_nuGNHEtcU5OekdDMkk) + - [ ] O - [Open/Closed Principle (Principio de abierto/cerrado)](http://www.oodesign.com/open-close-principle.html) | [On production level Objects are ready for extension for not for modification](https://en.wikipedia.org/wiki/Open/closed_principle) + - [Para saber más](http://docs.google.com/a/cleancoder.com/viewer?a=v&pid=explorer&chrome=true&srcid=0BwhCYaYDn8EgN2M5MTkwM2EtNWFkZC00ZTI3LWFjZTUtNTFhZGZiYmUzODc1&hl=en) + - [ ] L - [Liskov Substitution Principle (Principio de sustitucion de Liskov)](http://www.oodesign.com/liskov-s-substitution-principle.html) | [Base Class and Derived class follow ‘IS A’ principal](http://stackoverflow.com/questions/56860/what-is-the-liskov-substitution-principle) + - [Para saber más](http://docs.google.com/a/cleancoder.com/viewer?a=v&pid=explorer&chrome=true&srcid=0BwhCYaYDn8EgNzAzZjA5ZmItNjU3NS00MzQ5LTkwYjMtMDJhNDU5ZTM0MTlh&hl=en) + - [ ] I - [Interface segregation principle (Principio de segregacion de interfaces)](http://www.oodesign.com/interface-segregation-principle.html) | clients should not be forced to implement interfaces they don't use + - [Principio de segregacion de interfaces en 5 minutos (video)](https://www.youtube.com/watch?v=3CtAfl7aXAQ) + - [Para saber más](http://docs.google.com/a/cleancoder.com/viewer?a=v&pid=explorer&chrome=true&srcid=0BwhCYaYDn8EgOTViYjJhYzMtMzYxMC00MzFjLWJjMzYtOGJiMDc5N2JkYmJi&hl=en) + - [ ] D -[Dependency Inversion principle ()Principio de Inversion de Dependencia](http://www.oodesign.com/dependency-inversion-principle.html) | Reduce the dependency In composition of objects. + - [Qué es el principio de inversion de dependencia y por qué es importante?](http://stackoverflow.com/questions/62539/what-is-the-dependency-inversion-principle-and-why-is-it-important) + - [Para saber más](http://docs.google.com/a/cleancoder.com/viewer?a=v&pid=explorer&chrome=true&srcid=0BwhCYaYDn8EgMjdlMWIzNGUtZTQ0NC00ZjQ5LTkwYzQtZjRhMDRlNTQ3ZGMz&hl=en) -- ### Design patterns - - [ ] [Quick UML review (video)](https://www.youtube.com/watch?v=3cmzqZzwNDM&list=PLGLfVvz_LVvQ5G-LdJ8RLqe-ndo7QITYc&index=3) - - [ ] Learn these patterns: +- ### Patrones de diseño + - [ ] [Breve repaso de UML (video)](https://www.youtube.com/watch?v=3cmzqZzwNDM&list=PLGLfVvz_LVvQ5G-LdJ8RLqe-ndo7QITYc&index=3) + - [ ] Apréndete estos patrones: - [ ] strategy - [ ] singleton - [ ] adapter @@ -1012,152 +1012,152 @@ You'll get more graph practice in Skiena's book (see Books section below) and th - [ ] iterator - [ ] composite - [ ] flyweight - - [ ] [Chapter 6 (Part 1) - Patterns (video)](https://youtu.be/LAP2A80Ajrg?list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO&t=3344) - - [ ] [Chapter 6 (Part 2) - Abstraction-Occurrence, General Hierarchy, Player-Role, Singleton, Observer, Delegation (video)](https://www.youtube.com/watch?v=U8-PGsjvZc4&index=12&list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO) - - [ ] [Chapter 6 (Part 3) - Adapter, Facade, Immutable, Read-Only Interface, Proxy (video)](https://www.youtube.com/watch?v=7sduBHuex4c&index=13&list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO) - - [ ] [Series of videos (27 videos)](https://www.youtube.com/playlist?list=PLF206E906175C7E07) - - [ ] [Head First Design Patterns](https://www.amazon.com/Head-First-Design-Patterns-Freeman/dp/0596007124) - - I know the canonical book is "Design Patterns: Elements of Reusable Object-Oriented Software", but Head First is great for beginners to OO. - - [ ] [Handy reference: 101 Design Patterns & Tips for Developers](https://sourcemaking.com/design-patterns-and-tips) + - [ ] [Capítulo 6 (Parte 1) - Patrones (video)](https://youtu.be/LAP2A80Ajrg?list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO&t=3344) + - [ ] [Capítulo 6 (Parte 2) - Abstraction-Occurrence, General Hierarchy, Player-Role, Singleton, Observer, Delegation (video)](https://www.youtube.com/watch?v=U8-PGsjvZc4&index=12&list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO) + - [ ] [Capítulo 6 (Parte 3) - Adapter, Facade, Immutable, Read-Only Interface, Proxy (video)](https://www.youtube.com/watch?v=7sduBHuex4c&index=13&list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO) + - [ ] [Series de videos (27 videos)](https://www.youtube.com/playlist?list=PLF206E906175C7E07) + - [ ] [Patrones Head First](https://www.amazon.com/Head-First-Design-Patterns-Freeman/dp/0596007124) + - Sé que "Design Patterns: Elements of Reusable Object-Oriented Software" es el libro más relevante, pero "Head First" esta muy bien para los que empiezan con POO + - [ ] [Link interesante: 101 Patrones de diseno & Trucos para desarrolladores](https://sourcemaking.com/design-patterns-and-tips) -- ### Combinatorics (n choose k) & Probability - - [ ] [Math Skills: How to find Factorial, Permutation and Combination (Choose) (video)](https://www.youtube.com/watch?v=8RRo6Ti9d0U) - - [ ] [Make School: Probability (video)](https://www.youtube.com/watch?v=sZkAAk9Wwa4) - - [ ] [Make School: More Probability and Markov Chains (video)](https://www.youtube.com/watch?v=dNaJg-mLobQ) +- ### Combinatoria (n en k) & Probabilidad + - [ ] [Habilidades matemáticas: Factoriales, Permutaciones y Combinaciones (video)](https://www.youtube.com/watch?v=8RRo6Ti9d0U) + - [ ] [Probabilidad (un video de Make School)](https://www.youtube.com/watch?v=sZkAAk9Wwa4) + - [ ] [More Probability and Markov Chains (un video)](https://www.youtube.com/watch?v=dNaJg-mLobQ) - [ ] Khan Academy: - - Course layout: - - [ ] [Basic Theoretical Probability](https://www.khanacademy.org/math/probability/probability-and-combinatorics-topic) - - Just the videos - 41 (each are simple and each are short): - - [ ] [Probability Explained (video)](https://www.youtube.com/watch?v=uzkc-qNVoOk&list=PLC58778F28211FA19) + - Estructura del curso: + - [ ] [Probabilidad teórica básica](https://www.khanacademy.org/math/probability/probability-and-combinatorics-topic) + - Solo los 41 videos - (Son simples y cortos): + - [ ] [Probabilidad Explicación (video)](https://www.youtube.com/watch?v=uzkc-qNVoOk&list=PLC58778F28211FA19) -- ### NP, NP-Complete and Approximation Algorithms - - Know about the most famous classes of NP-complete problems, such as traveling salesman and the knapsack problem, - and be able to recognize them when an interviewer asks you them in disguise. - - Know what NP-complete means. - - [ ] [Computational Complexity (video)](https://www.youtube.com/watch?v=moPtwq_cVH8&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=23) +- ### NP, NP-Completo and Algoritmos de aproximación + - Conocer los problemas NP-Completo más famosos, como el problema del viajante o el de la mochila, y ser capaz de + reconocerlos cuando un entrevistador pregunta por ellos disimuladamente. + - Saber que es y en que consiste un problema NP-Completo. + - [ ] [Complejidad Computacional (video)](https://www.youtube.com/watch?v=moPtwq_cVH8&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=23) - [ ] Simonson: - - [ ] [Greedy Algs. II & Intro to NP Completeness (video)](https://youtu.be/qcGnJ47Smlo?list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&t=2939) - - [ ] [NP Completeness II & Reductions (video)](https://www.youtube.com/watch?v=e0tGC6ZQdQE&index=16&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm) - - [ ] [NP Completeness III (Video)](https://www.youtube.com/watch?v=fCX1BGT3wjE&index=17&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm) - - [ ] [NP Completeness IV (video)](https://www.youtube.com/watch?v=NKLDp3Rch3M&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=18) + - [ ] [Algoritmos voraces II & Introducción a NP-Completo (video)](https://youtu.be/qcGnJ47Smlo?list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&t=2939) + - [ ] [NP-Completo II & Reducciones (video)](https://www.youtube.com/watch?v=e0tGC6ZQdQE&index=16&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm) + - [ ] [NP-Completo III (Video)](https://www.youtube.com/watch?v=fCX1BGT3wjE&index=17&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm) + - [ ] [NP-Completo IV (video)](https://www.youtube.com/watch?v=NKLDp3Rch3M&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=18) - [ ] Skiena: - - [ ] [CSE373 2012 - Lecture 23 - Introduction to NP-Completeness (video)](https://youtu.be/KiK5TVgXbFg?list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b&t=1508) - - [ ] [CSE373 2012 - Lecture 24 - NP-Completeness Proofs (video)](https://www.youtube.com/watch?v=27Al52X3hd4&index=24&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b) - - [ ] [CSE373 2012 - Lecture 25 - NP-Completeness Challenge (video)](https://www.youtube.com/watch?v=xCPH4gwIIXM&index=25&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b) - - [ ] [Complexity: P, NP, NP-completeness, Reductions (video)](https://www.youtube.com/watch?v=eHZifpgyH_4&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=22) - - [ ] [Complexity: Approximation Algorithms (video)](https://www.youtube.com/watch?v=MEz1J9wY2iM&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=24) - - [ ] [Complexity: Fixed-Parameter Algorithms (video)](https://www.youtube.com/watch?v=4q-jmGrmxKs&index=25&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp) - - Peter Norvik discusses near-optimal solutions to traveling salesman problem: - - [Jupyter Notebook](http://nbviewer.jupyter.org/url/norvig.com/ipython/TSP.ipynb) - - Pages 1048 - 1140 in CLRS if you have it. + - [ ] [CSE373 2012 - Lecture 23 - Introducción a NP-Completo (video)](https://youtu.be/KiK5TVgXbFg?list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b&t=1508) + - [ ] [CSE373 2012 - Lecture 24 - Demostrar problemas NP-Completo (video)](https://www.youtube.com/watch?v=27Al52X3hd4&index=24&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b) + - [ ] [CSE373 2012 - Lecture 25 - Problema NP-Completo (video)](https://www.youtube.com/watch?v=xCPH4gwIIXM&index=25&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b) + - [ ] [Complejidad: P, NP, NP-completo, Reducciones (video)](https://www.youtube.com/watch?v=eHZifpgyH_4&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=22) + - [ ] [Complejidad: Algoritmos de aproximación (video)](https://www.youtube.com/watch?v=MEz1J9wY2iM&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=24) + - [ ] [Complejidad: Algoritmos de parámetro fijo (video)](https://www.youtube.com/watch?v=4q-jmGrmxKs&index=25&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp) + - Peter Norvik habla sobre soluciones casi óptimas para el problema del viajante: + - [Cuaderno Jupyter](http://nbviewer.jupyter.org/url/norvig.com/ipython/TSP.ipynb) + - Páginas 1048 - 1140 de [CLRS](https://en.wikipedia.org/wiki/Introduction_to_Algorithms) si lo tienes a mano. -- ### Caches - - [ ] LRU cache: - - [ ] [The Magic of LRU Cache (100 Days of Google Dev) (video)](https://www.youtube.com/watch?v=R5ON3iwx78M) - - [ ] [Implementing LRU (video)](https://www.youtube.com/watch?v=bq6N7Ym81iI) - - [ ] [LeetCode - 146 LRU Cache (C++) (video)](https://www.youtube.com/watch?v=8-FZRAjR7qU) - - [ ] CPU cache: - - [ ] [MIT 6.004 L15: The Memory Hierarchy (video)](https://www.youtube.com/watch?v=vjYF_fAZI5E&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-&index=24) - - [ ] [MIT 6.004 L16: Cache Issues (video)](https://www.youtube.com/watch?v=ajgC3-pyGlk&index=25&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-) +- ### Memoria Caché + - [ ] Menos usado recientemente (LRU): + - [ ] [La magia de la caché LRU (100 días de desarrollador de Google) (video)](https://www.youtube.com/watch?v=R5ON3iwx78M) + - [ ] [Implementando LRU (video)](https://www.youtube.com/watch?v=bq6N7Ym81iI) + - [ ] [LeetCode - 146 Caché LRU (C++) (video)](https://www.youtube.com/watch?v=8-FZRAjR7qU) + - [ ] Caché de la CPU: + - [ ] [MIT 6.004 L15: La jerarquía de la memoria (video)](https://www.youtube.com/watch?v=vjYF_fAZI5E&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-&index=24) + - [ ] [MIT 6.004 L16: Caché - Problemas y situaciones (video)](https://www.youtube.com/watch?v=ajgC3-pyGlk&index=25&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-) -- ### Processes and Threads - - [ ] Computer Science 162 - Operating Systems (25 videos): - - for processes and threads see videos 1-11 - - [Operating Systems and System Programming (video)](https://www.youtube.com/playlist?list=PL-XXv-cvA_iBDyz-ba4yDskqMDY6A1w_c) - - [What Is The Difference Between A Process And A Thread?](https://www.quora.com/What-is-the-difference-between-a-process-and-a-thread) - - Covers: - - Processes, Threads, Concurrency issues - - difference between processes and threads - - processes - - threads - - locks - - mutexes - - semaphores - - monitors - - how they work - - deadlock - - livelock - - CPU activity, interrupts, context switching - - Modern concurrency constructs with multicore processors - - Process resource needs (memory: code, static storage, stack, heap, and also file descriptors, i/o) - - Thread resource needs (shares above (minus stack) with other threads in the same process but each has its own pc, stack counter, registers, and stack) - - Forking is really copy on write (read-only) until the new process writes to memory, then it does a full copy. - - Context switching - - How context switching is initiated by the operating system and underlying hardware - - [ ] [threads in C++ (series - 10 videos)](https://www.youtube.com/playlist?list=PL5jc9xFGsL8E12so1wlMS0r0hTQoJL74M) - - [ ] concurrency in Python (videos): - - [ ] [Short series on threads](https://www.youtube.com/playlist?list=PL1H1sBF1VAKVMONJWJkmUh6_p8g4F2oy1) - - [ ] [Python Threads](https://www.youtube.com/watch?v=Bs7vPNbB9JM) - - [ ] [Understanding the Python GIL (2010)](https://www.youtube.com/watch?v=Obt-vMVdM8s) - - [reference](http://www.dabeaz.com/GIL) - - [ ] [David Beazley - Python Concurrency From the Ground Up: LIVE! - PyCon 2015](https://www.youtube.com/watch?v=MCs5OvhV9S4) - - [ ] [Keynote David Beazley - Topics of Interest (Python Asyncio)](https://www.youtube.com/watch?v=ZzfHjytDceU) - - [ ] [Mutex in Python](https://www.youtube.com/watch?v=0zaPs8OtyKY) +- ### Hilos y procesos + - [ ] Ciencias de la computación 162 - Sistemas operativos (25 videos): + - Para hilos y procesos ver los videos 1-11 + - [Sistemas Operativos y Programación de Sistemas (video)](https://www.youtube.com/playlist?list=PL-XXv-cvA_iBDyz-ba4yDskqMDY6A1w_c) + - [Cuál es la diferencia entre un proceso y un hilo?](https://www.quora.com/What-is-the-difference-between-a-process-and-a-thread) + - Cubre / Abarca: + - Procesos, hilos y Concurrencia + - Diferencia entre hilos y procesos + - Procesos + - Hilos + - Bloqueos + - Mutexes (Cierre de exclusión mutua) + - Semáforos + - Monitores de concurrencia + - Como funcionan + - Deadlock (Bloqueo mutuo) + - Livelock (Bloqueo mutuo, variante de deadlock) + - Actividad de la CPU, Interrupciones, cambios de contexto + - Concurrencia moderna con procesadores multi núcleo + - Demanda de recursos de un proceso (memoria: Códigos, almacenamiento estático, stack, heap, descriptores de archivo e I/O (Entrada / Salida)) + - Demanda de recursos de los hilos (Comparte los anteriores, a excepción de stack, con otros hilos en el mismo proceso, pero cada uno tiene su propio contador de programa, contador de stack, registros, y stack) + - Forking realmente es copia en escritura (read-only) hasta que el nuevo proceso escribe en memoria, entonces hace una copia completa. + - Cambio de contextos + - Como se inicia el cambio de contexto por el sistema operativo y el hardware que hay debajo + - [ ] [Hilos en C++ (Serie - 10 videos)](https://www.youtube.com/playlist?list=PL5jc9xFGsL8E12so1wlMS0r0hTQoJL74M) + - [ ] Concurrencia en Python (videos): + - [ ] [Series pequeñas acerca de hilos](https://www.youtube.com/playlist?list=PL1H1sBF1VAKVMONJWJkmUh6_p8g4F2oy1) + - [ ] [Hilos en Python](https://www.youtube.com/watch?v=Bs7vPNbB9JM) + - [ ] [Entendiendo GIL en Python (2010)](https://www.youtube.com/watch?v=Obt-vMVdM8s) + - [Referencia](http://www.dabeaz.com/GIL) + - [ ] [David Beazley - Concurrencia en Python desde el principio: LIVE! - PyCon 2015](https://www.youtube.com/watch?v=MCs5OvhV9S4) + - [ ] [Keynote David Beazley - Temas interesantes (Python Asyncio)](https://www.youtube.com/watch?v=ZzfHjytDceU) + - [ ] [Mutex en Python](https://www.youtube.com/watch?v=0zaPs8OtyKY) -- ### Papers - - These are Google papers and well-known papers. - - Reading all from end to end with full comprehension will likely take more time than you have. I recommend being selective on papers and their sections. - - [ ] [1978: Communicating Sequential Processes](http://spinroot.com/courses/summer/Papers/hoare_1978.pdf) - - [implemented in Go](https://godoc.org/github.com/thomas11/csp) - - [Love classic papers?](https://www.cs.cmu.edu/~crary/819-f09/) - - [ ] [2003: The Google File System](http://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf) - - replaced by Colossus in 2012 - - [ ] [2004: MapReduce: Simplified Data Processing on Large Clusters]( http://static.googleusercontent.com/media/research.google.com/en//archive/mapreduce-osdi04.pdf) - - mostly replaced by Cloud Dataflow? - - [ ] [2007: What Every Programmer Should Know About Memory (very long, and the author encourages skipping of some sections)](https://www.akkadia.org/drepper/cpumemory.pdf) - - [ ] [2012: Google's Colossus](https://www.wired.com/2012/07/google-colossus/) - - paper not available - - [ ] 2012: AddressSanitizer: A Fast Address Sanity Checker: - - [paper](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/37752.pdf) - - [video](https://www.usenix.org/conference/atc12/technical-sessions/presentation/serebryany) - - [ ] 2013: Spanner: Google’s Globally-Distributed Database: - - [paper](http://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf) - - [video](https://www.usenix.org/node/170855) - - [ ] [2014: Machine Learning: The High-Interest Credit Card of Technical Debt](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43146.pdf) - - [ ] [2015: Continuous Pipelines at Google](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43790.pdf) - - [ ] [2015: High-Availability at Massive Scale: Building Google’s Data Infrastructure for Ads](https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44686.pdf) - - [ ] [2015: TensorFlow: Large-Scale Machine Learning on Heterogeneous Distributed Systems](http://download.tensorflow.org/paper/whitepaper2015.pdf ) - - [ ] [2015: How Developers Search for Code: A Case Study](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43835.pdf) - - [ ] [2016: Borg, Omega, and Kubernetes](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44843.pdf) +- ### Artículos y publicaciones + - Estos provienen de Google y otros muy conocidos. + - Leerlos de principio a fin, tratando de comprenderlos complementamente, quizás te lleve más tiempo del que puedas disponer. Te recomiendo que seas selectivo con los artículos y sus secciones. + - [ ] [1978: Comunicación en procesos secuenciales](http://spinroot.com/courses/summer/Papers/hoare_1978.pdf) + - [Implementación en GO](https://godoc.org/github.com/thomas11/csp) + - [Te gustan los artículos clásicos?](https://www.cs.cmu.edu/~crary/819-f09/) + - [ ] [2003: El sistema de archivos de Google](http://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf) + - Reemplazado por Colossus en 2012 + - [ ] [2004: MapReduce: Procesamiento de datos simplificado en grandes clusters]( http://static.googleusercontent.com/media/research.google.com/en//archive/mapreduce-osdi04.pdf) + - casi reemplazado por Cloud Dataflow? + - [ ] [2007: Lo que cualquier programador debe saber acerca de la memoria (bastante extenso, el autor recomienda saltarse algunas secciones)](https://www.akkadia.org/drepper/cpumemory.pdf) + - [ ] [2012: Colossus de Google](https://www.wired.com/2012/07/google-colossus/) + - Publicaciones no disponible + - [ ] 2012: AddressSanitizer: Un sanity check muy rápido para direcciones: + - [Publicación](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/37752.pdf) + - [Video](https://www.usenix.org/conference/atc12/technical-sessions/presentation/serebryany) + - [ ] 2013: Spanner: La base de datos distribuida de Google: + - [Publicación](http://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf) + - [Video](https://www.usenix.org/node/170855) + - [ ] [2014: Machine Learning: El alto tipo de interés de la deuda tecnológica (The High-Interest Credit Card of Technical Debt)](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43146.pdf) + - [ ] [2015: Líneas de ejecución continuas en Google](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43790.pdf) + - [ ] [2015: Alta disponibilidad a gran escala: Construyendo la infraestructura de datos para los anuncios y publicidad de Google](https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44686.pdf) + - [ ] [2015: TensorFlow: Machine Learning a gran escala en sistemas distribuidos heterogéneos](http://download.tensorflow.org/paper/whitepaper2015.pdf ) + - [ ] [2015: Como los desarrolladores buscan código: Un caso de estudio](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43835.pdf) + - [ ] [2016: Borg, Omega, y Kubernetes](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44843.pdf) - ### Testing - - To cover: - - how unit testing works - - what are mock objects - - what is integration testing - - what is dependency injection - - [ ] [Agile Software Testing with James Bach (video)](https://www.youtube.com/watch?v=SAhJf36_u5U) - - [ ] [Open Lecture by James Bach on Software Testing (video)](https://www.youtube.com/watch?v=ILkT_HV9DVU) - - [ ] [Steve Freeman - Test-Driven Development (that’s not what we meant) (video)](https://vimeo.com/83960706) - - [slides](http://gotocon.com/dl/goto-berlin-2013/slides/SteveFreeman_TestDrivenDevelopmentThatsNotWhatWeMeant.pdf) - - [ ] [TDD is dead. Long live testing.](http://david.heinemeierhansson.com/2014/tdd-is-dead-long-live-testing.html) - - [ ] [Is TDD dead? (video)](https://www.youtube.com/watch?v=z9quxZsLcfo) - - [ ] [Video series (152 videos) - not all are needed (video)](https://www.youtube.com/watch?v=nzJapzxH_rE&list=PLAwxTw4SYaPkWVHeC_8aSIbSxE_NXI76g) - - [ ] [Test-Driven Web Development with Python](http://www.obeythetestinggoat.com/pages/book.html#toc) - - [ ] Dependency injection: - - [ ] [video](https://www.youtube.com/watch?v=IKD2-MAkXyQ) - - [ ] [Tao Of Testing](http://jasonpolites.github.io/tao-of-testing/ch3-1.1.html) - - [ ] [How to write tests](http://jasonpolites.github.io/tao-of-testing/ch4-1.1.html) + - Abarcar / Cubrir: + - Como funciona el testing + - Que son mocks de objetos + - Que son tests de integracion + - Que es inyección de dependencias + - [ ] [Testing de Software Ágil con James Bach (video)](https://www.youtube.com/watch?v=SAhJf36_u5U) + - [ ] [Artículo de James Bach acerca de Testing de Software (video)](https://www.youtube.com/watch?v=ILkT_HV9DVU) + - [ ] [Steve Freeman - Desarrollo conducido por tests (Test-Driven Development, TDD) - Eso no fue lo que quisimos decir (video)](https://vimeo.com/83960706) + - [Diapositivas](http://gotocon.com/dl/goto-berlin-2013/slides/SteveFreeman_TestDrivenDevelopmentThatsNotWhatWeMeant.pdf) + - [ ] [TDD está muerto. Larga vida al testing.](http://david.heinemeierhansson.com/2014/tdd-is-dead-long-live-testing.html) + - [ ] [TDD está muerto? (video)](https://www.youtube.com/watch?v=z9quxZsLcfo) + - [ ] [Series (152 videos) - No todos son necesarios (video)](https://www.youtube.com/watch?v=nzJapzxH_rE&list=PLAwxTw4SYaPkWVHeC_8aSIbSxE_NXI76g) + - [ ] [TDD para Web con Python](http://www.obeythetestinggoat.com/pages/book.html#toc) + - [ ] Inyeccion de dependencias: + - [ ] [Video](https://www.youtube.com/watch?v=IKD2-MAkXyQ) + - [ ] [Tao del Testing](http://jasonpolites.github.io/tao-of-testing/ch3-1.1.html) + - [ ] [Como escribir tests](http://jasonpolites.github.io/tao-of-testing/ch4-1.1.html) -- ### Scheduling - - in an OS, how it works - - can be gleaned from Operating System videos +- ### Planificador + - En el sistema operativo, como funciona + - Puede ser extraído de videos acerca de sistemas operativos -- ### Implement system routines - - understand what lies beneath the programming APIs you use - - can you implement them? +- ### Implementar rutinas del sistema + - Entender que hay debajo de las APIs de programación que utilizas + - Las puedes implementar? -- ### String searching & manipulations - - [ ] [Sedgewick - Suffix Arrays (video)](https://www.youtube.com/watch?v=HKPrVm5FWvg) - - [ ] [Sedgewick - Substring Search (videos)](https://www.youtube.com/watch?v=2LvvVFCEIv8&list=PLe-ggMe31CTdAdjXB3lIuf2maubzo9t66&index=5) - - [ ] [1. Introduction to Substring Search](https://www.youtube.com/watch?v=2LvvVFCEIv8&list=PLe-ggMe31CTdAdjXB3lIuf2maubzo9t66&index=5) - - [ ] [2. Brute-Force Substring Search](https://www.youtube.com/watch?v=CcDXwIGEXYU&list=PLe-ggMe31CTdAdjXB3lIuf2maubzo9t66&index=4) +- ### Búsqueda de strings y manipulación + - [ ] [Sedgewick - Array de sufijos (video)](https://www.youtube.com/watch?v=HKPrVm5FWvg) + - [ ] [Sedgewick - Búsqueda de substrings (videos)](https://www.youtube.com/watch?v=2LvvVFCEIv8&list=PLe-ggMe31CTdAdjXB3lIuf2maubzo9t66&index=5) + - [ ] [1. Introducción a la búsqueda de substrings](https://www.youtube.com/watch?v=2LvvVFCEIv8&list=PLe-ggMe31CTdAdjXB3lIuf2maubzo9t66&index=5) + - [ ] [2. Búsqueda de substrings por fuerza bruta](https://www.youtube.com/watch?v=CcDXwIGEXYU&list=PLe-ggMe31CTdAdjXB3lIuf2maubzo9t66&index=4) - [ ] [3. Knuth-Morris Pratt](https://www.youtube.com/watch?v=n-7n-FDEWzc&index=3&list=PLe-ggMe31CTdAdjXB3lIuf2maubzo9t66) - [ ] [4. Boyer-Moore](https://www.youtube.com/watch?v=fI7Ch6pZXfM&list=PLe-ggMe31CTdAdjXB3lIuf2maubzo9t66&index=2) - [ ] [5. Rabin-Karp](https://www.youtube.com/watch?v=QzI0p6zDjK4&index=1&list=PLe-ggMe31CTdAdjXB3lIuf2maubzo9t66) - - [ ] [Search pattern in text (video)](https://www.coursera.org/learn/data-structures/lecture/tAfHI/search-pattern-in-text) + - [ ] [Búsqueda en texto por patrón (video)](https://www.coursera.org/learn/data-structures/lecture/tAfHI/search-pattern-in-text) - If you need more detail on this subject, see "String Matching" section in [Additional Detail on Some Subjects](#additional-detail-on-some-subjects) + Si necesitas más detalles acerca de este tema, ve a la sección "String Matching" en [Información adicional en algunos temas](#informacion-adicional-en-algunos-temas) --- @@ -1881,7 +1881,7 @@ You're never really done. -- -## Additional Detail on Some Subjects +## Información adicional en algunos temas I added these to reinforce some ideas already presented above, but didn't want to include them above because it's just too much. It's easy to overdo it on a subject. From cbf7beb8a84419dffa1d9edb767465df36a8004c Mon Sep 17 00:00:00 2001 From: Daniel Ossorio Date: Mon, 2 Jan 2017 13:56:01 +0100 Subject: [PATCH 12/17] README-es.md moved to translations folder --- README-es.md => translations/README-es.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename README-es.md => translations/README-es.md (99%) diff --git a/README-es.md b/translations/README-es.md similarity index 99% rename from README-es.md rename to translations/README-es.md index a9bd641..6a0e556 100644 --- a/README-es.md +++ b/translations/README-es.md @@ -1,6 +1,6 @@ # Google Interview University -Version original: [Inglés](README.md) +Version original: [Inglés](../README.md) ## ¿Qué es? @@ -313,7 +313,7 @@ Lee mas sobre elecciones: - http://blog.codingforinterviews.com/best-programming-language-jobs/ - https://www.quora.com/What-is-the-best-language-to-program-in-for-an-in-person-Google-interview -[See language resources here](programming-language-resources.md) +[See language resources here](../programming-language-resources.md) Verás algo de C, C++, y aprendizaje Python abajo, porque estoy aprendiendo. Hay algunos libros involucrados, ve abajo. @@ -369,7 +369,7 @@ If you have more time (I want this book): If you read though one of these, you should have all the data structures and algorithms knowledge you'll need to start doing coding problems. **You can skip all the video lectures in this project**, unless you'd like a review. -[Additional language-specific resources here.](programming-language-resources.md) +[Additional language-specific resources here.](../programming-language-resources.md) ### C++ From a749ece79534ffcec2e1ac56177d196da31bb7df Mon Sep 17 00:00:00 2001 From: Daniel Ossorio Date: Mon, 2 Jan 2017 13:58:34 +0100 Subject: [PATCH 13/17] MiguelMB comment --- translations/README-es.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translations/README-es.md b/translations/README-es.md index 6a0e556..06d3c75 100644 --- a/translations/README-es.md +++ b/translations/README-es.md @@ -254,7 +254,7 @@ Cursos en línea abiertos masivos). A veces las clases no están disponibles, por lo que tienes que esperar un par de meses, lo que significa que no tienes acceso. Los cursos de Lynda.com no son gratis. - Agradecería tu ayuda para añadir recursos públicos gratis, que siempre estuvieran disponibles, como video s de YouTube + Agradecería tu ayuda para añadir recursos públicos gratis, que siempre estuvieran disponibles, como videos de YouTube para acompañar los videos de cursos online. Me gusta usar recursos procedentes de universidades. From d205c31357c42973663c4866dda5974b866e104e Mon Sep 17 00:00:00 2001 From: Daniel Ossorio Date: Mon, 2 Jan 2017 14:43:37 +0100 Subject: [PATCH 14/17] Chunk branch updated --- translations/README-es.md | 52 +++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/translations/README-es.md b/translations/README-es.md index 06d3c75..f2e810d 100644 --- a/translations/README-es.md +++ b/translations/README-es.md @@ -32,7 +32,7 @@ Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de s - [¿Qué es?](#qué-es) - [¿Por qué usarlo?](#por-qué-usarlo) -- [Cómo-usarlo](#cómo-usarlo) +- [Cómo usarlo](#cómo-usarlo) - [Envuelvete en la googlemanía](#envuelvete-en-la-googlemanía) - [¿Cómo conseguí el trabajo en Google?](#como-consegui-el-trabajo-en-google) - [Sigue el progreso conmigo](#sigue-el-progreso-conmigo) @@ -40,8 +40,8 @@ Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de s - [Acerca de Google](#acerca-de-google) - [Acerca de los recursos en vídeo](#acerca-de-los-recursos-en-video) - [Prepárate para la entrevista](#preparate-para-la-entrevista) -- [Pick One Language for the Interview](#pick-one-language-for-the-interview) -- [Book List](#book-list) +- [Escoge un lenguaje para la entrevista](#escoge-un-lenguaje-para-la-entrevista) +- [Lista de libros](#lista-de-libros) - [Before you Get Started](#before-you-get-started) - [What you Won't See Covered](#what-you-wont-see-covered) - [Prerequisite Knowledge](#prerequisite-knowledge) @@ -291,53 +291,53 @@ Los cursos de Lynda.com no son gratis. - [ ] ['Como conseguir un trabajo en una de las 4 grandes - Amazon, Facebook, Google & Microsoft' (video)](https://www.youtube.com/watch?v=YJZCUhxNCv8) - [ ] [Haciendo las entrevistas de Google mal](http://alexbowe.com/failing-at-google-interviews/) -## Selecciona un lenguaje para la entrevista +## Escoge un lenguaje para la entrevista Escribí un articulo pequeño sobre esto: [Important: Pick One Language for the Google Interview](https://googleyasheck.com/important-pick-one-language-for-the-google-interview/) -Puedes usar un lenguaje en el que estas cómodo para hacer la parte de código para la entrevista, pero para Google, estas selecciones son sólidas: +Puedes usar un lenguaje en el que estas cómodo para hacer la parte de código para la entrevista, pero para Google, estas son buenas elecciones: - C++ - Java - Python -También podrías usar estos. Pueden haber advertencias: +También podrías usar éstos, pero busca información primero. Puede haber advertencias: - JavaScript - Ruby -Necesitas ser muy cómodo en el lenguaje y conocerlo bien. +Debes sentirte muy cómodo con el lenguaje y ser experto. -Lee mas sobre elecciones: +Lee más acerca de opciones: - http://www.byte-by-byte.com/choose-the-right-language-for-your-coding-interview/ - http://blog.codingforinterviews.com/best-programming-language-jobs/ - https://www.quora.com/What-is-the-best-language-to-program-in-for-an-in-person-Google-interview -[See language resources here](../programming-language-resources.md) +[Ve recursos de programas aquí](../programming-language-resources.md) -Verás algo de C, C++, y aprendizaje Python abajo, porque estoy aprendiendo. Hay algunos libros involucrados, ve abajo. +Verás algunos materiales de aprendizaje de C, C++ y Python abajo, porque estoy aprendiendo. Hay algunos libros involucrados, ve al final. -## Book List +## Lista de libros -This is a shorter list than what I used. This is abbreviated to save you time. +Ésta es una lista más corta que la que yo usé. Está abreviada para ahorrarte tiempo. -### Interview Prep +### Preparación para la entrevista -- [ ] [Programming Interviews Exposed: Secrets to Landing Your Next Job, 2nd Edition](http://www.wiley.com/WileyCDA/WileyTitle/productCd-047012167X.html) - - answers in C++ and Java - - recommended in Google candidate coaching - - this is a good warm-up for Cracking the Coding Interview - - not too difficult, most problems may be easier than what you'll see in an interview (from what I've read) -- [ ] [Cracking the Coding Interview, 6th Edition](http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/) - - answers in Java - - recommended on the [Google Careers site](https://www.google.com/about/careers/how-we-hire/interview/) - - If you see people reference "The Google Resume", it was a book replaced by "Cracking the Coding Interview". +- [ ] [Entrevistas de Programación Expuestas: Secretos para Conseguir tu Próximo Trabajo, 2a Edición](http://www.wiley.com/WileyCDA/WileyTitle/productCd-047012167X.html) + - respuestas en C++ y Java + - recommendado en entrenamiento para candidato Goole + - éste es un buen calentamiento para Cracking la Entrevista de Programación + - no muy difícil, la mayoría de los problemas podrían ser más fáciles que lo que verás en una entrevista (por lo que he leído) +- [ ] [Cracking la Entrevista de Programación, 6a Edición](http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/) + - respuestas en Java + - recommendado en el [sitio de Google Careers](https://www.google.com/about/careers/how-we-hire/interview/) + - si ves personas que hacen referencia a "El Currículum Google", éste era un libro reemplazado por "Cracking la Entrevista de Programación". -If you have tons of extra time: +Si tienes mucho tiempo extra: -- [ ] [Elements of Programming Interviews](https://www.amazon.com/Elements-Programming-Interviews-Insiders-Guide/dp/1479274836) - - all code is in C++, very good if you're looking to use C++ in your interview - - a good book on problem solving in general. +- [ ] [Elementos de las Entrevistas de Trabajo](https://www.amazon.com/Elements-Programming-Interviews-Insiders-Guide/dp/1479274836) + - todo el código está en C++, muy bueno si has optado por C++ en tu entrevista + - un libro sobre solución de problemas en general. ### Computer Architecture From abfb8f35b345cdcfc4c859238198071d2594884f Mon Sep 17 00:00:00 2001 From: Severiano Jaramillo Quintanar Date: Mon, 2 Jan 2017 21:24:15 -0600 Subject: [PATCH 15/17] Traslated chunk 6.2 closes #31 Translated Before you Get Started and What you Won't See Covered --- translations/README-es.md | 64 +++++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/translations/README-es.md b/translations/README-es.md index f2e810d..8709708 100644 --- a/translations/README-es.md +++ b/translations/README-es.md @@ -42,8 +42,8 @@ Si lo que quieres es ser ingeniero de escalabilidad / seguridad o ingeniero de s - [Prepárate para la entrevista](#preparate-para-la-entrevista) - [Escoge un lenguaje para la entrevista](#escoge-un-lenguaje-para-la-entrevista) - [Lista de libros](#lista-de-libros) -- [Before you Get Started](#before-you-get-started) -- [What you Won't See Covered](#what-you-wont-see-covered) +- [Antes de que Comiences](#antes-de-que-comiences) +- [Lo que no Verás Cubierto](#lo-que-no-verás-cubierto) - [Prerequisite Knowledge](#prerequisite-knowledge) - [The Daily Plan](#the-daily-plan) - [Algorithmic complexity / Big-O / Asymptotic analysis](#algorithmic-complexity--big-o--asymptotic-analysis) @@ -451,60 +451,60 @@ OR: - Would rather spend time on coding problems from another book or online coding problems. -## Before you Get Started +## Antes de que Comiences -This list grew over many months, and yes, it kind of got out of hand. +Esta lista creció durante muchos meses, y sí, más o menos se salió de mis manos. -Here are some mistakes I made so you'll have a better experience. +Aquí están algunos errores que cometí para que tú tengas una mejor experiencia. -### 1. You Won't Remember it All +### 1. No lo Recordarás Todo -I watched hours of videos and took copious notes, and months later there was much I didn't remember. I spent 3 days going -through my notes and making flashcards so I could review. +Ví horas de videos y tomé muchas notas, y meses después había muchas cosas que no recordaba. Pasé tres días repasando +mis notas y haciendo tarjetas de memoria para así poder repasar. -Read please so you won't make my mistakes: +Lee por favor para que no cometas mis errores: -[Retaining Computer Science Knowledge](https://googleyasheck.com/retaining-computer-science-knowledge/) +[Reteniendo Conocimiento en Ciencias de la Computación](https://googleyasheck.com/retaining-computer-science-knowledge/) -### 2. Use Flashcards +### 2. Usa Tarjetas de Memoria -To solve the problem, I made a little flashcards site where I could add flashcards of 2 types: general and code. -Each card has different formatting. +Para resolver el problema, hice un sitio para pequeñas tarjetas de memoria donde podía agregar tarjetas de 2 tipos: generales y de código. +Cada tarjeta tiene un formato diferente. -I made a mobile-first website so I could review on my phone and tablet, wherever I am. +Hice un sitio web para móviles para que pudiera revisar en mi teléfono o tableta, donde sea que estaba. -Make your own for free: +Haz el tuyo gratis: -- [Flashcards site repo](https://github.com/jwasham/computer-science-flash-cards) -- [My flash cards database](https://github.com/jwasham/computer-science-flash-cards/blob/master/cards-jwasham.db): Keep in mind I went overboard and have cards covering everything from assembly language and Python trivia to machine learning and statistics. It's way too much for what's required by Google. +- [Repositorio de sitio de tarjetas de memoria](https://github.com/jwasham/computer-science-flash-cards) +- [Mi base de datos de tarjetas de memoria](https://github.com/jwasham/computer-science-flash-cards/blob/master/cards-jwasham.db): Toma en cuenta que yo fui muy lejos y tengo tarjetas cubriendo todo desde lenguaje ensamblador y Python trivia hasta aprendizaje de máquinas y estadística. Es mucho para lo requerido por Google. -**Note on flashcards:** The first time you recognize you know the answer, don't mark it as known. You have to see the -same card and answer it several times correctly before you really know it. Repetition will put that knowledge deeper in -your brain. +**Nota en tarjetas de memoria:** La primera vez que te das cuenta que conoces la respuesta, no la marques como conocida. Tienes que ver la +misma carta y responderla correctamente muchas veces antes de que realmente la conozcas. La repetición pondrá ese conocimiento más profundo en +tu cerebro. -An alternative to using my flashcard site is [Anki](http://ankisrs.net/), which has been recommended to me numerous times. It uses a repetition system to help you remember. -It's user-friendly, available on all platforms and has a cloud sync system. It costs $25 on iOS but is free on other platforms. +Una alternativa a usar mi sitio de tarjetas de memoria es [Anki](http://ankisrs.net/), el cuál me han recomendado numerosas veces. Usa un sistema de repetición que te ayuda a recordar. +Es amigable con el usuario, disponible en todas las plataformas y tiene un sistema de sincronización en la nube. Cuesta $25 USD para iOS pero es gratis para otras plataformas. -My flashcard database in Anki format: https://ankiweb.net/shared/info/25173560 (thanks [@xiewenya](https://github.com/xiewenya)) +Mi base de datos de tarjetas de memoria en formato Anki: https://ankiweb.net/shared/info/25173560 (gracias [@xiewenya](https://github.com/xiewenya)) -### 3. Review, review, review +### 3. Revisa, revisa, revisa -I keep a set of cheat sheets on ASCII, OSI stack, Big-O notations, and more. I study them when I have some spare time. +Yo mantengo un conjunto de hojas de trucos en ASCII, pila OSI, notación Big-O, y más. Las estudio cuando tengo un poco de tiempo libre. -Take a break from programming problems for a half hour and go through your flashcards. +Toma un descanso de problemas de programación por media hora y revisa tus tarjetas de memoria. -### 4. Focus +### 4. Enfócate -There are a lot of distractions that can take up valuable time. Focus and concentration are hard. +Hay muchas distracciones que pueden quitarte tiempo valioso. El enfoque y la concentración son difíciles. -## What you won't see covered +## Lo que no Verás Cubierto -This big list all started as a personal to-do list made from Google interview coaching notes. These are prevalent -technologies but were not mentioned in those notes: +Esta gran lista comenzó como una lista personal de cosas por hacer hecha de notas de entrenamiento para entrevista en Google. Estas son tecnologas predominantes +pero no fueron mencionadas en esas notas. - SQL - Javascript -- HTML, CSS, and other front-end technologies +- HTML, CSS, y otras tecnologías de front-end. ## The Daily Plan From ee31f725643a8ade85ccbbc5187db922cad7cc24 Mon Sep 17 00:00:00 2001 From: Alan Garcia Date: Mon, 2 Jan 2017 22:29:17 -0700 Subject: [PATCH 16/17] Translate chunk 15 --- README.md | 70 +++++++++++++++++++++++++++---------------------------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index c5fc22c..c71d60f 100644 --- a/README.md +++ b/README.md @@ -123,10 +123,10 @@ If you want to be a reliability engineer or systems engineer, study more from th - [Entropy](#entropy) - [Cryptography](#cryptography) - [Compression](#compression) - - [Networking](#networking) (if you have networking experience or want to be a systems engineer, expect questions) - - [Computer Security](#computer-security) - - [Garbage collection](#garbage-collection) - - [Parallel Programming](#parallel-programming) + - [Redes](#redes) (si tienes experiencia en redes o quieres ser ingeniero de sistemas, espera preguntas) + - [Seguridad informática](#seguridad-informática) + - [Recolección de basura](#recolección-de-basura) + - [Programación paralela](#programación-paralela) - [Messaging, Serialization, and Queueing Systems](#messaging-serialization-and-queueing-systems) - [Fast Fourier Transform](#fast-fourier-transform) - [Bloom Filter](#bloom-filter) @@ -1613,45 +1613,45 @@ You're never really done. - [ ] [Compressor Head videos](https://www.youtube.com/playlist?list=PLOU2XLYxmsIJGErt5rrCqaSGTMyyqNt2H) - [ ] [(optional) Google Developers Live: GZIP is not enough!](https://www.youtube.com/watch?v=whGwm0Lky2s) -- ### Networking - - **if you have networking experience or want to be a systems engineer, expect questions** - - otherwise, this is just good to know +- ### Redes + - **si tienes experiencia en redes o quieres ser ingeniero en sistemas, espera preguntas** + - pero de cualquier forma es bueno saber lo siguiente - [ ] [Khan Academy](https://www.khanacademy.org/computing/computer-science/internet-intro) - - [ ] [UDP and TCP: Comparison of Transport Protocols](https://www.youtube.com/watch?v=Vdc8TCESIg8) - - [ ] [TCP/IP and the OSI Model Explained!](https://www.youtube.com/watch?v=e5DEVa9eSN0) - - [ ] [Packet Transmission across the Internet. Networking & TCP/IP tutorial.](https://www.youtube.com/watch?v=nomyRJehhnM) + - [ ] [UDP y TCP: Comparación de protocolos de transporte](https://www.youtube.com/watch?v=Vdc8TCESIg8) + - [ ] [TCP/IP y el modelo OSI, ¡explicado!](https://www.youtube.com/watch?v=e5DEVa9eSN0) + - [ ] [Transmisión de paquetes a través del Internet. Tutorial en redes y TCP/IP.](https://www.youtube.com/watch?v=nomyRJehhnM) - [ ] [HTTP](https://www.youtube.com/watch?v=WGJrLqtX7As) - - [ ] [SSL and HTTPS](https://www.youtube.com/watch?v=S2iBR2ZlZf0) + - [ ] [SSL y HTTPS](https://www.youtube.com/watch?v=S2iBR2ZlZf0) - [ ] [SSL/TLS](https://www.youtube.com/watch?v=Rp3iZUvXWlM) - [ ] [HTTP 2.0](https://www.youtube.com/watch?v=E9FxNzv1Tr8) - - [ ] [Video Series (21 videos)](https://www.youtube.com/playlist?list=PLEbnTDJUr_IegfoqO4iPnPYQui46QqT0j) - - [ ] [Subnetting Demystified - Part 5 CIDR Notation](https://www.youtube.com/watch?v=t5xYI0jzOf4) + - [ ] [Serie de vídeos (21 vídeos)](https://www.youtube.com/playlist?list=PLEbnTDJUr_IegfoqO4iPnPYQui46QqT0j) + - [ ] [Subredes desmistificadas - Notación CIDR Parte 5](https://www.youtube.com/watch?v=t5xYI0jzOf4) -- ### Computer Security - - [MIT (23 videos)](https://www.youtube.com/playlist?list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - - [ ] [Introduction, Threat Models](https://www.youtube.com/watch?v=GqmQg-cszw4&index=1&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - - [ ] [Control Hijacking Attacks](https://www.youtube.com/watch?v=6bwzNg5qQ0o&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh&index=2) - - [ ] [Buffer Overflow Exploits and Defenses](https://www.youtube.com/watch?v=drQyrzRoRiA&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh&index=3) - - [ ] [Privilege Separation](https://www.youtube.com/watch?v=6SIJmoE9L9g&index=4&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - - [ ] [Capabilities](https://www.youtube.com/watch?v=8VqTSY-11F4&index=5&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - - [ ] [Sandboxing Native Code](https://www.youtube.com/watch?v=VEV74hwASeU&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh&index=6) - - [ ] [Web Security Model](https://www.youtube.com/watch?v=chkFBigodIw&index=7&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - - [ ] [Securing Web Applications](https://www.youtube.com/watch?v=EBQIGy1ROLY&index=8&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - - [ ] [Symbolic Execution](https://www.youtube.com/watch?v=yRVZPvHYHzw&index=9&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - - [ ] [Network Security](https://www.youtube.com/watch?v=SIEVvk3NVuk&index=11&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - - [ ] [Network Protocols](https://www.youtube.com/watch?v=QOtA76ga_fY&index=12&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - - [ ] [Side-Channel Attacks](https://www.youtube.com/watch?v=PuVMkSEcPiI&index=15&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) +- ### Seguridad informática + - [MIT (23 vídeos)](https://www.youtube.com/playlist?list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) + - [ ] [Introducción, modelos de amenaza](https://www.youtube.com/watch?v=GqmQg-cszw4&index=1&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) + - [ ] [Ataques de secuestro de control](https://www.youtube.com/watch?v=6bwzNg5qQ0o&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh&index=2) + - [ ] [Desbordamientos de búfer: ataques y defensas](https://www.youtube.com/watch?v=drQyrzRoRiA&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh&index=3) + - [ ] [Separación de privilegios](https://www.youtube.com/watch?v=6SIJmoE9L9g&index=4&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) + - [ ] [Capacidades](https://www.youtube.com/watch?v=8VqTSY-11F4&index=5&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) + - [ ] [Aislamiento de código nativo](https://www.youtube.com/watch?v=VEV74hwASeU&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh&index=6) + - [ ] [Modelo de seguridad web](https://www.youtube.com/watch?v=chkFBigodIw&index=7&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) + - [ ] [Asegurando aplicaciones web](https://www.youtube.com/watch?v=EBQIGy1ROLY&index=8&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) + - [ ] [Ejecución simbólica](https://www.youtube.com/watch?v=yRVZPvHYHzw&index=9&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) + - [ ] [Seguridad de redes](https://www.youtube.com/watch?v=SIEVvk3NVuk&index=11&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) + - [ ] [Protocolos de red](https://www.youtube.com/watch?v=QOtA76ga_fY&index=12&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) + - [ ] [Ataque de canal lateral](https://www.youtube.com/watch?v=PuVMkSEcPiI&index=15&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) -- ### Garbage collection - - [ ] [Garbage collection (Java); Augmenting data str (video)](https://www.youtube.com/watch?v=StdfeXaKGEc&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=25) - - [ ] [Compilers (video)](https://www.youtube.com/playlist?list=PLO9y7hOkmmSGTy5z6HZ-W4k2y8WXF7Bff) - - [ ] [GC in Python (video)](https://www.youtube.com/watch?v=iHVs_HkjdmI) - - [ ] [Deep Dive Java: Garbage Collection is Good!](https://www.infoq.com/presentations/garbage-collection-benefits) - - [ ] [Deep Dive Python: Garbage Collection in CPython (video)](https://www.youtube.com/watch?v=P-8Z0-MhdQs&list=PLdzf4Clw0VbOEWOS_sLhT_9zaiQDrS5AR&index=3) +- ### Recolección de basura +    - [ ] [Recolección de basura (Java); Aumentando estructuras de datos (vídeo)](https://www.youtube.com/watch?v=StdfeXaKGEc&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=25) + - [ ] [Compiladores (vídeo)](https://www.youtube.com/playlist?list=PLO9y7hOkmmSGTy5z6HZ-W4k2y8WXF7Bff) + - [ ] [Recolección de basura en Python (vídeo)](https://www.youtube.com/watch?v=iHVs_HkjdmI) + - [ ] [Deep Dive Java: ¡La recolección de basura es buena!](https://www.infoq.com/presentations/garbage-collection-benefits) +    - [ ] [Deep Dive Python: La recolección de basura en CPython (vídeo)](https://www.youtube.com/watch?v=P-8Z0-MhdQs&list=PLdzf4Clw0VbOEWOS_sLhT_9zaiQDrS5AR&index=3) -- ### Parallel Programming +- ### Programación paralela - [ ] [Coursera (Scala)](https://www.coursera.org/learn/parprog1/home/week/1) - - [ ] [Efficient Python for High Performance Parallel Computing (video)](https://www.youtube.com/watch?v=uY85GkaYzBk) + - [ ] [Python eficiente para computación paralela de alto rendimiento (vídeo)](https://www.youtube.com/watch?v=uY85GkaYzBk) - ### Messaging, Serialization, and Queueing Systems - [ ] [Thrift](https://thrift.apache.org/) From 12998184fcb090039099aa4a7573a87c3bff6fa6 Mon Sep 17 00:00:00 2001 From: Alan Garcia Date: Mon, 2 Jan 2017 22:33:42 -0700 Subject: [PATCH 17/17] Update README-es.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c71d60f..0071920 100644 --- a/README.md +++ b/README.md @@ -1643,11 +1643,11 @@ You're never really done. - [ ] [Ataque de canal lateral](https://www.youtube.com/watch?v=PuVMkSEcPiI&index=15&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - ### Recolección de basura -    - [ ] [Recolección de basura (Java); Aumentando estructuras de datos (vídeo)](https://www.youtube.com/watch?v=StdfeXaKGEc&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=25) + - [ ] [Recolección de basura (Java); Aumentando estructuras de datos (vídeo)](https://www.youtube.com/watch?v=StdfeXaKGEc&list=PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd&index=25) - [ ] [Compiladores (vídeo)](https://www.youtube.com/playlist?list=PLO9y7hOkmmSGTy5z6HZ-W4k2y8WXF7Bff) - [ ] [Recolección de basura en Python (vídeo)](https://www.youtube.com/watch?v=iHVs_HkjdmI) - [ ] [Deep Dive Java: ¡La recolección de basura es buena!](https://www.infoq.com/presentations/garbage-collection-benefits) -    - [ ] [Deep Dive Python: La recolección de basura en CPython (vídeo)](https://www.youtube.com/watch?v=P-8Z0-MhdQs&list=PLdzf4Clw0VbOEWOS_sLhT_9zaiQDrS5AR&index=3) + - [ ] [Deep Dive Python: La recolección de basura en CPython (vídeo)](https://www.youtube.com/watch?v=P-8Z0-MhdQs&list=PLdzf4Clw0VbOEWOS_sLhT_9zaiQDrS5AR&index=3) - ### Programación paralela - [ ] [Coursera (Scala)](https://www.coursera.org/learn/parprog1/home/week/1)