{"id":45204,"date":"2019-09-12T01:00:08","date_gmt":"2019-09-12T08:00:08","guid":{"rendered":"http:\/\/devblogs.microsoft.com\/xamarin\/?p=45204"},"modified":"2019-09-13T08:36:22","modified_gmt":"2019-09-13T15:36:22","slug":"reel-interns-ai-xamarin-forms","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/xamarin\/reel-interns-ai-xamarin-forms\/","title":{"rendered":"Microsoft Garage interns REEL: Xamarin.Forms + AI app"},"content":{"rendered":"<p><figure id=\"attachment_45210\" aria-labelledby=\"figcaption_attachment_45210\" class=\"wp-caption aligncenter\" ><img decoding=\"async\" class=\"wp-image-45210 size-large\" src=\"http:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REEL_TeamPhoto-1024x768.jpg\" alt=\"REEL Team\" width=\"640\" height=\"480\" srcset=\"https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REEL_TeamPhoto-1024x768.jpg 1024w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REEL_TeamPhoto-300x225.jpg 300w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REEL_TeamPhoto-768x576.jpg 768w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REEL_TeamPhoto.jpg 2048w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><figcaption id=\"figcaption_attachment_45210\" class=\"wp-caption-text\">Left to Right: Sarah Vu, Austin Hwang, Daran Zhao, Kaitlin Plane, Blake Wesel, Bruce Gatete, Christine Hsieh<br \/>Front (Team\u2019s coaches): Yev Bronshteyn and Nana Essilfie-Conduah<\/figcaption><\/figure><\/p>\n<p>&nbsp;<\/p>\n<p>This past summer, the <a href=\"https:\/\/www.microsoft.com\/en-us\/garage\/\">Microsoft Garage<\/a> welcomed teams of interns to different Microsoft campuses. Including the Cambridge NERD Center where many Xamarin team members are based. One Garage intern team worked with the Cambridge AI Customer Advisory Team (CAT) to create a mobile app demonstrating their different recommendation algorithms. The team chose Xamarin.Forms to build the app, REEL, which displays movies recommended to you based on the AI CAT algorithms. Although they didn\u2019t have much C# knowledge beforehand, the team successfully built a beautiful, smart Xamarin.Forms app in only 12 weeks!<\/p>\n<h2>The REEL App<\/h2>\n<p>REEL shows the results of different recommendation algorithms by having you choose movies you like then showing you different genres of movies the algorithm finds similar. It uses the MovieLens dataset to populate the recommendations. The app is meant to help customers compare the accuracy and feature prioritization between Microsoft\u2019s recommendation algorithms. It was built using 100% Xamarin.Forms and targets Windows, iOS, and Android.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-45211 size-large\" src=\"http:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REELscreenshots-1-1024x663.png\" alt=\"The REEL App\" width=\"640\" height=\"414\" srcset=\"https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REELscreenshots-1-1024x663.png 1024w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REELscreenshots-1-300x194.png 300w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REELscreenshots-1-768x497.png 768w, https:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/REELscreenshots-1.png 1673w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><\/p>\n<h2>The Experience<\/h2>\n<p>We sat down with the intern team shortly before their internship ended. We heard about the pros and cons of their experience using Xamarin.Forms. What we could have done to make their learning experience with Xamarin even easier. The biggest challenge for the team was learning MVVM. However, the Xamarin documentation, samples, and templates made it easy to find good examples of how they should manage state. The team used a lot of third-party Xamarin components. Such as <a href=\"https:\/\/github.com\/AndreiMisiukevich\/CardView\">CardView<\/a> and <a href=\"https:\/\/github.com\/luberda-molinet\/FFImageLoading\">ffImageLoading<\/a> which helped them avoid writing any custom renderers. At the end of the summer, the REEL team had a fully-featured app to handoff. It also found Xamarin.Forms to be a great tool for the job!<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-45209\" src=\"http:\/\/devblogs.microsoft.com\/xamarin\/wp-content\/uploads\/sites\/44\/2019\/08\/OnboardingREEL-1.gif\" alt=\"REEL Gif in Action\" width=\"281\" height=\"500\" \/><\/p>\n<h2>See REEL in Action!<\/h2>\n<p>The REEL source code can be <a href=\"https:\/\/github.com\/microsoft\/recommenders_engine_example_layout\">found on GitHub,<\/a> and you can check out the different recommendation algorithms from Microsoft <a href=\"https:\/\/github.com\/microsoft\/recommenders\">here<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Microsoft Garage interns worked with the Cambridge AI Customer Advisory Team (CAT) to create REEL: a mobile app that displays movies recommended for you based on the AI CAT algorithms. Successfully building a beautiful, smart Xamarin.Forms app in only 12 weeks! Learn more.<\/p>\n","protected":false},"author":1965,"featured_media":45211,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[367],"tags":[929,6806,6804,6805,6803,16],"class_list":["post-45204","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-xamarin-forms","tag-ai","tag-fuse","tag-garage","tag-interns","tag-microsoft","tag-xamarin-forms"],"acf":[],"blog_post_summary":"<p>Microsoft Garage interns worked with the Cambridge AI Customer Advisory Team (CAT) to create REEL: a mobile app that displays movies recommended for you based on the AI CAT algorithms. Successfully building a beautiful, smart Xamarin.Forms app in only 12 weeks! Learn more.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/45204","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/users\/1965"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/comments?post=45204"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/45204\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media\/45211"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media?parent=45204"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/categories?post=45204"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/tags?post=45204"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}