Home
Videos uploaded by user “Christopher Okhravi”
Interface Segregation Principle (SOLID) | Code Walks 023
 
05:18
The Interface Segregation Principle (ISP) is the I in the SOLID principles. It states that it's better to have many small interfaces rather than a few larger ones. GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 18-55mm http://amzn.to/29vwIYV ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 11797 Christopher Okhravi
Singleton Pattern – Design Patterns (ep 6)
 
20:09
Video series on Design Patterns for Object Oriented Languages. This time we look at the Singleton Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 ► Clean Code Talks at Google, by Miško Hevery https://www.youtube.com/watch?v=4F72VULWFvc https://www.youtube.com/watch?v=wEhu57pih5w https://www.youtube.com/watch?v=RlfLCWKxHJ0 https://www.youtube.com/watch?v=-FRm3VPhseI https://www.youtube.com/watch?v=XcT4yYu_TTs 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: 3CE5RrA3oukvRnVhVLGnic53HAMGsWtPhZ ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 63543 Christopher Okhravi
Strategy Pattern – Design Patterns (ep 1)
 
35:11
Video series on Design Patterns for Object Oriented Languages. This time we look at Strategy Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns, by Gang of Four http://amazon.christopherokhravi.com?id=0201633612 ► Mentioned: Sandi Metz – Nothing is Something https://youtu.be/OMPfEXIlTVE 📣 Ask Me Anything https://app.scaleabout 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 335002 Christopher Okhravi
Law of Demeter | Code Walks 014
 
07:23
The Law of Demeter: It's ok to say A, it's OK to say A.B but it's not OK to say A.B.C. The law of demeter helps you reduce coupling in your code. In the words of Avdi Grimm, "it's not just a good idea, it's the law". GEAR USED ► MIC: RØDE SmartLav+ http://amzn.to/21nVI3o ► CAMERA: iPhone 6 http://amzn.to/1UeVCXv Original upload date: Jun 19, 2016
Views: 3723 Christopher Okhravi
Never Rewrite Code (open/closed principle) | Code Walks 039
 
05:31
Open/Closed principle states that a module should be open for extension, but closed for modification. Taking this to its extreme, paired with dependency injection, I'm pretty sure we can maintain systems without ever changing code. Why would that be important? Well, think about how much safer it would be if we could introduce new code that solves incoming requirements instead of changing existing code and risking breaking old requirements. GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 7079 Christopher Okhravi
Adapter Pattern – Design Patterns (ep 8)
 
26:36
Video series on Design Patterns for Object Oriented Languages. This time we look at the Adapter Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 ► Looking for a (minimalist) travel adapter? :D http://amazon.christopherokhravi.com?id=B00210MRGC Two cameras used in this video. Yay or nay? 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 50239 Christopher Okhravi
Factory Method Pattern – Design Patterns (ep 4)
 
27:21
Video series on Design Patterns for Object Oriented Languages. This time we look at the Factory Method Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 124587 Christopher Okhravi
Facade Pattern – Design Patterns (ep 9)
 
16:19
Video series on Design Patterns for Object Oriented Languages. This time we look at the Facade Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 42072 Christopher Okhravi
Observer Pattern – Design Patterns (ep 2)
 
49:47
Video series on Design Patterns for Object Oriented Languages. This time we look at Observer Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 134256 Christopher Okhravi
Command Pattern – Design Patterns (ep 7)
 
39:12
Video series on Design Patterns for Object Oriented Languages. This time we look at the Command Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 TALKS MENTIONED ► Gary Bernhardt - Boundaries https://youtu.be/yTkzNHF6rMs PRODUCTS MENTIONED (Not paid endorsement but affiliate links) ► Philips Hue (Starter Kit) http://amazon.christopherokhravi.com?id=B06Y3QXSGX ► Philips Hue (Lightstrip Plus) http://amazon.christopherokhravi.com?id=B014H2OXYU You still need a bridge but these things are the most awesome Hue products and I'd recommend buying more of these rather than light bulbs :) 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 62703 Christopher Okhravi
First Job As A Programmer? How To
 
11:02
How to get your first job as a programmer? Gary Vaynerchuk's Channel https://www.youtube.com/user/GaryVaynerchuk http://patreon.christopherokhravi.com
Views: 8042 Christopher Okhravi
Primitive Obsession | Code Walks 055
 
10:45
Why is Primitive Obsession bad? Because the domains of allowed states for any given domain concept we want to represent using a primitive is often different (smaller) from (than) the primitive itself. Liskov Substition Principle ► https://youtu.be/bVwZquRH1Vk Replace Conditional With Polymorphism & Primitive Obsession ► https://youtu.be/os6ssw1qylU
Views: 2465 Christopher Okhravi
Tell Don't Ask | Code Walks 011
 
07:09
Tell Don't Ask is a design principle that states that you should not ask objects for information and then make decisions on their behalf, but rather simply tell them what to do. Original upload date: Jun 13, 2016
Views: 2712 Christopher Okhravi
Liskov Substitution Principle (SOLID), The Robustness Principle, and DbC | Code Walks 018
 
08:16
Liskov's substitution principle is not as complicated as some people make it seem. It states that a subclass must be substitutable for its base class at all points in the program. If that sounds confusing be sure to watch the video :) The Liskov Substitution Principle (or LSP) is the L in the SOLID design principles of object-oriented programming. I've switched to a DSLR and a shotgun mic so higher quality audio and video is coming very soon! GEAR USED ► MIC: RØDE SmartLav+ http://amzn.to/21nVI3o ► CAMERA: GoPro Hero 3 White http://amzn.to/29WWRvB Original upload date: Jun 30, 2016
Views: 11846 Christopher Okhravi
Liskov's Substitution Principle | SOLID Design Principles (ep 1 part 1)
 
16:08
What is the Liskov Substitution Principle? In this series we talk about the SOLID design principles. 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 35035 Christopher Okhravi
Command Query Separation (CQS) | Code Walks 025
 
04:51
Command Query Separation (CQS) argues that we should separate methods that perform commands from methods that perform queries. In other words, we should separate methods that return values from methods that mutate state. GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 2736 Christopher Okhravi
Agile Manifesto 1/4 – Individuals & Interactions Over Processes & Tools | Code Walks 049
 
06:58
Decoding the Agile Manifesto. Part 1/4: Individuals and Interactions over Processes and Tools. The Agile Manifesto http://agilemanifesto.org/ GEAR USED ► MIC: RØDE SmartLav+ http://amzn.to/2fHR2sg ► CAMERA: iPhone 6 http://amzn.to/2ff3grZ
Views: 2995 Christopher Okhravi
Decorator Pattern – Design Patterns (ep 3)
 
54:35
Video series on Design Patterns for Object Oriented Languages. This time we look at Decorator Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 125242 Christopher Okhravi
The absolute basics of HTML, CSS and JavaScript
 
24:21
This screencast walks you through some of most important basic concepts of creating websites using HTML, CSS and JavaScript. While staying fast and on-topic. If you've used any of these before this video is probably NOT for you. If you're however completely new, or just curious about explanations, this video is indeed for you. Please do let me know what you think, and ask if you have questions :) 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 296075 Christopher Okhravi
DUCK TYPING | Code Walks 009
 
08:26
To determine the suitability of an object based on what “it does” rather than what “it is” is referred to as Duck Typing. In this talk I explore the concept further a give two examples — the Turing Test and Responsive Web Design. Jun 5, 2016
Views: 1949 Christopher Okhravi
Interview Tips For Programmers (from IT consultant Markus Ånöstam) — Interviews #1
 
09:59
Interview with Markus Ånöstam, Associate Manager at Netlight on what we should think about when looking for a job as a programmer. Markus is an IT consultant (and a good friend) who has worked in industries ranging from gambling to music.
Views: 4449 Christopher Okhravi
Proxy Pattern – Design Patterns (ep 10)
 
37:35
Video series on Design Patterns for Object Oriented Languages. This time we look at the Proxy Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 ► Premature optimization https://en.wikipedia.org/wiki/Program_optimization#When_to_optimize http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.103.6084 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 39986 Christopher Okhravi
E-type, P-type, S-type Systems (Lehman) | Code Walks 040
 
06:31
Lehman's Laws of Software Evolution only apply to a certain set of systems. Namely E-type systems. But how do we know which systems are E-type systems? And why does it matter that we know? Thanks to Matthias for introducing me to this concept. https://www.facebook.com/matthias.vandenweghe GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 3736 Christopher Okhravi
Dependency Inversion - how, what, why? (examples in C#) | Code Walks 004
 
09:49
CODE EXAMPLES FROM 4:00. Dependency inversion is the D in the SOLID design principles. But what does it really mean? Let me give you a no-nonsense explanation of what it is, why it is so incredibly important and how you go about using it. Subscribe for more programming knowledge. Suggestions for topics are very welcome :) Original upload date: Apr 23, 2016
Views: 21950 Christopher Okhravi
Data Clumps | Code Walks 028
 
04:34
When two (or more) pieces of data show up together, time and time again, we call it a "data clump". It's a code smell and it's often a good idea to either combine or compose the pieces making up the "clump" into it's own object. Martin Fowler on Data Clumps http://martinfowler.com/bliki/DataClump.html Ben Ornstein: Refactoring from Good to Great https://www.youtube.com/watch?v=DC-pQPq0acs GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT LOCATION Christian X monument, Copenhagen, Denmark https://goo.gl/maps/q9q3jiPb29p
Views: 1664 Christopher Okhravi
Abstract Factory Pattern – Design Patterns (ep 5)
 
25:54
Video series on Design Patterns for Object Oriented Languages. This time we look at the Abstract Factory Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 81299 Christopher Okhravi
INTEGRATION TESTS ARE A SCAM | Code Walks 019
 
07:08
"Integrated tests are a scam", that's the title of a talk by J.B. Rainsberger. One of the arguments he makes is that the sheer combinatorial complexity, or in other words, the sheer number of tests you have to write when integration testing is makes it utterly naive to trust that you and/or your team should be able to write and maintain all these tests. (NEWER VIDEO on the same topic: https://youtu.be/2pwpSU0c_TA) The number of integration tests you have to write for A if A integrates with B and B with C is the number of states in all these multiplied! In other words A * B * C. What's worse, if you are also integration testing B and unit testing C then the number of tests you have to write are C! (factorial). In this video I give a simple example that illustrates this problem. TALKS MENTIONED ► Integration Tests are a scam J.B. Rainsberger https://vimeo.com/80533536 ► Integration Tests are Bogus Piotr Szotkowski https://www.youtube.com/watch?v=7XI3H_rKmRU ► Boundaries Gary Bernhardt https://www.youtube.com/watch?v=yTkzNHF6rMs GEAR USED ► MIC: RØDE SmartLav+ http://amzn.to/21nVI3o ► CAMERA: GoPro Hero 3 White http://amzn.to/29WWRvB Original upload date: Jul 8, 2016
Views: 3877 Christopher Okhravi
Replace Conditional With Polymorphism & Primitive Obsession | Code Walks 045
 
10:56
Can ALL conditionals be replaced by polymorphism? ► Refactoring, by Martin Fowler http://amzn.to/2oI9ikx ► The 1st chapter can be read on Google Books https://books.google.se/books?id=HmrDHwgkbPsC&printsec=frontcover&dq=refactoring+improving+the+design+of+existing+code&hl=en&sa=X&redir_esc=y#v=snippet&q=how%20do%20i%20begin%20to%20write%20about%20refactoring%3F&f=false ► Sandi Metz on programming without "if" https://www.youtube.com/watch?v=OMPfEXIlTVE GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 8269 Christopher Okhravi
Type Checking is a Code Smell | Code Walks 017
 
03:29
Type checking is a code smell, because if you are type checking then it necessarily means that you have lost track of the type of an object whose type you at some point did know. GEAR USED ► MIC: RØDE SmartLav+ http://amzn.to/21nVI3o ► CAMERA: iPhone 6 http://amzn.to/1UeVCXv Original upload date: Jun 25, 2016
Views: 1962 Christopher Okhravi
Verification and Validation | Code Walks 020
 
06:30
What is the difference between Verification and Validation? The answer lies in what questions they ask. Validation asks whether the software does the right thing, while verification asks whether it does the thing right. The distinction is subtle but paramount. GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 18-55mm http://amzn.to/29vwIYV ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT Original upload date: Jul 13, 2016
Views: 2284 Christopher Okhravi
Null Object Pattern – Design Patterns (ep 18)
 
28:46
Video series on Design Patterns for Object Oriented Languages. This time we look at the Null Object Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc 📘 Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 📘 Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 ► Sandi Metz – Nothing is Something https://youtu.be/29MAL8pJImQ 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 13974 Christopher Okhravi
Proxy vs Adapter vs Facade Pattern | Code Walks 012
 
10:47
What is really the difference between the proxy pattern, adapter pattern, and the facade pattern? ► 01:50 Common denominator ► 02:36 The quick explanation ► 03:20 Proxy pattern ► 04:59 Adapter pattern ► 07:10 Facade pattern ARTICLE MENTIONED ► http://www.netobjectives.com/PatternRepository/index.php?title=AdapterVersusProxyVersusFacadePatternComparison GEAR USED ► MIC: RØDE SmartLav+ http://amzn.to/21nVI3o ► MOUNT: JOBY suction cup http://amzn.to/264MlsD ► CAMERA: GoPro Hero 3 White http://amzn.to/1OrxRP6 Original upload date: Jun 16, 2016
Views: 2520 Christopher Okhravi
Bridge Pattern – Design Patterns (ep 11)
 
52:04
Video series on Design Patterns for Object Oriented Languages. This time we look at the Bridge Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 ► Other things mentioned https://sourcemaking.com/design_patterns/bridge 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 34725 Christopher Okhravi
Agile Manifesto 2/4 – Working Software over Comprehensive Documentation | Code Walks 050
 
08:51
Decoding the Agile Manifesto values. Part 2/4: Working Software Over Comprehensive Documentation The Agile Manifesto http://agilemanifesto.org/ E-type, P-type, S-type systems https://www.youtube.com/watch?v=08ZUNsekFdY GEAR USED ► CAMERA: Canon 70D http://amzn.to/2eBVeXU ► LENS: Canon 10-18mm http://amzn.to/2ecN5ut ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/2eBTJsY
Views: 1437 Christopher Okhravi
Replace foreach with map | Code Walks 031
 
03:20
Higher level iterators such map, reduce, filter, reject, etc. can always be used instead of foreach. They describe WHAT to do rather than HOW. If you're not already using them, try it out! Replace all occurrences of foreach with high level iterators. Jessica Kerr on Familiar != readable https://youtu.be/pMGY9ViIGNU?t=2198 GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 1692 Christopher Okhravi
The SCAM part of Integration tests | Code Walks 026
 
02:40
J.B Rainsberger has argued that integration tests are a scam. In another video (https://youtu.be/tbSml2iyDt4) I briefly accounted for parts of his argument but in this one I emphasise what he denotes "the scam part". Why are integration tests not just "bad", but even a "scam"? LOCATION: https://www.google.se/maps/@55.3368028,13.3586225,18z GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 706 Christopher Okhravi
Single Responsibility Principle (SOLID) | A single reason to change — Code Walks 006
 
06:16
The single responsibility principle is actually one of the more easily understood principles of the SOLID principles. Yet the expression "doing a single thing" makes many of us endlessly ponder — what is in fact a single thing? Let's talk about that. TIMESTAMPS BELOW. 0:30 "A single reason to change" 1:30 Examples by Uncle Bob 3:01 Single responsibility principle, startups and pivoting 3:45 A completely different example Robert Martin (Uncle Bob) on the Single Responsibility Principle (SOLID): https://www.youtube.com/watch?v=TMuno5RZNeE&feature=youtu.be&t=3127 https://www.youtube.com/watch?v=Gt0M_OHKhQE Original upload date: May 18, 2016
Views: 16906 Christopher Okhravi
Classicist vs Mockist Testing | Code Walks 036
 
07:01
Classicism and Mockism testing essentially boils down to how extensively you make use of mocks. Classicists use mocks only when integration becomes awkward (e.g. databases etc.) whereas Mockists use mocks for all collaborators (i.e. all integrations). There are benefits and tradeoffs with both. Let me give you a few examples. Agile Warrior on Classical vs Mockist testing https://agilewarrior.wordpress.com/2015/04/18/classical-vs-mockist-testing/ Martin Fowler on Classicist vs Mockist http://martinfowler.com/articles/mocksArentStubs.html#ClassicalAndMockistTesting Kent Beck on Mock Objects (classicist) http://amzn.to/2cnDH5d (p.144) Law of Demeter https://youtu.be/FyJhALHmFXU Integrated tests are a scam, by J.B. Rainsberger https://youtu.be/VDfX44fZoMc My takes on J.B. Rainsberger's talk https://youtu.be/2pwpSU0c_TA https://youtu.be/tbSml2iyDt4 Difference between CHECKING and TESTING https://youtu.be/0jtiwh9y8Ug GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 987 Christopher Okhravi
PREMATURE abstraction is NOT premature | Code Walks 010
 
07:40
There are two kinds of abstraction. One is to solve the general case. The other is to extract all hard-coded values and procedures into variables and classes and then, e.g. dependency inject them. The former is probably premature, that latter probably not. Why? Because the latter lets you keep implementing the specific case (which means you don't have to figure out the general case) but gives you seams that you can use to swap your specific solution for other specific solutions if it would prove that your understanding of the requirements were incorrect. In this video I argue you should think twice before calling someone out for prematurely abstracting. Increas When facing a problem with a number of moving parts (think: variables in a mathematical function) you can either create a solution that allows all of the variables to vary at the same time and then try to solve the problem with all parts moving at the same time, or... Original upload date: Jun 12, 2016
Views: 1060 Christopher Okhravi
Static/Dynamic & Explicit/Implicit | Code Walks 041
 
05:33
A statically typed language is not necessarily *explicitly* statically typed. This means that it's not the fact that we write "string" in front of strings in Java that make it static. Rather, that's what makes it explicitly static. GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 1312 Christopher Okhravi
Agile Manifesto 3/4 – Customer Collaboration Over Contract Negotiation | Code Walks 051
 
06:22
Decoding the Agile Manifesto values. Part 3/4: Customer Collaboration Over Contract Negotiation The Agile Manifesto http://agilemanifesto.org/ E-type, P-type, S-type systems https://youtu.be/08ZUNsekFdY GEAR USED ► CAMERA: Canon 70D http://amzn.to/2eBVeXU ► LENS: Canon 10-18mm http://amzn.to/2ecN5ut ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/2eBTJsY
Views: 1043 Christopher Okhravi
Template Method Pattern – Design Patterns (ep 13)
 
50:42
Video series on Design Patterns for Object Oriented Languages. This time we look at the Template Method Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 ► Show your support using Patreon :D http://patreon.christopherokhravi.com ► SOLID Design Principles https://www.youtube.com/playlist?list=PLrhzvIcii6GMsfGSgRL1xmS3Bvo4TPliQ https://www.youtube.com/playlist?list=PLrhzvIcii6GMQceffIgKCRK98yTm0oolm ► My Amazon Influencer's page: http://amazon.christopherokhravi.com
Views: 20168 Christopher Okhravi
Horizontal & Vertical Centering using CSS
 
15:00
A quick look at how horizontally and vertically center divs, or actually any kind of content, in HTML using CSS. This video is for beginners so I'll talk a bit about some concepts like cascading, blocks, and different values for the position attribute as we go along. 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 68784 Christopher Okhravi
Command Query Separation & Events | Code Walks 038
 
06:51
Events or Observer Pattern can be used to mitigate many violations of Command Query Separation. One such famous violation is the stack's pop method. While that is covered in this video we'll also talk about a scenario that more readily lends itself to evented architecture. FIRST VIDEO ON CQS https://youtu.be/zXJORh8K4Bw STACKOVERFLOW THREAD MENTIONED http://stackoverflow.com/questions/3688068/how-would-one-apply-command-query-separation-cqs-when-result-data-is-needed-f GEAR USED ► CAMERA: Canon 70D http://amzn.to/29wR8wG ► LENS: Canon 10-18mm http://amzn.to/29srabL ► TRIPOD: JOBY Gorillapod Zoom http://amzn.to/29AdkHT
Views: 1041 Christopher Okhravi
Composite Pattern – Design Patterns (ep 14)
 
01:11:23
Video series on Design Patterns for Object Oriented Languages. This time we look at the Composite Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 28617 Christopher Okhravi
Top 3 Ideas in Programming | Code Walks 060
 
08:14
Next design patterns video will drop early next week. In the meantime, check out this quick video where I talk about three ideas that I believe are fundamental to programming. 1) Everything begins and ends with a requirement. 2) Requirements are in constant flux. (The system is never done.) 3) Estimates are always wrong. Check out this (mentioned) video to learn more about E-Type, P-Type, and S-Type systems: https://www.youtube.com/watch?v=08ZUNsekFdY Btw I've invested in a compact camera but I didn't use it in this video and instead used my broken iPhone 6 camera :/ Stupid mistake. Hope you can forgive me for the quality :)
Views: 5380 Christopher Okhravi
Code like prose | Code Walks 013
 
06:10
Making your code read like prose is not an esoteric panacea. It's achievable. In this video we look at the trivial Extract Method Refactoring (because our code is suffering from the Long Method Code Smell) but talk about the much broader concept of making your code as easy to understand as literature. BOOK MENTIONED ► Refactoring by Martin Fowler http://amzn.to/1WT3qnw GEAR USED ► MIC: RØDE SmartLav+ http://amzn.to/21nVI3o ► CAMERA: iPhone 6 http://amzn.to/1UeVCXv Original upload date: Jun 18, 2016
Views: 1541 Christopher Okhravi
Difference Between Composite and Decorator Pattern – Design Patterns (ep 15)
 
31:41
Video series on Design Patterns for Object Oriented Languages. This time we discuss the differences and similarities between Composite Pattern and Decorator Pattern. ► The playlist https://www.youtube.com/playlist?list=PLrhzvIcii6GNjpARdnO4ueTUAVR9eMBpc ► Head First: Design Patterns http://amazon.christopherokhravi.com?id=0596007124 ► Design Patterns: Elements of Reusable Object-Oriented Software http://amazon.christopherokhravi.com?id=0201633612 ► Composite Pattern https://youtu.be/EWDmWbJ4wRA ► Decorator Pattern https://youtu.be/GCraGHx6gso ► SOLID Design Principles https://www.youtube.com/playlist?list=PLrhzvIcii6GMsfGSgRL1xmS3Bvo4TPliQ 📣 Ask Me Anything https://app.scaleabout.com/christopherokhravi 💪 Patreon Community https://www.patreon.com/christopherokhravi 📚 Products I Recommend http://amazon.christopherokhravi.com 🎧 Audiobooks for the win http://audible.christopherokhravi.com/ ⭐️Donations BTC: bc1q4k330f3g0mjd70g8ws4zwxheu4ym065f8j8djh ETH: 0xa9342b308d480239d64c967bf7d53c4877474f25 LTC: ltc1q7ja5xvnkj32knp3mnhmgagdcwk8atevdswnft0 BCH: qqa8xpggmx68udkwjvpmmmv22rw6rx68p5ehe5rgmu ZEC: t1XyiVNTTEoSxWT8WdESwsUsp6fbySesYc2
Views: 11068 Christopher Okhravi
Ramda JS Tutorial – Part 14 (chain and monads)
 
10:58
Let's understand all the functions of the JavaScript library Ramda JS and learn a lot about functional programming as we go along. 💚 Support the channel on Patreon: https://www.patreon.com/christopherokhravi 👾 In this video: R.chain 🖥 Full playlist: https://www.youtube.com/playlist?list=PLrhzvIcii6GMeyUfpn-o5xVCH3_UykrzI
Views: 1461 Christopher Okhravi
Ramda JS Tutorial – Part 1 (__, curry, add)
 
13:58
Let's understand all the functions of the JavaScript library Ramda JS and learn a lot about functional programming as we go along. 👾 In this video: R.__ R.curry R.add 🏆 Introduction video: https://www.youtube.com/watch?v=AINnOyUVEyI 💚 Support the channel on Patreon: https://www.patreon.com/christopherokhravi 🖥 Full playlist: https://www.youtube.com/playlist?list=PLrhzvIcii6GMeyUfpn-o5xVCH3_UykrzI
Views: 9304 Christopher Okhravi

Sftp configuration windows update
Remmina windows client services
Missing operating system windows xp
Find windows volume identifier
Designing apps for windows 8