UniJoystiCle: Giving Eagle a try

I like Fritzing. I think it is great for small projects and it is very easy to use. But it has its limitations when creating the PCB, mostly because its component library is not very complete.

Eagle, on the other hand, is more difficult to use. But its component library is very polished. Also, companies like Adafruit and SparkFun create components for Eagle, so that is a big plus if you purchase components from them.

So, I re-wrote the schematic again in Eagle, and then created this PCB:

Continue reading “UniJoystiCle: Giving Eagle a try”

To MSDN or not to MSDN

A long time ago I was a Windows developer. I developed for user mode, kernel mode, win32 stuff, etc. And having a MSDN subscription was a must-have. Not only because Visual Studio was included, but also because you were able to download “debug” builds of the whole Operating System; and also you had access to all the Microsoft products in different localizations.

The MSDN subscription was expensive, but it was worth it.

But nowadays, since you can get the Windows Phone SDK for free, perhaps the MSDN is no longer needed.

I’m currently using a MSDN Pro subscription (thanks MS for the gift).  And so far, the only feature that I’m using from the MSDN is Visual Studio 2013 Pro. I’ll let you know if I happen to use more features from the MSDN.

Installing Visual Studio

So, by now you should have Windows 8.1 up and running.

The next thing is to install the Windows Phone SDK.

A few days ago I tried the Windows Phone 8.0 SDK (it comes with Visual Studio Express 2012) and it works OK.

But VS 2013 Update 2 RC (announced 2 days ago) already comes with the Windows Phone SDK 8.1 (which also allows you to develop for WP 8). This is good, because you don’t need to have two versions of VS installed in your machine in order to develop for Windows and Windows Phone 8.

And yes, in VS 2012 you needed to install two versions of VS: one to develop for Windows and another to develop for Windows Phone. It is like you needed to install two versions of Xcode: One to develop for iOS and another to develop for Mac. Mmmmm….

Use Windows 8.1

You need Windows 8 in order to develop for Windows Phone 8. Windows 7 won’t work.

But avoid Windows 8, it is confusing. Use Windows 8.1 instead. And boot directly into the “Desktop”. Avoid the annoying “Start” thing.  Good news: the upgrade from 8 to 8.1 is free.

You should  know that there are many “flavors” of Windows: “RT”, “Regular”, “Pro”, “Enterprise”… just get the “Pro”.  RT (Runtime) is the new name for Metro.

Windows 8 (Regular, Pro,Enterprise) has both shells: the desktop shell (win32 API); plus the new RT shell… but you should not confuse Windows RT with Windows Phone. They have the same shell (Metro), they have very similar APIs, but they are slightly different Operating Systems. Remember: You are going to develop games for Windows Phone (using the C++ API), and not for Windows RT.

Was that confusing? Don’t worry, it is still confusing for me. As a summary:

  • Your host operating system will be Windows 8.1 Pro (and not Windows RT)
  • Your target operating system will be Windows Phone 8 (and not Windows RT)

First tip

First tip
My dual boot Linux/Win machine. Not powerful enough for serious Win Phone development.

Get a good, dedicated Windows machine. Not like this one. VMWare / Parallels is OKish… but I wouldn’t recommend it.

My current notebook has 2 big issues: Low performance and a low-quality trackpad. I remember when I switched from a Dell XPS 12″ to a MacBook 13″ around 2008. One thing that called my attention was the size of the MacBook’s trackpad: it was huge. And now it is the opposite: I find that most Windows notebooks have a crappy  trackpad: too small and unresponsive.

So far, the closest thing that I found to a MacBook Retina is a Dell XPS 15″. It will arrive next week, and it will be my main Windows developer’s machine. I’ll let you know how good it is.

Apparently all new modern Windows notebooks come with a touchscreen. As a developer, I’m not interested in that feature at all. I wish I could remove the “touch” feature from the screen and pay less for the notebook.