Transcript from the "Wrapping Up" Lesson
[00:00:53] Avocations for CodeSmith open every 7 weeks for the next 12-week cohort. While if you attend online, the hard parts workshop that moves through some of this material in live online every week. You get access to a special challenge code that guarantees you interview if you complete the coding challenge.
[00:01:13] There is also a regular online application, I encourage you to try it. It gives you access to the CodeSmith interview if you put together a very nice collection of words about your background and what inspired you down the path of software engineering. So I encourage you to complete that challenge.
[00:01:33] But also I encourage you to look into a new online part time program, CodeSmith CSDL. CSDL, CodeSmith, Deep Learning. Four weeks, live online, evening weekend where you get the chance to build neural networks from scratch. It's very nice. Every two months, I think it kicks off. If you go to CodeSmith, you can have a look at that program as well.
[00:02:05] All right, we have done it. We have made it through the day. Pure perf, no. Pure, no cuts,
>> Will Sentance: One cut. We've made it through the day with clarity and all of you should feel genuine pride, every last one of you. It's very, very special to have seen how far every single person here came in the quality of technical communication.
[00:02:39] That's what's most special for me. In the end, what makes a great senior developer, which many of you are and some of you are aspiring to, is the ability to take any feature and empower one's team to build it out with you. And that is based on the quality of technical communication.
[00:02:59] And there are multiple people in the room today who talked through their code with a level of clarity that was genuinely impressive and it's a mindset. This is not something which we are born with, it's not something inherent and demanded of day to day and yet it is a thing that accelerates engineering teams.
[00:03:17] We often say when I add a team member to my engineering team, I go from having 1 engineer to 1.3 engineers, not from 1 engineer to 2 engineers. If you improve your technical communication, which is really the essence with what we're doing when we're diagramming through, you take yourself from one engineer to genuinely two engineers.
[00:04:36] Our promise objects whose deferred functionality is not assigned to the callback queue, but to the microtask queue. Two additional pieces of our model. We then added this whole new way of thinking about how collections of data can be accessed and then have functionality applied to them known as iterators.
[00:05:00] That rethink collections of data as instead of being static things we go and get elements from, instead these beautiful flows of data that when I run a function, switch the tap on, I get the next element. Switch it again, get the next element, like a stream of data that I can access and bring, access and bring.
[00:05:16] I think it's very beautiful. And then we discovered we could control the nature of those flows, what element we got each time, ourselves manually. Not rely on a sort of prestructured set of data but instead, dynamically create those sets of data, dynamically, determine what the next element would be.
[00:05:39] By defining it in a function and setting ideal keywords to return out those elements as we went. And then we realized what that was doing was allowing us to exit and re-enter an execution context. In other words begin the correlative function, leave it and come back. And that is what lets us rethink our asynchronous code.