Thank you all for the kind comments. I'm delighted that you like the lecture!
@GyroCoder10 жыл бұрын
As an ex-Computer Science student who had to drop out for financial reasons, thanks for putting this on the web.
@rogueanimus924310 жыл бұрын
I feel ya, im on the brink of dropping out due to circumstances.
@sumitlahiri2094 жыл бұрын
@@rogueanimus9243 The passion for software architecture and engineering has no bounds. Even if you drop out, always remember that there are tons of ways to make things. A degree is important but it is the last thing that can define you. Your passion and knowledge of CS are what is going to drive and make you successful.
@micromaddy10 жыл бұрын
George,I could not stop watching this session. You are giving real time example to understand the concepts.. Whoever attended this session they are gifted if they pay 100 % attention. it will take many years to understand lots of info which you have given in 2 hrs.. Thanks Again..
@vijnp12 жыл бұрын
Comprehensive introduction into software architecture. I watched it three times (which is over 6 hours in total!) to grasp every detail. Time well spent. Well structured, great examples. George's ten year 'in the trenches' is certainly paying off in his brilliant lecture. Thanks for making it publicly available.
@rum816 жыл бұрын
2012 I discovered hadoop and started learning, and here you are talking about not just DFS but even NOSql like mongo. Can't imagine what exposure/knowledge you have in 2018. Please share more videos
@codewithnacho5 жыл бұрын
This is an amazing talk. I can't believe I pushed this on my watch later for so long. Now this video is on my favorites
@bradleytaniguchi11876 жыл бұрын
Learned more in this lecture than I did in an entire semester of undergrad. Great video that will stand the test of time, thanks for the upload!
@MrJay2698 жыл бұрын
Loved your lecture. Very good instructor. Great examples (loved the phone book example). Also pulling questions from the people that weren't always raising their hands allows you to find the misconceptions and nip them in the bud. Something I learned from a Navy electronics instructor years ago.
@nebimertaydin31876 жыл бұрын
this is pure gold, it makes much more sense if you have industry experience.
@suerayss9 жыл бұрын
haha good teacher. I loved it when you gave the kids a break. I am a senior architect myself and this is a good refresher after many years of wandering off into a path of familiarity.
@mattaereal7 жыл бұрын
Thanks for this lecture! Very insightful. As a systems engineering student I found this lecture very easy to follow and understand. It's like a summary of everything we've learnt back at Uni.
@andersmagnusson90234 жыл бұрын
Thank you, very good show. It might be that we who has some years of work experience fascinates about about this talk, hope the students got the message. Try working as an architect in a rather large automotive company for the complete set of "embedded" software I quite often do similar internal presentations because architecting and architecture maturity is surprisingly low.
@josephfernando486710 жыл бұрын
Sir this was truy enlightening, I am an architect myself and it would be helpful to see a video on how design could be done with UML I mean the approach.
@AKMSaifulHoque4 жыл бұрын
I loved this lecture is so much. Specially the way of delivery the lecture pretty interesting and engages curiosities. Thank you.
@deadvulcano5 жыл бұрын
I remember the guy who made the comment at 1:43:40, was I in this class? I don't remember this lecture at all, but now I'm probably receiving this lecture again after 6 years. I feel like college should have a 1 year break between each year of lecture to focus purely on real world programming. This information makes far more sense after dealing with real code bases.
@pats-us10 жыл бұрын
Thanks George for explaining such a complex stuff in a very simple language of trade offs.
@mistrykam9 жыл бұрын
Great lecture! You presented Software Architecture concepts very clearly. Will definitely purchase your book on this topic.
@conw_y9 жыл бұрын
Awesome talk. Architecture makes way more sense to me now.
@Zultralord8 жыл бұрын
Hi Mr Fairbanks. I just wanted to say thank you sir for the lecture. I've only just started in my career as a systems admin/architect but I'm already facing some pretty tough design challenges in regards to expanding our information systems etc. With only an associates level of education it can be difficult to find sources online that can teach or show how to approach a broad range of systems level challenges as a methodology instead of just a specific "here's how" tech solution/showcase for x problem. So thank you and hopefully i will find myself in a cs classroom soon and maybe if i'm lucky.. have someone as good as you to guide me.
@renegaed11 жыл бұрын
great presentation. I'd be very interested to know what these comp science students are majoring in.
@manuelacosta86177 жыл бұрын
Excellent lecture George. Finally, I've got time to watch it. Thanks again for contributing in my Software Architect career!!
@errahulverma9 жыл бұрын
Superb lecture! You made it look so simple and interesting! Will surely get the book..
@jkodilkar10 жыл бұрын
Thanks for revealing complex subject like Software Architecture, good tour
@Bhou1237 жыл бұрын
Thank you so much for this informative and interesting lecture ..
@MarimuthuUdayakumar4 жыл бұрын
This is excellent explanation of software architecture. I like you very much that the way you explained and your body languages is simply awesome. I love to copy your style. :)
@AhmedAli-ib2go11 жыл бұрын
Many thanks George. Excellent lecture I now understand better.
@akhilez9 жыл бұрын
I don't know if I should ask this here, but I'm currently studying computer engineering, in very early stage, I'm really into computers, networks, architectures. What are the steps to learn to master these? I can do basic C and Python programs, and I'm good at it compared to other students. What's next? I want something more that what my college offers, I understood this video like how a beginner does, I wanna understand this better, what are the prerequisites?
@jefftspang8 жыл бұрын
+D18rulez Try to involve yourself in projects in challenging spaces, and employ design patterns and then try to think about how it scales. Normally most problems are not apparent when the software is small, it is when lots of huge amount of data and/or users are involved is when problem start appearing and when TRADEOFFS you make with design become obvious. As as to where to find yourself in projects in challenging spaces, start your own pet project and participate in open source
@Zinzin097 жыл бұрын
Really good primer. I cant wait to get stuck into the book.
@JerreMuesli5 жыл бұрын
Great book btw. I noticed the examples used in this lecture where indeed the ones you also use in the book
@mhcbon46067 жыл бұрын
i wish i had a good teacher like that during my cs education.
@DemandCapture4 жыл бұрын
That's a great lecture George, lots of value. I'm trying to get a grip on things in coding. In that light, would you approach a platform like Salesforce as a software or website? TIA
@francescobenacci84288 жыл бұрын
I watched this video while looking for something different, but did enjoy the lecture anyway, thanks! I have a question, which is actually about what i was originally looking for, which is resources about how to structure embedded software, taking into account the constraints imposed by that kind of environment. Can you point out resources that could guide me? The languages of choice would be C and C++, but i'm mostly interested in the architectural choices, since i still lack some experience.
@georgehfairbanks8 жыл бұрын
+Francesco Benacci The best book I know of on embedded systems architecture is the (expensive) book Better Embedded System Software by Phil Koopman (koopman.us/).
@francescobenacci84288 жыл бұрын
+George Fairbanks Whoa, it is pretty expensive indeed, but it does have great feedback. I might end up buying it, thanks!
@Qamarkhan0079 жыл бұрын
Awesome lecture.. Looking forward to read your book.
@kmusaied10 жыл бұрын
More than GREAT , Thanks a lot George
@aneeshsebastian16 жыл бұрын
Really awesome lecture . It's fun and good to listen
@sapphiresk19 жыл бұрын
My problem is I don't think my program in CS is giving us the information we need to succeed on their own assignments! They've done away with a comprehensive textbook and post links to webpages. Without tutors (some of them very expensive) I would be failing. Am I missing something?
@georgehfairbanks9 жыл бұрын
Synthesis is hard and professors in CS aren't (yet) rewarded for doing it. In more established fields it's a great honor to be asked to write the survey paper. CS is moving very fast and much of the innovation takes place in industry, which is often out of sight of professors. I'm delighted if this lecture, which is very much a synthesis, has been helpful. When I was learning about software, there were really just a handful of books and no web yet, so although you may feel you are drowning in info at least you have access to it from anywhere on the planet and even on your cell phone.
@georgehfairbanks11 жыл бұрын
Thanks, fixed. Somehow the prefix was doubled, maybe something about the KZbin account upgrading?
@mvaliente200111 жыл бұрын
Excellent talk, the best I've seen in youtube. Thanks!
@ctwoodwa10 жыл бұрын
Thanks for posting this, very informative.
@PROcrastiDRIVESVofficial10 жыл бұрын
Thank you Uni of Colorado! This is just what I was looking for. Such a broad topic and I needed something that could start explaining things and give useful examples. 3 Cheers for Colorado! First the Forza Horizon festival and now this!
@dip06ece9 жыл бұрын
Nice lecture!!! Is there any consecutive lectures? please share if any.
@georgehfairbanks9 жыл бұрын
1) Most or all of the videos are linked from my website: RhinoResearch.com/blog. 2) I'll be speaking at the SATURN software architecture conference at the end of the month: www.sei.cmu.edu/saturn/2015. 3) It's a bummer but I'm unable to link in videos of me speaking that are posted by others, but you will find a couple of additional videos by searching youtube and vimeo.
@AshrafGardizy9 жыл бұрын
Good Lecture but Software Architecture is new so I have some problem, I need some useful books that clearly explain the Software Architecture, so if you provide me the link. Thanks
@georgehfairbanks9 жыл бұрын
+Ashraf Nikokar Gardizy I've got an overview of good software architecture books in this video: kzbin.info/www/bejne/fqDImnRnr8aajbc.
@georgehfairbanks11 жыл бұрын
They are linked in the video description. At least right now, you have to press "Show more" to expand the description to see the links.
@azizzainul11 жыл бұрын
Very well explained. Thanks
@iamanalyst4u9 жыл бұрын
Great knowledge and expertise shared
@rajeshchaurasia62218 жыл бұрын
Nice way to put across the things
@withoutmalicexo10 жыл бұрын
Don't want to sound rude, but 70 seniors out of which only 20% knew about Design Patterns and even lesser knew about a Normalized Database, is astonishing. Maybe the lecture was attended by a mix of a few seniors and a lot of non CS folk, which is OK.
@ScottDuffy9 жыл бұрын
withoutmalicexo I was surprised at the apparent lack of basic computer science knowledge in the audience. Has anyone heard of three-tier? No one.
@VoyivodaFTW17 жыл бұрын
withoutmalicexo yeah lots of people go for things like financial programming or for mathematics
@VoyivodaFTW17 жыл бұрын
Scott Duffy they've likely heard of it but as a different name. sounds like MVC to me
@tiannimyers12046 жыл бұрын
I knew what it was and I’m self taught lol
@nathanaeljacob4 жыл бұрын
Nice presentaton. Thank you.
@Kirkrrr11 жыл бұрын
Excellent lecture, thank you.
@drfabraz11 жыл бұрын
George, The link to the presentation is broken. Could you possibly fix it? Thanks
@lalitagokhale189 жыл бұрын
Nice Lecture! Thank you for sharing.
@ntcuong01ct12 жыл бұрын
Dear Friends We will build IT infrastructure according the software architecture requirements, right?
@FritzGillis8 жыл бұрын
"there is nothing inherent in whether you 'pit' your product development team or assign them to a specific development 'layer'." [summarized quote, not your exact words] how about downtime?
@GooshieStarLine10 жыл бұрын
Really interesting and really well delivered!
@agfaps148611 жыл бұрын
yes.. i really enjoyed it and waiting for another video lecture from you.. :)
@SachinFromDev9 жыл бұрын
nice tutorial, thanks for sharing.
@aseemmakkad7 жыл бұрын
Nice lecture was very useful!!!
@bilelbouchlaghem7 жыл бұрын
Thank You
@svenka198411 жыл бұрын
Sveyda Excellent video. thank you
@nikhilpingle200611 жыл бұрын
Nice video- thanks! Very interesting and important topic but audience was not answering :(
@michaelrempel902510 жыл бұрын
I often get asked about the value an Architect brings to the table. (I am one, not just by title). My biggest challenge has always been to bring this kind of simple language to the discussion. I usually end up trying to architect the solution the client wants in front of them, rather than focusing on this kind of talk. Your presentation here is quite good for developers. I could use a similar one for clients if you have one. If not, I think I will make it myself. But I prefer to show something more along the lines of a consensus view. One of my current projects does similar risk assessment for management decision making. Too many design processes look at risk as a bad feeling, and you dont quantify it in this lecture well. I hope the book does a better job. Most companies need to quantify it somehow. I prefer to do an escalating cost analysis. 1 failure, 10 failures, 100 etc. Delivery timeframes get a similar analysis. Asking domain experts for a value statement about what if we delivered x y z dates, what would the value be to the company. Usually they talk about it in terms of existing commitments. That is ridiculous at the design stage but vital to them at the budgeting stage that got them to the design phase. I usually walk away from projects that have a poverty mentality because quality is always the sacrifice they are willing to make first. I understand avoiding the topic in front of students engaged in learning the techniques. We need to address the anxieties of clients with compassionate but clear language. That is area I have often struggled in. I know how to be detailed and clear in my analysis, with good architectural choices. I know how to dialogue about process, security, data and so on each in it's own hierarchy of needs and wants. But I often dont know how to dig out the unspoken angst of clients. And I think this is one of those make or break skills that we ( or at least I) could use training in. I can do excellent architecture in my sleep. I can talk to experienced developers and get world class results pretty quickly. (have done so for decades on lots of projects with lots of developers) Handling clients still keeps me up nights. Some things one cannot discover ahead of time, like the time a client made a lame excuse to end the project because we were going to succeed where they thought it would not be possible to do so. It was about sending work to India. They thought my experience with distributed development only had limited applicability and no chance of success. But there are many things we can mitigate and I would like a better check list than the one I get from past experience alone.
@yoanadimitrova87607 жыл бұрын
Michael Rempel is this a comment or an essay?
@sayhongtan899310 жыл бұрын
Thank you very much!
@ManojKumar-jg5cf5 жыл бұрын
Which college u teach
@ZWATER16 жыл бұрын
Ty
@trinaths11 жыл бұрын
excellent...!
@SiriJustDoIt11 жыл бұрын
Where do i get slides
@SiriJustDoIt11 жыл бұрын
Very good one
@drfabraz11 жыл бұрын
Thanks!
@dennis-the-menace41165 жыл бұрын
I run Linux,my life sucks, A+ failed my network+ 2 years of computer information systems wgole community hates me,becuase they think I'm talking down to them..got any advice, btw still can't type. oh I play TW2...help me!
@mohammedabulsoud51710 жыл бұрын
thanks man you awesome person
@hanialers16787 жыл бұрын
10:15 the interesting bit!
@nebimertaydin31876 жыл бұрын
btw, what does he saying at 1:11:37
@georgehfairbanks6 жыл бұрын
Mert Aydin Sorry, I skipped some steps in that explanation. In a three tier system, the UI is not expected to circumvent the middle tier and query or update the database. The middle tier has the job of interpreting the DB data and enforcing invariants across the data. (The DB schema can express some but not all constraints).
@nebimertaydin31876 жыл бұрын
I'm speechless right now, you're legend to me, my advisors in Binghamton University suggest your videos while we're trying to find research ideas. It's an honor to be replied by a living legend, thank you for your reply!
@ajones12746 жыл бұрын
46:17 : "it's much easier to teach people this stuff when they've heard it before". Obviously, but isn't this an introduction to software architecture ? A lot of this lecture he goes on about stuff and asks does everyone know this, one person probably nods their head just to agree, and this is enough for him to believe everyone knows it. It doesn't mean everyone understands
@georgehfairbanks6 жыл бұрын
That was meant as an aside and I probably should not have said it aloud. I was assuming a different experience level of the audience and recognizing that I'd have to replan on the fly to make connections then build back up to the points in the talk. What I said was "It's much easier to teach people who have done this stuff before," meaning that once people have built systems, preferably larger ones, they've come across the issues themselves, wrestled with them, and probably have heard a bunch of terminology even if it's not fully natural yet. That makes it easier to reveal the principles because we share some experiences. It is possible to learn the principles without that shared experience by giving assignments that reveal the problems, but this was a single lecture and I didn't have that opportunity.
@XnecromungerX6 жыл бұрын
Hey, thank you very much for the video. I was wondering while watching this, how much do you think terminology is changing over time? I don't really hear the verb normalised in terms of databases just whether it's relational. Hear it all the time in terms of vectors with a lot more people programming games now normalising vectors.
@georgehfairbanks6 жыл бұрын
The concept of data normalization (or denormalization) applies equally to relational and other databases. en.wikipedia.org/wiki/Database_normalization. The big idea is that you want to express something once and only once, or else sooner or later you'll end up changing one of the duplicates but not the others. Terms do get used differently across fields, so "normalizing" of vectors is not the same as "normalized" data layout in CS, which has used this term consistently since the 70's.
@XnecromungerX6 жыл бұрын
Ah, thank you for the response George.
@ejiromary25088 жыл бұрын
great lecture, very insightful
@MrCealicuca11 жыл бұрын
excellent. i would wholeheartedly atent such a class.
@micromaddy10 жыл бұрын
Between, George , most of the developers and Sr. Developers are not getting opportunity to these areas..It may not useful for another min 5 years...
@drfabraz11 жыл бұрын
presentation slides...
@MrCealicuca11 жыл бұрын
*attend
@ZWATER15 жыл бұрын
👍
@auto_ego7 жыл бұрын
Way too audience-interactive for KZbin video. Hard to follow. I'll just read the book.
@yolan517 жыл бұрын
Wtf, 70 graduating student and only 14 of them , know design pattern o,O
@mudassarmehmood29138 жыл бұрын
Link to the slides is no longer available . Please Advice
@georgehfairbanks8 жыл бұрын
+Mudassar Mehmood georgefairbanks.com/assets/pdf/Intro-to-SA-CUBoulder-2012-09-18.pdf I'll update the link, thanks.