Last active
August 26, 2020 13:46
-
-
Save amatiasq/434a6cae6272e79605317d20dd2d2f82 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let url = ''; | |
a | |
.split('\n') | |
.map(x => { | |
if (!x) { | |
return x; | |
} | |
if (x.startsWith('- [Lesson ')) { | |
const match = x.match(/\]\((https:.*)\)$/); | |
url = match[1]; | |
return x; | |
} | |
const match = x.match(/^\s+- (\d+):(\d+)(?::(\d+))?/) | |
const time = Array.from(match).slice(1).filter(Boolean).map(x => parseInt(x, 10)) | |
const hours = time.length === 3 ? time.shift() : 0; | |
const minutes = time.shift(); | |
const seconds = time.shift(); | |
const strHour = hours ? `${hours}h` : '' | |
const strMins = hours || minutes ? `${minutes}m` : '' | |
const strSecs = hours || minutes || seconds ? `${seconds}s` : '' | |
const t = strSecs ? `${strHour}${strMins}${strSecs}` : '0'; | |
return x.replace(/(\d+:\d+(:\d+)?)\s+/, `[$1](${url}&t=${t}) `) | |
}) | |
.join('\n') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const a = `- [Lesson 1 - Clean Code](https://www.youtube.com/watch?v=7EmboKQH8lM) | |
- 0:00 Event Presentation | |
- 2:03 Presenter Introduces Uncle Bob | |
- 3:41 Uncle Bob Introduction / My Tribe | |
- 4:49 How Far is the Sun? | |
- 10:52 Introduction to Clean Code | |
- 12:21 The current Society works with Software | |
- 19:47 Volkswagen case / Introduction to the Ethics of Software Development | |
- 24:28 Why are Programmers so slow? | |
- 32:13 What is a Clean Code? | |
- 40:09 Analyzing some lines of code | |
- 43:43 Long code is not Good Code | |
- 49:25 Good Code / Refactored Function | |
- 52:40 Polite Code / Rules for writing a news paper article | |
- 55:25 Shrunk Code / The Rules of Functions | |
- 1:00:23 Shrunk Code / Drawing a Function | |
- 1:05:36 When and why was Java invented? | |
- 1:08:52 Prose Code / Arguments | |
- 1:16:13 Avoid Switch Statements / Problems and Evolution of some programming languages | |
- 1:26:15 The Uncle Bob's wife message (funny moment) | |
- 1:27:22 Output Arguments No Side Effects / Garbage Collection | |
- 1:32:21 No Side Effects / Using Lambda | |
- 1:34:26 No Side Effects / Command and Query Separation | |
- 1:35:30 No Side Effects / Prefer Exceptions to returning error codes | |
- 1:37:05 DRI Principle (Don't Repeat Yourself) | |
- 1:39:21 Structured Programming / Edsger Dijkstra Vision vs Actual Vision of the programming - 1:45:32 Science and Correct Software | |
- [Lesson 2 - Comments](https://www.youtube.com/watch?v=2a_ytyt9sf8) | |
- 0:00 Where did the moon come from? | |
- 4:56 What is the Purpose of the Comment? / About Fortran | |
- 8:47 Schindler List / Right and Wrong reason to do comment | |
- 10:02 Comments are a last resort / The proper use of comments | |
- 11:02 Comments Lie | |
- 13:07 Comments do not make up for bad code / Explain Yourself in code | |
- 15:11 Legal and Informative Comments / About Design Patterns book | |
- 20:43 Explanation of Intent / Clarification | |
- 23:21 Warning of Consequences / TODO Comments | |
- 25:59 Amplification / Javadocs in Public APIs | |
- 27:35 Bad and Redundant Comments / Mumbling | |
- 31:25 Mandated Comments | |
- 33:01 Journal Comments / Source code control system | |
- 34:16 Noise Comments / Scary Noise / Use explanatory code, not comments | |
- 36:20 Position Markers / Closing Brace Comments / Attributions and Bylines | |
- 37:43 Commented - Out Code / HTML in comments ICK! | |
- 40:05 Non - Local Information | |
- 41:45 How many lines should there be in a source file? | |
- 46:31 Analysis of the lengths of lines | |
- 50:11 Names are Everywhere / Reveal your intent / Rules to write Names | |
- 58:44 Disambiguate / Avoid Convenient Mispellings | |
- 1:00:41 Number Series / Noise Words / Distinguish Names Meaninfully | |
- 1:02:55 How much time should you spend on a Code Review? | |
- [Lesson 3 - Professionalism](https://www.youtube.com/watch?v=Qjywrq2gM8o) | |
- 0:00 Start | |
- 0:23 About our genetic origins. | |
- 9:36 I am your new CTO / About the growth rate of programmers and it effects. | |
- 17:25 Expectations / We will Not Ship Shit. | |
- 21:36 We will always be ready / Iteration Length. | |
- 25:51 Stable Productivity. | |
- 28:14 Inexpensive Adaptability / The software must be changeable. | |
- 30:38 Continuous Improvement / The code should improve over time. | |
- 31:46 Fearless Competence / Conquer the fear with Test. | |
- 42:35 We will not dump on QA / QA will find nothing. | |
- 46:30 Automation! | |
- 51:20 We cover for each other / Teamwork. | |
- 55:40 Introduction to "Honest Estimates". | |
- [Lesson 4 - TDD](https://www.youtube.com/watch?v=58jGpV2Cg50) | |
- 0:00 Opening. | |
- 0:51 Honest Estimates / What is the chemical formula of water? | |
- 7:16 Selection, Secuence and Interaction / No innovations have been made in the software for decades. | |
- 13:48 The Hardware has gone crazy!: comparison between the innovation level of hardware and software today. | |
- 17:33 You to say "No". | |
- 21:40 Test-Driven Development / TDD rules. | |
- 36:14 Our code is a document / Double entry Bookkeeping. | |
- 40:22 About inheritance / Mutation Testing. | |
- 43:48 Demo of Test-Driven Development. | |
- 1:12:23 Some tips to learn and practice Test-Driven Development. | |
- 1:15:03 Questions and Answers. | |
- [Lesson 5 - Architecture](https://www.youtube.com/watch?v=sn0aFEMVTpA) | |
- 0:00 Opening. | |
- 3:25 Dick Vlot about Architecture and Agile Software Development. | |
- 9:30 Presentation of Uncle Bob. | |
- 11:19 Diffraction: Why do incandescent lights glow? | |
- 15:27 Architecture Introduction / I've built lots of apps / "I want to be a programmer" anecdote. | |
- 26:09 The Architecture rules are independent of every other variable. | |
- 29:21 Working vs. Right. | |
- 30:45 What is Design in Architecture? | |
- 31:50 What is the goal of Software Architecture? | |
- 33:28 Case study of bad Architecture. | |
- 38:55 Executive View / What went wrong / Secret to going fast. | |
- 44:43 Messes aren't faster even in the short term. | |
- 48:15 Solution of the Executive's Dilema / Two Values of Sofware. | |
- 52:41 Behavior / Are we going to see self driving cars? | |
- 1:00:14 Scope vs. Shape / Stakeholders want changes. | |
- 1:10:33 Urgency and Importance / Eisenhower Matrix. | |
- 1:13:09 Fight for the Architecture. | |
- 1:15:14 A Rails App / The web is a Ddelivery Mechanism. | |
- 1:19:06 Architecture Floor Plans / A Use Case Driven Approach. | |
- 1:24:05 Interactors / Entities / Interfaces Objects. | |
- 1:27:11 Request Model. | |
- 1:30:21 What about MCV? / Design Patterns / How MCV goes wrong as a web Architecture. | |
- 1:34:53 Model View Presenter / Dependency Rule. | |
- 1:39:10 What about the Database? / The Database is a detail / ORM | |
- 1:48:00 Fitnesse: a wiki page porject development. | |
- 1:53:54 A good Architecture allows major decisions to be defered! / About IntelliJ and Visual Studio. | |
- 2:03:44 Frameworks / Plugin Model. | |
- [Lesson 6 - Agile](https://www.youtube.com/watch?v=l-gF0vDhJVI) | |
- 0:00 Start | |
- 0:18 Leds / Introduction. | |
- 6:54 How do you manage a software project? | |
- 12:54 Finding the optimum solution / Data. | |
- 21:04 What is the firts thing know about project / The Management Paradox. | |
- 23:33 The Waterfall Model. | |
- 34:13 Iterative Development / Calculate Day. | |
- 39:09 The Control Knobs of project mgt. | |
- 48:51 Short Cycles / Agile Software Development Practices / Extreme Programming. | |
- 1:14:16 Questions and Answers. | |
` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment