18 Burst results for "Martin Fowler"
"martin fowler" Discussed on Software Engineering Daily
"It's a podcast four techies. He's their team of technologists. Take a deep dive into a tech topic each episode. That's pique their interests. It could be. How machine learning is being used in astrophysics succeed continuous delivery. They're always coming across fascinating ways. Technology is advancing and love to share what they learn. Whatever the topic. The discussions are always lively informative and opinionated. The team of co hosts are experienced technologists from across thought works including thought work. Cto dr rebecca parsons and renowned writer and speaker. Neil ford each episode the podcast features guest or to to talk about their particular passion and areas of expertise past guests have included imminent technologists such as martin fowler mark richards and danah boyd. There are a wide variety of episodes on the podcast and a lot of them have to do with software architecture closure digital trust. These are topics that all works has been thinking about for a very long time and there is well-equipped as anybody to talk about them. So whether you want to broaden your knowledge on a specific topic or you just want to immerse yourself in the world of technology theraworx technology. Podcast has something for you to find out more. Just search thought works technology podcast on your podcast platform of choice and make sure to subscribe developments in the machine learning space. The space obviously moving really fast are there any opportunities to leverage all the change going on in the machine learning go system as a product designer for notable like. What do you see as an opportunity. Business wise in in Making better machine learning experiences through your notebook platform or machine learning. There's a ton of great new libraries. They've come up as he gets been a rapidly evolving space but more and more libraries are coming out of the box. Visualization enabled by default and a really natural place to do that. Digitalization is within a notebook. Because you don't have to have some export you're gonna look at or some other system where you're gonna dump the results. Cd needing allies so more and more machine. Owing libraries are actually coming out of the box with support for outputs her jupiter that rendered naturally. And then you get much richer evaluation experimentation pattern for you need much fewer lines of code in order to get a rich representation of the state of the problem. You're looking at or or the state of the result that you're looking at and for the tools that are out there that are that are upcoming or already established. I think that's like a really winning aspect of notebook. Integration that issued looking at solving for that corner of the data user experience that making sure those tools behaviorally naturally within a notebook. Experiences is critical. You might do things like make sure. If they do have associations they they captured cleanly Render nicely you do things like if they don't have visualization but they have david for building visuals. Asian may be automating run in the notebook experience to Additionally triggerfish rendering for the user and making it so that the user can do visualization with less code. I think that's An aspect that's proven Very from lots of people that might be in the surprising fact side of saying that auto viz or even just the the easy viz is super valuable to people. Because you waste so much time trying to fiddle with getting x. axis riot or not quite selecting your data correctly meant having a u y that just rendered automatically the show that i think meets those tools much more useful and are unique in that they have that. Visualize ation built right next to your code execution so you don't have to leave the tool to do that. The production ization of notebooks. I'd like to revisit this. What are the difficult parts of getting a notebook into production and maintaining that notebook in production. Updating it over time for notebooks in general actually reverse it from the other way. I think if you start with a lot of people get stuck on. Hey how would i. Production is a notebook relative to this really sophisticated library with large amounts of devops tooling and de tooling already in place or lots of best practices. The actually it's usually be how those tools in place not look like. Production is anything else you make test. You make sure you have code review and you have a deployment cycle that controls when that note goes to users and beyond that point that the standard execution environment is pretty normal young year in this case usually doing integration immigration tests. And you're usually doing some research. Shaw as promotion to whatever your Production line is for for a exposing asset to user either automated or manual fashion. And when you actually get from the reverse side look at actually how most awards have data usage and you're talking about like things are still kind of not great in data usage tooling alava orange even very big sophisticated. Orcs have a million s three vials. That have some python code number that do their. Etl and there some place in their copy between places. Or they're in some hard drive on prem system and they just have the scripts that are everywhere. And if you come at leveling those like those users have been neglected from tooling the tooling honestly kind of hard to get setup and it's it's one two three context shifts away from the problem that these other users like data analysts data. Engineers are focused on the not focused on best axes around programming tooling. The focus on getting data results of their to their business to analyze. So they're looking to care much more about the like the mentions of the data that working wiz and like the consistency of it and tertiary concern to things like code quality your virgin control and they're gradually growing into using those tools in their things to make them smooth. I don't think actively about using those aspects but if you start from that. Pov of a user had a script someplace that stash. I don't know where and you on that for your production and then that person moves teams or the organization than your etiam pipeline stops working. One day you have very little visibility so your production is asian. Script was pretty poor. If you think of how it notebook could be used in the same way where i developed my notebook personal space. I a schedule with it. And then i kind of walked away or running every morning on monday. Manley go run my no. This is a more common pattern and people care to admit so. I think when you enter our production is asian. You really wanna make it easy to get away from those patterns with user having sink a lot about what they're doing so one thing yell making visible versions of automating the scripts. They're doing to be to build some sort of linear actual urgent control system to get visibility into changes over time without the user having to change their workflow substantially also making the tooling for how. You're interfacing one thing.
"martin fowler" Discussed on Techmeme Ride Home
"By techies. Their team of experience technologists a deep dive into a tech topic. That's peak their interest. It could be how machine learning is being used in astrophysics or maybe how to succeed at continuous delivery. They're always coming across fascinating ways. Technology is advancing and love to share what they learn. Whatever the topic. The discussions are always lively informative and opinionated. The team of co-hosts are experienced technologists from across thought works and include dot work dr rebecca persons and renowned writer and speaker. Neil ford past guests have included eminent technologists such as martin fowler mark richards and danah boyd. The episode i just listened to wasn't explainer on extended reality which is a blending of ar vr. Sort of along the lines of what we've been talking about on this show recently. So whether you went to broaden your knowledge on a specific topic or just want to immerse yourself in the world of tech thought works technology. Podcast has something for you to find out more just search for works technology on your podcast platform of choice and make sure you subscribe time for the weekend. Long reads suggestions and i up a couple of interviews. That people have been discussing all this week. The i was in an interview. That friend of the show. Noah smith who you'll recall. We did a recent weekend bonus episode with an interview. He did with stripe. co patrick. Collison patrick has a reputation for being a prodigious intellect. He founded stripe when he was twenty. Two years old. You'll recall but this interview which since no is an economist and is therefore interested in any number of big issues. Ranges among a number of fascinating topics really highlights. Why patrick has this reputation for being a brainiac. Like dude knows a lot about a lot. For example in the middle of this interview packages lays down the best description of the innovation roadmap for the entire tech industry over the next ten years that i've heard anywhere quote in terms of what the world needs. Improvements in medical. Technology are probably still number one. Climate change mitigation technology cleaner energy generation and co two sequestration and so on also quite high up more broadly. We need to make all of the things that you and i enjoy every day. Cheap inefficient enough for billions more people to afford with safety insecurity high on that list but need is a tough framing. There's obviously so much stuff that would be fabulously valuable. And it's hard to predict the magnitude of the impact upfront. Besides the obvious diseases better. Cures for depression and mental illness and other psychiatric conditions would be hugely beneficial hundred dollar robotic surgeries a machine for cheaply manufacturing food a three d. printer for nourishment into which you just insert elemental ink cartridges and not just for replicating already existing foods. The possible design space is very large flying cars. Obviously plus space-based earth to earth transportation. Fast growing trees. So that everywhere can be as blissfully are boreal as you like technology for comprehensively eliminating air pollution not just from internal combustion engines but also sand dust ubiquitous detectors for toxins like lead arsenic and benzene. Smart books that are better fit for purpose. A babel fish that works programming environments that are less hopefully primitive than those today. Take mathematica squeak genera and go far beyond them. Better education technology for everyone. What's khan academy but ten times better too cheap to meter water desalination batteries with so much energy density that they need never be recharged nanotechnology self repairing would flexible glass. Translucent steel quantum computers that accurately simulate physical chemistry completely new kinds of matter better catalysts for all major existing chemical processes and quote. so basically. There you have it. Make a successful company out of any of those areas mentioned and you can probably have a trillion dollar company and a couple of decades. These are the things. Technologist will be working on for the next few years laid out for you for free and then over at the verge neil. I spoke to cave on bake poor. Twitter's head of consumer product about all the things that twitter has been doing lately and also why they're suddenly doing all the things all the sudden. There are a lot of tea leaves to read in this one. Like i noticed how kevin was careful to tip toe pass any criticism of apple's tax were in an environment now where when someone elects not to pick a fight. It's probably more because it makes you wonder why couldn't apple acquisition of twitter be possible in this regulatory environment just leaving that there for now anyway quote fast forward to about a year ago we really started investing in audio and thinking about how we can enable audio as a new form factor for conversations on twitter. The same team. That's driving spaces. Today really started focusing on that. The first product that they built was what we call voice tweets which we put in market late last year on ios. Lets you record your voice in tweeted out. Basically around the same time they were thinking about the sort of conversational experience and this is when audio release started heating up and clubhouse was getting a lot of traction so we had a long and winding road to refocus back on that sort of multi person conversational format for audio but the team. That's building spaces. Now has had their heart in this for quite some time. Obviously hindsight is twenty twenty. We found much more customer. Success and impact and excitement around the multi party experienced than we did with the voice tweets experience. We still see a lot of really awesome use cases there but we've all of our focus to spaces now and quote next. I've said a bunch of times recently. How the whole no code low code movement takes inspiration from excel and how it trained. Millions of normies essentially the program without knowing they were programming. Well not boring. Takes a look at the spreadsheet that launched a million companies quote excel may be the most influential software ever built. It's a canonical example of steve jobs. Bicycle of the mind endowing. Its users with computational superpowers normally reserved for professional software engineers armed with those superpowers users can create fully functional software programs in the form of a humble spreadsheet to solve problems in a seemingly limitless number of domains. These programs often serve as high fidelity prototypes of domain specific applications..
"martin fowler" Discussed on .NET Rocks!
"Yes. that's the strangler pattern of cool. Because of course martin fowler thought of this before we put it on the blakey because there were no new ideas or these ideas in software. That martin hasn't already had. I hear you say blakey again. I love the blakey vicky bit. That's the sound of eighties drum. Fill mickey but yes. He put his rookie in two thousand and four And is named after strangler figs and he actually changed it to be cold. The strangler fig pattern bankers. He called it the strangler pattern and people when what like busta. It's a slightly unpleasant night so it was inspired by strangler figs which are plants that Tight routes they germinate in other trees and then they grow down they send tendrils down until they reach the ground and then they take root in the ground And then they kill the tree that they landed in And replace it. And so it's it's really good Kind of analogy. For for what i'm recommending the people do but it's it's a horrible horrible name even strangler fig is you don't you don't want to end after a couple of polls on twitter and asking.
iOS Interview Questions For Senior Developers in 2020 Part 2
"And today's episode as part two to the previous episode about IOS interview questions for Senior Developers in two thousand twenty. The article that I wrote S- and this is the part two episode where I'm covering article so in this one. I'm going over questions next question. So we'll start with question number four. What is what is NBC? It's a very fundamental question again. Even though it's very basic question senior developers also need to know about and expected to give more detail on the show more depth of knowledge of such basic questions so NBC stands for Model View Controller. Software Design Pattern apple adopted. It came from small talk. Apple adopted its towards their own. Had has has its own reincarnation of it Model is responsible for data controller is responsible or views responsible rendering the dates and getting input from the user and control are supposed to glue views and models together right and be this coordinator control right at the end of the day. Apples flavor of it is More view skewed towards the view. That's why wouldn't really have controllers. Who Have you controllers what you should know? Besides there's this basics That that I just covered you also need to know and understand that model view controller. Nbc is not your application architecture. That's just a design pattern foot of you and if you want to architecture application especially architectures for scale you probably should go for something something else. Something with more flexibility. Something's more advanced at least. I'M VM MVP COORDINATOR. Design pattern or go for a heavy duty architectures such as viper and ribs but again as a as a senior developer. You should be aware of that so erratic flag that could raise here as well simply not knowing what an NBC is right. What what it stands for. And what that's fundamental Basic design pattern of APP Iowa's Apple Development in general I think they use it on all the platforms but nevertheless I again as I mentioned already as a senior. Dev rather the expectation is that you know. Other design patterns and architectures for further reading. Look at Apple. Apples article on their developer portal. It's called model dash view controller Then ABC's Dotto has a great article Cold lighter view controllers. It's from one of their previous issues of Went UP CIO. Had this Monthly I believe issue of their articles. Then there's another article on a con Lou con Lou. I think that's how I say it that come about massive you controller. Kennedy shoes with NBC. Another one is on a Napa soda actual this podcast inside. Iowa's Dev where and I covered the the issues with controller skull the problem with the problems with controllers another article you could read introduction to n. b. b. m. that's also obviously that article And then another episode of this podcast view models to the rescue As far as I recall Andrew in that episode. Goes over a great example of where? Mvp and could could save your bacon in the overblown view controller. Massive you controller code base and another article could read up on a model view presenter. It's MVP by Martin Fowler. It's on his website. March and following dot com. And as usual. You you'll find those links south. Put Him the Up put the link to the article in the show notes and they're in the further reading for that question. You can find links to those articles that I mentioned. The next question is number five. What do you know about? Singleton's where would you use one? And where would you not Singles Singleton Severi? It's very common design pattern. It'S CONSIDERED TO BE CO CORE. Competencies design pattern and it's used everywhere throughout all of the apple examples and They they actually utilizing soon bilton themselves in the API COCA API that they provide a four us. This jar short answer. Singleton Is a class that returns only one. And the same instance no matter how many times you requested what it really means at the end of the day that you have a type but say networking services and you implement a static or property rather. I think that's typically the implementation called shared or something like that instance and then in there you basically cash that instance the very first time. It's accessed you initials it and then you cash it and that's it. And then every other time when the in through that static property the instances rick. The SINGLETON has requested to return the same instance Singled and Sarah unfortunately anti pattern. They have a lot of issues with them and specifically they encourage global states. The they they really did. Sir and there are a lot of issues with dependency injection they. They really don't help at all with it. They make it more difficult. They you have to tie things to specific concrete types instead of relying and interfaces things like that so and in general even though apple promotes it. I do not recommend using singleton's and I know it's a it's a kind of a debatable topic if you will but there are a lot of prominent articles written about by prominence experienced developers Basically kind of debunking if you will the design pattern than explaining why. It's an anti pattern. So the Rad flak for this question as well you should actually know what a singleton the is and how to implement it and how to work with it even though it's a necessary and or unfortunate evil quite often and for further reading to to kind of get into the details of why. I'm saying it's an anti pattern. There are two resources you could go for. One is actually episode of this podcast. Called Y Singleton are evil and another one is actually similar styles. Single single are evil. It's by you can find this article on Viki Dot C two DOT com. They cover it more. They're in in more details in an an unwrap all the issues with singles. So the next questions number six. What's different between delegates and TV? Oh so this is a this is also quite common question on on. Irs INTERVIEWS THE DETAILED. Yar The cute. Let's let's start with What what is Ki? Ki Ki all right cave your sense. Four key valley observation so delicate design pattern and Kiva observation both are techniques for to establish relationships between objects and delegates establishes and declares using the delegates. You declare one to one relationship using protocols delegate protocols and Dan with Kiva labs operation you declare and establish a many to many relationship using other techniques but mostly. It's a kind of declarative key valor. While the that that's in the name Kiva Observation and your keys likely will be there strings or I believe you could use like selectors or something about for
"martin fowler" Discussed on Interfaz Podcast
"I don't under no eat in but couple of days but it also must have seen as Roma's Nada but so I think it was in Vietnam. I'd be skiing Atlanta today at the APP but gave most weather in winter. Grundy SORTA come on now. I will meet APPS ASSIGNED THEM MELINDA. Goldman just call us and this gives him Rascal Taddeo. It's overkill throws of almost GONNA at Arthur Andersen was going to say that. Come all kind of started going to get back on show kind of the customs from necessarily semi item. Look for gay fool do become more because I love the guy who they're not take them get paid by lava young people build those those Lower Emelio cuisine priority than diet plans and duty to put the devil stylianos homebound better. Liam ammonia daddy up tennis shoes burying England bill on Sal assays at that is was the GonNa tell us under concert familiar. Marcus without ballot comedian absorb bitcoin Athenian dossier with one of the nameless case. You've been out on the GonNa Quintals. They stay a mental Proxima. Salvo quattro seen a lot of HR SANTOPAOLO OUR K. Alimentary stumbles on on them. Your global e. Were NOT LOOKING PIONEERS. And all those places months of thous-. Komo two step process will the Columbia less than the owner. Vento percents Seattle on the ladder. Saito being authorised sallow estimate. Parcel Persons Yell. Our gave our Komo Kumasi incident. One kids around littleton interested the entire value being. I'm not gay. Gives the fifty corn goal on the on the almost on the a A political wason value out of maize. gay that made up was no bus in the fall unless something on. Samos From yeah he was out of the House. Gus Houses. Listen I sister is on a per Technica Laporta Technica seal to all platform anastos style. Is this combative for Aguado. Button is in a lifestyle dot. They're does this. Tell but the bath Eliah the just an or Langa was Tele Scales reveals speakers around. GonNa vilely the Mossy similar industrial. Are you being gay until six on US giving us the woman's one hundred and linear told US pregnant? Well wouldn't ask lear. They'll cloudy cloudy but it's W. O. Poor Caffeine elementary is impossible ptolemies Monte impulses his Moscow model. It'll this career lassus. Yanni better la a poster it but it has a Pelosi Speaker Sundays and Amazon two. In Alaska token there is a Bloomberg stocks until eight at least not initially mass daily Dolphin. Mostly live that must've loved that our according Chubby Florida lesbians in April remorse case about ask kilos because people in order kid or at USC Demo second-oldest nil relocate. Nimmo's nagging was pure on we'll stay. Lesean insists Yanni's technique pencil now. Almost WANNA start a little stall. Oprah's theon of getting another building when he is that there's was almost by lots and lots of common sense unite for painting in look in an evil go. I blew him yell at the student. Or jimbo putting technology Jahmai says he has no. This is not gonNa Damborena Yahtzee. When it's much more important than the ebay Bruno Taut adequate Ghazi looking on its different. You're going to see on this day. I eat what I do. Anything rental. Nestle you've done windows. Doug Pederson pimples. They gave Luminous Ivy. This guy get past. I didn't get any moderated by miss about the so as soon as I have been Janika. Neal's nobody alison find out. I keep wanting. Ah almost rather to give him a little more. Still do talk. I'll stop let me tell. You must've tuna spending on seal aiden Speakers Mollison anybody else. I need you you being processing Canada. Okay it about the see. Some entail retired case that's mentioned under Saudi law into DOS. Maybe Nola Mental Equality Komo Wednesdays. Doodo they landed. Combs communicated nudity. Randall or your mentality test almost Christine the contents for Payroll GonNa Wednesdays Fatullah confidential. Can but you know you got denial critical sukhum window or money is fed a maximum lose the April forever. There's no anthem. Faye Daniels locate here H H whether or not. I think it'd be going into the game. Was Duke Niccolo. Get hope and really cargo in one of the less and is in the Middle East Daniel Quiz Nassir up when I get the group forty off the off. I'm thinking I'm nick for the benefit. Not as it's not food it will look alive. God with competitive is still in the number of people around me Malia. Get a they're gonNA those simple kipling by okay Tony Miami and install simpler tax total and get the Damascus donated. The they pass years. How WINDOWS THEY? I say I started grey. Okay can I mean karate? Total wait until my last breath as was does into lethal e competitive interesting people's sewn per gig note was a man man multiple only a you are professionalism Potato personality. The city possesses militarized because Dan ASEAN though in the form while. Carlino technologies have income to the mass. Still case can okay. Muench CMO IMPACTER Espana put in Salamanca baton impact. Oh Grow Elsie. And stay there in Nassir Corporal Pessimism Robert Aniseed. This is tempered. Pavel's commentator products Coachella. See ooh by Laboon US again. This recommendation only will come in the Commonwealth by boy. You've gotta come in that it would be wanting to me build demented mind. When I meet the equal kiss they actually wanted in in the PPO case leaving the show by Sunday asset over the last thousand theology on Africa. He gets on the rice aid from doing today is and gave a window boys out said his uncle wants the perfect woman. Scorned Timur Quint Donald Shimer. So he mas daily resume will hang out the and this this comes up. There is one of our negative over there. You wonder the debate among the bidders guests will not say that the Liberals who can forget I love it. Talk a little less. You can notice cancer. Perfecto Polka Afri. Less than the game. It was almost God. I got to boogie doll. They did Legally Melissa. Only make like a total he. Audio commendable Bono. GonNa look at the fucking cook it out. You'RE GONNA go get somebody to lean liking than the Chai music. That was luckier. But our bobby sally the bird and Dougherty El Mundo's okay. Okay Perfecto Moon lasorda. Co E parole Timo convert Mr Model Railroad. Canova you're in the factory in the market for let classical on Komo so where Brennan Diko and it was it got it set up a little bit damper sentiments about. I'm able to remain limited. Norian said okay. Give Me Missile. The aim at me mental in Boca when the Act New York Assembly Vinyl story we own antibodies dock labourers day Santiago sticky or go to extend the legal economically. And they're not GONNA say they'll say gave those who've Nano Ella Elementary Awfully estelito Eve as this real this up to your people elevator. Jabber Grow Imbaba Elliott semi over unawares. Look the muscles mobile APP name. Total import every factoring style. Seon awesomely renew classical classical Latin. Lahia celente recommend the refractory the Martin Fowler against his cheesy multi focal economist. Podcast symbol well is in courses impact O. E. animals with startled until the wing. Nedcorp lescot stairs when we'd be one which is a rain. Windy Wild Dem's technicals Kalomo. This will defend in this category. As Paddock insane. Knows this Cleveland Keynesian though Manuela. 'cause the IOT Amnesty Damian down again by Laporta the OFFI C. Sharp pointy the tolls. This causes causes of scores. So Avenue an empty mind. Your team isn't it isn't get ready in your area. I cannot go near Gloucester excellent. That was already there and their mass a circle this normally when she must get us border so deem poor e atoll's musters police Kuchar mammals ent mcgahn. The interface widow again in the thousands..
"martin fowler" Discussed on Talk Python To Me
"Then slowly moving your break until you like the line that that was mucking. Things up is a really nice way to solve. It comes back to just having lesson your head at once. You're like well. It's down to three lines. What do I have to think about for these three hours right? They're cool and then notable pipe package not necessarily something super popular. But something you came across you like oh this is so sweet. I can't believe it found it. We've developed a couple of services services in fast. API recently okay. Yeah I've heard tons of good things about fast. Api It seems like it's there's a lot of momentum around it. It's really a kind of a joy to work with There's there's sort of some underlying packages that it uses a starlet. And things like that but there's also some that it works in tandem with pedantic is one by antic is really cool. Yeah Yeah it's like a data modeling related library and just love him. Oh Yeah you can put little pedantic constraints on decorators and then decker is I think right and then it's a bit like data classes with validates if you will yes exactly. It's it's look super cool. I haven't had a chance to use it but I just really Kinda got Zenit awhile ago and I want to now. especially if you're working in micro services and things like that a synchronous micro services kind of where it shines. Yeah that's typical awesome. Well there's some good recommendations as well so final collection election people are inspired about this design. Stuff what's your advice to them. What do they do? I mean there's a couple of other sort of seminal works that I would say to read. There's like gang of four your book and things like that. If you're interested in python I would certainly hope you'll take a look at this book yet. I don't put your book a link to your book in the show notes so people can get to it easily. Yeah fantastic and I think once you get beyond that or maybe even in parallel this idea about testing factoring are both super valuable inscrutable. Bits so Martin Fowler has a good book about re factoring. It's got a pretty straightforward title re factoring for Nineteen Ninety nine. It's still totally valid. It's a great crepeau working effectively with legacy code. I think Michael Others. Maybe that's that's a really good book if you've got a large code base and you're like you know the problem I described where there's a thousand issues we're not fixing these like if you're in that situation but you want to carve out a part that behaves better in his book is beautiful for that so those are even the ones. I'm reading to some degree now so super. I will deign things should be on. The show is really great to have this chat with you. I really appreciate it was a Whoa Fund. Deputy Bet by this has been another episode of Talk Python. Our guest on this episode is Dane Hillard..
"martin fowler" Discussed on The Changelog
"So you're obviously passionate about this particular subject. It is somewhat dry if the convince people to pay attention to somewhat arcane knowledge like abstract syntax trees but there's huge value that can come out of in doing these factories and really allowing yourself to re factor better faster stronger Is this a tough sell in engineering teams or do you find pretty easy to convince people to institutionalize kind of a tool in their toolbox yeah. That's a great question. I I have to say that. I think there's a few different things things happening. In our industry right now. One is like our kind of like a dopamine hit with that we get from like new tools and and new and fresh starts and you know there's a problem with like consistently working on new things which is there's a a set of challenges and you know for developing software that you just don't even get to really explore if you're constantly starting over like your to do like hello world. APP or your you know create racked up or whatever the hell else like great to do that every once in a while like I I'm not sure it's like healthy to be creating new projects all the time in the set like there's some real good engineering challenge that you get from having to understand how to drive value how to make the change while still shipping to production right. There's there's a how do you maintain. How'd you re factor safely like how do I. How do I re factor. like a you know a billion billion hit a month like co code base rate while still pushing to production understanding how to do that safely responsibly under like what are the nuances of that like in terms of testing in terms of like. There's so many interesting things like there's a class of problems that you just never get exposed to so for me I I the heroes in our industry are really the folks who are working being on legacy applications and still driving them forward and continuing continuing to chip at them and one of my kind of I think my some of my Phil- philosophical ideology comes it's from Martin Fowler who has really great article which we're GonNa link in the show notes on that y'all he it's str- Strangler fig application so it's it's basically he was on vacation somewhere. I think in New Zealand. There's this tree where like you you know it's growing roots and it slowly kind of strangling the the the thing you know it's growing new routes but it's slowly strangling allowance and so you basically the idea here is the pattern is that like you can kind of re factor your application module by module bit by bit and while still driving driving value forward and I'm personally like I'm sick of seeing like the next Gen team versus the like old Gen team so many companies I have. There's you have a group of people that are working on something that is not shipping to production for like six months twelve months fourteen months seventeen months you you get the drift right so ultimately like you're building a whole set of things where you're not even getting that daily that you're you're not getting that feedback loop from your customers on like what's working and what's not you're developing the new version of your thing in a in a complete silo and so I think Oh really interesting problem that I had to solve a few years. Ago Actually was new on a team and I was hired to like are- architect all of the Ui get us off the legacy code and it's really funny. I've never actually talked about the story so I'm realizing now like that like maybe this is the origin story for me but you know it was a backbone application and they wanted to switch to react and I was like we're not going to get rid of react. WE'RE NOT WE'RE GONNA get rid of. All of these backbone. Views like the best part about of react is it's just a library and so maybe we just build infrastructure so that this whole new view this you no this new set of functionality that we're adding. Maybe that's react and you know and we were able to kind of push forward. Having all of our new views the components while still leveraging the backbone components like those those two things lived next you know in one ecosystem it was a little more work but we were able to slowly replace everything while still driving value while getting feedback from from customers in the wild and like that's the type of challenge like for me. That's that's. It's what makes like a senior engineer. That's what makes an architect. That's what makes you know like that's what makes for somebody who really understands the challenges nuances of our craft and so you know this is like we we have more code. Now like than ever are forget our code like most of our code is actually third party dependencies. I think Google just did a study on on that in the it's like out of every ten lines of of of Java script like it's one line of code. That's belongs to the nation. You know so it's it's. It's a shocking number but if you think about it I mean it's it's no surprise because I mean the open source models working. That was what it was designed to do. You know we're not reinventing the wheel. We want to be building on you know standing on on the shoulders of giants but at the same time you know we we need to understand we need to be able to move quickly and shift you know as so if I need to if I if I want to switch dependencies like I want to be able to do so in a way that isn't going to set me back or I want to be able to do so in a way that's you know safe and it's not just changing dependencies. It's about upgrading and all kinds of things and so there's a culture now with some of the larger frameworks and Euler being one one of them where you know they'll they'll give you a set of transforms with your with with version bump you know so. They're like all right like new major ager. Release sorry for the breaking changes. You know where we're now. We're now. We're now going to give you a command to run so that you can migrate from. I'm like five to sixty seven. That's awesome so the bar is getting yeah so this is great. This is like when browsers compete for security and speed and all these other things you know he's big libraries are now competing on user experience and Dx more so developer grants right and so so the bars getting higher because the stakes are getting higher and it's it's we can start adopting those those practices like in our own code bases application developers you know and that's and that's my that's my pitch. I liked that pitch. I know we have the shared metaphor that I'm not introducing you to either of you to it but we had as metaphor of technical debt and the idea that you are taking on debt in order to gain somewhere else and eventually the debt collector is GonNa come unless you managed that over time any in finance we have ways out we can declare bankruptcy of course you like Michael Scott. It doesn't quite work where he just walks out and says has bankruptcy so that episode but one of my favorites. You can't just can't just say the word out loud Michael. It's not yeah he just goes out into the office and he just declared bankruptcy. Eh and Oscar the accountants like that's not how it works. You can't just Claire Bankruptcy anyways off topic but you know we have a lot of people declare bankruptcy with their technical. Dez where I'm trying to get to because maybe it's part of these the tie in with the Silicon Valley mindset startup mindset of like you know you have to have a bunch of people spin up new things and then they die and then here comes a unicorn out of that right like a thousand failures here comes one success maybe that mindset is tied in with the technological advances and we get to this point where it's like well. A new thing has to begin I'm with you very much so on the on maintaining legacy code and and that being really the the software that provides value over a series of years in fact a legacy right. It's the reason why it's still around is because it's providing real value real people but is there a point where you've come across any code where it's like. You know what you guys didn't manage the technical debt here. There's no I like Eddie pushing things forward but sometimes you're pushing up against the wall or there are limits wants to this. Yeah there are limits to this ideology or can we re factor all things. I'm sure there's I'm sure there is there are there are cases like although I think they are very rare where you have to complete the you know just abandoned ship for the entire project but with the with the kind of module by module approach the idea here is that you're taking kind of one vertical segment and replacing facing it and then throwing away the code that you don't want right throwing the whole thing. You're doing it or you're doing it. Re Yeah or you're factoring in place so e either either one but I think for me an acknowledgement that we don't make enough in our industry and I and I think you're totally right about You're kind of analysis on you know. Maybe it's silicon valley culture. Maybe there's some kind of culture bleeding. I'm here with just a race to the top right but we don't acknowledge like I feel like enterprise. Code is like it's its own beast our community you know so you're either like enterprise versus like small medium versus like whole crate react up the world trade and so these three kind of paradigm where I think the we're nobody wants to be enterprise like I think we even coined the term enterprise dude team that was enterprise. Dude always having enterprise dude is always relying on like the the Lakeville the League supported version of holding back people from being able to upgrade things you know anyways but enterprise so real software like soccer. That's been an out in the wild that has had multiple developers work on it and like you know like like applications at scale have Chris and yet to kind of see applications at scale. Don't use multiple languages that don't you have just arcane like stories behind why the Weirdo thing exists. It's you know it's like all right. When you open this file. You're going to have to turn around times. Tap your nose. They just the most hilarious stories but but but applications are living breathing they have craft. That's normal like so. I want to normalize Malaya's weirdness because that's just like how applications evolve over time with multiple and so it's okay there's there's there has to be some uncomfortableness in our code bases because ultimately like you know you have to have something to be pushing pushing forward as team. I envy the folks swore like really happy about everything and you congratulations to them. Maybe this talk is and you know but this talk is for like ninety nine percent of us the cash Mike Tyson said everybody has a plan until they get punched in the face and that's in everybody's playing goes out the window. Basically he knows that pretty well because he was punched in the face. I think you know code is kind of like that like we all have this beautiful perfect you know. Pristine Code until it hits production hits the real world and what happens like stuck hits the fan and you gotta make changes and so the longer it's been in the real world is GONNA look. I'm looking at this picture on Martin. Fowler blog of Strangler fig application on thinking that code is that tree. That's an abstract some country that tree his crazy. It's crazy looking but yeah I mean at the very minimum you always have the CO button right. If you're if you're quotas perfect perfect I I challenge you to find like one decision that wasn't like the CEO Button decision where it's just like you know. Put it there and make it happen happen. Ship it now like thing so yeah well. Your talk is the first day of the conference right so you're on day one. That's the October Fourteenth Conference actually happens October Thirteenth Fifteenth some workshop set are going on if you are planning to go to this conference friends which I would suggest you do so because hey we're going to be there as a matter of fact we're planning to have it live. GS party at all things open only be a future panelist or future guess painless on jeopardy so hopefully there at least CMO Day One but I'm not sure which they are life thing is but is definitely going to be there all things things open happening in Raleigh North Carolina October thirteenth or fifteenth this year and this if you are thinking registering I would say that right now between the end of the month they're they're mid Tier Pricing Act of sucked October. I it goes. A little higher is still a very inexpensive conference. Even on its most expensive ticket period is to seventy nine so not very expensive conference of Goto Amazing Speakers Emily. You'll be there of course jared incapable on stage doing something. I'm not sure what what does the planner do. You have a plan. The plan will be revealed when I plan is revealed yeah. It's it's it's GONNA be. It's a fantastic conference. it's like just incredible and lots of an audit attracts an audience. This kind of you know really diverse. Yes and also has just a an interesting breath of problems than so highly recommend. APP really excited to be speaking there this year. I want to give a quick shout out to todd. Lewis the organizer Nazar of that conference. He does such hard work to make that converts apple each year every time. I taught he's always moving. He's always moving. Never still bill is he's always going so todd. Great Work went on this conference looking forward to being their first time there was in two thousand sixteen glad to be back and Emma. Thank you with your time and your wisdom. You are welcome back. Thank you so much and it was fun talking to you so much for having me. It's been a pleasure all all right. Thank you for tuning into this episode of the Change Log. Hey guess what we have discussions on every single episode now so as to change log dot com and discussed this episode road and if you want to help us grow this showed reach more listeners in influenced more developers favouring a rating or review and I tunes or Apple podcasts. If you use.
"martin fowler" Discussed on Talking Kotlin
"Talking Kotlin on this episode. I'm sitting down with Pamela hill, discussing coat kindness. Hi, Pamela, welcome to the show. I had he thank you. So we were just speaking before the show that you're based in South Africa. Right. So you were you work in South Africa or you work remotely or how does that work? I work in southern forgotten yuno a cryptocurrency, we have app, and we have a website, and sunsets, ticker and see company. Oh, nice. So you actually work in something that, you know what it's about as opposed to the rest of the did just talks about something they have no idea about, right? Well, I pretend that would occurrences about in it seems to be looking quite well, that's cool. Does does it involve blockchain as well? Okay, an does it involve Kotlin, so act is a Java Khatun hybrid. But our blockchain staff is out in written a gun and our website in anger, sir. It's not it's not footed, the raccoons on Clifton. But we are keeping going to question. And they have been some discussions as well. Because as a really big open source project. I think it's the largest open source project, outside of cotton itself, or the stuff from Jap rains, which is called Korda, which is an open source blockchain, framework to, I don't know. I'm like, I'm totally out of blockchain I have how to even call that. But it's blockchain something something. That coordinator. Not at all. I'm. Completely android. Sir, Ivan, Judy whipped in that, right? Okay. So the blockchain is also something, I know very little about apparently my supermarket local supermarket knows more about blockchain because they have advertising on how they're using blockchain to verify where food is coming from, which is ridiculous. But anyway, but we're not going to talk about blockchain, although if I had a show that was called talking blockchain, I bet that would be successful. But will we're going to do talking Kotlin and you and I were speaking offline and one of the topics that you brought up was the concept of code kindness. Can you kind of like give a brief idea of what you meant by that? So can this is really kindness yourself more team? It's, it's mostly about readability and making a new sort of into about inter between. John cotton, making your job occurred. If you have control over, it's a little bit easier to, to work with in Cutler and the other way around while because you want to have the delicate balance between. You know, not messing up your Cortlandt too much with an attentions in things, but also making Java really easy to work with so good kindness would really be for me. Mostly about, you know, readability in harm nicely cutting support street ability. So that's sexually quite a few points. You've brought up and I think we should dive into each of them a little bit. But the first one, I want to focus on is, is something that I don't know if you're familiar with a with a gentleman called Kevin Henny. Have you heard of him? So he's written a bunch of books. He saw on the plus plus committee. I think it he put together authored or something, the ninety seven things or program should know or something. And it talks a lot about code readability in how you stuff how you write things. And one of the topics that he brings up is that there's a difference between readability and comprehension and comprehensibility a word right? Comprehensive. And, you know, a lot of times when we are talking about this, and even, like, for example, as you mentioned, you know, in keynotes, Andre was also talking about how cotton is readable, and Kevin talks about that. It's not so much that it's readable. But that is comprehensible right in that anything is readable. But it's, it's mostly about comprehending. So would you agree with this posture? I think so because I think credibility has to do with parsing. It's a let's stick before comprehension. It's you know being able able to car. The lines of curd in kind of process in your mind before getting into your brain before you actually get to the point. We understand. I mean things like. Winstons regular expressions. I mean it's difficult to read so it tends to be difficult to understand. Whereas with Caughlin it's, it's Barth, it's easy to to read, and it's nice. It, it doesn't have a lot of synthetic noise or things contracts. That might you know that are difficult to read. So it makes it easier to comprehend what the actual in taints off of the card is in the end on a gun. That's a very good point. And also kind of what, you know, Martin Fowler were used to say or said was, you know, some paraphrasing writing code that a machine can understand this, anyone can do. Right. That the big challenges writing code that a person can en- read the understand, but you bring up, yet another interesting point. Which you talk about being able to parse. Right. And this is something that I've been thinking of especially off to, you know, we talked about discussing this topic, which is, and then try and see if I can express this correctly. But how much do we have to focus on the parsing and is the parsing very important? Because you say that it's, you know, it's fundamental for me to understand the code. In order to be able to comprehend it like be able to read and parse the construct so to speak. In in order to be able to comprehend it. And what I'm asking is all we putting too much emphasis in this, and how much of that is actually kind of inherent to the language. That is being used. I mean probably a lot. But I would like to know your opinion on that. Yeah. So I think that's I mean, we grow up reading natural rang, which, so we're kind of used to parsing natural language. So when we used things like infix operators, infants. The infix modifier and so on. And we kind of construct DS Elza easy to parse easy to kind of get your head around that just makes it easier to read. Mr. Wien, sub them. I was mispronouncing. I'm sorry, I think is Subramaniam, if I'm not then he's Anki. Sorry. mR. Vinca. I think he'll be fine with it. I think like ninety percent of the people mispronounce his name. I have the most respect for him. Are he is teacher and such a Jane? Human being just a really great person anyway. So he took Subodh fluency nine richness, and how I think he talks about the fluency being it's so concise, so doesn't have the craft that, that actually takes away takes away that parsing ability that have actually read slack, natural language. So I think, you know, the car so we can get in a way that makes sense in having the change in between. You know, not making, it's so complex language designers that it actually doesn't make sense and so easy to read for developers and read right for the birds that it would actually kind of be a really good way of making card more. Both readable end compensable. Yep. So that now comes to specific construction, for example. Right. And for instance, let's, let's take this just focused now on the standard library of Kotla n-, you know, there's a lot of functions in there that are re- relatively easy to on the stunned. I mean you read the name of the functioning, you know what it does. Right. So it you could say that it's a very aligned with the English language, so to speak. Right. And so if I read filter, a list on a on a series of conditions then I know essentially, I know what that does. Right. Because I comprehend the concept of filtering. And if you give me a collection, and you give me a condition, I can kind of put, you know, one on one on one together because there's three things are so not to into, but very, very, very, very lame joke, but no mind, put all of those together and pretty. Deduce. What exactly is happening? Right. And that is based on, you know, having functions that are easy to understand and easy to follow. So from that perspective, I completely agree that it's like it's important to have very little barriers in the language and try and make it as simple as possible. So that is comprehensible, right. But then take the standard library again. And you have a whole bunch of other functions that a lot of people are using such as let apply Ron with etc. And you know I've seen endless discussions on should I use let or should I use apply. Should I use Ronald should I use what and is this because we are using non. I mean I'm big terms or not very well, defined terms for these, you know functions. That supposedly in a language that is meant to get rid of all of this, additional syntax and barriers for people to actually on understand what's happening. I'm honest, I was looking at, you know, Nate supply use them on a regular basis. Especially in apply. But sometimes, I think you, you because you don't know us some of them, like run will so on the often you'd actually NAR. So I agree with you in full ter-. And I agree with you that perhaps the Senate live Landry. That the any clause. Mitha names would perhaps not that well-named icon really think of anything bits but I they is a lot of confusion about those, those Mason names differently, and they're super useful in. It's actually sad. When people done on the standing would don't use them probably. But as you know, there's a lot of documentation out there that eases it a little bit. But you actually want to, to have things be so obvious in a way that, that you don't need the documentation on is that there's a line of obvious rights, and because this is related to to something else that I wanna talk about, which is, you know, the comprehension, I guess readability is a little bit subjective. But focusing back on this, what is obvious? Like yes, as most of us that are writing code. I guess the majority of us have certain level of dominance of English so anything that we align. With English language. It kind of feels obvious. Right. Because we all know what a filter does, right? We, we pull Water Filter and it filters out the particles. So you get a collection and you, you tell it to filter out something, and it's gonna fill to those things out. But then apply run map. Okay. If you're familiar with it. If you've used it, this makes you code very comprehensible. But if you haven't, then it's not so comprehensible. Right. And you start to end up a little bit trying to understand or decipher what the function is doing in autonomous down. What exactly is going on? Right. So now you have to dive into the function to figure out what function is doing. I'm say, okay. Well, this is badly named but then, you know I've been talking a lot about functional programming. And I talk about things like you know, beyond filter, you have flabby have map, you have either you have option. You have try you have all of these data types that the majority of people that haven't done functional programming may not be familiar with and the keyword there being familiar. So do we? Do we use these constructs? I mean, is it just a question of, you know, because a lot of people come back to me, and they said, this looks really cool. But if I start to use his constructs in my code people don't understand it very well. Right. They need to now on the stand. What all of these functions do once they doggedly they get it. But where did you draw that line of, of what is obvious? And what is not just juicy what I'm saying? Yeah. So I was like she thinking yesterday on, I did a course in two thousand twelve on functional program with professor Martineau Dashti was a it was Christine goose, and I remember struggling struggling with with understanding functional programming. I mean, I think they comes appoint week. We kind of all been away where we. We learn what full-timer and fled map and so on is just becomes part of a regular programmers vocabulary, sir. Maybe you know, it's, it's something that we kind of learn girl the late apply with him, so on. It's just it's a needs to become part of the caulking programmers vocabulary, rather than, you know, having to token, change the language too much that yet dozen. But sold the then goes back to the whole of phase of like, then we should move away from doing things that are very much aligned with English will the natural language, and move towards more domain specific languages, which you could say that functional programming is a domain specific language for. Functional programs in a way. Right. So if I talk about friends since, you know, in Kotlin, I have the concept of infix now if used the infix operator you can very much, right? Something that looks like English. Yeah. Or if you start to do DSL's, you can start to write things that are very like commenting leash. Yes. Very split, and you could even describe your domain in, in a in a language that would feel at times that you're just basically constructing English sentences. You know. Ignoring the Carly braces that you have here and there. So what do we do? Like, you know, should someone, take Kotlin and say, okay, I'm gonna make this comprehensible as possible, and I'm going to try and write out everything as a DSL, right?.
"martin fowler" Discussed on .NET Rocks!
"Mike. Might the way I'm treating these human beings. But you can see that it works anything that will work anything that will get them to shut up do the work that and you see this thing happening, you'll becoming these just terrible person all in the name of getting them to show took in profit exam. And it's just but Israel's never of problems. Is there on those implants who's easy? We'd be doing it. Yeah. Right. So what's next for you? What's on your radar? What's in your inbox? Yeah. The things I'm currently paying attention to is. It's refund tring, I'm really interested. In me, functioning, you know, the detail of how you do that. So Martin Fowler's just published the second additional the reworking of his original refunding book. We've still degree the horse way. We're kind of going through that. But I'm hoping I'm putting together some content which is going to go up on lot in sight with concrete examples of rings. And that's coming out of the front to personal projects on the goat won't is. I writing a piece of accounting sofa. Luckily, my benefit for anybody else. It's not generalize. -able? I am. It's it's a way of making the amount of time that I spend on accounting, personal Kensington. Let's all Siwa. I'm just meeting joined writing the coach, and I you know, not enjoying doing it plays. It's test-driven. And it's you know, it's it's mine that code by on. I kinda love it very on on Deng consciously paying attention to the refashioning on doing and thinking how can become a little person I can use these teaching teaching his ankles for the people and animal said kind of on a similar tit. I've got another piece of software which is a overlap so it so I find out an inch is the kind of puzzle game that I love to play road. So I designed my own puzzle guy. And that's it's all talk about that, actually guess so that's the next thing. That's coming up is all be speaking to but worth. Yes. So I might not come out in time. I'm spe-. Taking ATC which is European testing comf- invente, which is the thirteenth to the fifteenth of February. I think I'm going to be talking that about TD pairing TD hasn't test driven development. And specifically in the context of this puzzle out, which originally actually, very originally Newson? I who's in the remainder wonderful loose. Listen, I pads on it. And then we realized that it wasn't really fulfilling the purpose. We originally intended as a T mental relationship. So then it became my checks. And then I and it just became this phone thing that I was doing. But there was a big problem, which was the I was the user was playing the game on. I was in joining the guy. I wanted new features. And I wanted them now. And then the other big problem was that this is not I'm not I this is just a hobby. I'm not doing it during working hours, which means I'm doing it lights at night on the weekends. I'm creating three o'clock in the morning. I might just wanna go to bed so on causing kunas. I thought more and more and more writing code without tests and harder and harder to factor because I didn't have any test coverage free AM code is never. Igbo features. And I'm going to get a game in the bed. PM to yourself. The programmer..
"martin fowler" Discussed on WNYC 93.9 FM
"Let's start with that story in the DRC a surprise result in the presidential elections and the Democratic Republic of Congo. The opposition candidate Felix Jesse Katie has been declared the winner and will succeed longtime rural ruler Joseph Kabila, but defeated candidate Martin Fowler rejected category. Got categorically the preliminary results. You know, more than anybody that these Brooklyn mission is the result of fake and invented results entirely for big kitted in the back offices of the governing FCC Patty these results their nomination yadi at the ballot boxes. This is clearly unacceptable electoral fraud, which has been shown to provoke generaux disorder across the hall of the national territory. We cannot accept that the wheel over people is not being respected. We cut the collegiate to the result published by Mr. Nanga, the head of the electoral commission. Let's go live now to the DRC and speak to the BBC's guys Quimby who's overlooking. The city as I think in Kinshasa there is a bit of delay on the line. So just bear. With us goes what's the latest in terms of reactions that the country's waking up to this result? What? So in terms of reaction, so far the tone of Kinshasa is kind of divide it you have people in the limited area. That's where he's based Hugh, the headquarters of.
"martin fowler" Discussed on DataFramed
"Do you know what color unit test is? No. But I do know that I'm red green colorblind. It is a bit of a trick question. But your unit tests should be red green green listeners may recall that we've discussed unit tests in a previous segment. Awesome to recap unit. Tests are a key software engineering tool in our arsenal to make sure code is. Correct. They help you catch errors immediately as you write your code, and you can check if one of your rocket scientists coworkers push code, which broke the Bill righteous data. Something intas always run the unit test before pushing their changes to how does this magic happen been unit tests work by providing a framework that runs your code before the entire application is complete the framework will call your functions foreign. Cheat objects, and then check the desertions are true, which lets you find out immediately. If you coated your brilliant idea correctly when everything is still fresh in your mind and easiest to fix a good framework will even set up the resources to run a test such as a fake database or simulated data before calling your test. Those of you who heard the, and you Q segment on how to think about correctness of scientific models or recall that this is the verification step. And how you provide proof that your code correctly implements, the model so been do you have a favorite unit test framework in python checkout unit tests, and in our heavily wiccans test that really the most important thing is that you use a unit test framework look for the one which provides the least friction for you and your team. So what is this chromatic magic? You mentioned red green green is one of the best philosophies for writing unit tests and part of the test driven development approach the idea. Is to make the feedback loop on whether the code. You wrote is correct. As tight as possible. This will boost your productivity and increase the quality of your work essentially for free. So how does it work? The first read means that you should write your unit test code and write a stub for the function you want to test. Then when you run the unit test it should fail, hence the name read. This gives you confidence that your unit test will fail when the code doesn't work and the first green the first green means that you then implement the code and get the unit test to work at this stage. You only care about correctness. Don't forget canoes comment that premature optimization is the root of all evil in programming. Cool and the final green the final green means that now that your code and unit test work, you can refer back for it to make it faster cleaner or add other improvements because you have a unit test, you know, that you're optimizations which you should make only if necessary. Work correctly. Remember only reflector in the presence of working tests. Martin Fowler may have said something to that effect. I'm excited to try this out next time, I wrote some tests. Yeah. Once you start writing code this way, you will have much more confidence in your system and be more productive because unit Unitas naval you to catch most bugs sooner while you are first implementing the code buds are just easier to fix when you still have all the Cote stacked up in your head. Thanks been for that dive into test driven development..
"martin fowler" Discussed on 100 PM
"A few resources that i really love and use a lot are the google ventures spring book that has been something that i've i've loved a lot and have had a lot of our team of read and use include key question there is figuring out what is the right answer using that tool i think it's very powerful tool to use i think along the lines of design thinking you talked about how what an important aspect design is both in terms of the product built here but also how we how we build our own product i love the book that design of everyday things that grim and i think that that's a really extraordinarily book to read i also really love the wave that sometimes books are articles can help facilitate conversations between teams that might be otherwise hard to have so a few examples that come to mind we've had sometimes teams that are struggling with figuring out the right way to apply stand up to their process right they're they're getting standups but they're not working all that well article that i left recommend there is it's not just standing up by martin fowler and one of the things that i found that has worked really well with teams when everyone reads this article about challenges that can occur in standups it can help sometimes under earth some of the towns that they're having or maybe somebody even the challenges that are head of them in this really kind of low risk way of talking about some of these problems that i found really affected for camps just a very quickly implement change another example of that is things for the feedback which is a book about the art of receiving feedback and for teams that are having difficulty having some of these hard conversations having actually people together read this book and having that opportunity to really safe space around hey can we do this differently and change dynamic literature could be really help more practical leadership tips in the midst of a practical recommended resources thank you last question i feel like i want to sound effects too is there a personal or professional mantra or philosophy that you use to kind of guide you are in the world either either in the world more realistically or or certainly here as a leader in squarespace i wouldn't call it a mantra sorts but one thing that i think has certainly influenced me a lot has been losing my mother who passed away last year at an early age and and who was sick for quite a while before that and i think one of the things that that has made me always think about is that life is short and it's important to focus on what's really important to not lose perspective of that and i think that is true in both my personal and professional life what is the what are the problems that you should we care about volving do the people that you care about know that you care about them both at work and home and i think just continuing to make sure they always have that perspective around what what's truly important beautiful closer natalie gibraltar squarespace thank you.
"martin fowler" Discussed on Inside iOS Dev
"Like to know this guy lester okay now we built it up and like as if i know it on talking about and i'm probably gonna completely butcher this but whatever so here's what happened nbc model view controller was started by this guy called trygve like runes gal for some ruins galax something like that starts at the nar trygve trygve he started nbc he wanted a way to abstract the user interacting with the view and the underlying model that was was behind it right that represented the there's underlying model and then the view is kind of the graphical representation of that so he wanted to abstract that such that the user is just interacting with the view layer this view object thing and then behind the scenes you have the separation of concerns such that you can get code reuse and you know you just don't like this for example you don't have view logic in your motto or they're just not mixed up right again i'm probably would but so that's what happened and so in in his regional interpretation of it the con the model and the view layer directly communicate now so what happens in irs apples nbc is not really the traditional nbc what happens is basically it's like this model view adapter where the view controller which is supposed to be the controller of nbc is really this intermediary between the model and the view and things just pass through the controller ak the view controller so one they're already deviated but you know it's fine everyone has their own interpretations but that was one thing that happened so already we're already getting off on shaky grounds because you're using a name of a concept that her has already been defined in your changing it but okay one mistake that's fine it's a naming thing sometimes i think people use the wrong name and i'm like screw it i'm going to name it this because they shouldn't have named that they took the the concept of that name view models for example we can get to that later in terms of mvm but so that was one that was one thing the other thing is controllers so as reading the martin fowler's refectory books some martin fellow but whatever he was saying in there the i think it was a small talk like who you guys basically they realized that the view and the controller were often tightly coupled so what they did was they just would just combine them hey what does it sound like oh of you oh view controller oh interesting okay so so i thought we had the separation of model view and controller so you know code reuse separation of concerns but okay they're going to put them to you know to responsibilities warm thing you know you know the you know i'm sure at the time they had the reasoning to do that like they were like hey these things are so tightly coupled and it makes sense to put them together they're they're so again there's another little mistake something something went wrong but that one little mistake that one little tweak by itself you know probably wasn't enough to to make the big the big problems so another thing is part of this is that a model view controller was.
"martin fowler" Discussed on Talk Python To Me
"Certainly the design patterns thinking and it seemed like just from looking at martin fowler's work that is very much based on languages like java or small talk or these heavily object oriented are sort of object only languages we'll i think it's interesting to compare that backed a python because it doesn't always make sense or there's there's problems you'll find him by on the don't appear in the list of say the the code smells were talk about at three factoring techniques because there it's fundamentally different way to structure code in python yeah i would totally agree with at like a lot of problems that they may factoring patterns try us off i think inherently entitlements language design sign it's already solved sell we can definitely explore into that a little bit later right and then at the same yeah i think another one knows so for example that i think is kind of an issue you might run into israel would i dunno i would call like a long module hours something right where everything is just crammed into one filing it probably should be broken apart to be more easily understood right but that doesn't appear anywhere in in the traditional literature because you they're talking about things like java where you just have one class for files of the files long that means the classes law right but that's not necessarily the case implied on i feel like there's the revamping obviously applies to python but some of the traditional history of it is maybe an eighty percent match yeah i would agree like a lifetime ideas translate that like how you chief stat might change because of the language and how to apply that yasser all so let's start by think your majesty why what what are the benefits of refractory and so first of all i think it cleans up tech debt and for those who are not as familiar tech that tends to build up when you take shortcuts during development there might be a better solution.
"martin fowler" Discussed on Talk Python To Me
"If finally got sort of formalizing idea so maybe just really quickly for every listening because i know people you kind of use refractory and just changing your code to be better and maybe adding features and whatnot at while you're doing it as interchangeable so maybe just quickly give us like a definition of reacting so call me factoring has pretty much the process of restructuring existing computer code so that's pretty much meaning changing their factoring without changing its external behavior and also improves to nonfunctional attributes off the software so from the outside it should appear as if it didn't change but you might change the way the algorithm is implemented or something to that effect ray yeah pretty much changing that he signed like improving the design of it but without changing the functionality of what your software supposed to deal book that kind of announced that was martin fowler's book and you talked a little bit about that in the air and talk as well it i just looked it up it was published in 1999 me i mean that's like height of dotcom boom days right it's it seems pretty far down the line for when that came came into existence yeah but this is kind of like an out of five all furry factoring in a lot of ways i feel it's like a star of discussion but in a way a lot of those principles can still be applied to other languages and in other situations so i would really like to use this book as like an introduction to what we factoring means but later on in the podcast i think was also touch on python might not need that many of these be factoring patterns ryan so one of the things that was interesting you're so there's a lot of stuff that came around the same time so martin fowler's refectory and concepts we had kent back and i think maybe martin voller is also participating out with sort of extreme programming period programming we had the whole design patterns and the gang of four book there were some really interesting foundational ideas a bruin in that time and.
"martin fowler" Discussed on Go Time
"Is probably the most helpful thing that one can do to provide a good user experience to arm will person are making a case where intuitive and um you know when it comes to god i think the best way to make something intuitive is just to be explicit and that is i think one of the most amazing features will go is that you know what he sees what you get there is like no magic there is no no it up like hidden abstractions or like indulge zerocost obstructions or any of this is just like dead simple bite it's verbal is it's not everyone's cup of coffee but it is dead simple it is what you know you will get at indian ocean what it does and you know that's amazing and that's extremely valuable an extremely valuable providing good user experiences do other developers i couldn't agree more with where he decides everything in specially where you center the last that go is very different ends strives to make it make everything explicit i absolutely love that about goto and as far as your marcos tons malfunctions for me personally i when i had a programme me i was more struggling with knowing how to do it right fast i still struggle reach vicious their struggle then learning how to do it it's a perfect uh but i always kept reading books like link colton pragmatic programmer and martin fowler books and learning how to best practices ends then i started when i started to ruby i was at a point there was more or less.
"martin fowler" Discussed on Inside iOS Dev
"So he was visiting san francisco for a presentation i believe i unfortunately missed it because i was well busy interview in but he was there and i got the chance got a chance to say not only say hi bird ask for a selfie he review which i is very understandable but i had to i had so as the words what were the words like hell at the exchange actually go well first off did you get did you like a feel like a little giddy like when you feel see a famous person i hate to admitted but i did and filariases and you know i so nerdy i walked up to him and i thank him for all the books erodes nice and i said i'm going to sound like a total fan boy but can i ask you for a selfie and he politely refused he said sorry had undo self is nice nice nice which again is understandable i respect the man definitely privacy so that's that's that's quite that's quite fierce he have work for a glimpse i thought maybe he will interview me but now i am not yeah the pull in more than fellow because they hear the this amazing candidate that he must see immediately someday 10 they'll get their let's let's funny geico also you did the that at the onsite you met the man martin fowler one of your heroes programming heroes what what what next i end yeah and after that i had one more interview with the people lead in san francisco office and we can a chatted more about soft skills send leadership things like that again i would think you know related more to consulting but also on the side of leading tech teams right so basically you say you told them like how you carry a whip with you and you crack it hard horse and no carat for you guys are just stick live as hard the new leadership said it's sweeping the nation there was a ted talk dictatorship who declared they did research nurses on now so it was a a cases of kind of a soft skills leadership skills school okay yana after that day they made me an offer nice you know i was showing you the.
"martin fowler" Discussed on Talk Python To Me
"So it's a much smaller problem if you end up having problems yet it's really cool there's a ton of advantages to that i like the way she was it a martin fowler was referring to these databases as the ones from the monolith them bigger ones he called those integration databases and he's called application databases and i'm not sure if are this quite the right term but i really like to think of it is like you can take this one big complex database is trying to represent everything from every part of our multiple apps so the users tables as complicated as it could possibly be right the order history tables as conflict it is because it has to support every single possible option privy breaking into these little microbusinesses you know you can have a really simple like here's the microsieverts that handles orders it has a database that handles orders clint is does that correct well there's a problem with that you lose the ability to to run joins us now you'll have everything in one database rights agency to correlate users or customers with orders you have to do it in the application yeah exactly like you can't join across acp requests correct that realism what you have to do it in in the by phone space in in our case now i don't find that that terrible that's my i offer observation my second observation is that even though in people that know me know that i'm a big fan of relational databases.