POPULARITY
안녕하세요. 오늘은 대규모 코딩이 들어간 시스템 유지보수성을 개선하는 방법과 전략을 잘 설명해 놓은 바이블인 마틴파울러 리팩토링을 나눔하겠습니다.마틴파울러는 객체지향분석 설계의 대가로 UML Distilled란 책을 저술한 엔지니어로 잘 알려져 있습니다. 국내에는 객체 모델링 입문이란 책으로 출간되었죠. 리팩토링은 2000년에 나온 오래된 책으로 벌써 20년가이 되어 가네요. 그럼에도 리팩토링이 말하는 어떻게 하면 복잡한 시스템의 유지보수를 쉽게할 수 있는 지에 대한 고민과 해답은 현재에도 유효합니다. 마틴파울러의 리팩토링No.78 Podcast 방송 - 대규모 코딩의 유지보수성 개선방법 바이블 - 마틴파울러의 리팩토링
Panel: Charles Max Wood Alyssa Nicholl Joe Eames Special Guests: James Shore In this episode, the Adventures in Angular panel talks about Agile Fluency with James Shore. James is one of Charles’ favorite people to talk to about Agile development because he is one of the people who really understands how people work, instead of the methodology proliferation that is more common. They talk about how Agile got started, the Agile Fluency Project, and how Agile has changed over the years. They also touch on TDD, the things people can do to solve the problems with Agile misconceptions, and more! Show Topics: 1:10 – James has been on the shows previously on Ruby Rogues Episode 275 and My Ruby Story Episode 48. 2:00 – He does a lot of work with agile, but actually got started with something called Extreme Programming. 3:14 – When Agile started, it was a reaction to the management belief that the right way to develop software was to hire armies of replaceable programmers and a few architects to design something that was then sent off for these programmers to work. 4:34 – Agile is turning into the “everything” thing. It is being used in many different spaces and leaving developers behind in the process. This goes along with “the law of raspberry jam.” 6:55 – The agile manifesto states that they value “Individuals and interactions over processes and tools.” 7:28 – The Agile Fluency Project is focused on software teams and they created the Agile Fluency Model, which is a way to describe how teams tend to learn Agile over time. They want people to be able to see what all they can really get out of Agile through this project. 10:05 – Alyssa is more confused on the subject of Agile development and is interested more in what people lost by not using Agile anymore. 11:45 – Agile changed from a grassroots movement driven by developers to a management structure that programmers ignore unless it affects their day-to-day. 14:18 – Test driven development is a way of writing your code so that you have confidence to change it in the future not a way you can get unit test code coverage. 17:36 – Joe defines TDD as a way to help him design better code and he finds value in using TDD and then once the code is done, throwing out the test and still find value in it. 19:50 – TDD creates better code by forcing you to think about the client who will be using it and it forces you writing code that is inherently testable, and therefore, better code. 22:22 – The values of Agile development have not been communicated to the programmers who are forced to use it, which accounts for the push back against it. 24:40 – The issue across the board is when people take and idea and think they can read a headline and understand it fully. 28:17 – The way to combat this problem is to dig into some of the things that was happening 15-20 years ago and you can look into DevOps. You can also look into the Agile Fluency Project and the Agile Fluency Model. 31:24 – To get started with talking about how you should do Agile from the trenches, you can look into the books Fearless Change by Mary Lynn Manns and More Fearless Change by Mary Lynn Manns to help you to learn how to make change within your organization. 35:18 – Planting seeds allows you to make change within your organization and make a difference in a small way. 36:10 – The easiest way to remove some of these obstacles is to get together with your team and get them to agree to a trial period. There are more ways as well to get over obstacles. 43:07 – The reason he became an Agile developer is because after his first job working with it, he never wanted to work any way else. So, he decided to start teaching Agile in order to keep working with it in his career. Links: Ruby Rogues Episode 275 My Ruby Story Episode 48 Extreme Programming Agile Fluency Project Agile Fluency Model Smalltalk Best Practice Patterns by Kent Beck Refactoring by Martin Fowler UML Distilled by Martin Fowler Fearless Change by Mary Lynn Manns More Fearless Change by Mary Lynn Manns The Art of Agile Development by James Shore jamesshore.com @jamesshore James’ GitHub Sponsors Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Get a Coder Job Course DevChat Merchandise Code Badges DevChat.tv YouTube Joe Framework Summit Pluralsight James Deliver:Agile Testing Without Mocks: A Pattern Language Jake (build tool) The High-Performance Coach The Expanse by James S. A. Corey
Panel: Charles Max Wood Alyssa Nicholl Joe Eames Special Guests: James Shore In this episode, the Adventures in Angular panel talks about Agile Fluency with James Shore. James is one of Charles’ favorite people to talk to about Agile development because he is one of the people who really understands how people work, instead of the methodology proliferation that is more common. They talk about how Agile got started, the Agile Fluency Project, and how Agile has changed over the years. They also touch on TDD, the things people can do to solve the problems with Agile misconceptions, and more! Show Topics: 1:10 – James has been on the shows previously on Ruby Rogues Episode 275 and My Ruby Story Episode 48. 2:00 – He does a lot of work with agile, but actually got started with something called Extreme Programming. 3:14 – When Agile started, it was a reaction to the management belief that the right way to develop software was to hire armies of replaceable programmers and a few architects to design something that was then sent off for these programmers to work. 4:34 – Agile is turning into the “everything” thing. It is being used in many different spaces and leaving developers behind in the process. This goes along with “the law of raspberry jam.” 6:55 – The agile manifesto states that they value “Individuals and interactions over processes and tools.” 7:28 – The Agile Fluency Project is focused on software teams and they created the Agile Fluency Model, which is a way to describe how teams tend to learn Agile over time. They want people to be able to see what all they can really get out of Agile through this project. 10:05 – Alyssa is more confused on the subject of Agile development and is interested more in what people lost by not using Agile anymore. 11:45 – Agile changed from a grassroots movement driven by developers to a management structure that programmers ignore unless it affects their day-to-day. 14:18 – Test driven development is a way of writing your code so that you have confidence to change it in the future not a way you can get unit test code coverage. 17:36 – Joe defines TDD as a way to help him design better code and he finds value in using TDD and then once the code is done, throwing out the test and still find value in it. 19:50 – TDD creates better code by forcing you to think about the client who will be using it and it forces you writing code that is inherently testable, and therefore, better code. 22:22 – The values of Agile development have not been communicated to the programmers who are forced to use it, which accounts for the push back against it. 24:40 – The issue across the board is when people take and idea and think they can read a headline and understand it fully. 28:17 – The way to combat this problem is to dig into some of the things that was happening 15-20 years ago and you can look into DevOps. You can also look into the Agile Fluency Project and the Agile Fluency Model. 31:24 – To get started with talking about how you should do Agile from the trenches, you can look into the books Fearless Change by Mary Lynn Manns and More Fearless Change by Mary Lynn Manns to help you to learn how to make change within your organization. 35:18 – Planting seeds allows you to make change within your organization and make a difference in a small way. 36:10 – The easiest way to remove some of these obstacles is to get together with your team and get them to agree to a trial period. There are more ways as well to get over obstacles. 43:07 – The reason he became an Agile developer is because after his first job working with it, he never wanted to work any way else. So, he decided to start teaching Agile in order to keep working with it in his career. Links: Ruby Rogues Episode 275 My Ruby Story Episode 48 Extreme Programming Agile Fluency Project Agile Fluency Model Smalltalk Best Practice Patterns by Kent Beck Refactoring by Martin Fowler UML Distilled by Martin Fowler Fearless Change by Mary Lynn Manns More Fearless Change by Mary Lynn Manns The Art of Agile Development by James Shore jamesshore.com @jamesshore James’ GitHub Sponsors Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Get a Coder Job Course DevChat Merchandise Code Badges DevChat.tv YouTube Joe Framework Summit Pluralsight James Deliver:Agile Testing Without Mocks: A Pattern Language Jake (build tool) The High-Performance Coach The Expanse by James S. A. Corey
Panel: Charles Max Wood Alyssa Nicholl Joe Eames Special Guests: James Shore In this episode, the Adventures in Angular panel talks about Agile Fluency with James Shore. James is one of Charles’ favorite people to talk to about Agile development because he is one of the people who really understands how people work, instead of the methodology proliferation that is more common. They talk about how Agile got started, the Agile Fluency Project, and how Agile has changed over the years. They also touch on TDD, the things people can do to solve the problems with Agile misconceptions, and more! Show Topics: 1:10 – James has been on the shows previously on Ruby Rogues Episode 275 and My Ruby Story Episode 48. 2:00 – He does a lot of work with agile, but actually got started with something called Extreme Programming. 3:14 – When Agile started, it was a reaction to the management belief that the right way to develop software was to hire armies of replaceable programmers and a few architects to design something that was then sent off for these programmers to work. 4:34 – Agile is turning into the “everything” thing. It is being used in many different spaces and leaving developers behind in the process. This goes along with “the law of raspberry jam.” 6:55 – The agile manifesto states that they value “Individuals and interactions over processes and tools.” 7:28 – The Agile Fluency Project is focused on software teams and they created the Agile Fluency Model, which is a way to describe how teams tend to learn Agile over time. They want people to be able to see what all they can really get out of Agile through this project. 10:05 – Alyssa is more confused on the subject of Agile development and is interested more in what people lost by not using Agile anymore. 11:45 – Agile changed from a grassroots movement driven by developers to a management structure that programmers ignore unless it affects their day-to-day. 14:18 – Test driven development is a way of writing your code so that you have confidence to change it in the future not a way you can get unit test code coverage. 17:36 – Joe defines TDD as a way to help him design better code and he finds value in using TDD and then once the code is done, throwing out the test and still find value in it. 19:50 – TDD creates better code by forcing you to think about the client who will be using it and it forces you writing code that is inherently testable, and therefore, better code. 22:22 – The values of Agile development have not been communicated to the programmers who are forced to use it, which accounts for the push back against it. 24:40 – The issue across the board is when people take and idea and think they can read a headline and understand it fully. 28:17 – The way to combat this problem is to dig into some of the things that was happening 15-20 years ago and you can look into DevOps. You can also look into the Agile Fluency Project and the Agile Fluency Model. 31:24 – To get started with talking about how you should do Agile from the trenches, you can look into the books Fearless Change by Mary Lynn Manns and More Fearless Change by Mary Lynn Manns to help you to learn how to make change within your organization. 35:18 – Planting seeds allows you to make change within your organization and make a difference in a small way. 36:10 – The easiest way to remove some of these obstacles is to get together with your team and get them to agree to a trial period. There are more ways as well to get over obstacles. 43:07 – The reason he became an Agile developer is because after his first job working with it, he never wanted to work any way else. So, he decided to start teaching Agile in order to keep working with it in his career. Links: Ruby Rogues Episode 275 My Ruby Story Episode 48 Extreme Programming Agile Fluency Project Agile Fluency Model Smalltalk Best Practice Patterns by Kent Beck Refactoring by Martin Fowler UML Distilled by Martin Fowler Fearless Change by Mary Lynn Manns More Fearless Change by Mary Lynn Manns The Art of Agile Development by James Shore jamesshore.com @jamesshore James’ GitHub Sponsors Angular Boot Camp Digital Ocean Get a Coder Job course Picks: Charles Get a Coder Job Course DevChat Merchandise Code Badges DevChat.tv YouTube Joe Framework Summit Pluralsight James Deliver:Agile Testing Without Mocks: A Pattern Language Jake (build tool) The High-Performance Coach The Expanse by James S. A. Corey
Panel: Charles Max Wood Guest: James Shore This week on My Ruby Story, Charles talks to James Shore about his background, how he got into programming, pitfalls that happened along the way, and his Agile story. James Shore is a thought leader in the Agile software development community. He was an early adopter of Agile development and he continues to lead, teach, write, and consult on Agile development processes. In particular, we dive pretty deep on: James Shore’s background: Consultant, practitioner, and coauthor of “The Art of Agile.” How did you get into programming? Began an interest at 15 years old. How did you go from hobbyist to a professional? Modem background. FidoNet Software and technical design to the agile field. Agile field & development Waterfall Rational Rose “UML Distilled” by Martin Fowler “Java Modeling in Color with UML” by Peter Coad WikiWikiWeb A lot of time we don’t look for these solutions unless we go through the pain. This is so true. In many ways the best learning comes through failure. Design standards. JavaScript If you see a different style – and you can’t get past X, Y, Z – that’s a real sign of immaturity. See past the different styles and find what you could “steal.” Intellectual laziness. Human condition is to not feel inferior. Of course, not every idea is good, but try and see what is the root. What do you feel like you’ve contributed to the programming industry? And much more! Links: James Shore’s LinkedIn James Shore’s Website James Shore’s Twitter James Shore’s GitHub James Shore’s Book, “The Art of Agile Development...” FreshBooks FidoNet Waterfall Rational Rose “UML Distilled” by Martin Fowler “Java Modeling in Color with UML” by Peter Coad WikiWikiWeb Digital Ocean, LLC JavaScript CacheFly Sponsor: Digital Ocean, LLC Picks: Charles Ready Player One – Movie NG Conf Interviews James Neil Killick Vihart – Mathematics Videos
Panel: Charles Max Wood Guest: James Shore This week on My Ruby Story, Charles talks to James Shore about his background, how he got into programming, pitfalls that happened along the way, and his Agile story. James Shore is a thought leader in the Agile software development community. He was an early adopter of Agile development and he continues to lead, teach, write, and consult on Agile development processes. In particular, we dive pretty deep on: James Shore’s background: Consultant, practitioner, and coauthor of “The Art of Agile.” How did you get into programming? Began an interest at 15 years old. How did you go from hobbyist to a professional? Modem background. FidoNet Software and technical design to the agile field. Agile field & development Waterfall Rational Rose “UML Distilled” by Martin Fowler “Java Modeling in Color with UML” by Peter Coad WikiWikiWeb A lot of time we don’t look for these solutions unless we go through the pain. This is so true. In many ways the best learning comes through failure. Design standards. JavaScript If you see a different style – and you can’t get past X, Y, Z – that’s a real sign of immaturity. See past the different styles and find what you could “steal.” Intellectual laziness. Human condition is to not feel inferior. Of course, not every idea is good, but try and see what is the root. What do you feel like you’ve contributed to the programming industry? And much more! Links: James Shore’s LinkedIn James Shore’s Website James Shore’s Twitter James Shore’s GitHub James Shore’s Book, “The Art of Agile Development...” FreshBooks FidoNet Waterfall Rational Rose “UML Distilled” by Martin Fowler “Java Modeling in Color with UML” by Peter Coad WikiWikiWeb Digital Ocean, LLC JavaScript CacheFly Sponsor: Digital Ocean, LLC Picks: Charles Ready Player One – Movie NG Conf Interviews James Neil Killick Vihart – Mathematics Videos
Panel: Charles Max Wood Guest: James Shore This week on My Ruby Story, Charles talks to James Shore about his background, how he got into programming, pitfalls that happened along the way, and his Agile story. James Shore is a thought leader in the Agile software development community. He was an early adopter of Agile development and he continues to lead, teach, write, and consult on Agile development processes. In particular, we dive pretty deep on: James Shore’s background: Consultant, practitioner, and coauthor of “The Art of Agile.” How did you get into programming? Began an interest at 15 years old. How did you go from hobbyist to a professional? Modem background. FidoNet Software and technical design to the agile field. Agile field & development Waterfall Rational Rose “UML Distilled” by Martin Fowler “Java Modeling in Color with UML” by Peter Coad WikiWikiWeb A lot of time we don’t look for these solutions unless we go through the pain. This is so true. In many ways the best learning comes through failure. Design standards. JavaScript If you see a different style – and you can’t get past X, Y, Z – that’s a real sign of immaturity. See past the different styles and find what you could “steal.” Intellectual laziness. Human condition is to not feel inferior. Of course, not every idea is good, but try and see what is the root. What do you feel like you’ve contributed to the programming industry? And much more! Links: James Shore’s LinkedIn James Shore’s Website James Shore’s Twitter James Shore’s GitHub James Shore’s Book, “The Art of Agile Development...” FreshBooks FidoNet Waterfall Rational Rose “UML Distilled” by Martin Fowler “Java Modeling in Color with UML” by Peter Coad WikiWikiWeb Digital Ocean, LLC JavaScript CacheFly Sponsor: Digital Ocean, LLC Picks: Charles Ready Player One – Movie NG Conf Interviews James Neil Killick Vihart – Mathematics Videos