Developing .Net on Mac

Developing .Net on Mac

I am not talking about .Net Core that runs on MacOS out-of-the-box. I am talking about .Net Framework 4.5 that only runs on Windows. This means that you need a Windows installation.

One option is to install Windows directly on Mac hardware, but this was never an option for me.

So the other option is to virtualize Windows. But this option implies 2 more concerns: which virtualization technology to use and which Windows version to virtualize.

Regarding virtualization I am using Oracle Virtual Box, it is free, works fine and I have been using it for years, so I didn’t even try other tool.

Regarding Windows, I tried different options and finally I decided to use what  worked best for me: Windows 7 (64 bits) but with an «special setup»: no antivirus and updates turned off.

And finally, beyond Visual Studio and the usual stuff for .Net development I added the following software:

  • Cmder, a great console emulator
  • Notepad++, a lightweight file editor
  • FireFox, the browser

 

Desarrollo Android en MacOS Maverick

Hace unos días comencé a hacer un curso de Coursera sobre programación de aplicaciones Android. A la hora de hacer las tareas de programación me encontré con algunas dificultades técnicas en mi ambiente de desarrollo cuya solución comparto aquí.

Para desarrollar aplicaciones Android es necesario el uso de un kit de desarrollo (Android SDK) que incluye entre otras cosas el ADT: Android Development Tools, básicamente un Eclipse personalizado.

La primer dificultad que encontré fue que el material del curso está basado en el SDK 4.3 de Android mientras que el SDK actual es el 4.4. Esta diferencia de versiones generaba algunos warnings en código del curso. Para evitar posibles futuros inconvenientes debidos a la diferencia de versión, decidí instalar el SDK 4.3. Esto lo hice utilizando el SDK Manager que es parte de ADT.

adt

La segunda dificultad que encontré fue la velocidad del emulador. Un desastre, por un lado el emulador tardaba mucho en iniciar y luego, una vez iniciado, cada interacción llevaba más de 10 segundos. Investigué un poco y encontré que debía instalar el paquete Intel Hardware Accelerated Execution Manager. Para mi sorpresa, una vez instalado este paquete, la situación  emperó, cada vez que iniciaba el emulador de Android, mi maquina quedaba totalmente colgada obligándome a reiniciarla. Luego de probar algunas variantes de configuración, me puse a googlear y descubrí que otras personas ya habían experimentado mi misma situación. Al parecer hay un problema conocido entre MacOS Maverick y el paquete Intel Hardware Accelerated Execution Manager 1.0.6 (R3) que yo había instalado. La solución consistió en instalar este hotfix del paquete de Intel. Luego de instalar esto, el desempeño del emulador mejoró notablemente.