miércoles, 2 de agosto de 2017

Curso Personalizado de Xamarin Forms

Desde hace varios días he recibido solicitudes de clases personales de Xamarin Forms, atendiendo a dichas solicitudes, quisiera conocer interesados en recibir clases virtuales conmigo. Si lo estas, deja tus datos en este formulario y te contactaré en caso de que los iniciemos.

Recuerda este no es un curso oficial y debido a que clases individuales serían demasiado costosas, la idea es armar grupos pequeños de hasta 3 personas para que se aproveche el tiempo.

Si quieres conocer mi forma de enseñar, visita mi canal de YouTube http://youtube.com/soreygarcia

¿Buscas un curso personalizado de Xamarin Forms para ir a tu ritmo y obtener apoyo? 

Si te interesa, deja tus datos aquí 
https://soreygarcia.typeform.com/to/ZU9GaK

domingo, 12 de junio de 2016

Trabajando con CodeFirst en Azure App Service

Hola a todos,

Este es un post que debería empezar con algo así como, es mejor tener amigos que dinero. Gracias a Cheo y especialmente a Warnov por ayudarme a entender los cambios de Azure.

Escribo estas notas por que seguramente podrán ayudar a algunos de ustedes. Para quienes hemos trabajado con Azure Mobile Services usando CodeFirst y migraciones automáticas, seguro nos fue común encontrar el post de Fredrik Normén, indicando que debiamos asignar los permisos al usuario autogenerado por Azure.

A hoy las cosas han empezado a cambiar y ya Microsoft anunció la retirada de Azure Mobile Services para continuar con la evolución Azure App Service. Los cambios no son mayores en la construcción, pero si nos obligan a estar más concientes de lo que hacemos.

Ahora no todo se hace automaticamente con el paso a paso de Azure, cada componente y parte debemos crearla nosotros mismos. Es decir:

1. Debemos crear nuestro Mobile App en el portal nuevo


2. Creamos una base de datos y asociamos la base de datos siguiendo el paso a paso


Como vemos el cambio es simplemente que ahora debemos hacer las cosas manualmente, eso implica por lo tanto que debemos crear el login y usuario de base de datos para que nuestras migraciones de CodeFirst funcionen. Le explicación de los cambios en SQL Azure V12 está en MSDN.

Sin embargo los pasos son muy simples:

En la base de datos master creas un login:

CREATE LOGIN TuLogin WITH PASSWORD = 'YourPassword';

En tu base de datos creas el usuario asociado al login que acabaste de crear:

CREATE USER TuUsuario FOR LOGIN TuLogin 

EXEC sp_addrolemember N'db_owner', N'TuUsuario'

Por último hacemos lo que haciamos antes en Azure Mobile Services para que nuestras Migraciones Automáticas funcionen.

GRANT CONTROL ON SCHEMA::[dbo] TO TuUsuario 

Espero que esto les pueda resultar de ayuda, a veces nos malacostumbramos a que todo ocurra automáticamente sin entender que pasa y bueno, aunque es útil para aprendizaje e implementaciones de demos, es mejor ser más concientes de todo y tener el control cuando vamos a producción.

Algo adicional, no de SQL Azure si no del Api y que es muy importante, es que ahora el Api de AppService para Móvil no tiene una ApiKey para asegurar la conexión, por lo tanto además debemos implementar nuestra propia seguridad, sea oAuth o algun esquema de protección como HMAC Autentication

Hasta pronto

domingo, 8 de mayo de 2016

#NinjaTips - Xamarin Forms: Creando una app desde cero (2 de N)

Hola, vamos con un nuevo video. Déjame todos tus comentarios y sugerencias. Espero que lo disfrutes. Recuerda que el código de los laboratorios está disponible en mi Github > https://github.com/soreygarcia/xamarin-forms-lab

Encuentra todos los videos en Channel 9 > https://channel9.msdn.com/Niners/soreygarcia

domingo, 1 de mayo de 2016

#NinjaTips - Xamarin Forms: Creando una app desde cero (1 de N)

Al fin he retomado mis videos de NinjaTips en Channel 9. Espero que les guste esta nueva etapa avanzando un poco mas rapido y viendo como construir y evolucionar una app de verdad.

Encuentra todos los videos en Channel 9 > https://channel9.msdn.com/Niners/soreygarcia

domingo, 14 de febrero de 2016

Netduino Wifi 3

Quiero compartirles algo, después de mucha emoción con el Netduino Plus 2 y muchos días de jugar y aprender, me encontré con algo que no esperaba.

A diferencia de nuestro demo de Mobile Services, el service bus de Azure requiere SSL si o si y Netduino 2 Plus no lo soporta. Consumir o enviar data a Mobile Services, es cool, pero definitivamente el poder de IoT está en la mensajeria y para eso necesitaba Azure Service Bus.

Pues bien después de varios frustrantes días, ayer llegó la noticia nueva al fin para quienes nos gusta Netduino, y es la bienvenida a la familia, del Netduino 3 Wifi, con soporte por supuesto a SSL.

En la presentación oficial en el foro se han publicado algunas de sus características más destacadas:

  • Micro: STM32F427VI Rev 3
  • 2MB dual-bank flash (twice as much as NP2)
  • 256KB RAM including 64KB core-coupled RAM (33% more than NP2)
  • Wi-Fi: TI CC3100, 802.11b/g/n (2.4GHz)
  • Supports open networks, WEP and WPA2
  • Built-in support for the latest SSL security (including TLS 1.2)
  • Three GoBus 2.0 ports (for plug and play components)
  • Support for even more Arduino shields (with ICSP header pads)
  • New miniature shield-friendly pushbutton
  • Brand new power subsystem and power management.

Imaginé que su precio iba a ser muy alto pero en realidad está en el promedio. Para mi sorpresa la caracteristica que más esperaba, el poder configurar la wireless aparecia desactivada en el MS Deploy. Buscando actualizar el firmware al más reciente arruine completamente la board. Quedó permanentemente en Modo TinyBooter y no volvio a responder.

Después de un rato encontre en los foros de netduino la solución, re flashear la board manualmente. Aunque el proceso es más largo que una actualización normal y asusta un poco, funciona perfectamente.

Lo encuentran en esta URL
http://forums.netduino.com/index.php?/topic/11842-how-to-recover-non-responding-netduino-3/

Sin embargo aqui les dejo los pasos tomados desde los foros oficiales

To manually flash firmware using ST DFUSE tools, grab the latest copy of ST's DFUSE tools from the download link at the bottom of the following page:
http://www.st.com/web/en/catalog/tools/FM147/CL1794/SC961/SS1533/PF257916

To erase your board's firmware (do this first):
1. Detach your Netduino
2. Press and hold your Netduino's pushbutton while plugging it in via USB; this will put it in bootloader mode.
3. Erase the firmware on your Netduino using the STDFU Tester application
> a. Select the "Protocol" tab
> b. Press the "Create from Map" button
> c. Select the "Erase" radio button option
> d. Press the "Go" button
> e. Wait for erase process to complete

To create the DFU files which you will program onto your Netduino:
1. Run "DFU File Manager" (from the ST DFU tools)
2. Select "I want to GENERATE a DFU file" and press OK.
3. Click "S19 or HEX..." and then select one of the firmware files in Netduino Update's respective Firmware folder.
4. Click the "generate" button to generate a DFU file which contains the S19 (HEX) file you picked in step 3.
5. Click "delete selected image".
6. Repeat steps 3-5 for the other two firmware files.

Finally, flash each of the .DFU files using the ST DfuSe Demonstrator application (included with STDFU Tester).
1. Run "ST DfuSe Demonstrator"
2. Locate the "Upgrade or Verify Action" pane (bottom-right pane)
3. Press "Choose..." and select one of the generated DFU files
4. Check the "Verify after download" option
5. Press "Upgrade". It will take a few moments to update your Netduino.
6. Repeat steps 3-5 for the other two firmware files.

After you have flashed all the .DFU files, detach and reattach your Netduino (power cycle) or press "Leave DFU mode".


Fritzing: Graficando tus prototipos


Retomando los post del blog quise empezar por buscar una buena herramienta para subir los mapas o gráficos de los circuitos. En internet veia en muchas partes algunas gráficas geniales y he encontrado la herramienta con la que se hacen.

Su nombre es Fritzing y es un proyecto Open Source que pueden encontrar en sus página web y repositorios oficiales

http://fritzing.org
https://github.com/fritzing/fritzing-app

Genial proyecto como todo lo que involucra las comunidades open source alrededor de este tema. Los gráficos son vectoriales y manipularlo es realmente fácil. Eso además de que para quienes no somos expertos en electrónica tiene valiosas ayudas como mostrarte como fluyen tus conexiones en los circuitos.


Por supuesto nuestra board Netduino está disponible y cantidad de elementos. Lo mejor de todo es que al ser  Open Source es seguro que seguirá creciendo.