James Montemagno
James Montemagno

Live, Love, Bike, and Code.

Tags


James Montemagno

Live, Love, Bike, and Code.


Optimizing Xamarin Apps & Libraries with the Linker

The Xamarin linker is one of the most important pieces of technology when building mobile apps, that no one knows exists. It does all of the hard work for you, stripping out all unused code from libraries that you include in your apps. It should only be used in release mode as it takes extra time to compile your app, but means that your app will be smaller: The linker has specific implementations for both iOS [https://docs.microsoft.com/xamarin/ios/deploy-test/linker?WT.mc_id=docs-montemagno-…

James Montemagno James Montemagno

June Challenge: Delete a Social Media App

It is hard today not to hear about how social media is "ruining our lives" from a news report or article. While I don't think that is the case, I do think there are way too many signals and notifications that are distracting us daily. I have slowly been trying to step back from social media over the past few years. Thus far I have turned off all notifications on my phone, made Facebook only for Family and work purposes such as .NET Community Standups [https://channel9.msdn.com/Show…

James Montemagno James Montemagno

Hangout, Drink Coffee, & Cycle with Me at Build 2019

Microsoft Build 2019 is right around the corner (not only from where I live, but also it starts next Monday), so what better time to plan some meetups with awesome .NET developers <3. There will be tons of awesome sessions, the Xamarin booth, but also tons of coffee drinking with me, and even a bike ride opportunity. Here is my schedule for Build! Monday May 6th * 7am - 8am: Early Morning Coffee (pre-keynote): Monorail Espresso [https://www.google.com/maps/place/Monorail+Espresso/@47.6…

James Montemagno James Montemagno

Using Font Icons in Xamarin.Forms: Goodbye Images, Hello Fonts!

Updated: See the newest way of importing fonts with Xamarin.Forms 4.6 on my latest blog post [https://montemagno.com/xamarin-forms-custom-fonts-everywhere/]. My full walkthrough: My entire mobile development career I have gone all in on using device specific images and icons. These are properly scaled and sized images that fit @1x, @2x, @3x, hdpi, xhdpi, xxhdi, and so on, which are great because they are super optimized for each platform. The reason I do this was because it gives very consist…

James Montemagno James Montemagno

Distributing a .NET Core 3 WPF and WinForms App with MSIX

I could not be more excited for .NET Core 3 that will soon power all of your WPF and WinForms apps in addition to ASP.NET Core and .NET Core apps themselves! You may be saying... James... WPF... WinForms... why even bother? Well, because you may have to support some older apps and with the power of .NET Core 3 as the runtime instead of the .NET Framework it means that we no longer have to worry about what version of .NET is installed on the users machine. It means we can deploy a WPF/WinForms ap…

James Montemagno James Montemagno

Introducing My Stream Timer: A Countdown Timer for OBS

I have been streaming on Twitch for over 6 months now. I stream both code on my personal Twitch channel [https://twitch.tv/jamesmontemagno] and I also stream games and recordings of Nintendo Dispatch [http://nintendodispatch.com] with my buddy Michael over on the official Dispatch Twitch channel [http://twitch.tv/nintendodispatch]. One thing that always bothered me was having to manually mess around with apps to get a simple countdown timer. They were too complex, had too many options, and had…

James Montemagno James Montemagno

The Beautiful & Complex FlexLayout Comes to Hanselman.Forms

Last week I wrote about my new quest to fully optimize and enhance Hanselman.Forms [https://montemagno.com/updating-hanselman-forms-bottom-tabs-bindable-layout/]. This involves using the latest and greatest in Xamarin.Forms and Xamarin.Essentials, but it also means spicing up the app with some lovely visuals and design. My first quest was to re-design the podcast section of the mobile app to create a list in grid form of different podcast that Hanselman produces. So, first things first we shoul…

James Montemagno James Montemagno

Control Text Size on Android Bottom Navigation View

It seems as though my obsession with the Android Bottom Navigation View aka Bottom Tabs will never end! This time I got a question about controlling the size of the text when the user taps on a tab. The default behavior is to zoom in on the text: Inside of your Android project's Resources/values folder create a new file called dimens.xml if it doesn't exist. Then add the following XML to override the size of the text when it is active and not active: <resources xmlns:tools="h…

James Montemagno James Montemagno