Good morning, good afternoon, and good evening and welcome to the urbanizing deltas of the world online masterclass series masterclass and number four. In our online masterclass series, the state of the art of water research in South and Southeast Asia PhDs and postdoc researchers from various projects of the NWO urbanizing deltas of the world program are presenting their research work with you. Today's title of the masterclass is rethinking and delta knowledge and moving forward. And this is our fourth masterclass and also final masterclass of this series. Today, our schedule is a slightly different than in our previous masterclasses. Again, we do have two speakers who are Dr. Ruknu Ferdus and Dr. Shannur Hassan. Dr. Ruknu Ferdus will first give his presentation of about 30 minutes. And just like in the previous masterclasses, you are able to put your comments and questions in the comment boxes, either on YouTube or Facebook, whatever platform you are joining us. However, because Ferdus also needs to leave a little bit earlier, we plan his question and answer session immediately after his presentation. So the schedule is that first Ruknu gives his presentation of about 30 minutes, then we will have a Q&A session of a little bit more than five minutes. That will be followed by the presentation of Dr. Shannur Hassan and then we continue with a Q&A session after her presentation of about 30 minutes. So please, if you have questions and comments to Dr. Ruknu, please put them as soon as possible in the comment boxes. So we can address them to you in his Q&A session after his presentation. So let me immediately continue to introduce you to Dr. Ruknu Ferdus, who has already joined us here on screen. The topic of his presentation is living with floods in the Jammuna floodplain in Bangladesh and fight or flight. Ruknu was a PhD researcher in the NWO Organizing Deltas of the World Project Hydrosocial Deltas and he is an expert on the interaction between a human and water system. He has had more than 10 years of work experience in hydrology, social hydrology, where he studies the interaction between human and water systems, river morphology and water resources management. He has also experienced a flood risk assessment, early warnings, vulnerability studies and vulnerability analysis for climate change induced by sea level rise. He has been looking at community-based adaptation to climate change and community risk reduction programs. So a very knowledgeable person, if you would ask me and therefore we are very happy that you are joining us here. So with that having said, the floor is yours and I'm very much looking forward to your presentation. Thank you Dr. Ruknu Ferdus, thank you for your nice words for me. Now I want to share my screen. So can you see the screen? Hello, can you see the screen? I'm sorry. Yes, we can see your screen. Okay, now I can continue. I want to speak about living with class in Bangladesh, fight or flight. Because we know Bangladesh is one of the largest delta in the world and here the rivers are very dynamic and people are living in the flood plains. So my focus of my work is to understand the human flood interactions in Jumuna flood plain in Bangladesh. Bangladesh is a hugely densely populated country. Most of the people are living in the flood plains, about 80%. And for my research, I used a sociological approach to describe human flood interaction. I will go on to general theory introduced by Debalda Saray in 2013. Debalda Saray's general theory was in a flood plain if there is no levee or no embankment then people are staying away from the flood plain. But if there is an embankment, then people are living closer to the embankment. This is the theory of Debalda Saray. So I'm using this theory in my research. So in my screen you can see there is a map of this Bengal delta in Bangladesh. And you can see this is the map of 1776, very old map. And in this map you can see there is a river, the blue line. This is called Bohaputra river. Earlier the Bohaputra river was following in this course in 1776. And if you see that you can point out in my screen there is a small channel which is called Jainain. It was flowing from the Jumuna river. So if I go to the next map in 1840, the Asin's map, you can see that the Bohaputra river has two course now. One major course one is in the left one was old Bohaputra and the state one is Jumuna which we are calling now in Jumuna river. Actually it happened because of the earthquake in Assam in 1840. There is a huge earthquake in Assam and because of that the river of course has diverted. So from the small tiny river to a big river, there is a huge impact on the people at that time who are living in that area. So if we see the map of 1943, then we can see that the present Jumuna river which has enlarged and the old Bohaputra has become a very tiny river. So now the present Jumuna river it becomes, sorry, it becomes, it is 12 to 16 kilometers and it is a bedded river. There are lots of people living inside also the river. We are called River Island. In Bengali we are called Chor. So people are living both flat plains, right bank and left bank and also inside the river. So before going to my presentation I want to like to show you flooding in Bangladesh. You can see this is an example of flooding and you can see the people are shifting their house because of flooding. They are shifting their houses from one place to another place and now I want to show you another video of erosion. So you can see that during the flood people are moving their houses temporarily, which houses are under the water. And also because of the flooding there is huge river erosion in the river, Jumuna river and the houses beside the river they are going inside the river. So it is very devastating for the people who are living who are affected due to river erosion. And now I want to show one example of human response to river dynamics because this river is very dynamic. Jumuna river is very dynamic and I already told you that its width average width is 12 to 16 kilometers. And I am showing a satellite image of 1978. This is only a small portion. You can see the map is only 5 kilometers width inside the river. And if I describe the map you can see the blue colors. These are the water and the red colors which are a settlement or agriculture field. People are living there or crop field and the white ones are the river island sand. People are not living there. This is the sand. I am going to tell you a story of Mr. Abdul Baqi Khan who was living in Bajitel Kuppi in 1978. And you can see that beside his house there was a channel of Jumuna river and in 1980 his house was eroded. The video I showed just like that way his house was eroded in river bank erosion in 1980. And he had to move another place which is called Khuzlupur in Khuzlupur. It is almost 5 kilometers far from his old house. So like this way you can see that every year in 1983 the river course has changed. It has changed in the Jumuna and his house again underwater and he had to move again. So every time the river is changing and his house is underwater and he is moving from one place to another place. In his entire life he has moved 11 times and every time he lost his house and every time he has to build a new house and he has agriculture lands and all agriculture land has eroded in the river bank erosion. Now in 2016 when I was interviewing him he came back to Kabul, Union because he was living there till 2008. And when I was interviewing him at that time it was 2016. It was still 8 years. It was a huge time for him to stay in one place. But in 2018 when I called him again over phone where is he now? He told me that he has moved to another place because in Kabul his house is already underwater. So this is one example of Mr. Abdelbakhi Khan whose life, whose response, his activities is governed by the river. And because he, I already mentioned that Bangladesh is a hugely and densely populated country and it is not easy to move far away. And if you go other places it's also not easy to find a new place because every flood occurrence, every flood event or erosion event he has lots of damages and it is not very easy to recover. Most of the people who cannot recover from this river bank erosion damages. This is one of the examples I showed here how like Mr. Abdelbakhi Khan there are lots of people. Thousands of people are living in the Jamuna river flood plain and also inside the Chor river island area. So my case study area was, I took both left bank and right bank and also inside the river in Jamuna river. My case study was about 500 kilometer and people is only 700 people are living per kilometer which is lower than the national population people living in 1 kilometer. In my research I use both primary data and secondary data. Primarily I use Haagul survey and Pogazga discussions to collect their past flood histories, river bank erosion histories, their income, occupations, migration, everything I try to collect from them. And then I also cover this primary data with secondary data like river system, river dynamics and also flooding events. Also I use the secondary data and correlate both primary and secondary data and try to find and do my research. In my research I have proposed a new concept, socio-hydrological space along the Jamuna river. Because when I see, when I was doing my field work I found that because of the difference in the geography of that area, there are existence of different socio-hydrological spaces. If I explain that in the Jamuna river, 1960s the government build an embankment in the right bank. But they did not build any embankment on the left bank. The left bank is only on the natural levee and the right bank is protected by river bank erosion. People are also living in the middle of the river in the Chaur area. In my figure you can see that the right bank is actually showing in the left. It is protected and people are living there in the red. And there are three geographic area. So based on this graph, based on this figure, we make a definition of socio-hydrological space. It is an area with distinct hydrological and social features that give rise to the emergence of distinct socio-hydrological dynamics. It explains the especially distinct dynamics of the human flood system in the Jamuna flood plain in Bangladesh. And after that, we tried to prove that our concept, there is evidence of our concept. So the proof is that when we analyze the source of flooding or flood occurrence, we found that in three spaces there are different sources of flooding is different. And also flood occurrence in the protected area, the flood occurrence is less. But different because in the middle area, the flood occurrence is high. Every year they are facing flooding. But interestingly, the area which is protected by flood embankment, and we found that there is another river flowing right to the protected area. They are also getting flood from that river. But also because of this three different geographic, for different spaces, there are ever as damage in floodings and also different. I will also try to see the erosion and erosion was different. The erosion is high in the chore area. And the second is following, but second is the left area. And ever as the area which is protected by embankment, there ever as well as an income is high compared to the other areas. And if you see the migration in the chore area, they are migrating. But the most interesting thing is they are migrating within the chore areas. They are not going to in the protected area or in the natural flood plain area. So when I was asking them why you are not going to other areas, the answer was that first they don't want to go far from their origin. They are just moving around their origin place. They try to stay as close as their origin. And because I know second option is it is very costly to find a place in the protected area. We also see that the farmer, because in Bangladesh there are different categories of farm, because 80% people are farmers in Bangladesh. And we have different categories, large farmer, medium farmer and small farmer, landlady, merchant farmer. So we see that the farmer ratio was also different in different places. And during the course of the time, it is also changing. And it depends on the flooding and the permanent duration. And obviously in the protected area, we also see that the population density is much higher than the other two areas. And by the course of the time, I took the last population census 2011 and I found that the increased rate of population is much higher in protected area than the other two areas. So social activities, economic activities, everything is different in protected areas than the other two areas and also they are different. So from here we can see that there is evidence of social and physical spaces. And because of these differences, their hydrological processes are also different and social processes are also different. So what are they doing? Are they copying or adapting? I already mentioned that most of the people, because of the flooding, they don't want to move from their origin. They temporarily go back and come back again after the flood. But due to erosion, they have nothing to do but they have to leave the original place but they are moving very close. So when I was trying to find either they were copying or adapting and I found that their mechanism, though in Bangladesh we are telling that they are adapting but in my research I found that they are not actually adapting because copying, what is the meaning of copying and adapting? Coping is we just adjust our present situation and that's it. And adapting, it means we adjust and also improve our life. But in my study area, I see that their life is not improving. They are just adjusting with their current situation. And the large farmer, I can see that many people have changes from large farmers to landlifes in the last 40-50 years. You can see that there is an average land loss per household. We also mentioned the socio-economic class we derived from based on their wealth and income. And we see that most of the poor people, they have lost most of the agricultural lands or household lands because many, many poor people who are now poor, once in a time they are rich. So by the course of time they become poor. And when we were talking about recovering from the flooding or reverberation then we found that they can recover from flooding because from the time the Bangladesh people know how to fight, how to live with floods so they prepare themselves before flooding. So only due to flooding their damages are very low but due to reverberation their damage is very high because when their land is going to the river or their house is going to the river it is impossible to recover. And I found that more than about 80% people they could not recover their flood losses. And by this time every erosion event they are losing and they become poorer and they are losing their strength to fight again in the next year. Next coming event. But on the other hand we see that if we see the flood fatalities in Bangladesh and I have data from 74 and I found that the flood catalyst is decreasing over time. It is a good sign because earlier most of the people are because they know how to live with flood so the flood catalyst is decreasing over time. And for that we made a hypothetical trajectory for socio-economic growth and I found that if you see that the black and dotted line it is if you do not do nothing then it is a trajectory line, the black and dotted line and if we do no adjustment then one flooding or erosion event will just go down and every year we are decreasing our economic growth. But if we do some coping or adjustment then our line is almost parallel to, it is almost stable. But if we can do adaptation then the green line then it rises very high. But in my study area I found that when I analyzed the economic condition I found that they have become poorer to poorer. In Bangladesh the overall GDP is increasing but in my study area the people annual income is decreasing. So it means they are not adapting, they are doing either no adjustment or they are doing just coping. So in conclusion I found that there are different socio-economic spaces that exist in the Gemini river. People, if we use the socio-economic space we can do the interaction, even interaction easily. And this space is also not fixed. It is shifting because of highly dynamic hydrological and human systems. The river is also very dynamic. And I found that there is a coexistence of living with floods and fighting with floods because in one place people are fighting with embankments. They are building groynes and rivetments. But in the other hand also people living in the chore areas and with the production areas. Although there is a flood almost every year people do not move from their original place. And if there is a temporary movement occurring they come back to their previous place. Now overall people are getting poorer and therefore less able to make their further adjustment for the next flooding event. Thank you very much for listening. If you have any questions then you can ask me. Yes, thank you Ferdus. Thank you for your very interesting presentation. And as mentioned I would like to share some questions with you. And I also still invite also the people that have been joining us online to still continue to put your questions or remarks in the comment boxes. I think you showed some very interesting results of your research. And one of them relates of course also to how you mentioned is this coping or is this adapting? I see that in Dutch Bangladesh relations often also at higher level there is spoken about how the Dutch can also learn from the resilience of the Bangladesh communities. And you mentioned well is this coping or adapting? And in your case areas you actually say well this is also a lot of coping and people are actually in some sort of a poverty trap in these areas. So a question is how can we then actually move from coping to adapting? Maybe that's a first question. And next to that this is of course then also because you also mentioned overall GDP of Bangladesh is growing. Yet these people living in these areas are lagging behind in also economically developing. So it hints us that there is an increasing gap between the urban and the rural maybe or just a bigger deviation between the rich and the poor. So this is then also a national issue. Well how can national policy then contribute to that these people also go from coping to adapting and are also joining the general economic growth? Do you have ideas about it? Thank you for your question here. Julie we have a confusion about the definition of coping and adapting because what we are doing in Bangladesh we are telling we are adapting. We are telling that Bangladesh is adapting and adapting to flooding. Yeah we are adapting but in my state area I see that people are not adapting they are actually coping. In my definition I see that because if you adapt what I understand adapting I adapt the situation and I improve my lifestyle. Actually it is not happening in that area. So in Bangladesh from my experience I can say we cannot alone live with floods we cannot alone fight with floods we have to do both. We have to do both fight and also leave because we can see that for fighting it is not possible from the local people. That should be the government initiative because in my study area I saw that in the charity or in the left hand where there is no impact man and people try to collect money from themselves and try to build bundles bundles which is one kind of spark one kind of one kind of groin made of bamboo locally available bamboo. So it is very normal structure. So they try to divert the flow of Jamuna river during the moonshine but these bundles are very bundles distance is very low depending comparing with the strength of the river. So it is washed away immediately. So to make a stable bank to make a government initiative to make an impact man or river bank protection work but at the same time we have to do the intelligent way because we cannot change the whole river it is a very mighty and big river so we need to find a way which portion will change which portion will not we have to do that intelligently and also during my study I found that people's memory is very low so people forget things very easily so what happened last year or maybe five years ago they forget things very easily so we have to we have to do more awareness or training sessions with the local people and also we need to learn from the local people because we know there are lots of knowledge within the local people so we have to increase the interaction between the people from the expert and also the local people and I think we need to innovate some adaptation policies for them how can we they already have some adaptation because people are changing their coping pattern depending on their depending on on their because people has changed changing their coping pattern in the field so because of flooding so they are innovating new variety if the flood season is changing there is innovating new variety so there is obviously there is adaptation I'm not telling that there is no no at all I am not telling that there is no there is adaptation there is adaptation they are new variety of crops they have they are shifting to one variety another variety so there is adaptation but I am telling about the coping means they are most of the people who has who have become landless whose house is eroded by land they have actually nothing to do so they are only adjusting their life adjusting that they are moving from one place to another place one farmer is he has lost his land he is becoming a maybe a laborer day laborer so he just adjust adjusting his life there is nothing for him to do adaptation so also land is limited so we cannot provide him another land so this is the thing we have to think about and we have to do more research how can we overcome this situation and if you allow me I can see some question here will I answer them here or yes I think there was an interesting question and it relates I think to also how you are theoretically addressing this issue and you address it as from a social hydrological perspective and so the policy recommendations that are asked for by one of the participants is would those policy recommendations be either addressed more to the hydrology and the engineering or should it be addressed more to the social economic situation of these people I think both I think both alone alone we cannot do anything earlier practice was that all the decisions were for flood management was taken by the engineers or policy makers but I think we have to work together that's why I mentioned earlier in my previous question that there are lots of knowledge within the society so everybody should jointly do the research and I think when I was doing my work in my field I learned lots of new things from the local people so they know more than us for the locality or for the river because they are living beside the river for long time and they are inheriting the knowledge from their previous generation so I think all local people, sociologists, economists or engineers, hydrologists all work together as a team it is called integrated research management so by this way I think we can overcome this problem. Thank you. With your research and especially also the story of Mr. Abdul very well presents is the issue of climate migration so we are expecting due to sea level rise and changing water patterns that people will move from one location to another we see that people also on the local level and often this story is often portrayed at a much larger scale but we see of course also Mr. Abdul being a migrant in his own locality moving from one place to another but he might also be in competition then with other people moving to one place and to another place where maybe also other people are already living and have you seen how that might also relate in conflict or are people actually very cooperative in creating new communities together? Yeah the good thing is they are very much cooperative because the people who are living in the rural area and in that region they know that they know the miseries so they are very cooperative when I was doing my field research in that area I found that people are whose house is gone by the developing erosion normally for first they choose where to go their motivation their choice was to stay closer because when one land is eroded by flooding then which is the land is inside the river it is the government property the rule says so but if within 25 years the river is very dynamic so if within 25 years the land is again from the river so then the original owner can get back the land so that's why that's why people always want to stay very closer to their origin and origin and when they move to other place normally if another place who have land they some with some small amount of money they allow them to stay there they build temporary houses and I also found there are many people who have nothing to pay they are staying free so I saw that there are cooperation between them and also during the flood I also showed a flood video that people are moving their houses so maybe this is one person's house but there are 5 or 10 persons helping him so during the flood season they are helping one each other free there are no cost they are just jumping to help other people so it is a very good sign in the society that people are helping each other yeah yeah so thank you and what you actually also now basically mean to say is that Mr Abdul is actually representing also a community so that the community is moving rather than just one person but of course this is highlighting your story there is a question maybe that relates to that from one of the participants that is after the flood action plan in 2000 was there no baseline study regarding all the resettlements which were established partly as a consequence of new embankments made under the flood action plan are you aware of such you are flood action plan yeah and a baseline study regarding the resettlements so I think this relates to the knowledge about how many people have resettled after actually I have no idea how many people resettled but in Bangladesh flood action plan Bangladesh government has taken some they build some villages which is called butchgram in Bangladesh it is called butchgram so government has already the new chart every year we found some new island maybe one old island has eroded and new island raised from inside the river so what government did which which island is almost 2 3 or 5 years older government and put raised the island and island with some sand and they built some houses for the people who has who lost their houses in the urban erosion or in the flooding so I saw there are lots of this type of villages in the chore area or in the flattening area created by the government also help with the help with there are lots of NGO local NGOs there supporting the government also sometimes foreign resources coming from the other countries to helping Bangladesh government I saw that it is very good initiative by the government within the flood plan flood action plan and then final question before we move to our second speaker so do you think that as you mentioned that local people and local communities do have a lot of knowledge they are also able to collectively create some resources to well either cope or adjust their activities but do you do you feel that these local people are enough represented in formal policy making and that their local knowledge is used to well for the ambition actually to go towards adaptation rather than continuous coping I think there are lots of scope to collect knowledge from the local people but I am afraid that during the policy making I am afraid that they are not taking care properly I think so we should include them also in policy making not policy making I will use their knowledge in policy making and actually there are lots of researches that are going on in Bangladesh and there are lots of issues also working with flooding and reviving erosion but most of the reports most of the findings are stored in their own pocket it is not going to the policy level I think so obviously they are going something but I think the share is very low than the amount of the knowledge and also there are some political reason also they have something political reason so all together I think we should explore more because there are lots of local NGOs who are working with flooding and reviving erosion in Bangladesh in the Jomuna flat plain area also other rivers but though they are they are small NGOs they are just doing a report and they are helping people and the report is just within them so we should also contact with the local NGOs who are working with flooding and reviving erosion and we also arrange that there is a government body which is called disaster management Upojela disaster management committee every Upojela so but in that committee there are lots of people from the government also from the local community and they are also sometimes they are also helping the NGOs but I think there should be a proper proper coordination between them between the local people, between the researchers between the also the NGOs there is a proper coordination then we should make we can make a good policy I think so in future I think there is a lack of coordination I think so there is a good challenge to continue to work on I am going to thank you very much Ferdous for your very interesting presentation and also for your deeper insights in this Q&A part of this master class thank you very much I of course recommend everybody who is now joining us online to go to your favorite search engine on the internet and look for Ferdous his PHD thesis and his other academic works because they are definitely worth it to read and study so again thank you very much for your participation and as mentioned you need to leave because you have other commitments also to do so thank you for your time it was very nice to have you here and I am looking forward to seeing you soon in the future thank you and that brings us to the second speaker of this master class and our second speaker is Dr. Shanuar Hassan and her topic for today's presentation is knowing Deltas from Perspectives of Knowledge Transfer in Development Cooperation Shanuar was a PhD researcher in the NWO Urbanizing Deltas of the World Project Strengthening Strategic Delta Planning Processes in Bangladesh, the Netherlands, Vietnam and beyond and in her PhD she explored different ways to conceptualize and think and rethink about policy transfers in particularly the Dutch Delta approach in international cooperation contact so from the Netherlands to Bangladesh and Vietnam she studied this critically and resulted in a very interesting PhD thesis I can say also proudly say because I was the co-promoter of her work and in that work she has studied the policy transfer as a transfer of translation and in her thesis she experiments with telling the story of the transfer of the Dutch Delta approach to Bangladesh and Vietnam as a translation rather than a transfer and this has paved the way for reimagining policy transfers as symmetrical conversations a conversation which there are many knowers and they are dialoguing and learning to co-develop policies with that being said Shanur then I give the floor to you to start your presentation to it yes you are back sorry I lost you indeed right on the moment you know thanks for the introduction I missed some of your at the end of your introduction so I assume that the floor is given to me now and bear with me for a few moments while I start the presentation and go through this technicalities so to begin with as I have introduced that my topic is to my doctoral research was on policy transfer with the focus on the transfer of Dutch Delta knowledge and in that I kind of came up with a way forward to know Deltas a bit differently so I call it my presentation topic is to know Deltas so let's see how can we know Deltas and I would like to focus on discussing what is a dominant way of knowing and managing Deltas in the context of develop incorporation to be precise in the Dutch develop incorporation what is the impact of knowing Deltas in the conventional way that the Dutch government promotes and what can be an alternative way of knowing the Deltas so to begin with I would like to draw your attention and the speeches excerpts of speeches that I came across throughout my research nobody knows the Delta management better than the Dutch Dutch water professionals who are working to promote the safe and resilient futures across the world from Bangladesh to New York and from Jakarta to Yangtze Delta in China the Netherlands are the responsibility to place our knowledge and expertise to at the service of less vigorous countries but also to create economic opportunities for our water sector so when you look if someone is trying to learn about Deltas he or she may get an impression that the Dutch knows best as the former Prime Minister expresses and the other countries outside of the Netherlands relies on Dutch knowledge and expertise and they are kind of like an empty vessel when it comes to not manage their own Deltas and the Dutch top government officials and water when they go out travels outside of the Netherlands they try to emphasize on creating a sameness between the Deltas they are traveling to and the Deltas in the Netherlands so when in Colombia the Dutch top government officials emphasize on the differences in terms of the altitude the countries are located at but the similarities are many, most importantly on water and also when in Vietnam the most logical thing that the Dutch government officials could think of when it comes to water partnership is to do development in Deltas using the Dutch Deltas knowledge why? because the Deltas region Mekong Deltas region in Vietnam and the entire country of the Netherlands are densely populated with a similar size and population and also the Dutch policy documents emphasize that different countries for example in this case Bangladesh needs an integrated approach to secure water safety and food security and in these speeches they indicate about kind of like a must haveness of Dutch Deltas knowledge to manage Deltas outside of the world and in line with these codes the Dutch government promotes a narrative for a solution that they promote as a must have policy solution for sustainable Deltas management for all Deltas in the world they call it Dutch Deltas approach so and why they justify why all the Deltas irrespective of their differences in terms of nature geography morphology and the socio-economic conditions why they need a one common solution because the preconditions for a sustainable and integrated Deltas approach are the same as the Dutch government focuses so what is this Dutch Deltas approach there is no widely accepted definition what the Dutch Deltas approach is the Dutch government uses the term to promote a package of 12 planning exercises that they used or that they have been using in the Dutch Deltas program they call it building blocks for sustainable Deltas management so for all Deltas across the world you can see this is a bit vague although in resolution that these are the 12 plastered planning exercises that a Deltas country must have as a policy option to manage their Deltas and surprisingly here I would like to share an anecdote that at the end of my during my research I came across a situation where I couldn't find this illustration of Dutch Deltas approach in the Dutch websites anymore because there was, there have been a growing criticism and I will share a bit reflection on this a bit later so now the question comes why this approach is promoted as a must-have solution for Deltas management it has to do with the Dutch aid to trade policy in developing cooperation the Dutch government created their development cooperation policy and they name it aid to trade policy it kind of if you can recall the policy the excerpts of a policy document that I just showed that says that the Dutch has a responsibility to develop the Deltas outside of the Netherlands in development cooperation out of solidarity and also at the same time to create for the Dutch water sector so these two aspects kind of sum up what the Dutch aid to trade policy is so I was mentioning about the growing criticism so this way of comparing all the Deltas as same and promoting and actively transferring one policy solution has been under criticism in practice and in research scholars call it a new colonial and new liberal approach some compares it to opportunistic reframing to export Dutch water and Delta knowledge and expertise and some also compares the efforts of Dutch government to export the Dutch Delta approach with global water salesmanship on rising water and climate change so the Dutch government also uses some promotional slogans like bring in the Dutch and the growing criticism kind of marred that the highlight of that slogan when people come up with a counter slogan called teaching the Dutch or should we teach the Dutch so when I did an analysis of this promotional narrative what I found is that in the promotional accounts Dutch government explains the mobility of the transfer of the Dutch Delta approach on its excellence and uniqueness of Dutch knowledge the narrative suggests that the expertise travels almost spontaneously because of its intrinsic qualities and there has been a great demand from other countries like Bangladesh, Vietnam Indonesia for Dutch Delta knowledge interestingly in this narrative what remains outside of the focus is the analysis of the Delta planning expert is itself and that what is transferred that is the Dutch Delta approach so I decided to follow an actor-centric approach inspired by STS Science and Technology Studies of Latourist Acton Network Theory I identified all those people who were actively involved in making of Bangladesh Delta Plan 2100 and the Mekong Delta Plan in Bangladesh and Vietnam and I tried to know about their perceptions, how did they develop the Delta Plan what were their experiences what and who helped them or not and these are the topic I found that these are the topics something they don't openly discuss in public and I focus on actors and their actions not to damage any reputations for any individual or for any country or any governmental efforts but I was kind of perplexed when I came across all the difficult work in terms of diplomatic actions and then the convincing political maneuvering all these actors do to make a Delta Plan outside of the Netherlands which the most formal accounts in this case the promotional narrative of Dutch Government remains completely silent about so my respect and admiration for those people who work for making the transfer happen or making a Delta Plan develop outside of the Netherlands actually grew over the time I find it more important to draw attention to what they are doing behind the scenes which is not formally recognized in the promotional narrative of the transfer of Dutch Delta knowledge and I also find it important that if we consider the experiences of the involved actors which has then we can initiate a dialogue that would create better understanding of the role and the impact of the Dutch Delta approach and perhaps we can find a discuss way forward so moving on the major insight of the research that I carried out was that the dominant narrative of the Dutch Delta approach that the Dutch Government adherently promotes misrepresents its transfer to capture what happens in the transfer of the Dutch Delta approach I used a metaphor that is also the title of my doctoral research making waves I find the process of transfer similar or resembles to a series of waves just like waves do not propagate themselves but are consciously created and require continuous energy to keep spreading the efforts and actions of the actors in making a Delta Plan outside of the Netherlands were like that and some waves may decline or die together while others amplify sometimes unexpected ways it also matches with the actions and activities that the involved actors did in Vietnam and Bangladesh here I would highlight today three major insights reflecting on the process and the work and the knowledge the Delta knowledge itself what I found in my research that the Dutch Delta approach does not travel on its own nor on its inherent qualities it kind of opposes or challenges what the Dutch Government promotes a demand for the Dutch Delta approach is created there is not a huge demand from the so called recipient countries but the Dutch Government actively have to create a demand for it in their selected long term strategic bilateral partner countries like Bangladesh, Indonesia, Mozambique and Vietnam so in a nutshell this transfer does not happen in a wide space but in an arena that is already established and built on diplomatic and trade relations here you can might become curious to know then what is the motivation for the recipient countries to align with the Dutch in this transfer to reflect I would like to use a quote of Bangladeshi export on climate he told me that we do not need a Delta plan here we need reference to Bangladesh and it happened in Bangladesh this development of Delta plan because the Dutch has diplomatically pushed for it now it does have some benefits because having a plan helps to focus on development of the Delta area which is vulnerable to climate change one of the most vulnerable Delta's in the world and this also helps to attract donors for example World Bank and ADB who needs different mechanisms to invest so it kind of work as an umbrella of pulling in different issues and different actors so that kind of partly explains the motivation of the countries who are so called the recipient countries so what work goes into making this transfer happen what I found that much of the work that the involved actors do largely consists of creating alliances and political buy-in rather than something being very technical as the Dutch promotional narrative highlights and they do it often by mobilizing or building on existing diplomatic and trade relations and the work entails cautious navigation of cultural and power differences which involves again negotiation persuasions and contestations with other actors so in the process the recipient side in my research it was Vietnam and Bangladesh creatively molds and importantly steers the process to make what is transferred to their interests and their own development context the third insight that I would like to draw attention to is the Dutch Delta knowledge what I found is that the Dutch Delta approach is far from those 12 fixed clustered building blocks it's not a fixed policy object of transfer rather it's a shape shifting object it's contents and shape change depends depending on when where and in which context and also by whom it is talked about refer to or enacted and the meaning of what Delta planning is changes almost beyond recognition once the Delta approach lands in a new destination I would show you in a while how it changes its meaning differently in Vietnam and in Bangladesh in comparison with that in the Netherlands so what emerges a Delta plan outside of the Netherlands is broad enough to fit a wide range of interests and accommodate different storylines of development and development visions so just to give an example with in the two in the illustration of the Dutch Delta approaches there is this one building block is a scenario development in the Netherlands in the Dutch Delta program the scenario development is used as a planning approach or a tool to come up with four uncertain uncertain futures and these futures uncertainties are projected based on two external drivers social economic development and climate change and then the robustness of the proposed planning strategies are assessed in accordance with the four uncertainties so when these scenarios were applied in the Mekong Delta plan it didn't work well in the context of the situation in Vietnam and also the situation the Mekong Delta is the socioeconomic situation of the Mekong Delta so what the actors Dutch and a group of Vietnamese experts did they came up with one uncertain futures to develop plan with instead of four and they proposed an agribusiness industrialization vision for the Mekong Delta plan which kind of challenges the Vietnam government's triple rise policy in Vietnam the government promotes and adheres their triple rise policy which says that the farmers in the Mekong Delta has to grow three rice crops a year and in that way the Delta becomes a rice bowl for the entire country and in the development index in spite of such high economic contributions the Mekong Delta region kind of lags behind in the least of development index then the other regions so in that way you can say it's a deprived region so the scenarios in the Mekong Delta plan does here it kind of challenges that politically ambition strategy of triple rise and it recommends that the Mekong Delta should develop into a specialized hub for high value agricultural products for export and domestic markets so it shouldn't be only rice but lotus and shrimp and other crops should also be cultivated and also it suggests not to go for the big infrastructure but for nature based solutions in accordance with the agro-based industrialization vision what happened in Bangladesh is that first the experts try to implement the conventional way of developing scenario as it is in the Dutch Delta program but then the experts and the government officials in Bangladesh they were kind of perplexed to see how it can fit the development context and the visions of Bangladesh because having only two external drivers of socio-economic conditions and climate change doesn't work because the countries have other external drivers that can influence its futures which includes the trans-boundary water relations and the political instability etc etc so then it went through several phases of changes so from four scenarios it was kind of like the experts kind of tried to fit into six but at the end what the scenario in Bangladesh Delta plan became is referred to as policy options developed by a group of macroeconomists Bangladesh macroeconomists so what they say that the scenario concept in the Dutch Delta program doesn't work in the context of development for Bangladesh what would work better in the case of Bangladesh is that having two projected uncertainties or two scenarios one is without a Delta plan that means business as usual so what is the consequences of it they analyze and now the scenario is having a Delta plan with a Delta plan so then they projected socio-economic conditions and they tried to show those projected outcomes how it contributes to Bangladesh governments prioritized development vision which is known as vision 2021 which is all about making the country upward in the development index and making it as a upper middle income country by 2041 and a lower middle income country by 2021 which Bangladesh has become according to the UN certified development indexes so at the end when the Dutch government promotes a Delta plan and transfers the Dutch Delta approach for dealing with water and climate in Vietnam a Delta plan became a vision of an agribusiness industrialization which emerged as a provocative and agent setting plan which focuses on well-being of the Delta and its people and it provides a legitimate ground for calling the Vietnamese prioritize development triple-race policy for the Delta into question which has been before that a difficult political debate to talk about in Bangladesh as I mentioned it became a means to achieve a middle income country status and it connects Delta planning now with the Bangladesh government's vision 2021 and 2041 so going back to that the Dutch government's promotional narrativeness represents what actually happens in the transfer so then what actually happens in the transfer it has this my doctoral research shows that it has little to do with technicalities that is widely transferred to an understand as Dutch net the knowledge or as part of managing Delta and this is the way we should know Delta and rather the transfer resembles to a series of collaborations and interactions in which both may involve actors and that what is transferred change in this case the Dutch Delta approach and the Dutch experts in the transfer process exchange and learn knowledge on Delta that is developed and refined in a non-Dutch setting and this results in hybridizing of Dutch water and Delta expertise in this case the Dutch Delta approach as we can see through seeing the examples of scenario development so the based on this insights I can say that there are room for discussion when discussion on whether this Dutch Delta approach that the Dutch government actively promotes as a must common policy solution for sustainable Delta management even exists and this calls for rethinking about the transfer and so what can be a way forward so I term it symmetrical conversation this normative approach of symmetrical conversation comes from my conversations long conversations with Dutch, Vietnamese, Bangladeshi experts involved in the transfer of Dutch Delta approach to different countries not only to Vietnam, Bangladesh but the US, Indonesia and Mozambique so based on their insights and experiences and their suggestions in the symmetrical conversation I propose not to shy away from how international politics work because I could see in my research that we tend to approach to manage Deltas as a first as a natural process and then in some cases as a social process but what I see that knowing Deltas or managing Deltas is also very much political and so we should not shy away from talking about the politics and in the symmetrical conversation it arges to explicitly discuss how to navigate this political and commercial interest of different actors and deal with the differences between the countries and the actors such as those based on wealth, power and authority think about the differences in the Netherlands and Vietnam and the Netherlands and Bangladesh so the symmetrical conversation approach allows to recognize and appreciate diversities existing from expertise, practices, cultures and languages so when I say symmetrical the term may give an impression that I am talking about or assuming that the different actors are on an equal platform or they are equal let's say or they are same in the symmetrical conversation the differences and the diversities are very much acknowledged and based on that acknowledgement it tries to show that how the parties are kind of relying on each other, how they are dependent on each other so an implication of the symmetrical conversation is that it makes the practices of maintaining friendship mutual learning and negotiation that happens in the transfer more explicit and prominent features of transfer not just like making it behind the scene activities that we should not talk about and should not be learned and inspired from to do the transfer process better and in a more mutual learning way so the hope with this is that it would create room for discussions about what good policies are so instead of the Dutch government saying that this is the solution that the world of delta countries need but the delta countries and the Dutch government sit together and discuss what can be a good policy for the Vietnam or Bangladesh or for Indonesia and this helps to rethink how different knowledges and knowers can relate to each other and come together for sustainable development of deltas that way new ways of knowing deltas would be created that would be more useful for Bangladesh and maybe for the Netherlands because they are also a delta country and they are according to the IPCC report all delta countries are vulnerable to climate change to conclude I would like to share some reflections looking back what I see that there is not one form of water knowledge and knower but some water knowledges and knowers they are recognized as an expert or a water leader than others because it has to do with their economic or political or geopolitical interests but it doesn't make the others as less vigorous water countries as the Dutch policy documents identify all the other delta countries outside of the Netherlands and I would say that all delta knowledges or all water knowledges are local and specific so it doesn't make the Dutch delta knowledges something global it's also local just like the water knowledges in Bangladesh and Vietnam because all these knowledges they come from somewhere they have specific histories like the history of Dutch water management which is very insightful and the Dutch are known for their historical water management and when we recognize these diversity in knowledge in managing deltas it would help to understand and question and hopefully change what is largely understand as sustainable delta management and recognizing this diversity I believe provides a nice entry point for rethinking about water and delta stepping back from this conventional way of knowing deltas in accordance to the Dutch and their emotional narrative just like what we can see in this image this is a workshop that happened in 2016 in Ho Chi Minh City organized by strategic delta planning research project where a group of experts Dutch, Bangladeshi and Vietnam they are discussing a case on and they are sharing their insights and learning from each other to come up with a planning for managing water in the province in the Mekong Delta to wrap up with I would like to reflect on if the Dutch government paying an attention to what the research is including myself are talking about or trying to draw their attention to it seems that a change is on the way they are there will be another five years program developing cooperation program in selected countries including Bangladesh and Vietnam but we have to see what happens then to understand this Dutch Delta developing cooperation 2.0 as I refer to and to end with I have to approach time to time the Dutch government officials and the experts who are very much actively involved in the transfer to inspire them to emphasize on my point that we need to see Delta's and do the transfer differently so how did I do that so I would like to end this presentation with that so I showed them I kind of played an ice breaking game so I showed them and satellite image of the Delta and they had to identify the Delta within a few seconds and all these people have in those my audience who were they have been involved for years and some for some it has been decades that they are working on those specific Delta's what I didn't tell them that I have rotated the satellite the orientation of the satellite images of the Delta so most of the time they couldn't identify the Delta's they have been attached with or have been working on so far I think I have played this game three or four times with a room full of Dutch audience and only one Dutch expert could recognize all four of the Delta's this is Bangladesh this is there is Vietnam there is Netherlands and also Myanmar so with this game I wanted to make my point that often we start we see and start to believe on ideas or on projections that the way they are presented they are as they are so I hope you find enough inspirations from my research to see things differently when you look at Delta's thank you thank you Shanu for your very interesting presentation and of course what you mentioned here is we can know Delta's and what are from many perspectives and we have many knowers and that is also something that we of course see in this master class series we are in the first master class and Philip knew a Delta from a soil water kind of perspective which sinking and shrinking saltier Delta's and Sanjayan looked as a sustainable livelihoods perspective we had Umer and Huang who presented it from an adaptive management and innovations perspective and I think also this morning earlier Ferdus presented our Mr Abdul who also knows his Delta in his perspective and you add another element to it there are quite some questions related to should we understand the Delta management as something or the discussion as something technical or is the core actually indeed political and what does that then also mean for Delta planning and sustainable development the Delta planning part of it is technical but a larger part is also very political and relational and these relationships appear in different forms some relationships are political like diplomatic relations some are friendship and collegiality between the Dutch and non-Dutch experts and these relationships are these corporations are sustainable management in developing cooperation are built or stand on these different forms of relationships not only on technical exchange of knowledge and would you then say from your perspective also that the Dutch then have actually been very successful in getting this Delta plan around the world or here it also matters who is asking the question and what that person means as a success because if you look from the perspective of the Dutch government it is a success because at the end they have a plan to show to the world among the Delta plan and the Mekong Delta plan so in that terms the product the deliverables so it is a success but from the involved experts point of view you know that it has been the Bangladesh Delta plan is more Bangladeshi than a Dutch so then what is the success what eventually is transferred or rather new knowledge has been created so it depends on one who asks a question and what success to him or her is one of the things you mentioned partly in well let's just use the word success of the translation or the translatability of the Dutch Delta approach is that it is actually a rather fluid concept than rigid and we also as you mentioned it maybe was a little bit more rigid when there were 12 building blocks now basically that idea has is gone which makes this more fluid and I was wondering in the past also in the Dutch politics on international cooperation it was about the the domine and the Kofman the reference and the merchant and the bias is this also not maybe a bias now in a strategically maneuvering diplomat in keeping international relations and the opportunistic international businessman developed unfortunately have a glitch yeah sorry I was lost so what I was trying to say I called it so yes this kind of transfer serves a useful purpose to nurture or maintain these diplomatic relations so sorry I kind of lost your question with the technical glitches I think yeah so is there also a balance or a deviation between the maneuvering diplomat to keep international relations and the opportunistic international businessman selling an idea yeah it is because this is also what the Dutch aid to trade policy is about to do good to the or to be by the side of their long term partners in managing that and also to create economic opportunities for the Dutch water sector okay thank you and also thank you for that last picture I think it was very insightful indeed often we know things on how they are presented to us and sometimes we need to stand upside down to get a view from a different perspective to understand it also from a different perspective which increases our knowledge base so thank you for that Shannour keep on the good work that you are doing also currently for Utrecht University and the Deltas network that they are supporting it is now 1055 here in the Netherlands that also means that we need to start closing this session but before closing this session I would like to highlight one thing and maybe I can ask one of the supporters in the back to share my screen because two weeks ago we had a little technical glitch when Badrul Hasan was presenting his work and we couldn't continue with this presentation two weeks ago but last week we have recorded his presentation and so in YouTube you can go to the IHC YouTube channel and go towards the videos and look for masterclass to part 2 which is now available and watch on Badrul Hasan's presentation on community management plus model for the governance of shared drinking water systems in coastal Bangladesh it has been very interesting let me then also now take the opportunity to thank all the people who have enabled this and first of you that is of course everybody who is now with us online joining these masterclasses having shared their comments we couldn't do this without you so thank you very much but then there are also some people in the back that needs to be sent those are Laura Kwak and Rachel Draker who have supported us in the back and Leon Hermans as well for also collecting your comments and questions and putting it forward to myself I would like to thank all the speakers in the past masterclasses Masterclass 1 we had Philip Minnehout and Saper Aslami then in masterclass 2 we had Badrul Hasan and Sanjay Annat in masterclass 3 we had Umakulsum and Forhwang and today Rubinal Verdoes and Shanu Hasan thank you very much for your insights for your knowledge and with those words I am going to finally thank NWO the Urbanizing Delts of the World Program first of all of course to supporting all these interesting research programs that have enabled these PhD and post-doc researchers in their knowledge development but of course also in supporting this masterclass series to be developed thank you very much and I am going to say goodbye


Going on everyone Sam here with late in sports cards. We are doing 21 22 penini prism basketball choice 10 box break number 3 Teared random team style here is a look again at your random results as always you can find these on the website under the Results tab as well as a Lincoln chat Let's do it guys. Good luck everybody. Let's pull some fire I don't pull it never your force pulled a net two nebulas so far. I pulled none You say This guy, yeah, I haven't pulled nebula until we turn it over. It's right here. Oh, no Miles bridges. There's a court kiss first silver going to the Hornets. All right. Go into the Wizards We have Ficundo Campazo that is Reggie Jackson and we've got Dominique Wilkins on your exclusives We've got Marcus Zegorowski that is going to the Nets on the rookie auto not numbered Oh, please for us. Do you need to hate the asterisks? Come on Austin Reeves that's eight out of 88 going to the Lakers nice one there. L.A. Red Sox and nice one here.  Oh, no, you're not behind for us. Never mind David Bertrand's Dwight Howard Just seems 10s 10 deep man. That's wild rondo clip Lakers kuzma for the Wizards. That's Scotty Bajars There you go Raptors Heck yeah, Ryan C. Congrats, buddy. There it is Let's go dude Hey That's tough Pory Kisfer on the red Going to the Wizards. That's fair. That's fair Nick's Dwayne Bacon 12 out of 39 and Rudy Gay going to the jazz 69 out of 88 Yeah, I think Merlin Merlin soccer blasters aren't bad. You get the like teal Exclusives, I'm pretty sure is what they're called Mom's give me a nebula one time bro one time for the one time here Gary Payton Danny Green. That's a Trey young O'Shea Brissette and Kenyan Martin, Jr. There's a clink of Pella Swiss banks and seasonal signatures Hawks Ryan C. And that's here to it Grats on that one Bruce Brown four out of 88 for the Nets and Nikila Alexander Walker that is one out of 88 Have a go on that Have fun, buddy. Be safe There's no sleep a great team on strength right? Yeah. No, that's true. I mean, they're a good team. Don't get me wrong Matt's giving me ideas Caruso Joel and being silver We've got Marcus smart Celtics that's Seth Curry and Want to scuttle Anderson for the Warriors. We've got Rick Fox going to the Lakers nice one there on the red scope auto Got the trailblazers is Anthony Simon's 88 or 16 out of 88 and John Stockton 5 out of 88 going to the jazz Nice couple of red scopes there guys that was really exciting. We had it on here for us. It was wild dude. Absolutely wild Empty still nothing in Brogdon Covington. It's Clay Thompson Jalen Brunson Keon Johnson rookie for the Clippers. We've got another Corey Kisper rookie auto that is going to the Wizards, there you go Nam queue on the tier two hit We've got Tobias Harris That is 14 out of 88 nice one here 23 out of 39 Jaden Springer on the rookie Pulled all the Nebula boxes for my yeah, I know you pulled on the Nebula boxes for us And of course I had the Clay Thompson was the first card that came up on the exclusive the troll me There's a Marcus Zegarowski silver Got Derek Rose for the mix. There's a job Marant Grizzlies and a Greg Brown the third going to the Blazers we've got Dearon sharp rookie auto Going to the net nice one there nets Dearon sharp that's Enos freedom cancer 33 out of 39 going to the Celtics and we've got how do the yellow? 60 out of 88 for the pistons all right come on We got four more chances Don one time for the one time give me a Nebula get him a Nebula. I mean a rookie nebula at least See I told you the tiger stripes are rare Yeah, and they aren't soccer. Yeah Same with the green one full of green scope yet either Force really set me up failure here God again, Isaiah Stewart silver Herbert Jones That is Alex Caruso for the Bulls You've got Derek favors for the Thunder and we've got one that's gone to Anderson again That's the second one of these for the Warriors nice. We got Jonathan Kaminga going to the Warriors. There you go Golden State Congrats Derek S nice one there Kaminga auto got Chris Boucher 51 out of 88 going to the Raptors and we've got nice We'll distill one out of 39 going to the Warriors We'll Chamberlain nice one there Of course really hordes the Nebulas. That's all I know. I'm sure it's I'm gonna pull the one out of optic choice We're counting that Not out of prison boys though Understandable for sure Junior Trey young silver Dante Devin Chenzo Hama do Diallo Evan Mobley this time going to the cabs Josh B. Congrats, buddy. I nagged this one too. We did the yeah, we did the barn. We got to do this. Yeah Lori marketing Let's go into the Bulls Nicholas Batum on the blue five out of 39 Clippers and Anthony Davis two out of 88 going to the Lakers How much are they for us? Like what are what are you seeing in terms of prices for those? Stop Sam Silver Weissman Silver Ross. There's a LeBron nice one there Mike Conley. Wow. Holy cow. Nymious Keita going to the Kings We've got Trey Murphy the third going to the Pelicans on the choice auto not numbered there That's fair enough for us and Derek white red 59 out of 88 and Tony Cuckoach. That is 21 out of 39 gone to the Bulls Congrats Bulls Last box last chance pull a Nebula or a green to go for a tiger straight Or just something just give me something something to be happy about Sounds of desperation No, I guess not Wiggins. There's a silver Luca Garza Eric Bledsoe Davante Graham. That's Greg Brown On the rookie. We've got another Clint Capella Swiss Bank going to the Hawks That's on that one Hawks Yeah, I was in chat one night when I saw that guy pull. That's awesome Sam. Congrats, buddy Jordan Clarkson three out of 88 going to the Jazz and then a rookie Santi Aldema 20 out of 88 going to the Grizzlies that'll do it for the break guys do a quick recap here We've got Clint Capella going to the Hawks. That is Lori marketing cabs John and cominga warriors day Ron Sharp going to the Nets Corey Kispert for the wizards Rick Fox Lakers Corey Kispert wizards Marcos Zegorowski Nets, then we had both a Evan Mobley and a Scotty Barnes exclusive choice rookies On the blue yellow green that'll do it for the break guys. Thanks again for the fill next up now We've got football. Yeah


Hello. Today I'm going to talk to you about keyword arguments in Ruby. So we'll see why they're useful and how they were introduced gradually in Ruby over the versions and how it all starts with the options hash. So you may already have a good idea of what keyword arguments are, but let's start with the definition. So Wikipedia says they refer to computer language support for function calls that clearly state the name of each parameter within the function call itself. So translated in Ruby, when we call a method, we name each parameter as we pass it an argument. So let's first look at the advantages doing this brings over regular parameters. If we define method in Ruby, we give it an ordered list of parameters. And it means that later when we're going to call the method, the position of the arguments will matter and which is also why we call them positional arguments. So when you look at the method call itself, there's no way you can guess which arguments corresponds to which parameter. So if the call sites are in a different file than the method definition, which happens a lot, you can be confused. So if we look now at the definition of a method with the keyword arguments, we can see it's very similar. But when we read the method call now, it's much more clear what we're going to get. Also now the order of the arguments doesn't matter.  And we don't need to know the order of the parameters anymore. So of course we need to know the names now. And we need to type them. And they take up space on our screen. But it's more verbose this way. But I would argue it's also more maintainable because it allows you to change more easily. And the only thing that we know, the only thing that doesn't change is that there are going to be changes later on. So it's like that. So this way it's easier to add new parameters or to replace the old ones if we want. For example, we'll see later if we want to support percentage taxes and stuff, it's going to be much more easier than using the position logs. So this can be called cognizance. So it's a fancy name for coupling. Basically it's just in a different, it's for objected oriented design. And what it means is that if two things are cognizant, if you change one, it will require you to change the other. Or at least you're going to have to check the call sites. And in our case, if we change the method definition with position logs, we're probably going to have to change the method calls in other files. So I won't spend more time on cognizance, but if you want to learn more about, oh yeah. So this is just the order. It's an approximate order of the weakness or the strength of cognizance. And name is the basic one. We can't get rid of it. It's the only way. The weakest link we can have between two parts of our programs. And if you want to know more, there's a great talk from the late Jim way rich. So I would encourage you to go see that. So at this point, we might think, oh, let's go ahead and use keyword arguments everywhere. But obviously there's always a tradeoff. So if you have a method that only takes one parameter or even two, but if they're obvious, it's not going to help. And it's going to make your code more verbose and more Java like or whatever. So for example, complex numbers. In all the definitions I've ever read, it's always the real part and then the imaginary part. Same thing for rational. It's always the quotient over the denominator. So we don't really need to name them. Same thing for all the innumerable methods that take a number of elements. It would be silly to name the parameter N or count. It doesn't make sense. Yeah, by the way, you should rather use those literals for imaginary and rational. But so the first thing that you need to know about name parameters in any language is that you can emulate them using any data structure, such as an associative array, like a struct in C, an object in JavaScript, or hash in our case. And it makes sense because what an associative array gives us is that it allows us to associate a name with a value. So that's kind of similar to what we want to achieve with keyword arguments. And you can oppose that to the array. And a simple array is closer to a regular parameter list. So let's go see how we did that for a long time in Ruby. We've used that especially for optional parameters. And we call that the options hash, usually. So you can see that by passing in a hash, we can fake naming the parameter. And we can also pass it straight. And the great thing that we all know and love in Ruby is that we don't need the implicit hash. We can omit the curly braces. And it looks pretty great in this case. So actually, when I was researching for this talk, I found this in the first edition of programming Ruby. Like Ruby 1.6 does not have keyword arguments, et cetera. And what made me giggle was in parenthesis, the schedule for Ruby 1.8. So, yeah. Okay. So if we come back to the example, but now we want to add the percentage taxes feature. So what we can do is just add the default values up there. But obviously, this won't work. So the issue is that the full hash is just a single parameter. So it will override the other one. And we won't get the default value for the tax rate. So over the years, a number of techniques emerged. And usually, with just a line of code, we can get around this. But it's still boilerplate. And also, libraries gave us a way to express this in better ways. So for example, from active support, you can get reverse hash, reverse merge. And makes it a little nicer on the eyes. But in any case, it's something we'd rather have not to deal with. So let's see. Oh, yeah. So this pattern, the options hash is very popular. So Rubyist, we use it a lot. So if we look, for example, at Rails in the latest version, it's used almost 500 times in the whole code base. In Shopify, it's like even worse. Or even more. So let's come back to keyword arguments and try to trick Ruby and use the options hash as keyword arguments. So the simplest thing we could do is just using the values. So all the hash indexing, you can see options index, subtotal. It's not great. But that's almost the code we would like to read. But what could go wrong? Let's say we forget an argument. We get a no method error. And in this case, it's very easy to see the issue because we've got the code. In some cases, it can go deeper in the stack trace and it can get lost. So what we've been learning and what I've degreamed, for example, has been teaching us is we should use fetch, for example, to make it clear, right in this method that these keys are required. But even then, what could go wrong? For example, we all write code sometime in the morning before having coffee. And you don't get a weird result there. And that's because I got a typo there. So once again, you can go back to active support. And you have this method called assert valid keys that pre-helps for this case. Another issue we can see is when we try to combine this using the splat operator and the options hash, we can't do it straight away. So we need another line of boilerplate just to get that out. Yes. But even then, you can see, when I was looking like extract options, I thought it would be just this line of code. We could just use that. But in fact, if you look right now in Rails, they actually do extractable options. And they define it in hash to only work with instances of hash. And then they redefine it in other subclasses to say, okay, this class is okay to also use extractable options. Because they had issues with Mashi or Mongo or like, it always happens. So we really wanted this to come into Ruby itself so that we would always, we would all agree on what the way it should work. So if we come back to Ruby 1.8, this is the same code except I'm using the hash bracket syntax. So 1.9 was really nice. We were really happy. We have this new closer to JSON syntax, and it's much nicer on the eyes. But that didn't change anything about the method definition itself, only the method call. So this syntax works only when the keys are symbols, of course, but that's most of the time that's what we want. Except sometimes it's not so welcome back to that in a moment. So Ruby 2.0 introduced optional keyword arguments. And that was a great day for all of us because we could remove already a lot of the boilerplate because now all the optional parameters that we know they're defined and we know we're not entering a typo or something. So it removed a couple of lines. Ruby 2.0 also introduced the double splat operator, which you add it at the end of a parameter list and it collects all the remaining keywords into a hash. So that gets you back to the state we were before. But we still needed to use fetch if we wanted to avoid silly mistakes. And finally Ruby 2.0 introduced required keyword arguments and we were all happy. I know it was a great Christmas present for me at least. So at this point I felt pretty great and we had keyword arguments in Ruby. But the first time I tried it I encountered a behavior and I was like maybe this is weird or is this a bug? So let me show you. If we have a method that takes nothing and does nothing, it's like it has no parameters. And you call it with nothing. Well, it works, right? But what if we pass no keyword arguments at all? What do you think is going to happen? Any ideas? So the answer is it depends. Of course. So up to 2.0 it failed consistently. But in 2.1 now they started making it work. Actually it was a crash in the parser that happened in the development version. It was never shipped. And the fix actually caused that side effect that now they're just ignored if it's an empty literal hash. But we can still get to the wrong or the weird behavior but just passing value instead. So you could also have an empty variable that holds the empty hash and pass it. That would be the same. So that's what we never do this. The empty, it never happens. So that's okay. So what's going on there? So that's the point where I'm going to argue that really keyword parameters don't really exist in Ruby. So they're not regular parameters that we can access and we can set by using their name. It's like a different thing. It's the same thing as the option's hash. So even though keyword arguments got really much better at doing what we want them to do over the years, still it doesn't feel like they're really here. So let's just compare really quickly to another language that has a more comprehensive implementation of R. I don't know if it's comprehensive. A different implementation of keyword arguments. So as you can see in Python, any parameter can be named. And it doesn't have to have a special definition to be able to be named. And the parameters have a name but also a position and you're allowed to pass any number of parameters by position until you want to pass them by name. So even on the first line, even the optional parameters, you can still pass them as we do in Ruby. So remember the definition from Wikipedia at the beginning. So it mentions function calls. Obviously in Ruby, we would rather say we're sending a message. But that's the same. Or we are calling a method. So when we send a message in Ruby, we pass arguments and optionally a block. And the arguments are nothing more than an array. And there are no keyword arguments in site. So it turns out that the arguments are so similar to an array that we can use the same syntax we use in a method goal in the are literal syntax. So the simplest example with the splat, we can use that in the are literal syntax. But I don't know if you know that. We can also use the hash collecting feature in a narrow literal this way. So that's why I say that when we send a message, we simply send an array of arguments. And we could actually say the method called syntax simply reuses the are literal syntax. But they don't take part in sending in the message. So let's come back to the use case of having any number of arguments and options hash. Now with the double splat, it's much more easier. So that's just a quick thing. So Ruby 2.1, double splat implementation was a bit weird in the sense that wherever you put the double splat, it doesn't matter in the end. So it looks like a double splat in Ruby 2.1 was handled as defaults and any literal value you added to the hash were overriding these defaults. So if we look, I did a huge hash with two double splats. And you can see that actually the values from the outside hash takes precedence over the values inside the double splats. And between different calls of double splat, different usage of double splat, it's the first one that wins. So that was a bit weird. And the way you could get the same, ah, that's too bad. The way you could get the same result would be to merge or to use reverse merge from the rightmost double splatted hash to the innermost one. But you can see the keys are not the same. So actually the implementation would be more like this one. So maybe I can slide. That's pretty bad. So it's just using the block parameter to merge. You can choose what happens in case of conflicts. So in this case, we always want the existing keys to stay. And we want the new keys to just be discarded. And this preserves the order of the keys. And this was the way it was handled in 2.1. Actually Ruby 2.2 changed that. And now it's much more useful. So what's going on now is just simply a number of merges that happen. And they depend on the order of the keys. So now if you really want to, you can override a literal key with an option hash by splatting it after. And if you have multiple hash being double splatted, it's the rightmost keys that win. And the equivalent in Ruby code is really much more obvious. It's only merging stuff from the left to the right. Okay. Let's go now to the implicit conversion. So one of the best things about Ruby is that it's the duck typing that happens in multiple places. Like you all remember the symbol to proc hack that was then used into Ruby. So what happens if you pass any object and you double splat it is Ruby complains because you don't provide an implicit conversion. So implicit conversion methods are the longer named ones. So in this case you can just define two hash and it will take the result of this parameter and merge it into the enclosing hash. The problem is that with the implicit conversion to hash is something that is pretty generic. It's already used, for example, in the merge method. So if we might legitimately need string keys, but that won't work at all with a double splat, of course, because they want only symbol keys. So it might be nice if Ruby was using explicit conversion, especially since we're actually explicit about the conversion there. But and it would call two H instead of two hash. But that's not really possible because when you just want to call a method and pass an object, that's the implicit conversion. So I don't know what's the best solution is, but I leave that as an exercise to Matt. Let's talk now about performance. So it's not the most important thing, but still it does matter. In Ruby 2.1, calling a method with keyword arguments was pretty slow. So this does 10 million method calls. And if you do the same with a simple hash and you pass it, it's about one second. So it's really, really slower than using regular arguments, even considering the creation of a hash. In Ruby 2.2, that was basically solved. So we get in the same ballpark as regular arguments. And the way it was solved, it has to deal with the VM. So let's take a small detour into the VM for that. So if you want to see the bytecode generated by the Ruby VM, you can just run this line by providing your code in the string, and it will output the instruction sequence that are going to be run by the VM. So in this case, you can see the first step is actually defining the method, because as you know, defining a method in Ruby is only code that we run. And the second part is actually the compiled method. So we can see this method just does nothing. And to talk about the previous talk, the traces calls are what allows Ruby to tell the system that these haven't happened. So I think the 8 must mean method entered and the 16 is method exit. Yeah, so let's look at the way the Ruby 2 and VM was handling a method call with keyword arguments. So it was actually building a hash from an array. So it would just put all the key value in an array and then call hash from array. Apparently that would have been the faster way to do that. And then it would send the method call, which you can see maybe there, total. So that was okay. But the bad part was the method definition itself, the method itself. So that's the code that is generated for an empty method. There's not even a code there. But you can see that all the method declaration was just hidden code that you didn't have to write yourself, but it was still there. So it first checks, does the hash has a key subtotal? If it does, delete does the hash and it does that for each of them. So this was pretty wasteful. So in Ruby 2.2, they changed that and now it fits in a slide, except it slides. It scrolls. So what happened now is that actually you can see keyword 3. So now that instruction knows the keyword argument it gets, and they're just put on the stack as regular parameters. And it's inside the VM itself, inside the handling of the method, the message send that Ruby can pass the parameters the way it should. And we can also see that the method itself is now empty, as we would expect. But there's just a declaration of all the keywords that it can handle. So that's what made it fast. And that was nice. Let's continue. Ruby 2.2 also brought us newer hash syntax. It used to be impossible to use keys that were not identifiers with the new hash syntax. And they added that. So the logical conclusion is that we can now copy and paste JSON in IRB and it works. Almost. You just have to define null as nail. And it will work. So I don't think you should do that in your code that you commit. But for IRB, it's really useful feature. An issue that we get with keyword args, as you can see is that sometimes they can get repetitive. In this case, I think I think we could do better. Since create is like a factory method, it could just take any number of keyword arguments and just pass them on to the new method call. And that would remove all this repetition. But that's something that you will see if you start using keyword arguments a lot. Sometimes it's a bit repetitive. And sometimes you wish we had something similar to ES6 where you can pass arguments straight and it knows that you want the same name as the key and value. But to come back to my original issue with the keyword arguments in Ruby, this is an example that shows the issue. You can see that if you pass no keyword arguments to dispatch, it will fail because nothing doesn't take any parameter. So the way right now that we can fix that is by adding some boilerplate code. So by checking if the hash is empty before pushing it onto the args array, we can make sure we don't send an empty hash to a method that doesn't take any keyword arguments. That's about it. I just want to conclude by noting that most of our troubles with keyword arguments were solved by Matt's and the Ruby core team over the years. It looks like this is something that could be fixed also in the semantics of a message send. We could say if the keyword arguments hash is empty, don't push it depending on the arity. It could be something like this could be pushed down in the VM and we wouldn't have to care about that. And I actually expected to be solved in one way or another in the future. So that's it. I'm at the end by A. You can find me at BE or BE by I. I work at Shopify and if you have any questions, I would be happy to answer them.


We are here today to honor our graduating seniors and their families. Please stand and welcome the graduating class of 2017 and the members of the official stage party.  Fiat Lux and Go Bears.