#Channel9 – My own #Coding4fun channel (so great!)

Hi !

Long story short: I’m far far away from the Spanish and Latin America community, so this year I’ll try to learn new ways to do some remote collaboration. My first action will be create short videos (~30 minutes) in Spanish and post them in Channel 9.

So the first one is a quick tour on how to create a Windows Universal App which connect with a Bluetooth Low Energy device.

Clipboard03

Note: I still don’t know how to add subtitles to the video. As soon as I learn, I’ll try to add English subtitles to the contents.

All the code for this posts will be available in GithHub https://github.com/elbruno/Channel9/tree/gh-pages/2016%2003%20BLE

Greetings @ Toronto

– El Bruno

References

Advertisements

#VS2015 – Send tweets in an app #UWP #Windows10 using #TweetMoaSharp

Clipboard02

Hello!

Some time ago I wrote a post where I mentioned about a package to a Windows 10 Universal App to work with Twitter. In that post, I also mentioned that it was a shame that the excellent Daniel Crenna’s TweetSharp, does not support Windows Universal Apps.

Yesterday I was updating an app with some new features, and I find TweetMoaSharp. A fork of the latest version of TweetSharp and adds features to use these libraries in apps WinRT. It has been created by Troy Willmot (thanks!)

On this basis, the use is similar to TweetSharp and the truth is that after doing a few tests, it works very well in an app for Windows 10.

image

El paquete aparece si realizas una búsqueda por TweetSharp, a partir de allí es tan simple como agregarlo y comenzar a programar.

image

The package appears if you do a search for TweetSharp, from there it is as simple as adding it and begin to set.

image

The following code shows a simple example of a search criterion “elbruno”:

image

Greetings @ Madrid

-El Bruno

References

#VS2015 – Enviar tweets desde una app #UWP #Windows10 con #TweetMoaSharp

Clipboard02

Hola !

Hace un tiempo escribí un post donde comenté sobre un paquete para trabajar con Twitter desde una Windows 10 Universal App. En ese post comenté también que era una pena que la excelente TweetSharp de Daniel Crenna, no soporte Windows Universal Apps.

Ayer actualizando una app con problemas, me encuentro con TweetMoaSharp. Que es un fork de la última versión de TweetSharp y agrega funcionalidades para poder utilizar estas librerías en apps WinRT. La misma ha sido creada por Troy Willmot (gracias!)

Sobre esta base, la utilización es similar a TweetSharp y la verdad es que después de hacer un par pruebas, funciona muy bien en una app para Windows 10.

image

El paquete aparece si realizas una búsqueda por TweetSharp, a partir de allí es tan simple como agregarlo y comenzar a programar.

image

El siguiente código muestra un ejemplo simple sobre una búsqueda con el criterio “elbruno”

image

Y que devuelve algo similar a esto:

image

Saludos @ Madrid

-El Bruno

References

#UWP – Single source code line to find if our app is on Desktop, #IoT, Mobile, or #XBox

Hello!

Working with Universal Apps is quite grateful. However, before the build 10.0.10240.0, trying to find out the kind of platform that our app was running was a bit complicated.

Today we can solve it with a single line of code, using AnalyticsVersionInfo. In example:

return Windows.System.Profile.AnalyticsInfo.VersionInfo.DeviceFamily;


image

It returns us a value of the type:

  • Windows.Desktop
  • Windows.IoT
  • Windows.Mobile
  • Windows.Xbox

And with that we can now continue working. It is most common in this case, is the decision to use a specific API in a platform.

Greetings @ Madrid

-El Bruno

References

#UWP – Una linea para averiguar si nuestra app está en Desktop, #IoT, Mobile, o #XBox

Hola !

El trabajo con Universal Apps es bastante agradecido. Sin embargo, antes de la build 10.0.10240.0, intentar averiguar el tipo de plataforma en la que se estaba ejecutando nuestra app era un poco complicado.

Hoy lo podemos resolver con una única línea de código, utilizando AnalyticsVersionInfo. Como por ejemplo:

return Windows.System.Profile.AnalyticsInfo.VersionInfo.DeviceFamily;


image

 

La misma nos retorna un valor del tipo:

  • Windows.Desktop
  • Windows.IoT
  • Windows.Mobile
  • Windows.Xbox

Y con eso ya podemos seguir trabajando. Lo más común en este caso, es tomar la decisión de usar una API específica en una plataforma.

Saludos @ Madrid

-El Bruno

References

[#VS2015] x:Bind, better performance and typed bindings in #Windows10 apps

Hello!

If you work with XAML for sure you know the label x:Binding, we usually use it to associate code behind properties with XAML views. With the arrival of Windows Universal Apps for Windows 10 to have an evolution of that tag x:Bind.

The way to use it is very similar. This is the Binding that we already know from WPF

image

and now we can also use

image

Reading a little about this new label (see references below), I see that it improves performance at runtime (something that we always appreciate). To achieve this, it generates strongly typed code to manage the bindings. This brings us to an interesting scenario: “have the ability of validating our Bindings at compile time

This means that, if for example, we are associating the text of a TextBlock to a “Messages” property, if it does not exist in the class defined in the namespace “x:”, for they will be a compilation error.

image

Now, after knowing this, first thing I did was try to change all the Binding by Bind, and I learned a couple of things

  • The way in which Bind handles data types and Paths is slightly different, in some cases, not only is change Binding by Bind, but also specify the correct path to the object in the ViewModel
  • The Binding default mode is Mode=OneWay, and Bind is Mode=OneTime. If no specific mode you need in your XAML you can have some surprises

So well, I would recommend using Bind whenever possible. But if you already have code created with Binding, it is certainly necessary to test it before doing a massive update!

Greetings @ Madrid

-El Bruno

References

[#VS2015] x:Bind, bindados tipados y con mejor performance para apps #Windows10

Hola!

Si trabajas con XAML seguramente conoces la etiqueta x:Binding, que usualmente utilizamos cuando asociamos propiedades de con vistas. Con la llegada de las Windows Universal Apps para Windows 10 tenemos una evolución de esa etiqueta x:Bind.

La utilización es muy similar. Este es el Binding que ya conocemos desde WPF

image

y ahora también podemos utilizar

image

Leyendo un poco sobre esta nueva etiqueta (ver referencias debajo), veo que mejora la performance en tiempo ejecución (algo que siempre agradecemos). Para lograr esto, lo que hace por detrás es genera código fuertemente tipado para manejar los bindings. Esto nos lleva a un escenario interesante: “tenemos la capacidad de validad en tiempo de compilación nuestros Bindings

Esto significa que, si por ejemplo, estamos asociando el texto de un TextBlock a una propiedad “Messages”, si la misma no existe en la clase definida en el namespace “x:”, pues tendremos un error de compilación.

image

Ahora bien, después de conocer esto, lo primero que hice fue intentar cambiar todos los Binding por Bind, y aprendí un par de cosas

  • El modo en el que Bind trata los tipos de datos y los Paths es un poco diferente, en algunos casos no solo es cambiar Binding por Bind, sino especificar también el path correcto al objeto en el ViewModel
  • El modo por defecto de Binging es Mode=OneWay, y en Bind es Mode=OneTime. Si no especificas el modo que necesitas en tu XAML puedes tener algunas sorpresas

Asi que bien, yo recomendaría utilizar Bind siempre que se pueda. Aunque si ya tienes codigo creado con Binding, seguramente es necesario probar el mismo antes de hacer un update masivo!

Saludos @ Madrid

-El Bruno

References

#VS2015 – Detección de rostros en Navidad #FateDetection #Coding4Fun

Hola!

Si bien ya han pasado las navidades, mis niños siguen queriendo jugar con sus gorros de Papa Noel. Como la mitad ya han sido regalados, con 4 líneas en la app que detecta rostros, pues podemos tener GORROS VIRTUALES !!!

2016 01 04 FaceDetection Merry Christmas

Como siempre el código fuente en GitHub y un par de detalles a tener en cuenta

  • La app es Windows Universal App, la puedes instalar en Windows Phone 10 y podrás tener la misma diversion en formato pequeño
  • Los 2 botones superiores habilitan el mostrar y ocultar los marcos de la cara y el gorro de Santa
  • Sobre el código de la rutina para dibujar el marco, he creado la que pone el gorro de Santa
  • Sigo teniendo pendiente mejorar el Resize de la app 😉

Saludos @ Madrid

-El Bruno

References

 

#VS2015–Windows Universal Apps in #FullScreen or #CustomSize mode

Hello!

To get to some users to use Windows Universal Apps sometimes can be a challenge. Therefore, tasks such as managing the FullScreen mode or set a specific size in a window are important stuff to add into our apps.

2015 12 14 App Custom Size

The following lines of code show how to change state Full Screen to normal state and define a specific size for our application.

Clipboard02

The app running as an example in the attached video and source code on GitHub https://github.com/elbruno/Blog/tree/master/WindowFullScreenAndCustomSize

Greetings @ Madrid

-El Bruno

#VS2015–Windows Universal Apps Aplicaciones maximizadas o en tamaño específico

Hola!

Acostumbrar a algunos usuarios a las Windows Universal Apps puede ser un desafio. Por eso, tareas como controlar el FullScreen o mantener un tamaño específico en una ventana son importantes de conocer.2015 12 14 App Custom Size

Las siguientes líneas de código muestran como cambiar de estado Full Screen a estado normal y como definir un tamaño específico para nuestra aplicación.

Clipboard02

La app funcionando como un ejemplo en el video adjunto y el código para descargar en GitHub https://github.com/elbruno/Blog/tree/master/WindowFullScreenAndCustomSize

Saludos @ Madrid

-El Bruno