Ya, hei. Um, then this other one's Yoni Jinaa. Okay. Sylvia Ru. I don't know the name. It's good to take gifts as long as we see a daily theme for relationships still following. Nicheze, in case you don't know, ya nyash na jik. Still waiting for the hip-hop hour. Do your best over there DJ Lili. Russian. Aha, so those are your comments. Thank you so much. Keep sending them in. Badu chande, la puzi, sama. So, right now in studio with me I have a fashion designer. Very talented. I get so excited when we have fashion designers on set because the creativity is just amazing. So I will introduce this guy. He will tell us what he does just for a short time. And then we will sample his work and then continue with the interview. So how are you? I'm very good. So can you introduce yourself, Utwambia, what you do? Sure, sure I can. My full names that are on the IDR Davis Olajuoma. But I'm well known as the fashion doctor. Ya. And our hospital is known as Nicheze Collections. And the doctor is here himself. Ya, we deal with ladies and gents suits. And also Ankara of both men and women. And also the senator suits. Well dressed and well known. Senator suits are the ones that are well dressed and well known. The origin of senator suits originated from Nigeria. It was first worn by a senator in Nigeria. Then it was well known after it was worn by the president back then in Nigeria. Who now popularized it. That's why it was called senator suits. So do you have one of that today? We don't have one of it today. That's tenita suits. Definitely. So that's basically what we do. And we basically deal with more custom made outfits. That's what we do in our daily basis. And ya, anyone who seek fashion wise can come to a hospital. Come to the hospital. Yes, yes. So we want to see you work first of all before we go on. And I'd like to ask the models just to come in and showcase what you've got. Sure. And then maybe you can just explain what is going on every design. So there are the models. So you can just continue. So this is sleeveless lady suits. Which is well done by either a pull neck or a long sleeved top attire. Which is well done by a material well done trousers. High waist trousers for the ladies. This is a maroon one which well matches with the golden and the brown. And the first rule of fashion is that you must not do more, exit more than three colors. Ya. So for the ladies you see we have this goldish sleeveless which goes well with the brown. It's so much completes the brown. The black top. Black is a neutral color. It can go with anything. So this is a maroon trousers. Can go so well with the oxode shoes. Which we did this. This is our work from our hospital. We did it with the doctor Hemoselofo. Ya. So ya that's it. Ya. Lovely. So right there. That's a lady's top Ankara. Which has its own belt here. Which complements. You know for ladies what we advise them. You know we also do advices for fashion. Ya. One thing that we advise them is that you must dress according to your body. Ya. Ya see. Like for instance this outfit is well done for people who have at least a big bodied kidogo. Ya. And there are people who are big bodied but here at Mishizia collection we make sure that we can dress you. You can look nice however your body size. Ya. So this belt is to complete the attire so that it doesn't look so free. Ya. But when you remove the belt you can still have it. Have the attire. Do it when you can do the attire. When you still for instance maybe is a pregnant woman you can still do the attire that way. Ya. But if you well comfortably not any struggle. Ya. So the orange Ankara completes so well with the white. Ya. So orange completes so well with the white. Ya. And two to a wider Mishizia collection will do a very nice navy blue high heel which has completed the attire itself. Ya. Ya. I like that one. Thank you so much. Ya. Beautiful stuff. Thank you so much. You also need to visit one of these families. Ya. So that we can make sure we deal with all your diseases fashion wise. Yes. Yes. So this is a Jansuit. This is a navy blue. Navy blue navy blue suit with the pink. Like I told you earlier on is that the first rule of fashion is that you must not exit three colors. However the colors you want to do play with at least three colors. Sawa sawa. So we have the navy blue suit which is there. We have the two piece which is the navy blue which is the coat and the trousers. Then we have the waist coat which is pink which has been well completed and complemented with the tie. Which the men who are not well conversant in making ties so this is called Spanish style. This is Spanish as you can see here clearly for viewers to see well this is Spanish style. And for a suit if you do the lapels too much lapel you make sure you don't do the pocket square. So that you don't do so much of the accessories. So much details. Thank you so much. So as you can see the pink has complemented the pink waistcoat and the light blue sky blue. Very true. It depends on how you play along with the colors because you can do some pinks which are going to not do so well with you. So this is a sky blue shirt which definitely does well with the navy blue suit. Ya as you can see these are men's whatever you want a slim fit suit which does so well. Again when it comes to body size suits we have to do it according to your body size. We can just do a suit for your slim fit suit which does not complement your body. We have to be so precise with the body factor. Ya. Yes, yes. To our Jens Mishaskia. Ya boy shawas. Boy shawas. Yes yes. Thank you so much. Thank you so much. So you're talking about so much about complementing body so that means what is the difference. I just want to ask what is the difference between a fashion designer and a stylist. A designer and a stylist. The difference between a designer and a stylist. A designer he does both works. First beginning from making the outfit and also styling the outfit. So the designer does both the custom or the sewing part and also the styling part. But a stylist only specifically deals with making sure on how your style looks like. Can advise you what are you going to dress this and this. This will match and this and this will match. But the designer does the whole package. The whole package of mending the outfit or if not mending bringing the outfit to you. So he does the full package telling you this and this are going to do so well. This and this are not going to work so well with you. But a stylist specifically deals on advising you what to wear. What to wear. Correct. So I just want to release our models so that we can go have a change of clothes. Okay thank you so much. Thank you so much. So which one are you? Both or just this? Which one am I? I'm a designer and a stylist. Can you be one? I can't be one because we are falling short of both. What do you mean we are falling short of both? Because let me just allow me to use the hospital. We go to the hospital. We don't go to be treated specifically for certain diseases. They treat everything. We go for full check up. So we call ourselves, I think we are lucky to call ourselves the only fashion hospital in Kenya. Do we say? Okay I'm telling you. So when you come to a hospital you must get the full package of treatment. So that's why we decided to have the full package of both the designing and the stylist part of it. So that's why you have to do all of them. Because you have many clients who come to us. Some of them don't know what to wear or what to do well with what to do. So you have to give them all of that because they've come to your hospital to get full treatment. But you know in this, in our country even in my perception only celebrities have stylist. It's very hard to maintain like a fashion designer I go get my dress and everything and then still maintain someone who constantly advises me on what to wear. So how do you go about that? If I'm just a normal person I have this amount of money for my suits or for my Ankara or whatever but I still want that advice. But I don't have so much money to get that advice on a constant basis. So first of all I'd like to applaud the fact that you've said in Kenya right now it's so hard to find a normal person. Someone who is in the normal class of a normal citizen to afford a designer, a stylist, a permanent stylist and also a designer at the same time. But what we do ourselves is when you come to our hospital to be treated fashion-wise we have to make sure that we treat you in line because we can't give you a half package. That's why I told you we do both. Designing stylist, we don't charge for stylist. When you come to get our commodities and outfits we will not charge you for the stylist aspect of it. We will come, we will give you free fashion advice, free of charge. The consultation is very much free. I'm planning to. I'm doing a consultation already. So who are your clients mostly? Mostly we don't, basically my dream when we done this work for instance is to deal with every kind of persons both lower class, middle class and the high class. So to answer your question is that everyone is our client from low to middle and high class because in our collection shop we don't limit ourselves to certain classes of people you see because you see the people that you might look down to whether people are going to take your collection and your business into another level so we don't limit ourselves to certain classes or certain rigid class of people. No, no, no. We have everyone as long as you get into our door we will serve you. So every class of persons we do serve them. That's good news, that's some good news. I'd like you to give us a range of prices for the suits, for the Ankara. Like how much, if I wanted to get maybe for example the suit I was just here. How much money do I need? So we have a wide range so the ranges of the suit are from $6500 to $40,000 depending on the material. Wow, $40,000? Depending on the material. She thought it was like pizza. So let me explain to her, she might not really understand. The $40,000 is not for the designer to go in pocket. The $40,000 for the sake of the materials and also the design. For instance the materials which go per meter, they charge you for a meter of that material which costs $40,000 the full attire. Here it charges like $6000 or $10,000 per meter for instance. And you need like three to four meters to be a suit for a guy. So how much are we going to charge you then? That's a lot of money. So you see we've not even bought the inner finishes, we've not done the finishes itself. So at the end of the day you find in the pricing and the planning of everything from the process number one to the last one you must be accountable for every coin. Meaning that you must have a very fair and moderate pricing. In fact we are very, we are very much accountable. The same suit that will charge you $40,000. I don't want to mention names. If you walk to some of the established collections and designer shops, you'll find them going up to a million. There's a shop here charging a suit $1 million. And it is so much when they give the factual facts of making the outfit. The breakdown of everything. So it all depends on the material and the designs. Is this inclusive of accessories like the lapels, the pocket square? It includes the accessories. The lapel, tie, pocket square.  It makes a million. Why would you wear such a suit? You will wear such a suit because of the level that you are in in a society. I think I'd wear it on our encounter. And I know I'm going to receive an award. You see, for instance, if we take a very good example of someone like a great president, he doesn't just wear cheap suits because he's the public figure. The main figure of Kenya.  So he must dress to a certain standard. For instance, someone like a high-notch lawyer like my good cousin Orango, he must make sure that he does this a very excellent suit. So you will wear that kind of an expensive suit because of your level of class in the society. Number two, your nature of work. There are people whom their nature of work does not allow them to do simple or cheap suits. Simple suits. And you can tell a cheap suit. Ya, you can tell. I can tell. If someone works in here, I can tell you the work place of that suit. I know I also think a suit is a suit. Maybe we don't. I think it's the same thing that happens to ladies. I can tell that, that pair of shoes. You know the red bottoms, I can tell that's an expensive pair of shoes. So maybe from a lady's perspective, we would not really understand whether a suit is expensive. But the guys and everyone here. So who is that one person that you look up to in terms of what you do in your work? Internationally or maybe just locally? First of all, I love respecting whom. I really honour the great designers who came before me. The likes of Vince Cleese, wherever you are bro, big up. That guy, he's been my mentor for a while now. We have Braio. The guy did his Kichuro science profession which is of brilliant months to do design, to focus on design. The likes of Nimrodnik, big up bro. The likes of many more Mr. Royalty in Kenya were many more designers who were really working so hard to take the fashion and design industry in Kenya to another level. So in Kenya, the one person who really motivates me and mentors me is Vince Cleese. Internationally, I told you I'm proud to be African. I'm so proud to be African. So my mentors are African purely. Internationally, he's from South Africa. He's called Menzi Makon. He's a very great guy. Go check out his outfits. That guy is a designer of another level. He's a designer of another level. So basically that's it. I have two main mentors. We have Menzi Menclown. Then we have No. 2 Vince Cleese from Kenya. So this is something that you should not study for professionally. You studied low. How do those things work? Like it's something on two different worlds. Yeah, true that. First of all, one thing I want you to understand is that we have two, in a human being's life, we have two areas of specialization. We have the professional part of specialization and the passionate part of specialization. So on my passionate side of specialization from the day I was born, from the day I was a kid, I loved looking nice. I would do whatever it takes to just look outstanding and nice.   So she didn't know I'm sorry. She didn't know that she was holding my hand to the next level in this industry. So slowly by slowly, slowly by slowly, before I knew it, here we are now, all the other is history and not under the bridge. So there are so many designers out there. What would make me decide that I don't want all these other designers. I just want to go to Mish CJ. What makes you unique in other words? What makes us unique in this industry is the first thing is that we don't focus on ordinary. We don't focus on ordinary. What do you mean you don't focus on ordinary? Let me explain to you. We don't focus on ordinary. We don't focus on good. We focus on first excellence and number two outstanding. Any client who comes to us, we have to make sure that it's not that people don't mistake looking classy and being proud. We want to make sure that when they dress you anywhere you bypass, they must look behind and just confirm it. They will notice. Like they'll turn heads. Exactly. So one thing we believe in and why you should come to get suits or Ankara outfits from us is that you believe in excellence and outstanding staff. Not ordinary, not good. We look up to extra ordinary and excellence. So in the morning conversation we were talking about is it right for you to give, to receive a gift or give gifts to. To receive a gift from someone you're not interested in. Would you make not a suit, maybe just a dress, a nice dress for me and you know clearly I'm not interested in you. Would you do that and you expect me to receive that gift? Or what's your take on that discussion?  I was away with that topic so much. So my take on that is that if you look at these five arms they don't look alike. This is small. It has its own purpose. The five arms are different. So on that perspective there are two kinds of people. There are two kinds of ladies. There's this one lady who will not accept the gift from the world because she's not interested in you so is she not interested in anything you give. And there is number two this other kind of lady who will accept what you're giving them but their main agenda is that they don't want you. They don't want anything to do with you. You know what I'm saying. So what I believe we can just base our facts on these two kind of people. But why are we talking about ladies only? Do you know even guys get gifts? Of course guys get gifts. Right now it's a two way thing but in accordance let me not go out of context in accordance to your discussion in the morning is what has been happening per se. The kids have been going on. You see what has been happening is in regard to ladies what has been happening and I'm a man, I'm not trying to be biased or something but different kind of people show or express their different kind of emotions in different ways. Those who think buying gifts to ladies or making them love you will lower them and will cause them to love you.  Why do we do that? That's just a mirror. It's nothing. That's not a person, that's a mirror. When that mirror is taken out there the real person remains. So what I want to tell these guys don't live a life of fantasy just live in accordance to your level.  Don't think that you want a guy who's going to buy you a chips worth 50,000 No, no, no. Don't do that because in anything that you get there is a price to pay. There is a price to pay, remember. Every day there is a price to pay. So remember if you take that drink of that guy or if you take that cow of that guy even if in your mindset you want to say if you let this guy, my friend will go pay for it. If you don't go just like that you will pay well, well. Well said. Yes, true, very true. Hallelujah. They am sure they had. That's the truth. Affecting our society. They young society also. Most of them don't want to work hard. You want cheap things and they have a price to pay. They do. So I'd like you to tell us or tell the audience where they can find you on social media so that you can just view the last design. Okay, sure, sure. You can find us on Instagram at Michi CJ Collection. In Facebook you can find us here at photography underscore Michi CJ Collections. Then on Twitter Michi CJ Collections. And if you want to visit us you can go and find more details on Instagram and Facebook and our contacts are also there. I'm being reminded of something. How do you juggle? You know studying law is not easy. It's not easy at all. Someone told me I have to. How do you juggle the law and designing considering that you built the company from scratch? It's not easy no more because nothing comes the easy way.  One thing I only say is that the only limit you have in your life is yourself. When you get your point and say this is enough that will be enough. So myself I must create time for fashion and also school. You see school I have to be there full time. It's a full time studies at KU Law School. I have to be there full time and I have to create time for business to make sure that I don't disappoint my clients. So definitely it's not easy and definitely nothing comes the easy way. Nothing comes at a silver platter. You must go for it, you must work hard. So it's not easy. That's the truth. I want to say it's not easy but I have to. I don't have any other option. I must balance all of them because all of them need equal attention. So as we wind up, what are your future plans? My future plans is to number one is to start up a fashion and design school to bring up the society now we are diversified and art is taking up very fast. So we want to end this kakuna that fashion and design is just another job for lazy do bombs no no no no. It's a well paying job now in the society. So I want to start up a fashion and design school a serious one of that matter that even parents can bring their children out of secondary school and be confident that indeed they are going to do a profession. Correct and they will sell and they will get the money that they want to get that a lawyer out there, a doctor out there a business person out there will get because it's now a part and parcel of the society get what I'm saying. So number one is to open up a fashion and design school number two we want to I want to try and and open up to the upcoming designers because myself I think I think I'm the youngest designer now people like Akina Wins How old are you? Really? What did you just ask? How old are you when you say you're the youngest? I'm old enough. I'll just let that go. So there are these young people who have great ideas if you listen to them their design ideas they're just mind blowing but they don't have someone to give them the platform like someone said previously the spoken word guy is that they don't have the platform people will utilize them and if there are these big designers which happens in all fields the people who've already made it very few of them will want to hold arms of this upcoming most of them will want to oppress them people who are already in the industry for too long if you mentor one or two or three people if that person goes to higher level level number three definitely you won't be in the same level with them you'll be in level number five your legacy continues actually exactly that's what you're talking about so mentorship in every field you must make sure that you mentor these upcoming people because if you are a designer today if I don't mentor these upcoming designers how is the fashion and design legacy going to move to go on to the next generation it won't unless and until we hold arms of these others so we need to do a a school we need to hold arms of this upcoming fashion and design and I need us now as a fashion and design industry to end the importation of outfits from outside we have the capability we have capable fashion and designers and tailors in Kenya who can do outfits here, custom made nice outfits like we have just seen correct and you're going to again see so let's I'm trying to of course with my position as a law student when I'm done I'm going to try as hard to even make sure that it is passed as I've been in the parliament into a law we have outfits from outside we have the capability we have capable tailors in Kenya I think you have big dreams big dreams, thank you so much I think that is we cannot even put it in any other words you given us everything we wanted to and I'm sure especially now that people are they are on holidays they have had and that is an inspiration so thank you so much for coming so we want to view the last outfits most obliged ladies suit ladies to be suit to be suit for the ladies who said ladies can truck suits I know I'm even thinking about you need to come and visit us this is a ladies suits which we have the new upcoming trouser designs if you can see let me view to the viewers that we are bringing and introducing in the fashion industry in Kenya the new design here to battle from the norm to a different place here so this is what you are trying to bring up in Kenya now so for the ladies the navy blue suit to be suit which can blend so well with the white interior top and like you ask the accessory the accessory for ladies here then we have the pocket square here for the ladies so ladies can rock suits very well very amazingly well the suit itself and like you do with the interior we have different interior of the linings we have this kind of lining the flourish lining we have the plain linings we have different linings dotted linings so if a lady wants a suit and they think it's just a normal suit that they get out there we can make you look outstanding in a suit at which CJ collections so this is the ladies palazo pants probably in Africa probably in Africa so this is the Ankara palazo pants which can do so high waist palazo pants which can do so well with any any persons body size depending on how we take your measurements you don't need to go out there and get palazos wunapele kia fundi they spoil it and they disorient it so much so you need to just come to us we take your measurements and we do a very nice palazo pants outfits for you so well with white which can go well with maroon which can go well with black so any kind of color which can blend well we can give you an advice of the same so everyone palazo pants we have them here you can never go wrong with mesh CJ collections yes yes thank you so much for coming for the interview we appreciate you making time and if you want to get treated fashion wise then you know the place to go so we are taking a sharp musical break but we will be back with more of


Okay, this message was actually really simple. I didn't have time to make something more complex So I thought I'd do something simple and hope that people overthink it But most people figure out right away So the last video was just a video with a very short video with some text on screen giving this URL to this GIF or GIF file or if you want to call it. So let me download that file and if we file it out We can see that it is a GIF file. The thing is there's more than one file in there and there's really No need to extract the other files. There's actually just text that we're going to be looking for So very simply I could use Strings and give it that file and it will print out only ASCII characters So I can scroll up here until I find the URL which is going to be somewhere in here So a better way of doing that would be to grep for HTTP and since you don't know whether that would be capital or case the way I wrote it We'll just say dash I to ignore case sensitivity and there is our URL. That's it You just download it and find the text hidden in it if you don't well string You're gonna have strings on it But first if for some reason you didn't have strings on your system, which any desktop Linux system is gonna have strings I can grep That's I a a is saying look for ASCII characters in the binary file and I can give it that Oh HTTP and give it that file and you might get a little extra binary junk here But it will find the line in the file and there is your URL and a third option would be if you want to use a hex editor You can go into the file tab over here HTTP that might work. Yep. There you go. There's your URL right there. So this was a super simple one I know I said they're gonna get progressively get harder again I was hoping what I just didn't have time to do anything more than that just throw text inside a Between two images basically But I also just hoping the people to overthink it plus gave you guys an easy one to do So thanks for all those people who solved it the next one will be a little more complicated And we'll be coming out this evening. So check it out and as always, I hope you enjoy my videos Check out my website films by Chris calm. That's Chris the K There should be a link in the description you can search through all my videos there Sure, check out my playlists on my YouTube channel there You can you know if you haven't checked them out already all my other hidden video messages I have a second channel on hardware stuff that I recently started all that can be found at films by Chris calm And also if you do like my videos and you watch them regularly think about supporting We're at patreon.com forward slash metal x1000 even a dollar a month is very helpful You get downloadable videos for being a supporter and as always I hope that you have a great day


Compared to a normal student it takes me a lot longer and the inclusivity services and disability services that Curt naturally provides is hugely, hugely beneficial. Cap services give you a lot more time on your assessments and they give you a lot more time to maybe think about your answers or maybe time to reflect on them. It doesn't hurt to actually use that extra time to actually check on those assessments. Don't feel like you're the only one. Speak to a psychologist or speak to someone such as UGP and they will help you get in touch with some of these services.


So it's basically an open secret that Donald Trump is a criminal He's a criminal not just a bad president. I'm saying he's literally a criminal his entire family They are criminals according to a 2018 report from the New York Times His father committed tax fraud to pass down more wealth to Donald Trump and his siblings Donald Trump is a criminal and we know that if you look into the Trump organization We will find fraud because where there's smoke. There's fire. Now. I don't know What we're gonna find money laundering who knows? I mean, he's currently literally benefiting Financially from his properties as president like public officials from the round the world stay at Trump organizations Trump hotels and he makes money Official government business leads to him making money That is Corruption it's fraudulent and the question is what are we going to do about it? And I think the answer is probably nothing because we live in a two-tier justice system where we lock away poor people for smoking pot And rich people can commit financial crimes and fraud and get away with it However, that doesn't necessarily mean that just because we can expect that there will be no justice that we shouldn't at least try to pursue Justice because Donald Trump is being criminally investigated or I should say the Trump organization is being criminally investigated and It goes deeper than the hush money payments to Stormy Daniels Which is illegal by the way because that amounts to a campaign finance violation. Nonetheless There's more there to be found and an attorney general is currently looking into it So do I expect much to come of this not necessarily? But that doesn't necessarily mean that the investigation shouldn't happen because we have to do everything in our power with you know what? Legal authority or ability we have to hold corrupt public officials with a lot of power Accountable so as Larry Neumeister of AP reports a New York City prosecutor fighting to get President Donald Trump's tax returns told a judge Monday He was justified in demanding them because of public reports of extensive and protracted criminal conduct at the Trump Organization Manhattan District Attorney Cyrus R. Vance, Jr. Is seeking eight years of the Republican president's personal and corporate tax records But has disclosed little about what prompted him to request the records other than part of the investigation related to payoffs To two women to keep quiet about alleged affairs with Trump in a court filing Monday Attorneys for Vance said the president wasn't entitled to know the exact nature of the grand jury investigation They noted though that at the time the subpoena for the tax filings was issued to Trump's accountants There are public allegations of possible criminal activity at the president's company dating back over a decade They cited several newspaper articles including one in which the Washington Post examined allegations that Trump had a practice of Sending financial statements to potential business partners and banks that inflated the worth of his projects by claiming they were bigger or more Potentially lucrative than they were another news article described congressional testimony by Trump's former personal lawyer Michael Cohen who said the president would overstate the value of his business interests to impress people or lenders But then deflate the value of assets when trying to reduce his taxes the attorneys also cited reports of past investigations By New York regulators into whether the conduct described by Cohen amounted to bank fraud these reports described Transactions involving individual and corporate actors based in New York County But whose conduct at times extended beyond New York's borders This possible criminal activity occurred within the applicable statutes of limitations Particularly if the transactions involved a continuing pattern of conduct the lawyers said Trump's legal team has argued that the subpoena For his tax filings was issued in bad faith and amounted to harassment of the president The Supreme Court last month rejected claims by Trump's lawyers that the president could not be criminally investigated while he was in office So again the hush money payments here are a factor But this does go deeper than that and I think that you know if you really do a deep dive into the Trump organization and his business dealings you will find an abundance of corrupt deals and Look if we lived in a just society Where oligarchs and elites were held to the same standard as Us peasants Donald Trump would be leaving the White House in handcuffs But to even say that it's it's laughable almost because we don't hold criminals accountable so long as they have money or power I mean if we actually did follow the law George W. Bush and Dick Cheney would be rotting in prison right now But you know Democrats don't want to hold Republicans accountable because they also break the law and Republicans don't want to hold Democrats accountable because they break the law so we have both parties in Bipartisan agreement that we shouldn't hold Our opponents accountable even if they're in violation of the law for you know financial Crimes corruption because we also want to partake in said corruption It's just it's deeply disturbing, but I mean if this goes somewhere I would be surprised I don't necessarily believe that this will lead to Donald Trump being exposed before the election and even if this was You know in some way able to convince people that Trump legally had committed crimes before the election I mean there's a portion of the population It doesn't matter what you find out about Donald Trump They will never leave him because this is a cult You know they believe everything that daddy Trump says and everything that he says by nephew by definition It's good because he said it So I'm not optimistic that this is going to amount to much, but I will always View these types of investigations positively if there is an attempt to hold someone in power Accountable when it's warranted like we're not talking about dumb scandals like the Benghazi scandals where Republicans were trying to make Something out of nothing like we're talking about actual crime That there are numerous reports of Trump organization committing So I don't think nothing anything will come of this But if it you know it doesn't the fact that we are investigating him is important, right? Because just because there's no expectation that justice will be served Doesn't necessarily mean that we shouldn't pursue justice because with what legal authority we have to hold rich people accountable We absolutely have a responsibility morally to do just that So, you know if this leads to Donald Trump getting exposed and hopefully prosecuted great I'm not gonna get my hopes up, but this investigation is still important, and it should definitely still happen The humanist report is fake news Mike only cares about crazy Bernie and his wacky socialist ideas Versed I'm unsubscribing


The systematic review and meta-analysis provides an overview of cybercondria's association with anxiety-related pathologies and quantifies its strength using meta-analyses. The results indicate that cybercondria is a distinct construct related to health anxiety, obsessive-compulsive symptoms, intolerance of uncertainty, and anxiety sensitivity. Further studies should distinguish between state and trait markers of anxiety-related pathologies, and use experimental and naturalistic longitudinal designs to differentiate among risk factors, triggers, and consequences related to cybercondria. The study concludes that health-related internet use in the context of health anxiety is best conceptualized as a health-related safety behavior maintained through intermittent reinforcement. This article was authored by Sandra K. Schenkel, Stephanie M. Eumann, Maria Grapalis, and others.


Hello, thank you for coming. My name is Golbanu and I recently graduated from San Francisco Art Institute and Art Hazel has been kind enough to invite me to be part of this panel. I don't think I'm really an activist, but certainly memories are very, very important to me. I was reading 1984 by George Orwell, which I read when I was much, much younger, when I still lived in Iran. I only left eight years ago and I read it recently and it was very interesting for me to reread it because I felt like what I've personally been through, what I've seen in the world made me look at it differently and I just like to read you a paragraph from this, which I think somehow relates to my work and the reason I also participate in Al-Mutannabi project. So it's just a little part of the book. It says, people simply disappeared. Your name was removed from the register. Every record of everything you had ever done was wiped out. Your one-time existence was denied and then forgotten. How could you appeal? How could you make appeal to the future when not a trace of you, not even an anonymous word scribble and a piece of paper could physically survive? So it doesn't matter if you've read the book or not, but I felt like this is very scary. This is something that everybody lives once and it's not that you want people to remember you. It's just a comfort to know that you just don't vanish forever. And I think in my personal work memory has been very, very important and ever since I left home I've been trying to connect and to my memories. And I picked like some of the work that it's like from the beginning of 2008 that I left Iran. So it first started with grief. And at the time I didn't know this work is about grief, but that's how I expressed myself. And then so it was all the roots that are cut. And then after a while I felt like, you know, I can't just let it be cut and left, leave it like that. And I wanted to remain hopeful. So that's why like one of the roots catching the water. So that was hope, I guess. And then after that it was like you feel like once you fare well to your attachments and you feel lost and then you need empathy. So this work for me was empathy where the person that from the lower part of the body is just feels dead, the part that can root, the part that can produce is dead. And then it's taking comfort from the tree. And again, another piece that it's just that the only thing and maybe I don't know if the bird was representing hope, but it was just to know there is life going on. And this was another piece that I did that it was like saying goodbye to your attachments and leaving your home. And it felt really painful. That exactly how it felt that you left your feet. And is that this one? Like to show the, I guess you can all see it. And then after, you know, after grief after empathy, then it's time to reroute. And I always, I always wonder, I still wonder if it's possible to reroute in another country. And but that's, that's how I see it. So there is a heart growing from a tree, but then it's just set free to go and pick anywhere, like as if you don't even need a land anymore. And then I think more recently, I'm more thinking about memories, the things that make me know who I am or like reconnect to my identity. And so these are, you know, very personal pieces that I did. And I'm trying to nourish and water my roots with the memories of, you know, my parents that are still alive, but they're not, I don't have any physical contact with them, my sister, my grandmother. And that's why I did this piece. And then this is a very, very recent one also that, you know, I usually don't pick any, any specific form from where I come from. But for some reason in this piece, I wanted to have like a traditional architecture from north of Iran, where I come from and all the birds of home that are, they're protecting me the whole time in my journey. And then this is the piece I did for the project, Mutannabi project. For this piece, I picked Samovar, which is a traditional kettle that is widely used in the Middle East. And then I, I don't know, the way I saw it, I felt like, because when the bomb, bombing happened, there was a cafe that was also destroyed in the bombing, which was a place that all the intellectual thinkers, people who cared, everybody gathered there. And to me, that became like, like a heart. So the kettle is turning into a heart and it's just overflowing, flowing with people suffering. And, and then I was thinking of Tigris, the river, the ancient river that has been there and has drawn all the civilization to Baghdad. And the river still exists. And I felt like the river is the nourishing hope, something that it keeps flowing, keeps coming. So regardless of everything that is happening there, it will, it will help people to continue living there and preserving their culture.  So that was the piece I did for the work. And then I just want to finish with this poem, which I actually shared with another gathering we had about this event by Saidi, a Persian poet of medieval times. And he, during his time, he went to Baghdad and he studied there because he was the city of, for studying with great universities. And so the, the, this, it's just a short poem that he says, of one essence is the human race. Thusly has creation put the base. One limb impacted is sufficient for all others to fill the maze. The unconcerned with others plight are about brutes with human face.  So that's all. Thank you.


So yeah, is that basically what we needed to say? Personally, I think this was a better introduction to the topics than last time. So when you'd spend all the time to do all the exercises, although I think you really need to try some of these exercises because especially the data stuff you'll be doing all the time.  Like usually the workflow is something like you need to do some of these more specific things like data copying, like big data copying or something like that at the start and at the end maybe of the project. But in the middle of it, it's mostly about the queue and running the stuff and that is like I hope that everybody gathers from this today's lecture about like how do you actually run stuff in the queue and how do you get your stuff run. And tomorrow we'll look at the more advanced stuff that you can run like in bigger scale or with bigger resources. Yeah. Okay. Please fill out the feedback as you see on HackMD and we're right on time so we can hang out and answer a few more questions if or maybe we can do it asynchronously on HackMD. Yeah. Yeah. So should we hang up for the day? Yeah. Okay. Thanks everybody for listening. Yeah. So please everyone come down and give us feedback. This is really the most important thing we can get. Yeah. Even if you hated this, then give us feedback because then like we know what to fix. Exactly. That's what we do every iteration like it's similar to the actual work in the cluster iterations. Okay. So talk to you all later then. Bye for now.


here is at the last session on the last day of RubyConf. I don't know if that means that you won or lost, but you're here, so that's great. So my name is Michael Bly, and today I'm going to be talking about a new framework that I've developed for building RESTful APIs in Ruby. If you wanna follow me on Twitter, I'm at mbligh. You can also follow Intridia, who I work for, just in case. So if you wanna ask some questions, there's a little app that I set up, just go to comfast.herocu.com, you can record questions during the talk. This is not actually any kind of a cool app, this is just a demo for this talk, but I thought I'd write something that might be useful, so go ahead, log in with Twitter, throw up some questions during the talk, and I'll get to them at the end. So this is not exactly the talk that I wanted to give, and I don't mean that I'm not interested in the subject, I'm very interested in the subject. The problem is that I practiced a development methodology, I'm not sure if you're familiar with it, it's called CDD, does anyone know what that is? Conference Driven Development. So I submitted this talk, and I've had this idea for this framework in my head for a really long time, and it's something that I've really wanted to work on, and several months ago when I submitted it, I had it all scheduled out when I was gonna work on it, when I was gonna get everything done, you know, things didn't go exactly as planned, so now I find myself in a position where I'm worried that I may be over-promising and under-delivering, but we do have stuff to look at, and it is, I think, an interesting framework, an interesting technology, so I just wanna throw a caveat out there up front that this isn't quite where I wanted it to be, so if you wanna refund, you know, hit me up on Twitter afterwards. Not for RubyConf, I can't give you that. All right, so first I'm gonna talk about the motivation here. So why would I build a new framework? You know, Ruby is a wash with web frameworks. Why do we need yet another framework? So Ruby's really good at making hard things easy. Rails makes the process of building web applications really easy. Sinatra makes building simple applications even easier than Rails does, but the problem is that APIs still aren't really easy. How many of you have built a RESTful API of some kind for an application built in Ruby? Okay, keep your hands up if you thought that the process for building it was exactly how you'd like it to be. So still a couple hands up, but for the most part, you know, people's hands went down, and I think that's because there hasn't really been something dedicated to the idea of building APIs in Ruby. APIs in Rails are too entangled. Rails 3 has responders you can serve up XML or JSON straight from within your controllers, but I don't know, that always makes me a little nervous. I don't like the API being so tightly coupled to the web application, because then you're gonna run into problems where I want my API to be versioned. I wanna make sure that my API continues working even if I change the structure of my web application. Rails doesn't really provide facilities for that.  I mean Sinatra's great, Sinatra's simple, but if you wanna do things like support several different formats, if you wanna have maybe a URL that takes multiple HTTP verbs, I mean you just sort of run into these limitations where Sinatra's great for simple things and it's great for an API in theory, but I feel like in practice, I just continually get frustrated if I'm trying to build an API in Sinatra, like why isn't this thing just a little bit different so that it can work the way I want it to? So why can't APIs have their own framework? Ruby, like I said, is a wash with frameworks and that's a good thing, that's not a bad thing. That means that you have choice and you have a variety of ways to tackle a problem and so this is just a new way to tackle the problem of building APIs in Ruby. And a lot of the inspiration for this also came from new Twitter because you look at the new design of Twitter and basically it's a JavaScript client for their API which is built in Ruby, Scala and these other languages, but I mean primarily it's driven by the API and I actually really like that. I like the idea of web applications that are driven primarily by their own API because that sort of frees you up and it both makes you create a robust API for your developers and it also just sort of gives you the freedom to do so much of this on the client side and with technologies like Mustache, you can do the front end and the back end using the same rendering engine.  So that's another sort of inspiration for why I think that this sort of framework is needed. So today I am announcing the first release of Grape and it's 0.1.0, it's on rubygems.org right now. This is a very beta 0.1.0 and I'd like to tell you that Grape stands for the generalized rapid API erector or something clever like that but in reality I was just like, ah, I want something that sounds like API. Eight, nope, that's already taken. Grape, nope, somebody else that in Triti is working on something called Grape. So hey, Grape, that sounds kind of like API. So to give a high level overview of what Grape is and what it does, Grape is built for ease of development. The idea is that you can sit down and if you're building an API, you just bust it out in Grape the same way that you would easily bust out any web application in Rails or a web application in Sinatra. It's designed to remove all of that friction and all of that manual work that you have to do to think about and set up API development. It's inspired by Sinatra because, I mean really, an API fits pretty well into Sinatra. Since you're talking about resources that are accessed directly by their URL, by developers, it makes sense to have a really URL-centric view of what you're doing and it's inspired by Sinatra, but then it builds on Sinatra and gives you some easy facilities to do some things that Sinatra can. And the biggest idea is that it should just work. I want you to be able to sit down, write something out with Grape and it just works. It works the way you expect it to. It takes care of all of the defaults so that you don't have to worry about it and you don't have to think about it. So what exactly does Grape do? And this is actually really kind of two questions. There's what does it do now and there's what will it do in the future? So let's first answer the question of what does it do now? So to get started, let's go through the very basics. So this is the most basic kind of Grape application you could build.  And so you see if I run this code here and I run that through rack because my API is a rack application that you can run directly in a rackup file and then I put a get request to slash hello, then I would get a JSON representation of the hash that I returned from that block. So right now Grape has built in JSON serialization. It assumes that you're going to be building your API and targeting JSON and I wanted to have more formats supported for the first release but ultimately I think that especially in a crowd of Ruby developers, JSON is really kind of the way that you're gonna wanna go anyway. It's really, I mean I don't really, does anyone prefer XML to JSON here? Yeah, let's, this is actually, I'm gonna add an extension to SOAP and then drop the JSON support later. So JSON is just for now. No, but JSON is a really easy and really expressive way to build APIs because you're representing things directly as objects. And that's something that as developers we can easily understand, easily interpret, JSON can be serialized into a number of different languages, yada, yada, yada. I don't think I really need to sell you on it. So basically what happens is whenever you return from one of the blocks that you set up in a Grape API, first it looks for a serializable hash. So this uses the same setup as active model where if you define a serializable hash on your object, then it looks for that method and says, oh, okay, then this is what this object declares as a representation that can be serialized into JSON. And it should just be a hash that can be serialized into JSON, that's the only requirement there. And actually you could fudge it and it could be an array or it could be a string, anything that can be serialized into JSON. But I wanted to follow the active model pattern there. If that doesn't work, if it can't find that method, then it looks for a to JSON method because you may have written a custom JSON, you may have written some custom JSON handlers for your specific needs and so it'll look for that as well. And then if that fails, then it just tries to encode the object in JSON directly assuming that it's going to be something that your JSON interpreter of choice handles. I use multi-JSON for encoding so it'll work with the JSON gem, Yajel, active support, JSON pure. So it'll work with any of those JSON libraries. And then the idea is that this would also work with XML or this would also work with Atom or RSS and the idea would be that all you do is you return your content and Grape takes care of figuring out how to serialize it into the correct format. So we can also do prefixing really easily. So if I want to have my API prefix so that everything is slash API slash something, then all I do is I put prefix API at the top of my Grape API and then from there all requests are presumed to be prefixed. You can do versioning and this is actually kind of an interesting one. So you can specify a specific version and if you specify a prefix and a version, the version will go after the prefix. So this gives you the ability to do things where it's only accessible from a specific version. And if I want, I can actually specify multiple versions in that argument. So I could say version V1, V2, and then all of those methods would be available for both version one and version two. And if you want something to be only available for a certain version, then you can actually pass a block to the version and then that'll create an encapsulated segment of code that works only for those specified versions. So if you wanna do legacy support, I could have version V2 at the top and so by default everything supports V2, but then if I want my legacy code to still be there for V1, then I'd just say version V1 do and I keep my legacy code there. So it provides an easy facility for adding versioning to your API. Namespacing, so namespacing in its simplest terms is just basically adding another URL segment. So if I want it to be slash users slash something, that's a namespace in Grape. But namespacing also gives you the ability to do some interesting things that go beyond that and we'll talk about that in just a second. But the basic way that it works is you say namespace and this is actually alias to group resource and resources.  But here I say namespace admin and then I have a metrics namespace under that and if you do just a get or a post or a put or a delete with no argument, then it will work just against whatever the current namespace is. So if I do get do, then that means that if you look below get slash admin slash metrics is going to run that block that doesn't have an argument. Or you can add additional URL segments and just like Sinatra, you can use string regular expressions where if you put a colon in front of it, it will parse that out and turn that into a parameter for you to be able to access. And that actually runs using rack mount, which is the same thing that the Rails 3 router uses to parse and handle arguments and strings. So if it works in Rails 3, it'll work in Grape and that's something that I think is nice to have. But what I mean by stackable configuration is going back here, in this namespace admin, if I wanted to, I could add for instance a version argument or I could add helpers or I could add other things and those are only going to be available to that namespace. So there is a stack and a scope where it will inherit from everything above it. So the metrics namespace will inherit all of the settings from the admin namespace, which will inherit everything from the global namespace. And so you can really easily do those kinds of scoping operations that I find come up frequently when building APIs. It also supports basic auth and this is really simple. All you have to do is add an HTTP basic call with a block that takes the username and password and then you can do whatever kind of check you want. In this case, let's say I have an admin portion of my API and that's protected by a simple password that's set in the environment variables. That's how that's set up here. So now if I try to get my admin metrics, if I try to get slash admin slash metrics and I haven't supplied the admin username and password, then I get a 401 unauthorized. And if I supply the correct password, then it passes through serial as the JSON works as you'd expect. So HTTP basic is the first form of authentication that I've added. It's definitely not gonna be the last and we're gonna talk about more of sort of the roadmap features shortly, but you can also do helpers. And helpers work pretty much how they do in Sinatra. You say helpers do and then you can define any number of methods and then those methods will be available within all of your endpoint actions. And these are scopes. So if you define helpers within a namespace, those are only going to be available within that namespace and they're going to override any helpers that were defined in a super class or in a super namespace above that. So that would let you really easily tailor things using the namespacing, using namespacing and using these inheritable helpers to make your application work better. And finally, you can also handle API errors in a consistent manner. All you have to do if you want to say, all you do is error exclamation mark and then you give it a message and you give it an HTTP status code. By default, the status code is 403 so if someone tries to create a record and there's a validation error, then you can just error out with the validation message there and it'll be handled in a consistent manner. So basically the idea is that it just gives you a quick one liner that can consistently display API errors across your system. So that's sort of a basic overview of most of the things that it can do right now. And here's an overview of some of the things that I've already started work on but aren't quite ready for production right now. First of all, documentation generation. And this is the hardest thing for me to have had to cut from this talk but I just haven't gotten it working yet. One of my, one of the most fundamental principles I have about building Grape is that I want you to be able to write your API code and then using extensions to Yard, you will actually be able to generate the public facing API documentation for your API directly based off of your code. So in the same way that you can document your code now, you can use the extensions to Yard that I'm gonna be writing to document your API and all you'd have to do then is throw that up on a public site somewhere and you've got API documentation. How many of you have had to write some form of API documentation? How many of you thought that was pretty miserable? Exactly. So I wanna do away with that completely if possible and I've already had some small success. There's a long way to go but I do believe that it is going to be possible to automatically generate your API documentations if you build an API with Grape. Content negotiation. So this is actually already mostly built. The only thing that I need to do is write the ability to actually serialize out to multiple formats. So Grape will automatically do sort of the gamut of things you would expect for formatting an API. So the first thing it'll look for is just if you specify a default format and you can do that just using default underscore format but right now it only supports JSON so there's no real reason to talk about that. But then after that it'll look for an extension added on to the end of the path. So if I say slash users dot JSON then it knows that I want my results to be delivered in JSON. But then even beyond that it also uses the proper rest idea of the accept header and it'll parse the accept header looking for known media types that it can serialize out to. And so basically I found it really frustrating for instance, Goalas API uses the accept header but most APIs use either some kind of URL extension or URL prefix. And so there's all these different ways of doing it and what I really want it to be is just simple. So Grape does all of these automatically so your API supports all of these automatically without you having to add any code to it. I wanna support OAuth 1 and 2 authorization and I've written up, Grape is actually a collection of middlewares that are sort of applied to this custom endpoint application and so they actually could be used outside of building a Grape API but I've already built an OAuth 2.0 middleware. I just need to properly hook it into the DSL and figure that out so basically I want it to be really simple for you to just pass through and it'll properly parse the OAuth headers and check that against either a class that you specify or a block that you specify to find users based on an access token. So it will support OAuth 1 and 2 in the near future. I also want, one of the things that really bugs me about Sinatra is you can't really build an application in multiple files. I mean you can but it's really messy and sort of not encouraged. So I want Grape to be able to be built in multiple files because you're not going to just have, unless you have a very small API, you're probably gonna want to separate out and have different resources in different parts of your application and I want it all to work together and I want that all to be seamless. So Grape will be supporting multi-file APIs and also a plugin system. This is gonna be very extensible. I've already got everything running pretty much as middleware so it's also going to support just sort of a public API and plugin system so that you can easily extend Grape to do even more crazy things and that's where we get to the vaporware and these are ideas that I have for Grape that I haven't started on. I'm not gonna pretend they're coming in the next couple weeks but I can see how it could be done. Streaming APIs, if you want to build a streaming API like Twitter's you could hook a Grape API up to something like Event Machine and build something that would allow you to do that. Pub, sub, hub, hub so that you can automatically persist changes to your application to subscribers. A presenter class and this would be actually really easy to implement so that you can create presenters for your various elements. So if I have a user, then I can create a presenter for my user that Grape can then use as the basis for serializing the user. Rate limiting and internal API is sort of the last interesting one that I wanna touch on. I want people to be able to use the API not only by calling to it via HTTP but also by calling to it programmatically. So I want you to be able to call directly into your API and retrieve out the serialized Ruby object without having to convert it to JSON and then back from JSON again and waste that overhead. So basically I wanna make it so that you could actually use your API to drive the data inside your Rails application or inside your Sinatra application so that basically everything's going through the API and you have just this single point where you're handling your data model. So now I'm gonna talk about CompFask which is just a really simple program that I wrote today using Grape and first, so we have, where is the GitHub repo for Grape and how can we help? That is a great question and I can answer that right now before I get on. So by the way, if the same user and the person who asked the question, I have asked three questions and it seems to have been posted the same one, the my first one seems to have been posted. So if I ask two questions because they didn't give me my form, any question from there on, it's just a piece of paper for the person that I'm asking. I think that's actually. I don't know if I was able to submit that issue. Yeah. So github.com slash intradius slash grape is the answer to that and that's actually really strange because I think I ran into that problem about half an hour before this talk and then I thought it went away but apparently it has not. So I'm not sure why that is but let's examine the code for this anyway just very quickly. So this is the API and basically the application is set up. It is a simple rack application running Sinatra and Grape. It uses Omnioth to authenticate with Twitter and basically I just run a Rack Cascade that first goes to the application and then the API and so let's look at the application. There's really not much here. I just have a callback for the Twitter authentication that will create a user persisting the users with Mongo Mapper on a free Mongo HQ instance on Heroku. So that's all there is really to the application. It just renders the ERB and actually none of the data that you see is rendered using Ruby. It's all pulled using the API in JavaScript and then rendered there. So if you look at the ERB the question list is just empty and all of the actual logic takes place in application.js and this is really hacky and not best practices at all but I thought it worked and it apparently doesn't. So then let's actually look at the API. So I gave it a prefix and a version and then the first thing I did is I defined some helpers and those are around the authentication and since I'm calling these API methods directly from JavaScript then that gives me the ability to actually inspect the same session that the Sinatra application is using. So I set a session variable of user ID in Sinatra and in order to authenticate it actually checks against the session. So whenever a JavaScript is calling against the API it can automatically authenticate using the internal session and while that's not actually ideal for an external facing API because you would want people to be able to authenticate with their account using OAuth or using HTTP basic or something like that it's actually very useful in this case because now if you're thinking about things from the perspective of like new Twitter where you want to have an API driven application you can really easily do that. So I have a few API methods. First we have get slash me which just gives you information about the current user. That's not actually used in the code anywhere but then we have the questions. So the first thing we do have is resources questions and then we just have, actually shouldn't even be there. So we have resources questions and then all we do is we take all of the questions and sort them backwards and then it will automatically serialize that to JSON. So using my HTTP client I can change this to go to Confask hero coo. So you can see that the same way that it displays here, it displays here and I'm not sure why the question keeps getting repeated but the idea is that but it's actually persisting to the database that way. So I don't actually think it's a problem with grape. I think it's a problem somewhere in my JavaScript or somewhere in between but I do apologize for that. So you can also post a question and that just takes a text parameter and the screen name of the current user and creates a new question and that is actually done just by doing a simple Ajax post whenever this form is submitted. Let's see if I can do it. Yeah, did the same thing. That's very strange. So really there's not too much to this application but it gives you an idea. I mean, I wrote the API portion of this in probably about 10 minutes and it's very simple and it doesn't do a whole lot but I could feel even when writing it that that friction is gone. The friction of getting from nowhere to writing an API is just really reduced by using a framework that's built from the ground up to handle APIs. So, since the questions app didn't work I'm gonna go ahead and take out lab questions if you have any. Yeah. Sorry, can you get into the rack? Have yourself throw me a summer from Rails app? Yep, absolutely. It's just a rack application. You can, you know, mount it using the Rails router. You can run it in rack up. You can throw it. Yeah, it's just a rack application and the class itself is a rack application Any other questions? Yeah. The previous slide you had was looking at the, I guess maybe it was the code slide, maybe I don't know which direction it was in. It was when you were talking about the namespacing with the versioning. Yeah. So, you had a prefix and a version. Yeah. And you can, so you can pass a block to the version you say, but is this when you get to the multiple file support that allow you to basically say that file's my version or API and add files on the version of API? Yeah, exactly. Same, same, same point. It's just a different prefix before that. Yep. Yeah. Yep. I'm doing all this simple operating. Do you have things that you want across available and across parts, but not all of it that you recommend, say for example, using as a mix-ins, for example, for helpers you want from like version one and then you created a tooth and you decided to bring it back in three or something? Yeah, I actually, I'm going to be stealing in very short order the ability to pass just a module into helpers so that that would automatically include that the same way that it happens in Sinatra so you can pass a module into the Sinatra helpers method and it'll automatically include that and that'll be available to all of your endpoints. And you have multiple, I like to get calls if you want multiple routes to go to the same place so you have to reduce the code or could you pass an array of routes going in perhaps? Multiple routes. Right now you would have to write it multiple times but that's something that's always bugged me about Sinatra so I'm going to add that to the GitHub issues and make sure that I support that because I definitely want you to be able to have multiple routes that run the same action. Yeah. So this should, let's see if we work with JRuby there's no reason why there's not. Yeah, this should work just fine in JRuby. It's all pure Ruby. It uses the multi JSON library for serialization so as long as you require a JRuby compatible JSON library before you load grape then it should work just fine or a JRuby compatible JSON library. Yep. So I saw that the standard, your companies GitHub thing but that has nothing to do with your companies and then you want me to load this into something commercial. I mean this is something that I built because I've had to build a number of APIs now at Intridia and I ran into the same problems again and again so this is definitely scratching our own itch from a company perspective but I mean as far as commercializing this I mean I definitely don't plan to sell like the grape framework or anything like that. I mean if it grows and a community evolves around it I'm just happy to contribute and have things contributed back. Yeah. Have you thought at all about having unified lifecycle helpers or something like that? In other words you have a lot of objects that have basically the same process for get, post, delete. Doesn't it make sense to extract the data the process for that and use it as a common helper? Yeah I have actually thought about for instance when you create a record especially if you're creating a record in Ruby most likely either the record is created or there's some kind of validation errors so I do want to create those kind of built-in lifecycle elements where if I'm doing a post then I have some kind of facility where and just throwing this out there off the top of my head it'd probably look if the object that's returned is active model compliant and then check based on that whether it's a new record or not and if it's still a new record then it'll check for validation errors and display those and otherwise it would return the newly created record. So I definitely want to build in those sort of invisible ways to help ease development. So yeah that's definitely something that I'm thinking about. Anybody else? All right well, oh yeah. Yeah, the slide deck I'm going to upload it probably just to the wiki attached to the grape repository and so the slide deck will be available and I'll also probably and I'll also be posting the code for that compVASC application although since it's not working that well I don't know how great of an example it'll be. Yeah, yeah so I mean you know I really I feel a little bad because this is a lot this is a lot more beta than I wanted this talk to be but I'm still excited about the technology and I just hope that the people here can maybe get involved and make suggestions as to what it can do and also fork it yourself add functionality. This is a brand new framework I'm very open to suggestion because I think that there's a lot of people who have a lot of good ideas about how this should be done so I just really hope that grape can keep growing and help everybody in the Ruby community build better APIs so thank you very much.


So for those of you who have been watching the Humanist Report for a while now, you know that I have been incredibly critical of corporate media's coverage of progressive policies, namely Medicare for All, because being adversarial doesn't mean you criticize politicians who attack Medicare for All by using industry talking points. Being adversarial means one, you educate people on what Medicare for All actually is, and two, if you want to be adversarial to someone like Bernie Sanders, you press him to explain how he's going to get this passed, for example, and to explain the policy. And when it comes to adversarialism and journalism with regard to Medicare for All, any politician who's against it has got to explain why they are against something that has been a long-term goal for the Democratic Party until it was captured by the health insurance industry and other large special interests.  One will be from MSNBC's Katie Tirm, and the other will be from CNN's Chris Cuomo. Both of them will discuss Medicare for All tangentially, but the way that they talk about this is very different. One of them is basically a perfect example of what I would want to see from the mainstream media in a fair way to cover it. And the other is basically the worst-case scenario. So the first is from Katie Tirm. This is her talking to 2020 presidential candidate Michael Bennett, who, yes, is still running about Medicare for All, and she's going to press him on why he doesn't support Medicare for All. What you're talking about right now, it seems like you're saying that the democracy that we are currently living in, it doesn't work. It's broken, which calls for foundational change. But you're not a foundational change candidate. Why are you not a candidate calling for for Medicare for All, like some of the other candidates? Why are you not a candidate coming out there and saying, we need to fix Washington, and in order to fix it, we've got to change it from the ground up? Why are you still so in the moderate wing? No, I do believe that. I actually believe I'm more of a foundational candidate than the ones that are offering Medicare for All, because I know that's just an empty promise. It's just an empty promise. Why can't Canada have it? Why can the UK have it? Why can't we have it? Well, it is different from what Bernie Sanders' bill is to begin with, but there's an answer for that, which is we already have an existing health care system, and we can decide that we're going to spend the next 10 years fighting a losing battle for Medicare for All, or we can fight to restore economic opportunity for people. We can fight on the climate front. That was absolutely fantastic, because she had him stumped, and she didn't even have to try that hard to stump him, because he wasn't expecting any pushback, because usually what happens on these news shows is they'll bring on a politician who's opposed to Medicare for All and allow them to espouse corporate talking points uninterrupted for minutes at a time and use the same lines that we hear from Republicans and the industry, the health insurance industry. So we never hear a pushback from them. We never ask them, are you saying this about Medicare for All because you are taking money from the health insurance industry? I mean, we never see pushback, but what we got from Katie Ture there was excellent. We got pushback for the first time on this issue, perhaps in years maybe. So she asked them very simple questions. If you're a foundational candidate, if you believe in structural change, why not back these sweeping policies like Medicare for All? Why can Canada and the UK have it, but in the United States, we can't have it? Michael Bennett did not have an answer to any of this. His answer effectively was this is what happens with even the most minimal amount of pushback. Corporate politicians collapse because they have no core, right? They're saying the things that they're saying. Michael Bennett is saying the things that he's saying about Medicare for All because he is taking money from the industry. He is corrupt. He was bought off. So he doesn't actually believe in anything, right? So the reason why he doesn't have a response is because when you force a politician to divert away from their corporate talking points, then they're stranded. They have nothing left to say. And his pushback or his response rather was, we already have an existing healthcare system. As if the UK didn't have an existing healthcare system before getting a national health system. As if Canada didn't have a healthcare system before getting a single payer. That's not an argument.  They have no idea how to respond. So that's what I like to see. That is the ideal segment, the ideal way that a corporate pundit will cover Medicare for All. But now moving on to CNN's Chris Cuomo, he's not going to talk to a politician, but he's going to editorialize and talk about the issue of Medicare for All. It's a complete disaster. I apologize for the audio in this clip. This is all I could find. But watch what he says and listen to how condescending he is. And the dense and hyperambitious M4A Medicare for All talk seems to miss the state of play. It's like working on pretty footwork and your style when your opponent is standing there with a shotgun. Remember, this is a big part of why Trump won in 2016. Insults, not insights, simple, not sophisticated. Look, Bloomberg getting in suggests not so much that he thinks he can win. I don't know where he's getting that from, but that this field can't. His top advisor said, Mike is increasingly concerned that the current field of candidates is not well positioned to defeat Trump. The Democratic nominee has to be properly armed for the onslaught that's coming. What does that mean? You've got to answer. Question number two, are you speaking the language that America wants to hear right now? No offense. But again, this dense talk and sophisticated policy plans, if a trillion here and trillion there in three years versus five, and I'm going to take your healthcare, this is about not being the rabid right. Do you do that if you are seen as an equal opposite of radical left, single payer or not? Medicare for All versus Medicare for All who want it. This is dense in times of determined simplicity. Democratic governor elect, promise to protect Obamacare and the Medicaid expansion. Kentucky kept it simple. He spoke the language of the local people, targeted. Many of the Democratic candidates are talking about blowing up the entire system to many. It sounds equally as crazy as what they're getting.  That's basically what I took away from that clip. That is inherently elitist and it is rich-splaining. Chris Cuomo is a multimillionaire. He has a net worth of $9 million. He has a yearly salary of $4 million. So he doesn't know what normal people can or can't understand. He doesn't know what they want. His interests are incredibly different, dramatically different than a Walmart worker's interests.  Don't go too in-depth with these policies. He's talking at you rather than listening. Now, let me remind you, the goal of a news anchor is to educate people. You can editorialize. That's fine. But I want facts. You can supplement those facts with your commentary, but I don't expect you to come on here and basically say, don't talk about Medicare for All. No, that's not your job. You're not a politician.  So tell us the news. Tell us the objective facts about reality. Now, the problem is that if you just talk about Medicare for All in a very matter-of-fact way and you just look at the details, people will begin to support Medicare for All. Hence why we saw a substantial shift in public support for Medicare for All once Bernie Sanders really started to educate people about it and campaign on it since 2015. Now, here's why he says we shouldn't focus on complex policies. Well, because Donald Trump won because of insults, not policy positions. Are you sure about that? Because he campaigned in the Rust Belt, and he talked about how trade policies devastated the working class. He talked about bringing back coal, which was a false promise, but it gave people who were formally coal miners a lot of hope that they didn't have. So he spoke to people. He had a populist message, a fake populist message, but a populist message nonetheless that resonated.  Nobody cares about that. It was funny, sure, but that's not why he won ultimately. And on top of that, Chris Cuomo uses Mike Bloomberg to justify why he doesn't think that any Democrat in the field can beat Donald Trump because if he's getting in the race, maybe that doesn't necessarily mean that Bloomberg thinks he can win, but he certainly thinks that other Democrats can't win. Yes, because a billionaire like Mike Bloomberg certainly has his finger on the polls of America.  Chris Cuomo is usually like one of the better anchors on CNN, more so than anyone else. He brings on progressives like Anna Casparian and Cenk Yuger. So I'm surprised that he went this route.  But I mean, nonetheless, it still seems like he's better than this.  Are you speaking the language that America wants to hear right now? This was a question he asked, and he basically says no offense, but you know, this dense talk of sophisticated policy plans, trillions here, trillions there, and I'm going to take away your health care. This is not going to resonate. Now, who is running in the Democratic Party primary on taking away health care? Name one candidate who is running on that. Even the corporate Democrats are not running on taking away health care. Joe Biden is someone who I despise. He is not running on taking away health care, and I do not believe he wants to take away health care. He wants to build incrementally on the Affordable Care Act, which is not enough, which won't suffice, which will still leave millions of people out who will die. But do I believe he wants us to go backwards and take health care away? No. But what Chris Cuomo is insinuating here is that Bernie Sanders, he actually does want to take away people's health care. By moving to Medicare for all, that's taking away people's health care. This is a lie. This is a brazen lie from a news anchor whose duty is to educate the public, and here he is actively deceiving them. This is disgusting, morally reprehensible, and he contends that you beat the right if you are seen as the equal opposite to the radical left for whatever reason.  But this is based on your own subjectivity, your experience as a multi-millionaire. To you, the prospect of blowing up the system, it doesn't sound appealing, because the system is working out phenomenally well for you. Your brother is a governor, your father was a governor. You are paid millions of dollars every single year to talk on CNN. So of course, from your perspective, the prospect of blowing up the system seems just appalling, right? You wouldn't want that to happen. It's self-interest. I wouldn't want to blow up a system that's working out well for me. So of course, Chris Cuomo wouldn't want to do the same. It's a matter of self-interest. But the problem is that the system has failed the American people. And that's why we're even talking about blowing up the system. That's why we're questioning capitalism. Because whenever people get desperate, they take a hard look at the system, at our economic system, at our political institutions, and they try to figure out what's working and what isn't working. The status quo is not working. Just because it's working for a select few like you, Chris Cuomo, doesn't mean it's working. So stepping back to put this entire segment into perspective, when you juxtapose Chris Cuomo segment with Katie Turre segment, the difference is night and day. I don't necessarily believe that Katie Turre personally supports Medicare for All. But what she is doing here is she is not being neutral. She tried to be fair. She tried to challenge people who are opposed to Medicare for All, who are in power in a way that other anchors have not done so far. The only other person who has actually spoken even remotely favorably about Medicare for All is Ali Velshi. But aside from them, I mean, everyone else in mainstream media has attacked Medicare for All and literally spread lies about Medicare for All when news anchors are supposed to be educating people about Medicare for All. Now to be clear, I'm not saying that they should advocate for Medicare for All. I'm not saying they need to editorialize and tell people who watch CNN and MSNBC how wonderful Medicare for All is. What I expect from news media, what everyone should expect from news media is objective facts. Tell people the facts about Medicare for All, how every other country has some form of health care where it's free at the point of service, how nobody else in modern countries go bankrupt or die because they don't have health care. Tell people the objective facts of reality. That's all I expect. Now in the event Chris Cuomo did that and then supplemented the facts with his shitty commentary, that would be one thing. But he literally lied. He didn't talk about the facts. He said that people who support Medicare for All like Bernie Sanders want to take away health care. So I shouldn't have to be educating people who probably took journalism classes about objectivity and fairness in reporting. But here we are. It just goes to show you that overall the current corporate media landscape is not working. We've got to bring back the fairness doctrine and we need to make sure that these corporate media outlets disclose the conflicts of interest. That viewers know when they're talking about Medicare for All, the reason why CNN may be saying things like this about health care and Medicare for All is because they take advertisements from Big Pharma. They pay CNN to run ads from Etna and whatnot. These are two very different examples. One of them with Katie Turr is a phenomenal example of objective reporting that is not too common in mainstream media. The other is a disaster and basically the worst of the worst when it comes to reporting about Medicare for All in the Chris Cuomo CNN clip that I showed you. I'll leave that there.