Hi, Olivia Boudram and I am a registered nurse. You're supposed to say my mom. Huh? You're supposed to say my mom. My mom? Hi, I'm Olivia Boudram and I'm Shannon's mom. That's my job. Hi, I'm Olivia Boudram and I am Shannon's mom. Full-time job. Trust me. We actually use this in dermatology, eh? The vibrator? Mm-hmm. We use it under the eyes and you vibrate.  You don't have a vibrator. Never? No, never. Why? I think our generation has vibrators. I think that's true. I don't think so. Are you excited, uncomfortable or neutral about talking about sex? Uncomfortable with you, neutral with everyone else. A couple with me? Why? You're my daughter. You lost your virginity at 18. True or false? True.  Like, how to manage it so it's not just something that you do to have babies or something that you don't do to not have babies because there's so much more to it than just consequences? I don't know what to say here. Let's back up. I work in a clinical setting and I work with a lot of people and we might talk about it especially through you because I talk to them about what you do and that and they still don't get it and they still don't understand it and they still think that it's dirty and they think it's almost like why would I be proud of something like that because you should want to keep that hush. And to a certain extent I must say that I actually have I don't have a hard time talking about it so to speak in terms of you're a sexpert, you're a sexologist you actually have your clinical certificate in that and you know so I have no problem with that. It's just that when you see that when you're talking to someone and you see that whole demeanor come in that oh really and they kind of back up you kind of tone it down too instead of me saying yes, that's right and you want to hear how she talks about in that or sharing your videos or things like that so I'm very select in the videos that I share with them because again you know people only see the consequences they don't understand that it can be done in a responsible way or it should be taught in a responsible way and so I guess speaking about that I started doing sex education when I was 19 years old what was your first impression and how has it changed over time? My first impression actually I did the thing that I find that a lot of parents do. I don't mean to blame anybody but it is true and I'm not going to take all the onus because I'm pretty sure I grew up in that culture and that was if you don't talk about it it's not happening. If you don't address it, it isn't happening and so I saw you going on the internet which was kind of foreign to me back then too when you said you were on the internet and like reaching out to the world it was kind of like on one hand and on the other hand I was just proud that you were found something that you were passionate about.  I was not. Yes you were. I didn't, I, no when I say that I mean in the sense that you were actually, I never bothered but you were in the dining room half of the time, right?  I ignored most of the time, right?  What picture is this? Who does that? But I think when you came to the book launch and you saw for the first time how people received the work or, you know, the impact it had in a positive way that's when I started to see the turnaround. So I'm still not, some of your topics are still some of the things that I'm still not comfortable with. Yeah. Yeah. Yeah, that's fair enough. But you, you're going to get this vibrator. That'll be your first one, right? You use this for dermatology, eh? I'm going to ask you this. How come you never explained my anatomy to me? Didn't I? No. Like I had no idea what a clitoris was until I was like 18 years old. If you could redo sexually educating me what are some of the things that you would keep and what are some of the things that you would add or throw away? I would definitely be much more open to talk about it with you. Definitely. Your dad and I have often said, and I don't know why we feel this way. We may be right. We might be wrong, but if you're asking me that question point blank, no, B.E.T. Because to us, B.E.T. When we were watching it and saw what you guys were looking at, it just gave such a negative connotation as to what the songs, the lyrics, the movements, the dances, the attitude, it just brought women way back as far as what we could see. So if we felt that way about it, why did we go out and get that channel for you guys so that you could watch it? What were we thinking? We would not have been so trusting. We trusted you guys a lot. So when you said you were going to A, we believed you were going there. And in some cases, and we did find out with you once, that you actually did not go. Do you think more control is the answer? Like I said, what will we do differently? We would talk more. Thank you guys for watching this video. Please like, subscribe, and share. And special announcement, my crave necklaces are almost ready to be released. Thank you guys for your patience. And for those of you guys who already bought one, you better find somebody who needs a gift in your life. Sex is nothing magical. It's a part of what we do is eating, it's fighting, it's a biological function.


इक किस्वी सदी की यह सब से बड़ी एक राजनेटिक आन्दूलन की यात्रा होगी. अस्ट्ट रोण कुछ साथ देना जोडकर निकले नाजाए. इक किस्वी सदी की यह सब से बड़ी एक राजनेटिक आन्दूलन की यात्रा होगी. यह बारत जोड़ो यात्रा पूरे देस में इस बात का सन्टेश देखी.  We get it after 50 days of work. We don't get the opportunity to live happily. It is very difficult for us to get a job in Punjabi. How much money do you get? It is very difficult for us to get a salary. It is very difficult for us to get a job in Punjabi. This ICDS is brought to India by Raghulji. So, we believe that Raghulji will get a job in Punjabi. We believe that Raghulji will get a job in Punjabi. We believe that Raghulji will get a job in Punjabi. We hope that Raghulji will get a job in Punjabi. So, we believe that Raghulji will get a job in Punjabi. We believe that Raghulji will get a job in Punjabi. We all are very happy. And she is new or she is... Is this the group of friends or are there more friends? But this is the main group. So you are five? What do you want to drink? We want Sharjah shake. Don't be shy. I am your brother. How do you know someone is good teacher? She is a friend. Why are Kerala nurses so good? Everybody says Kerala nurses are very good. And where do you want to work? Korea. Why Korea? What do you like about Korea's music? I am very happy to see Kerala nurses. We are very excited to see them. You can see that his father has risked his life to give him his education. We are not ready to accept that you will work, you will risk.  Five or ten people are making all the money in this country. And the large majority of people are not willing to give up their education. They control what India listens to, what India sees. Have you ever seen a program about the risks that fishermen take to go into the sea? Have you ever seen a program showing how difficult it is for you to live? Not just fishermen, coir workers, cashew farmers. Everybody who is being attacked in this manner has to organise much better. This is the reason we are doing this here. For you. Actually, I have two issues. I have two issues. For you. Actually, I have two issues. The first one is the lack of support from the government for our fishermen, the students for the higher education studies. The second one is under-employment. Under-employment is under-employment. These are the two issues I raise to wrap it up. It is a great vision about the EU. We are very happy to see the difference between the two countries. Because there is a lot of Congress to address the people who are sitting in this government. It is very expensive, it is under-employed, they do it as they used to do it in English, people doing it today. When in Congress it was Rs. 400 a cylinder, bettolls were Rs. 60 a cylinder, it is very expensive and you can see all these. The net income cost will be almost river. नोद बंदी से ये जितने भी काला दन ये वाप्सी आगा काला दन कब आएंगे विप्लर फाइटिंग भी तीच्टर, on the base of religion or caste some people may be like adhanee is getting lot of undue adhundations that is not good for an economy बारत जोड यात्रा, बहुत बतनशे लात्रा है मैं दोक्तर हू, मैं कुच मेद्सन्स भी लेक राहुंजी के लिए आज़ा यात्रे हूंके लिए वूरके अब तक तो फाँ में चाले बी पडगे बहुत यात्रे हूंको मेरे तरब से चोड़ा सा, चोड़ा सा कंधरवूशिन आप साभ लो बरजोड़े आत्रा में पाटिस्पेष करने के लिए दिल से आपको दूवा मागे, तो उगी कापिन है, कांगरेस के लिए, राहुंजी के लिए रिए पता, राहुंजी पीवे ता, मैं खरे लोड़ा वरे, केलकन न दे बागम आई तान, मैं वो वर्जोड़े आप की आईप खरे जाईवा, वो आब वो लगी कि लिए न पाटिसे लेए, वो वर वरे जाईवा देप षियक तो, वो वो वो वो वी वागम था वो वो वागम न चाही च्छी गरूए, විස්ය෌ාන්ත්ද්බය්ය්න්න්ඩය්ත්න්ත්රය්ලෙණා දෝඩාවුදයී්න්ත්ර්ස්මය්මය්ෙන්මය්වුද්න්ක්ය්න්වපමීුදන්රය්වදා※ස්රය්වේ්ර්න්ය්න් වවවවවවවවවවවව, absolute love will come to our hearts, වවවවවවවවව, වවවව඀වව඀ වවවහවවවවවවවව වවවවවවවව. I'd like to thank all of you වවවවවවවව, for coming here today.  ᵖᵗᵗᵗᵗᵉᵗᵉᶜᵇᵉ birth. ᵖᵗᵗᵔᵉᵒᵉᵉ. ԱԱՈԱԷՈԱԳԱԱԲԱԻԳԱՈ ԱԱԻԱԳՌ, ԱՈԱԳԱԱԳԱԲԠ, ԱԱԱԱԱԺԷԱԱԱԱԳԱԱԱԱԱԷԱԱԱԱԱԱԱԱԱԱ� addition I would like to invite our dynamic leader, brothers and sisters, friends of the media. I would like to welcome you all and thank you for joining us in the Bharat Yatra today. I would also like to pay tribute to the state visionary leader, Shrinarayan Guruji. A person who even today gives direction to the people of Canada. We have been walking through Kerala for some days now and it has been an honour and a pleasure for me. And throughout the day I meet thousands and thousands of people and discuss their issues, their problems, their life. It makes me very happy to walk the streets of Kerala but it makes me sad to listen to what the people of Kerala have to say. Every single youngster who I meet either does not have a job or is not happy with the job he has. The country is in a crisis of unemployment and high prices. You know better than me what is happening to fuel prices, to petrol prices, to gas cylinders. The people of Kerala and the people of India are being squeezed between unemployment and high prices. It is not a nice thing to say but our poor people are drowning in the waves of unemployment and price rise. Small and medium business sizes, owners of these businesses, see no future. Policies like demonetisation and if flawed GST have destroyed their businesses. Today I met entrepreneurs from the IT sector and every single one of them complained about the lack of support that they have. They come with the intention of bringing jobs to the people of Kerala to the people of India and they are faced with red tape, they are faced with corruption. It is almost impossible for them to build their businesses. And it is the same with our fishermen, with our coir workers, with our farmers. Every single person is facing the same problem. So India is faced with an ironic situation. On one hand we have the richest people in the world. Brothers and sisters, the second richest man on the planet comes from India. He can monopolise any business he wants in the country. He doesn't need any permission to do business. He can buy any airport, any port, he can dominate the agricultural business, he can dominate the power business, he can dominate the solar business. Where does he get the money to build these businesses? And who gives him the money to build these businesses? Brothers and sisters, this money comes from the public sector banks. This is your money. This is the money that should be used to build your schools. To build your hospitals, to give loans to farmers in distress, to support and finance and help small business owners, T shop owners. But this does not happen. If you take a loan and you default on the loan, they take away your house.  They take away your home. But if the biggest businessmen in India default on the loan, they are not called criminals, they are called non-performing assets. They are not called criminals, they are called non-performing assets. Lacks and lakhs of crores have gone to the biggest businesses in the country. During Covid, workers from across the country needed to go back home. They needed 100 to 100 rupees for food and a bus ticket. The Government of India did not give them that. At the same time, while the lockdown was on, the Government of India was still giving the loans of the biggest business people in this country. A few days ago, I met the people from the tourism industry in Kerala. An industry that gives lakhs and lakhs of people jobs in this country. And I asked them, what was your biggest problem? And they said, within a second, they said our biggest problem was that lockdown was done without anyone. Without any compassion, without any thought, the Prime Minister declared a lockdown. Destroyed thousands and thousands and thousands of small businesses. Smashed the lives of people. And he did the same with demonetization. Didn't ask anybody what the consequences would be. At 8 o'clock one evening, he says, I am banning 500,000 rupees notes. Did he ask himself the question, what would happen to the millions of poor people who have 500,000 rupees notes? Did he ask himself the question, what would happen to their savings? Did he ask himself the question, how would they eat that evening? Did he ask himself the question, how would they eat that evening? Because his job is to clear the way for the biggest businesses in the country. And the way he does his job is by dividing India. And the way he does his job is by dividing India. By making one brother fight against another brother. By creating hatred between religions, communities, states, languages. And the idea is to divide the people of India, so that the people of India are distracted. Make them angry, make them full of hatred, so they do not see what is being done to them. Because when you are blinded with anger and hatred, you cannot see the most obvious things that happen. So while India is steeped in hatred and anger, Mr. Narendra Modi is taking away what is your opinion. And giving it to three or four of his friends. It's a very simple cycle. Mr. Narendra Modi divides the country and creates anger. He takes away what is yours and gives it to three or four of his crony capitalist friends. Those friends own our media. And they promote Mr. Narendra Modi on television. They flood social media with Mr. Narendra Modi's images. And Mr. Narendra Modi ensures that they can dominate and monopolize any business they want. And Mr. Narendra Modi ensures that they can dominate and monopolize any business they want. The result is that your money has gone into the pocket of one man who has become the second richest man in the world. So two Indians have been created. One India has gone into the pocket of one man who has become the second richest man in the world. One India of a few people. One India of a few people, billionaires, they control all India's businesses. They can have and fulfil any dream they want. And then another India of millions and millions and millions of people. In that second India, there are farmers, labourers, owners of small businesses, tea shop owners, carpenters, IT professionals, none of these people will be able to fulfil their dreams. The billionaires don't have to worry about high prices. The higher the prices, the more money they make. The billionaires don't have to worry about employment. Their children will always have jobs. It is the common man of Kerala, the common man of India who has to worry about high prices. You used to pay much less for petrol than you do now. Ask yourself where this money is going. Please realise that the money is not disappearing into thin air. I met the fishermen some days back and they said to me that we don't get a subsidy anymore. I said to them that is the first question you have asked. Why are we not getting a subsidy? But there is a more important question you should ask. The money that is not coming to us, to whom is it going? Brothers and sisters please realise money never disappears. It is physically impossible for money to disappear. Money moves. It can either come into your pocket or it can go into somebody else's pocket. But remember it has to go into someone's pocket. When we did Narega, the money went into your pocket. When we did the right to food, money went into your pocket. When we fought for the land acquisition bill and I am seeing on this highway, all the houses that have been broken and the compensation you are getting, the money that is going into your pocket came because we stood for you. When we did the right to food, money went into your pocket. When we did the right to food, money went into your pocket. When we gave 70,000 crore rupees to India's farmers, we put money in their pocket. When Narendra Modi criticises Narega in the parliament house, he is trying to take money out of your pocket. When Narendra Modi passes the three farm laws, black laws, he is trying to take money out of the pocket of farmers. When Narendra Modi does demonetisation, he is taking money out of your pocket. When he hits you with a GST with 5 different taxes, 28% taxes, he is taking money out of your pocket. The name is very very simple, either the money goes into the vast majority of Indian people's pockets, or then the money goes into a chosen few people's pocket. So the next time you are filling petrol in your scooter, or in your car, and you see the prices gone up, ask yourself the question, where is this money going? In whose pocket is this money going? Next time you are filling petrol in your scooter, ask yourself the question, where is this money going? Don't just say petrol has become more expensive. Ask yourself the question, in whose pocket is the money from the expensive petrol going? These are some of the ideas behind the Bharat Jodo Yatra. We are not ready to accept India that is divided and full of it. We do not recognise this India and this is not our India. Our India is full of affection for its people. Our India is an India where brother loves and supports brother. So the first message of Bharat Jodo Yatra is we will not accept the hatred and the violence that the BJP and RSS are spreading in our open. The second message is we will not accept an India which is unfair to the large majority of Indian people. We will not accept an India where millions and millions of youngsters cannot find a job, have to beg for a job and then have to commit suicide because they cannot get a job.  We will not accept India where the vast majority of poor people are drowning in high prices. I would like to thank all of you for supporting this idea of Bharat Jodo Yatra. Look there are many ways to support things. You can support things by just standing there and saying I support this. And then you can support something with love, affection and giving it your full energy. You are supporting the Bharat Jodo Yatra with love, affection and all your energy. All religions, all communities, all languages, males, females, children, older people, every single person is coming out on the street with love and affection for each other. Everybody is treating everybody else with respect. Nobody is disrespecting anybody on the street. That is the true nature of our country. This thing that these people are saying, this hatred that they are spreading, this anger they are spreading, this is not India, this is something else. This is arrogance and it is cowardice. And India is humble and brave. So thank you for showing me and everybody else what India actually is on the street. The only country in the world which fought its biggest oppressor with kindness and non-violence, that is this country. You show me which country on this planet has fought a superpower and defeated a superpower with respect, with humility and with affection. You show me that country. There is only one country in the world that has the power to do that. There is only one country in the world that has the depth of understanding to do that. You know many years ago I met Nelson Mandela and that was when he had just come out to jail. He had spent 26 years in jail. And I asked him, Mr. Mandela, you spent 26 years in jail. What gave you the courage to continue your struggle after 26 years in jail? And his answer to me was the idea of non-violence, the idea of compassion and the idea of respecting other humans which Mahatma Gandhi gave me. That is the power of this country. That is the strength of this country. And that is what these people are challenging and questioning. Thank you once again for all your support, your love and your affection. It is an honour for me to walk on these streets that you walk on. And it is an honour for me that you come and you walk with me. And you have given me so much love and affection that I can never repay it back.  Thank you. Thank you very much. Thank you. Thank you to all for being part of our history. Thank you.


I think that Ruby Kaigi is one of the most amazing programmer conference.We will show the fun of Ruby Kaigi and the power of Ruby Kaigi.We will talk about hijacking Ruby syntax in Ruby.Ok, at first I introduce myself.ともひろはしだて日本から来てくれます私の友達はジョーカーさん私のTwitterアイディTwitterハブアイディジョーカー1007ぜひジョーカーを覚えてください私はCTOでリプロイングをしています私はデータエンジニアインフラエンジニアウェブアプリケーションエンジニアセトバロビーロビーオンライルフルエントリーフレストセトバこのルビーカンフ初ルビーカンフ エクスペリエンス初ルビーカンフウェブアプリケーションこの話は私の初ルビーカンフ初ルビーカンフ私は私の初ルビーカンフ私は私はロビーカンフの話をしています素晴らしい次はトーキングパートナーモリスタンこんにちは私はサトシタゴモリ多くのルビーカンフモリスタンモリスタン私はサトシタゴモリスタンオーサーマンテナープロジェクトフルエントリーウェブアプリケーションウェブアプリケーション私はサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンサトシタゴモリスタンとても面白いプログラミングのテクニックについてメタプログラミングについてとても面白いコードについてメタプログラミングについてこの話についてLuby Standard Featuresについて私たちのコードについてメタプログラミングについてメタプログラミングのテクニックについてまず、ビデオについてビデオはコンテクトのオブジェクトについてローカルバリアボールとインスタンスバリアボールと多くの人々のバリアボールを使ってビデオについてテンプレートエンジンを使ってこのサンプルコードがビデオを使ってメタプログラミングのコンテクトでビデオについてバリアボールを使ってローカルバリアボールとインスタンスバリアボールのサンプルコードについてローカルバリアボールのタイミングについてビデオのクラスを使ってローカルバリアボールと local variables, local variable get, local variable definedand local variable set.So this code shows what we can do using binding.In this code, this code gets binding object from binding proxy methodswith variable a, b, and cand also dumps the contents of binding object.And also this code is doing a local variable get methodto get the value of variables a, b, and cand dump them.And this result shows that the binding objectis recreated par binding code.So that means if we do a local variable seton our binding object acquired from different contextand we can see the newly created local variable djust after local variable setbut in original context the local variable d disappeared.So that means we cannot create a new local variableon different context.Interestingly, this code is doing local variable seton both of local variable dand awith value integer 20.So the result shows thatand we can see both of local variable dand awith integer 20and also in original contextwe can see local variable a with integer 20.This means binding local variable set methodis to add a variable only in a binding instanceor to overwrite values of existing differentexisting variables in original context.We can do that.Next is a tracepoint.The sample code shows that the tracepointis to trace events in Ruby virtual machineand call the hooks about these events.We can hook many events like a line,layers, and then cross and end for the beginningof class definition and the end of class definitionand call and return about to hook the method codea Ruby method codeand she call and she returnabout the methods implemented in C languageand the b call and b return for blocksand thread begins thread end and fiber switch.Ruby document says thatand we can usetracepoint to gather informationspecifically for exceptionsbut of courseand we can useand many various eventsthat document is completely wrongand anyway.So look at this codeand this codeis very simple and a method definitionto define a with argument aand dumpthe content of local variable aand then return a stringyayin global casesand then calla method with integer 100and then dumpsthe result of that method.So result is surprisinglythe value of local variable a is string100and the return value is upcaseto a. What happens?In fact, above of the codeI define theI enabledtracepoint to setand local variable with the stringfiedvalue and to callupcase method on return value.So this is what tracepoint can do.So the tracepoint having many methodsto control its behaviors or to knowthe details of events,what is the eventthe event occursand we have somemethods to know the details of eventslike a method ID or a curry IDor less exception or return valueand tracepoint also have a methodbinding.That means we can getbinding object at any pointwe can hook usingtracepoint.So that means we canuse tracepoint to gather informationabout ruby virtual machine or we canoverwrite every local variablesat any time in ruby code.So you should not require my codebecause I can break any kind of ruby codeyour ruby application,your ruby libraryanytime,completely.Yes, I can. Trust me.Anyway,I will talk about two moving featuresfirst,it's refinement.Refinement provides a way to extendthe class locally.It's useful tomultipatch safety.This code isthis is a sample of safetymultipatch.But I'm sadbecause most ruby programmersdon't use this feature.In fact,refinement is difficultand limited feature.I had some ruby committers saidI actually want to remove this featureor not.I'm so sad.Refinement is pretty cool.I like this feature.There is another use case.It'ssuper private method.This defined methodused in only this fileabsolutely.It's useful forrefactoring,for example,methodextraction.And second,I want to talk about method hooks.Anybody know method hooks?If you have used it before,please rise up your hands.Thank you.I think that it is not popular feature.These hook methods are calledwhen a method is defined or removedor undefined.For example,this sample codeshows how method update we have.Method update is calledfrom the line of death pool.In this case,line number 7and receives thedefined method name as symbol.Method hook provides a wayto implement method modifierlike public,private,protected.By the way,I made three method modifiers.Final modifier.Final 4-bit method override.Second,override modifier.Override enforce that target method hassuper method.Third,abstract modifier.Abstract enforce that target methodis overridden.These modifiers is similar withones of Java.If you know Java,please imagine these modifiersand you can understand easily.These method modifierswork when Ruby defines class.It is runtime,but in mostcase,this checking is donebefore main application logic.In other words,there is no overhead.Here is a sample code of final stream.Final stream provides a final modifier.When a method is definedor when a class includes a moduleor extends a module,ifsuper class has final method and the method is overrided,exception is occurred.Like this.This is the sample of overriderjam.When class definition is finished,if modified method has nosuper method,exception is occurred.This is the sample of overriderjam.When a class definition is finished,themodified method is not overridden,exception is occurred.How to implement these method modifiers?I used so many hook methods and included extended method addedand trance point,and also I usedZipper.In other words,I used the power of many blackmagics in Ruby.Here isuse case of method addedin finalist.Method added is main method verification logic.Method hook is useful forimplementing method modifiers,butI cannot implementfinal modifieronly by method hook.Why?Ruby has so many cases of method definition and they or define method includes moduleextend prepend.So,Inch case calls dedicated hooks.Why?Becauseinclude changes onlyChain of method lookup.When Ruby programming includes the module,Ruby interface inserts moduleto a hierarchy of method lookup.It's different from method adding.It's important.For your information,class ancestors method displays classand module hierarchy.For this reason,Finalist Jam uses many hooksin order to cover various cases.Method addedin to detectoverlided by subclass.Single-tone method addedinto detect overlided subclass.Single-tone classinclude it and extend it like so.And,I want to talk aboutTresspoint too.Overlider Jamand Absraker Jam useTresspoint.In this Jam,inherited hook or included hook startsTresspoint tracing.Tresspoint hook,I checkclass module hierarchy todetect method existence.So,module instance methodthe method is very useful for such a situation.Because method class has super method method.Super method method provides a way to trace method lookup chain.I'm using the word method too many timesand maybe you are confusing.Why did I use Tresspoint?Luby defines method dynamically.It's determined at runtime.Because of it,I must waituntil the end of class definitionto know a method is present or not.Overlider and Absrakercannot detect violationjust when they are called.In Ruby,the only wayto detect violation,detect such violationisTresspoint.And,I have advanced use caseof Tresspoint in Absraker Jamand Overlider Jam.Must detectfinish of specific class definitionin Tresspoint hook.In such situation,there is one pointthat needs attention.Luby has two syntax to define class.Class end statementand class.new with code block.Class.new with block isjust method code.It's important.In other words,end eventof Tresspoint cannot detectclass.new with code block.Because of this,I usedsee return event and return value property.It may cause trouble.I was in heavy trouble.I have another advanced case.It's Tresspoint and Ripper combination.Do you know Ripper?Ripper is a built-in librarybut not popular.So,standard library.Ripper is a parser for Ruby code.It can output token list and S expression.S expression representsconstruction of Ruby code.It has token swings and token positions.It is similar to ASD.By the way,at the future option,we can use ruby vmcolon abstract syntax tree module.It's already added in current ruby trunk.It has better interfacethan Ripper.It's great work.Sample code of Ripperis this.This code is from ruby reference manual.There is a token position in nested array.Liter of at identityand m string m.So that nested array is token position.This is the use case of abstract gene.I'm sorry,this sample is very complicated.Please see detailsafter we upload this deck.Events of threadpoint has file path and line numberand S expressionthat is output by Ripperhas token position.I can detect constructionof code syntax easily by this information.In abstract geneI check construction of Ruby code to detectwhether some method modifier is called in class definition or out ofclass definition.Like this,Ripper empowers threadpoint.Threadpoint detects events and where it occursand Ripper.sexpmethod provides how methods are called.We can get detailed informationabout importing methodsby this information.One of the other use casesPowerSortGem is implementedby this combination.PowerSortGem is built in gem for testing.Anyway,these gemsare proof of conceptbut these are decent practical.I think thatblack magic is dangerous actuallybut it is very funand it extends Ruby potentialso we can change Ruby syntaxby Ruby code itself.Because of these featuresI like Ruby very much.We have one questionRuby quiz.What is the difference betweenundef method and remove method?I pass the mic to Morison during thinking time.Did you get answer?When we call the instance methodwho,the Ruby virtual machinesuch as the Ruby machineRuby virtual machine and we will find the definitionof method who as the class bar.The class bar is the subclassof the superclass whoand also who also has a definitionof method who but anywaymethod who in class bar will be called.When we callremove method methodon the class bar,it justremove the definitionof the method whoand from class bar.When we call the instance method whoRuby virtual machinewill dig the method lookup chainand then we will find themethod definition of who from classbar and when we do theundef method whoon class barthat method masks the definitionof method whoon class barand marks that method do not exist.When we callthe instance method whoon class barRuby virtual machine raises no method error.When you want toreplace no method error,you should use theundef method.Anyway,this ismy use caseof these method programming techniques.When we willwrite middleware orhuge applications,wewill do the manytimes of resource allocationsand then we willresource releases andresource means huge memories orfiles,firehundreds,sockets,data-based connectionsand many others.So we need to releasethe resources when we will not use the resource anymore.But thenof course we can use and beginand insure our clauses for that methodand but then that is a bit complexand messyand theother languages havespecial idioms for that purposes.For example,thisso Java codeshows that try with resources crowdsand for that purpose,only for that purpose.But then that is very simple and usefulto allocate resourcesand then release these resourcessafely in safe way.So of course we will havea way to handle these problems.That is an open methodwith blocks.The open methodof file class takeargument of paths and theninbrockthe file will be opened and thenat the end ofbrock,the filewill be closed.But thenthat is a kind of loopy way,I think.But thenit requires many indentations.One indentationspowerless source and then sometimesthat method is not implemented.And forexample,TCP method,TCP socketsthis type of method.So thatI create I load a RubyGemwith resources.ThisRubyGem is torealize this safe resource allocationand using top-level with methodby kind of refinement.So this with methodit takes just one argumentof proc object to assign resourcesand then it passesassigned resources tothe block parameter.So interesting thingis this argument blockhave two statements.Of courseit can haveany lines or any number of statementsbutthat's proc object having two statementsand just returns onevalue,but it cancatch the allocated resourcesand talk and db and thenand pass these values to block parameters.So that is,of course,andtrashpoint.It usestrashpoint and events be return and lineand to pass allocated resources toblock parametersand identifyand to identify allocated resourcesin lambda statement.And also it also usesbindingto detect newly defined local variablesin allocation lambda.And thenit also uses refinement totop-level with methodwithout any side-effects.But thisidium still requiresindentation for block.So that'sand when we need,we want toassign resources inmarch step,first time,second and third timeand it...if we callwith methods three times,it requiresthree-level nesting.So itis not so bad,but it looksa bit messy,so that'sand we want anymuch cool alternative.Andgo-rank haven't deferred.Defurreddo not require indentationsand also deferred method callwill be called at the end of context.That looks very smart.So yes,I created this.Sorry.So we have some option to implement deferredand an optionis to use deferred classand the kind of that.And alsoit's also takenbrock.And then in thatbrock we can use deferred processing.But it alsoit still requiresindentation.Andand after callingdefurred method,we canreplace the value of variableswhich uses in blocksand it releasesunexpected exceptionsor resource leakage.So that isnot safe.SoI created deferred or gemand of course usingrefinements and to introduceand top-level deferred method.Andso the sample code isdefurred.And thatisn't just look likevery similar to the deferredin Gorang,I think.Of courseI use TressPoint.Sodefurred method enables TressPoint if not yetand it initialized internal stockframes.Sodefurred manageswhen the resources should be releasedusing its own internal stockframeand TressPoint monitorsthe method called stack and getsand it gets a snapshotof local variables in deferred blockand it calls release blockat the end of scope.Scope meansthat's virtual stockframe.Andit also uses in binding to storeand restore the set of local variables.of release blockand it also usesrefinements to introducetop-level deferred method without any side-effects.That is ansorry.Andso these techniques arevery powerful and we can do many thingsusing these techniques,butthe hard thing is debugging.If we missedto disable or TressPoint worksat the expected time,the TressPoint will continuewill continue to workforever.Andthe only way to stop itis to sendthe signal to the Ruby process.That is a very hard thing.But also it providesa kind of superpower to usand to realize many good things,many interesting things.Sothat's a gentlemansaid long,long agofar away,give yourselfto the dark side.It is the only wayyou can save your friends.Thank you very much.


My name is Sophie. I will be your host for this session. We're only going to talk about user research on Agile. So if you're here for anything else, my wonderful colleagues in other rooms are there for you. You may have heard Noresh introduce this event. You're free to go where you need to go so you can learn. So if this isn't rock your boat, don't worry about stepping in the front. This is an awkward room. Just go get what you need from this event. That's the most important thing for me. I'm a user researcher. I'm a UX designer. I'm a product owner. I'm an innovation coach and I'm an Agile coach. All these things work together. You need to understand all these things to do the job that I do. And I go help clients all over the world make amazing products and ship them. I'm not interested in things that don't get finished. I'm not interested in things that don't get delivered and that don't get into the hands of the customer. So my game is to get to delivery and to get as early as possible something tangible in the hands of our customer. So this is all about how to do this when working with developers in Agile Cadence. Really bringing user research and product definition to the same pace, which is not easy because user research has a very unfair reputation. It's very expensive bad news. And it's often very expensive bad news because user research is done towards the end of the build when you have enough and it's all about testing just before you go live and any bad news you get at this point, there's no time, there's no budget, there's no resource to do anything other than stop everything and start crying. But you can fit into the Agile Cadence and I'm gonna tell you how. Remember the manifesto? Bit of a refresher. User research can help you with two things on the manifesto. It can help you with working software with the definition of it is working software for the end user. So it doesn't just work. It works exactly as they need it to do what they want to do. It's quite different to QA testing. QA testing the functionality does what we said it would do. User research testing, the functionality really delivers the outcomes that the user needed from it. And customer collaboration where we extend the definition of customer not just to team customers but to really the end customer which may be a paying customer or not. Very wide definition. Are we all clear on customer user, paying customer, non-paying customer? What you really wanna do is engage your user and customers and you want to deliver working software that delivers delight, not just efficiency and efficacy. You want to verify your features before it is expected. You really want unbiased objective insight generation and you really wanna get to that satisfaction. This is where user research helps with in terms of Agile. Now, Agile can no longer be your excuse. It has been an excuse for a very long time. You know, we're very fast. We're very close to the delivery deadline. It's very technical. Well, actually, this is not an excuse for putting user research outside your cadence. If you start pushing things outside of your Agile cadence and mechanism, what happens? You've created waterfall.  Not great. It's gonna come and bite you very quickly. It also creates, by the way, documentation and already a silo. And it also means that the research is done in a cadence that's different to yours so you can't integrate its findings and it's gonna really come and hurt you. And you also cannot have the excuse that research needs to be done outside the team. I'm a proponent of designers and researchers need to be a part of the team, sit with the developers, with the engineers, with the tester, with the product owner. This is the best place for us as researchers and designers because we're on hand for any question, any time. So I'm in India this week. I've got a developer in Frankfurt and he pinged me a couple of questions yesterday because he knows that even if I'm here, I'm close enough. He knows he can ask no matter how little or small but these are the little insights when you share them quickly, your delivery starts accelerating because you get validation immediately. Your validation loops start getting very, very small and tight. So no more excuse for not doing user research with an agile. Especially not when I'm done. So give me another 35 minutes. Now, I'm gonna give you a really quick refresher on user research and if you need any more details, don't hesitate to ask. The research cycle has five elements. Who can throw me these five elements? Anyone? Anyone? Sorry, say again. Identify who you're going to. Yeah, this one. Identify, spot on. I wish I had candy or something. What else? What's next? Do you think? Empathize needs, create personas. What do these things help with? Are you doing research already? Are you meeting with your customers already? Not yet. What do you need to do before you meet with them? Understand their needs? Well, that's the point of the research people. What sort of communication? What kind of communication are you gonna do? Well, we're gonna do research. This is a user research cycle. Get to the, what else? What specifically are we gonna do now? Meet, not quite. I'm gonna help you. We're gonna prepare how we're gonna meet them. So communication a little bit, but we really wanna say, who am I meeting? When am I meeting them? Am I meeting them in a Starbucks? Am I renting a usability lab? Am they my meeting them in their workplace or in their apartment? I'm gonna stop random strangers on the street. Do I need to book their time? Do I need to pay for their time? Like, there's prep. You know, if we decide that we want to go on Friday tomorrow to understand how we can improve payment to get into the public transport system here in Bangalore, we need to prepare a little bit. Then we do the next step, which is we actually run the research. So that's the actual meeting the people and asking them the questions and showing them the prototype, showing them the product, observing them, taking notes, recording, taking photos, taking it all in. Once we've done this, what do we need to do? Collate the information. Yeah, we need to analyze it. An analysis is a big, big complicated part. The more information you gather here and the more analysis you have to do there. And finally, what do we do? There's an empty spot over there on the side. Solutionize. What did I hear? You design. Remember, we're working with an agile team or we're working with people. What do we do with what we've done with the analysis? Improve it. Okay, I'm gonna take a little bit step back. We wanna share it. We wanna share it. Like, research needs to be shared. And the sharing, like literally the research and the analysis and the findings need to be shared. Once you've shared, then you can use those insights to decide what you do. And what you do is very simple.  But this happened after. You socialize your research. This is what we learned. And they're very straightforward. Step, step, step, step, step. You can't do them in any other order. You can try. It doesn't work. So now when you've got those five steps, you've got three more important things to pay attention to. The first one is that you need to involve everyone into getting what kind of research we want. You don't start your identification by going solo and saying, well, I'm the user researcher. I know what we're doing all. I can, eventually I might ask the product owner, but user research is not a cowboy sport, okay? You're not a lone rider in this sunset. So work with the team, identify what research needs to be done to serve these people. Because they're the ones who're gonna benefit from it in the end. So to make sure that they don't tell you, well, that was a bit unnecessary. We can't do anything with the insights you've given us. Wow, that was a lot of money for not much. You wanna make sure they're present at the beginning. These can be the internal team, the greater team, the product strategy people within your organization. So whoever is going to benefit from the insights. And you also want to involve them a little bit in the run. I like to take people alongside with me doing research. So they actually see a genuine, authentic, wild user in their natural environment. I know they're rare to find. They usually roam outside of your office building. But you need to be very attentive and place camera traps together. How are we doing so far? Yes, so, so. This is really not what I wanted. I think I'm gonna go. Okay, let's continue. Now that we've got this research cycle, I wanna ship that back into the context of product life cycle. Because you do different research at different times. And I really wanna make that clear too. So I'm gonna break it down in very small chunks so that in the next 10 minutes, you will totally crack it. A product life cycle. So I'm not talking about a business, but a product life cycle has pretty much six steps. How are we reading that in the back? I'm gonna read them to you, sorry. You start with an idea. You're gonna explore if the idea is worth going. You're gonna do your experiments to make sure your idea has enough traction that there's validity in doing that. You launch your product. And then if everything goes well, you keep going.   You start growing your whole business. You get your product to maturity. It's got cruising speed. It's bringing consistent good results. And then at some point you'll retire it. You take it down. So from birth to death, that's how a product goes when it's well managed. Any surprises in the product life cycle. Okay, now we're gonna do research at pretty much all of these stages. There is one stage at which we don't do research. Which one do you think it is? The retirement, exactly. Maybe there's another product replacing it, but that part is not, that the budget would be on the other product. The effort is on the new product, no longer. We're just, we're gonna, sales can manage the customers. Engineers can pull out the cables from the servers. User research can move on. Everything else we're going to do like this. In the ID stage, we help with understanding what goes on. Who are these people? What do they need? What are their context? Then as the business experiments to understand and to find that product to market fit, we start experimenting more. And then when you start launching and when you start having access to more people and you start getting a better idea like you just research more. In growth you start researching a bit less. You're growing your product, but it should not be as intensive an effort as it is here when you are all rockets blazing. If you picture, if you've heard this morning's talk, to get a rocket out of atmosphere is where you put the biggest power, those biggest, the most fuel is used for that launch sequence. Same thing for business. Like this is your high fuel, high effort, high G effort. Then you grow and at maturity, you wanna keep a bit going on to make sure you're not completely off the mark.  I'm gonna break you down why you need so much research at this point, but bear in mind, you're gonna see this build in the next few slides. So let's put it all down. And this is what happened. When you have a new product, the thing you start with is risk. It may not work. Nobody may want it, nobody may like it. We may not be able to build it. We may not be able to market it. People may not be able to afford it. Lots of risk when you start in this idea stage. So part of your research is going to explore and minimize the risk. And as you understand more of what goes on, the result will be that the risk will go down.  And once you're in growth, you're at very low risk. Like, you should be. Ideally, your risk should have lowered even there, but let's be realistic, it happens there. Once your product is maturity, you should have zero risk. You know your product is fit for your market. You know who your users are. You just need to sell more, more often to more people. So that's the risk part. Let's look at your investment, because the finance plays a lot in your product. You want to start with little investment. Let's just put a little money to see if it works.  The number of zeros change there. But as you progress, you start investing more and more.  These are not really to scale, but just to give you an idea. And as you grow, you want to keep investing, but investing is your money, okay? No one else's.  You probably still need a little bit of money. Are we still going good? Okay, so after your investment, what comes in the revenue? And there is nothing in the B&A because we have no product. But when you start launching, you start seeing something and this is where your revenue comes in. Your growth and your maturity, that's where you make your own money, okay? And you may still make some in retirement, but it's probably just not worth it. If you look at the revenue curve, the revenue starts tapering off. This is time, it's not worth it. We can do something else. So now let's put all of these together, okay? So let's put a revenue with our investment. And as you can see, in the beginning, it's my money being put in and at some point I don't need to input so much because the revenue is coming in. So money is still coming into the business just from two different ways. And now if we add into the next thing, which is the risk, as you can see, the relationship here is that I am adding more money in, I'm investing more because I see the risk is lower. I am confident it's worth pushing my investment. I know the risk is lower because I've researched my product. All of these things work together. And as I see my launch as well, this is where this is the critical part. Is my risk still getting down? Is my revenue going up? And is my optimism worth it? I need to really invest so I can get this set up. Again, like this is a little bit exaggerated. I'm a bit optimistic with that one. And this is why you need so much research here but also there.  The research is gonna justify amping up the investment and the result of the investment and of understanding what you need to do means that your revenue can come. There's work that you don't see in there which is the actual work done with all this money. But this is how it fits in. But you need the research to know it. And I really believe that needs to be user research, product centric. Questions, concerns, metaphysical interrogations, deep doubt. We good? Okay. So this is why user research needs to be at the core. It feeds into the core product mechanisms. It is not design fluff. It is not pretty. But do we need to put it here or there? There's nothing, like it is hardcore business people. So you want to research more during greater product uncertainty. And because you want to reduce risk, you want to minimize your investment. Like I'm all for lazy business running. I don't want to put any more money than it needs to succeed. I don't want to put any more effort than it needs to succeed. Why should I do more if I can do less and get the same result? And you really want to protect your revenue. Very proactively. Now to get there, what you want to do is research more. I'm gonna bring this back to the agile cadence now. And research can get very complex and your key factors of complexity are here. The number of topics you need to research. So topics could be context, number of features, numbers of pages, number of customer groups, number of markets, your number of users met, and the number of research languages. So anyone who does multilingual projects, you need to do your research in each language because you have different cultural backgrounds. If you try to push your values onto another market, it's not gonna go well.  This is how we do it in America. This is how we do it in Europe. And you're like, no, this is India, this is Japan, this is China. We do things differently. Our banks work differently. Our transport work differently. Our social media works differently. In China, they don't have WhatsApp. Good luck if your support is on WhatsApp. So you need to count those research complexity factors and to minimize your research complexity, very simple. You minimize the number of topics and you spread the number of users over time. So you eventually will meet with a hundred people, but instead of doing it in a week or two, it's very optimistic. Let's say three or four weeks, you're gonna do it in nine months. And that's because, remember, the gift of agile is this ability to give you more time because you spread the work. You consciously spread the work and use the time. Let's continue with that or not. Push the wrong button on the remote. That's not my bad. What we're really using is the wonderful power of agile to use simple scenarios.  And the secret is in repeating it. I called washing dishes the gift that keeps on giving. You're never done. As soon as you're done, it starts appearing again. User research is exactly the same way, but it's in a good way because it keeps giving you good food, like clean plates are a blessing. So think of dishes, it's a necessary evil sometimes, but it helps you get on. Now, remember that research cycle, okay?  So once you understand that your research cycles goes all the way here, it has to fit into what's being built and what's being delivered, then you start shifting a little bit your research. What I'm saying is that it is not, you can have research endeavors that are big bulky projects that feed a lot of strategic insights, a lot of deep thought that help pilot big organization roadmaps and 20 year strategies. I'm not talking about this kind of research. The game is to deliver, the game is to ship. Let me take a sip of water here. And to do that, to fit into that cycle, you can use some research activities that fit, that work well when they're done short and repeat. So your ethnographic studies is literally go and see. So if you're redesigning, let's say, a ticket booth at the, sorry. A ticket for the public transport system, you wanna park yourself in a station and observe during a couple of days at rush hour, at quiet times, early in the morning when people are not awake, late at night when they're drunk, you wanna observe what's really going on. You wanna observe on a very busy travel day when people have lots of suitcases and kids and you wanna observe on a business day when people have a little briefcase or a backpack, what goes on. Contextual inquiries are discussions. You ask question, the person answer. It's a conversation, but it's a very, very managed conversation. Single journey testing, preset values, apologies, the comments missing. You wanna test, when you want to test actual pages or journeys to make it smaller, just test one, okay? Test one happy path, test one unhappy path, test one failure scenario, okay? You can also do card sorting and tree testing to assess your navigations. I'll tell you more about that, I've got more slides. To really just get to this just enough insights, technically you do it that, you shorten the session. We often say we need 60 to 90 minutes. I'm like, no, no, no, no, no. Give me at least 25 minutes. I can do it in 25, but I find a 25 to 45 minutes is actually also my peak time. I can focus 100% for that amount of time and really maximize it. My attention starts to wane after 45 minutes of, because remember, user research is doing many things. I am thinking of my research. I am thinking of my question. I'm listening to the person observing. I'm making notes. I am checking that my equipment is still recording, working, whatever it is, and I'm keeping an eye on time. The cognitive load is massive, so shorter sessions actually do bring better results. You wanna conduct longitudinal studies. Longitudinal studies is very simply meeting again the same people over time. So don't just meet the same group, but amongst the people you meet, go and see some of them on day one and then on week three and then on week nine so that they see different things and you start to learn about them as well. So incorporating longitudinal studies, which is usually not done in big user research programs because you just do one big chunk of research. You're not coming back to do the whole same endeavor massively three months later, but because we're doing it agile and we've got several months, we know we have been on projects. We had a year to delivery. There was a lot to deliver, but that means I knew I could come and meet those people several times over the course of one year. Ignore what works or works well enough. In big research, stakeholders usually want to be reassured that there are things that do work. In agile research, anything that works I pay no attention to whatsoever. It works, done, thank you, bye. I'm gonna focus on what doesn't because this is where we need to put our work. It's not a vanity endeavor. It's a very pragmatic technical endeavor. I iterate faulty design between sessions. In big research, formal research project where you wanna make sure you've got consistency, you show the same thing and you notice the same mistake as many times as you have sessions. In agile, I iterate. If I notice within two, three people that, yeah, that label really doesn't work. That button isn't contrasted enough. Whatever, I just fix it in my design because I know I'll fix it later. I no need to delay the pain. Let me learn something else. Once I've removed that problem, what other problem shows up? So some focus areas you can look at to be really, really narrow and to be really focused and to do it quickly and repeat your navigation, just the navigation. Too often we say we test the navigation but we look at the content of pages as well, just the nav. Names and labels, so copy terminology. Too often, especially with established businesses and established products, you start using your internal lingo and customers use something else. User research needs to go and get those labels, need to go and understand how people call these things so that they recognize them and they don't have to learn how you call that thing. So just check the names and the labels. Where to click to start and to complete a task? Is it obvious? Like micro, they seem like micro goals, but believe me, when you know that, you're ready one step further. Achieving a goal across a few pages so you minimize the extent of what you're testing. You can't have a whole 20 page click around. And finally, simply finding information on a page. So many of our user goals are very simple. Are my friends with so-and-so on the social network? How can I find that quickly? I've just typed a message. How do I send it? How do I attach a photo? How do I know they've read my message? Okay, I want to start checking my bank account. How do I log in? Very, very simple things. What's my bank balance? Do I have a clear, simple number that tells me if yes or no, I can go and buy myself a few dozen very colorful outfits at the mall next door? The answer is no, by the way. And some more tools and techniques, okay? Because what you have is in agile, some musts. And the tools and techniques needs to focus on the fact that you must research only what can be immediately used to either design, iterate, or build. For me, agile concentrates focus onto the immediate time, which to be honest, is the best place to be. If I research only what's relevant right now, that means I have those insights at the tip of my fingers when my QA tester asks me down the line and say, oh, but wouldn't they try and do this? And then I can say, I haven't seen it in research. Not saying they would never do it. We haven't seen it so far. Why don't we not build it until we see signs that we need to? And I design very much in a way of only build what we see is needed when the event happens because we're in an agile cadence. We know we can react. We have capacity to react. So I have confidence that we can do it later when it arises. And if it never happens, then we haven't done the work. So very much focus, which means that to take a step back, this kind of research is really not good for anything very strategic, planning, roadmaps, big endeavors, and business model definition. If you're mind the lean startup. So to establish your product market at a business side, rather than here are your users, this is what they do. Don't do these shorts that do more in depth, more be thorough, different approach, different goal. Other tool and technique to try to get on to just the right thing is your design needs to use practices like this, which is called atomic design. Talk to your designers. Any designers in the room? Yay, there's one, thank you. Atomic design helps you very much. By atomic design, you start having atoms. So your atom could be the style of your radio buttons, the style of your checkboxes, the style of your H1s. Your molecules are a group of things, a field and a label and a submit button. Your organisms start being how a whole thing behaves, and then the template, I see so many, templates used to be super hot a few years ago, like 10 years ago, and now they've completely gone out of fashion, but then we do have pages that always look the same. So bring back the templates and then you have your pages. Once you start using atomic design like this, you start being able to focus. Do I need to learn if my super funky, unique branded radio buttons work or not? Without having to test the whole page, with the content and the proposition and the goal and blah, blah, blah. Actually, do our radio buttons look like radio buttons? Are we complicating our users' life? The answer is often yes, by the way. Don't brand your radio buttons, just use the simple ones. Use your branding elsewhere. You need to know what to test as well. And very often I find that the really big research endeavors are simply because we don't know, we're not sure we're gonna throw money at it. I kinda like throwing money at things when I have money, but unfortunately, when you just throw randomly, you get random stuff back. To know what you test, use your product roadmap. And the product roadmap, not in the what we will do, but what do we need now? To get to this point here, we need to have this by now. To get to this outcome, we need to have built this feature. So a good product roadmap is very much going to help understand what you need to research and really, really have the courage to test scarily little. You have to be thinking, I can't really just go show them five radio buttons. Do go and show them five radio buttons. Just spend 20 minutes over two days with 10 people and just bring back those learnings and get rid of this problem forever. Because otherwise, they're like little plague that will just come and rot your design throughout and throughout. You have lots of little user research insights that start as little things you could have called right there and then. And then they rot and they get worse and then you can't tell anything from anything. It's this big mass of mold. How are we doing? So far so good, yeah? Okay, let me continue a little bit on that. Yes, first, my recommendation is if you cannot afford to research your users, you cannot afford to be in business. Because you will learn late that you don't understand these people. Research is the cost of being in business. Any company that doesn't understand that learns it later on. The really big companies, the Googles, the Facebooks, do you know how much money they spend on user research? Like they send people all over the world with full team translator, big guns. Because they know that if they mess on China, they've closed the market for five years. The risk to not doing it is so, they know the risk is they know how to do business. So you need to go and research your users or you need to be able to tell your CEO that that money went down the drain. Forget the big advertising marketing campaign. It's not going to sell if you have fundamental cultural problems in the way your proposition is laid out on your product. You can do a lot of research remotely. You can do a lot of Skype conversation for your conversation, for your contextual inquiry. You can do remote testing, you can do remote tree testing, but you absolutely have to go on the ground to discover context, to build rapport and to really make sure that you minimize risk. If your company's not ready to invest to minimize risk, I constantly say, okay, we ship, but there's a risk. I have no idea. There's no way I, for all my knowledge and all my smarts, there's no way that I can know how this product will behave in Brazil. I actually worked on a product where the PO had gone to check the country, came back and said, yeah, we need to do this. We need to do that. We do all that six months later. We arrive in Brazil with a really fancy product. Very nice. It was a prototype. It was pretty nice. The basis was it constantly called fresh data to display the freshest data. What was the first thing we learned when we arrived? They don't have enough internet for what they have already. That was six months of work down the drain. Well done, dude. So go and research. You need to invest. And you can go cheap, but if you cheap now, you will pay later. So take it out from the marketing budget, from the advertising budget, put it into the product. Let's continue a bit and ask me again if you want more. So you want to make your participants tell you what's going on, okay? Your best, if you come out of here with one research technique, it's this one. You make participants tell you what's really, really going on, okay? What you can use for that, one of my favorite technique is called clean language. Google it. There's a couple of books, Judy Reese. It's a way to ask questions that explores what the person means when they say what they do. Because we all apply metaphors when we speak. So when I say things are fine, my fine is not your fine. Fine in India is not fine in Britain. People in Britain tell you they're fine and they've just come back from the funeral of their parent. That is not my idea of fine. So use clean language to explore what they really mean. Yeah, that was easy. What kind of easy? I'm like, you know, I'm expecting it to take time and be complicated. So, you know, it was as I expected, taking time and complicated, but it wasn't as bad as I thought it could be. Okay, that is not my definition of easy. Another technique, the classic use open questions, and what I should have added on the slide, listen to the answer.  If anything, I need to listen. And remember these things like we always forget to but do explore, frequency, context, spatiality, triggers, blockers, collateral activities, outputs and outcomes. I know it's a big list. I could do you an entire workshop on this, but we often forget to ask how often or when do you need to do that? Context, where are you? What are you doing? What kind of device are you on? What kind of network are you on? What kind of, what else do you have? Spatiality, like are you sitting down? Are you comfortably in a bus? Are you walking around? Are you in a safe environment? Are you in an unsafe environment?  Triggers, what made you do this thing? And it's not just any, oh, I need to find my way. What made you whip out the phone right now? It's like, well, I kind of memorized the map and I no longer recognize where I am. Anything blockers, collect, et cetera. So all the fundamentals of research. Now let's go into a few techniques you can apply all this into. In particular, what I find very often, and that's because I'm a UX and information architect, navigations are often the worst part of many products. They are the ones that show me that the business doesn't understand the customers. They don't understand what I need to use your product.  Sometimes it's dark design, it's deliberately hidden. And sometimes it didn't think of putting it in an obvious place. Things that map organizational diagrams, you know, so this department takes care of this so they have this side of the website and that, yeah, but my activity is over the two, so where do I go? So how to build a navigation agile can really help. You want to design and build iteratively, okay? And you've got two different cases. New products from the ground up or mature products you're trying to fix, improve, maintain, keep a life some way. For new products, only show what has been built. Do not try to be crystal gazing into the future and only test what you have built so far or where you're about to build. And iterate the entire knife as you're built more. Do not be afraid of iterating the entire now. And I'll tell you what you shouldn't be afraid is like there is a world leading company that has been doing this all along and it's Amazon. This was Amazon's nav in 1998. Two years later only, that was their nav and they kept iterating it. You can find this. Look, Roblesky took all those screenshots because when they went live in 98, they had two things. They had books and music. So in their nav, happy campers, books and music. And as it went on, they had the stuff. Video and GIFs came in and then they had to removing the search around. Then they started having e-cards and auctions and then they starting having toys and games and more and more and then the famous double nav that we all remember as being one of the most horrific thing that was ever designed. But they did not shy of only, instead of thinking, oh, in two years time, we'll be selling all this. So I need to have placeholder. Then I said, I keep people, I try. Yeah, that's what we have. Navigation needs to take you someplace. Navigation is not a marketing tool. It's not an advertising tool. It's a direction finding tool. So don't mess around. Don't tell me the toilets are this way when they're that way. And how do you test a navigation to make sure what it is? Sorry. That was the tip for how to build a navigation for new products, okay? Feature only what has been built, iterate the entire now. So test as you go. Where would you go to find a book? Where would you go to find this? You're trying to buy so and so. How do you do it? If you have an established product, what you need to do is rework from much more data, much more categories. Use cart sorting. And this is an example of cart sorting. This participant was asked to cart sort these products, the hygiene products, and to give every category a label.  And they said, oh, this is dental. And then they put together shampoo, hair conditioner, hair gel, body wash, and bar of soap. And they said, that's for the shower. I find it fascinating, because I don't use hair gel in the shower, but obviously this person does. So this is great, we didn't know this. We need to know if more people do that so that when we put our hair gel somewhere, we're placing the right thing. And then they put lotions together, lip balms can lotion, body lotion, and hand cream. Once you know the categories you're working with, cart sorting helps you a lot, can be done remotely very easily. What's interesting is a lot of cart sorting is done remote, unmoderated. So you just send a test, people take it when they can. What's great is doing it moderated. So you can ask people, oh, that's really interesting. Tell me more, why is the hair gel in the shower? Is there a, you know, am I discovering something? Is this a tip of the iceberg? So you need the conversation, which unmoderated doesn't give you. And the other way you can test for your established product, what to do is you use tree testing. That one can be done quite simply. Tree testing, you validate that people can move through the categories. So you've got a lot of automated tests. I think this one is Treejack. Task one of 10, you want to start your own business. You're not sure what paperwork you need to fill out. How would you find out? You've got the banana.com homepage, individuals and families, business and employers, nonprofit organization. We really want people to click here, but let's find out where they click. They might say, well, I am still an individual, I'm still not a business. So maybe I start in individual because today I'm not yet a business. So maybe it needs a fourth category when we start exploring a bit more of what goes on. We need to say, ha, I want to start a business. Cart sorting, tree testing, growing your nav. How's that going? Is that of any use to you so far? Are you seeing your problems, your concerns useful? Okay. Not useful at all, I need something else. I'm here for you. Then what you need to do the next thing or the other thing you can do is always test with realistic content. Two things for this, one, when you'd use unrealistic content, you get bitten as soon as the real one comes in. Here's an example. I hope you see it well enough. I don't have an image. I have Laura Mipsum. And then when we do the real content, well, I can't really see my cake. Like, why is there so much black and white? The label doesn't fit. I've got way more copy and I've got more to say and I don't have any room. So don't learn later that your design doesn't work. Also don't learn later that the process by which you get content doesn't work. Because that's more often the biggest problem. If you, copywriting needs to sometimes go through other channels, it needs to go through marketing, it needs to go through legal. These guys have no idea what agility is. Three weeks for them is short. So if your pipeline problem, copy pipeline is a problem, you want to learn this as quickly as possible. You don't want to delay your go lives because copy's not there. So get as soon as possible as realistic or as best copy as you can to make sure that everything works together. We're humans, we need context. And do test before you have all the pages. And one way of doing that is you often move through pages using Calls to Actions. You can stop at the Call to Action. Very often we think, no, I need to test all the way. So I need to have the paid that the person goes to when they've clicked the button. No, no, no. Go just to the button. You have a form. Let's say I need a new card, I'd like to get a loan for this, make them fill the form and just click on get your quote. Because what we want to check at this point would be, do they have the information we wanted at the tip of their fingers? Do the way we ask the questions make sense to them? And everything needs to go. How the information comes back, how they understand our quote or our offer is a completely different thing. So I can stop myself at that, get your quote button and I can get the user to press it, whether it's a paper prototype or a digital prototype or even the build, if I test in a test environment. And nothing happens. They say, oh, the button's broken. Oh, yes it is. What do you expect to see? And then they tell you what they expect. They said, well, I really want a big number. I want to know if I'm eligible. I want to know. I want to know. And you learn all that. So test before having all the pages is a good secret. To really get to your Agile user research mastery, your goal is to have only stories that are ready for this for imminent development. The focus, the time focus is squeezed in. Contrary to the big tradition of design and research, which is we have time, we explore, we make sure we have the right thing before we go to build. Shift your mindset as a designer and as a product owner to like, just find me what we need right now. And I will give you more time or I will take more time later if we need more when we need it. Which means that there needs to be an agreement that there can be a design debt. I've introduced a concept of designer research debt with my teams to say, just so you know, we're pushing this page now, but we only know about half of it. So guys, expect to see it again in tickets later on in another form. I'm not gonna make you build the same one over again, but we will iterate on it. And I can't hear any groveling that we've already worked on it. We're Agile. We iterate as we learn. But I need sometimes to remind the developers of this, oh, I've already built this page five times. Why don't you get it right the first time? Because to get it right the first time is impossible. To get it right the first time would have been so expensive. We're learning how to do this. And because you've done it five times, hopefully you've also cleaned a lot of stuff on it. Might as well. And so to get your stories ready or your insights or your design, I'm using stories in the greatest term, for imminent development, what you're willing to do is two things. If you work in scrum teams, for example, the scrum team using a two-week sprint, I can do this, three days design, three days research, three days design. We all know the 10th day meetings, well, I'm just tidying up. Prepare a bit, research. Do my analysis, do my thinking, do my sharing as I do the research. So at the end of the day, I call the team, I share in the morning, stand up. I show what goes on and then three days integrating the tweaks, building the elements that I need to give to the dev so they can do it. I need a bit of time on both sides. When I say three days research, it's mostly running the research, analyzing and sharing. The prepping part where I know where to go, I may need to book train tickets, I may need to book people, that's the hard part because you may need to plan ahead. So what happens in user research, in agile user research, and I don't have a slide on this, is you may need to book people without knowing what you will show them. Just know that on the 17th, you'll be in Mumbai and you've got 20 relevant users booked and by the 17th, you will have something to show them. Because you're agile, you will have something. I just don't know what. But I've very often done that as book research sessions. I know I have the right users in a room for 25 minutes. That's all I need. I will always have something to ask them. There's always something to learn. I will always have something to show them. But I will probably know what I need to show or test just before that date because we are in just what I need right now. So do very short loops and sometimes I've even done several micro design research cycles. I got very lucky developing a product, an internal product for a company and my users were literally in the building next door as well as in other cities and countries. But I knew I could jump on the train and in an hour I would meet users. And I also knew I had permission to go and interrupt them to very important criteria. So I could absolutely find myself when they say, actually, I don't know if they really need this. And cross the road, go talk to the people like, Jeff, five minutes. Can I show you this? Can you tell me about that? Have five conversations in two hours and come back with the insight and amend my design. This is super powerful. It demands that I'm reactive. It demands that I have buy-in from the business. But do you realize the value that this approach has rather than saying, oh, my next research session is in three weeks. I'm gonna add the question to the long list of questions that then I don't know how to make sense of. Anybody using Kanban? So if you use Kanban, you need conversation. You need to negotiate with your developers on velocity because I know how long it's gonna take me to find something. I need to know if you can't wait, keep yourselves busy, do other things while I do my stuff. Every now and again, and even in Scrum, we've hit on big design snags when I'm like, guys, I'm so sorry, I'm gonna need some time to figure out how to do this one. I know we're planning on doing this functionality in the sprint.  So in Kanban, you need to very much negotiate your velocity and theirs to get there. How are we doing? Two more minutes? Yeah, we're fine. Oh, we're over time, sorry. So that was it, actually. I'm gonna stick around. The session is officially over, isn't it? We have 15 minutes for room change, but I'm gonna take your questions now. Apologies for going over time, but I'm a bit excited here. But thank you very much, and please come and stick with your questions, or if we just wanna abuse the time, just come and stay. Thank you.  This one. How do I size my design stories? I've got over 10 years experience designing, so I know how long is a piece of string. So if you, and I also know, and that's from experience, what I can get away with not doing. So I negotiate what I'm gonna build, and I also know from my designers, sorry, from my developers, I know what's a big effort, what's a big technical effort, and what's a small technical effort. So we have lots of discussions on, is this something that needs a lot of design, but very little dev? And that would be, I'll tell you, the typical thing that is a lot of design and very little dev is forms, because we need to get the content right, and we need to get the way we ask the questions right, so we get the good answers so we can execute things. But the build is super easy. Something that is super easy design and super complex build, single sign on. Design, catching, build. You know the pain. And then we have things that are about of equal weight, so I need to negotiate always, depending on the technology, the maturity of the team, we negotiate these things. So there's a lot of discussing how much work is needed to get somewhere. So we do that as part of spring planning. I very often work in Scrum.