- Jeremie’s Web Site
- Jeremie’s Blog
- James’ Blog
- James’ GitHub
- James’ Twitter
- Evolve 2014
I’m very proud to announce that I’ll be teaching a 2 day hands-on course on Xamarin at Falafel in Hudson Ohio. This will be a very intensive course, but no prior Xamarin experience is needed, though you do want to be comfortable with C#.
During this course you will learn how to set up your Xamarin development environment, and how to create meaningful and useful Xamarin applications using best practices from the very start. Topics covered include MVVM, Events, Data-Binding, creating forms, working with Images, Fonts, Files and Maps, accessing the web, working with data locally and in the cloud, using the capabilities of the phone, migrating from web or hybrid applications, native iOS and Android development, working with lists, navigation, backgrounding, memory management and publishing your application.
Classes will run on September 17 – 18, from 9:00am to 5:00pm Eastern Time
Complete details here
Paul Betts is my co-author of Programming Reactive Extensions and LINQ and one of the smartest people I’ve ever met. He now works at GitHub, and lately has been writing about Xamarin and using Reactive UI as an MVVM framework.
We’ve come a long way in this series on Learning Xamarin, but we haven’t even begun to discuss Unit Tests, let alone Test Driven Development.
There are lots of articles, books, Pluralsight courses, and other sources on why Unit Testing is not only a good thing, but an essential part of building any modern application. But it is incredibly easy to overlook, especially when showing demo programs. Let’s rectify that.
I’ve discovered Amazon’s WhisperSync, and I’m in love.
The idea is that you buy an Audible book and a Kindle book — and your device (which can be a computer, iPad, Kindle, etc.) keeps them synchronized. This allows two wonderful scenarios.
First, and I’m doing this with Capital in the 21st Century, and it is great, you can read the book and when something comes up that prevents you from reading (driving, doing the dishes, etc.) you just click on the headphones, and it picks up reading to you right from where you left off (ok, from the top of the current page). When you are done being distracted, push a button and you are back to reading on your own. Just wonderful.
Second, and the need for this is rare, but reading Ulysses is a perfect example, you can have it read to you while you read along. It will even turn the pages for you. This has enormously enhanced both my understanding and my enjoyment of Ulysses.
Thou lost one. All songs on that theme. Yet more Bloom stretched his string. Cruel it seems. Let people get fond of each other: lure them on. Then tear asunder. Death. Explos. Knock on the head. Outtohelloutofthat. Human life. Dignam. Ugh, that rat’s tail wriggling! Five bob I gave. Corpus paradisum. Corncrake croaker: belly like a poisoned pup. Gone. They sing. Forgotten. I too; And one day she with. Leave her: get tired . Suffer then. Snivel. Big spanishy eyes goggling at nothing. Her wavyavyeavyheavyeavyevyevyhair un comb:’ d.
Joyce, James (2014-07-21). Ulysses (Illustrated) (Kindle Locations 5159-5163). . Kindle Edition.
That is a heck of a lot easier to work your way through when it is read to you by a professional reader and you are looking at the page at the same time.
To get started, I created a new Xamarin Forms project in Xamarin Studio on my Mac and named it BookLender. The purpose of this app will be to help me track who borrows my books (a problem that is greatly diminished by the fact that the last few hundred books I’ve bought have been Kindle books, but we still have a few thousand bound books that folks like to borrow now and again. I’m a huge fan of GoodReads!).
I’ve used the MVVM Light Toolkit in the past, but it has been a few years, and this will be my first experimentation with using it with Xamarin. I did talk to Laurent Bugnion (author of the toolkit) about it on my podcast, and he told me to start with the “Libraries only PCL” version through NuGet, which I have added to all three projects (the core, iOS and Android projects). Because I’m building this in Xamarin Studio on the Mac, I won’t (for now) have a Windows Phone version – though I can migrate everything later and add that as well.
In my previous article I attempted to explain why MVVM is inherently desirable and especially so with Xamarin Forms which supports both XAML and DataBinding. In this article I will create a dead simple example (actually, I’ll steal Lauren’t simple example) to get my feet wet.
Xamarin is clearly focusing on cross platform, and as part of that, and as evidence of it as well, they have phased out their iOS and Android certification and now only offer the bigger certification for Mobile Development. So I took that (3 hour) test
In my previous post, I talked about using the Camera with Forms-based applications. In this post I explain how to save and then use the photos you take.
Saving The Photo
Once we take the photo, the first task is to save it. I chose to save the photo as a file on disk, with the name of the file created as #.jpg where # is the ID of the associated item.
To do this, I want my Xamarin Forms page to talk to a platform specific method (saving is different on each platform).
The easiest way to accomplish this, is to use the DependencyService. Here’s how. First you create an interface in your core project. I called mine IPicture and gave it two methods…
In this post I return to the EvalUate application I was building earlier in this series.
We’re going to add the ability to take a photo of the item you are thinking about buying. It turns out there are a number of different ways to access the camera, but I was looking for one that would work and play well with Xamarin Forms.
I’m pleased to say that the Xamarin Forms Labs, (XFL) an open source project, has a Camera service (though it is in Beta).
XFL looks very exciting and much has been written about it already, though it is comparatively new, with Google returning over 18,000 hits on an exact match. A number of us at Falafel Software will be blogging about various features from XFL in coming weeks.
XFL is, as I say, quite young, and so the documentation is not 100% — but there is a wiki and there are samples. I decided to dive in and modify EvalUate to add the ability to take a picture when you add a new “item.” Continued here…
My session is Evolving From Web to Mobile App with Xamarin and you can read more about it on the Evolve site.
During the three conference days there will be 50 live sessions in 10 tracks with presenters from Microsoft, Xamarin, GitHub, Facebook and many more, covering all areas of mobile development.
Laurent Bugnion, Microsoft MVP, Microsoft Regional Director and Senior Director for IdentityMine, works from Zurich Switzerland where he is the author of MVVM Light, one of the premier libraries and toolkits for MVVM on all XAML systems and now Xamarin as well. Laurent is an MSDN author and a Pluralsight author and one of my very favorite people.