Wednesday 27 April 2016

Microsoft and Google: When Worlds Collide

I got excited recently when I discovered that Visual studio 2015 integrates xamarin and allows for Cross platform mobile application development.

The excitement is that visual studio is a great IDE and bringing that in for android development, with its amazing intellisense would be incredible. Unfortunately when worlds collide, they either form an amalgamation of greatness, or blow to smithrines. The latter is true in my case.

I dived right into openGL ES project expecting to see the spinning cube demo in the Visual Studio Android emulator.
BOOM, it fell apart. It will not build and initially I couldn't even get the emulator started.

I have not given up on it yet. I have managed to get the emulator working, but the code will not compile. 'Ant' reports an error code 1. Running the ant.bat manually and changing things (eg environmental variables, targets, etc) got it to where it is currently. It will not make an .apk file and tells me:
BUILD FAILED
...\ant\build.xml:538: Unable to resolve project target '$(androidapilevel)'
 If I cannot get it to work, I am switching to Android studio. My message to Microsoft would be: your "out of box" experience that I have so far enjoyed from Visual studio editions has been seriously tarnished. Make sure you get it right before releasing so that people don't have to fiddle with a billion things to get it to work, and that the out of box experience is maintained.

Netflix New Zealand

So I signed up to Netflix in the weekend after, about a month ago, switching my internet connection to unlimited (no data cap).

It has been wonderful to watch content they have on there, especially those programs that are not currently screening on television (New Zealand television).

Before signing up, there were a lot of competition to filter through. In New Zealand there are:
  • Lightbox
  • Igloo
  • TVNZ on demand (free)
  • TV3 on demand (free)
  • Sky TV on demand
  • Neon
  • Quickflix
  • Netflix
  • Apple TV
  • Google Play
  • Probably missed a few.....!
Unfortunately one cannot just sign up to all of them (except for the free ones, you can do it for free ones) -too much money.

I read reviews, I talked to friends and others about what they use and what they recommend. I read peoples experiences with the ones they use. I soon realised that there is no one size fits all so I bit the bullet and picked Netflix.

The reason for netflix is partly because I had to pick one thing and partly because of what I am expecting rather than what is available now in content. It is a different kind of choice than one would pick intuitively; pick one that currently has content that is wanted. The way I saw it, all of them will have some content I want and some I don't but which one has the better chance in future of having content I will probably want. That quickly narrowed it down to Lightbox and Netflix. I picked Netflix primarily because they have a larger track record of what they do and how they operate; I like what they have done for the US market and I am hoping for more of the same eventually from them here.

The choice was also simpler in that there is no contract so I can always change anytime I wanted. Unlike phone based internet service, I could sign up for free trials to other services and experience it at the same time to compare which one I should switch to if I so desired.

So how is Netflix?
As will be the exact same tune from all the other services, "I wish there was currently more content!". With that out of the way, it is great. Netflix also supports Ultra HD as does my TV and also has content already for it. Ultra HD, according to Netflix, requires 25 Mbps connection which is well outside my ADSL2+ connection. However soon Fibre will be connected here so that is a non issue.

A friend has pointed out that streaming 4k content is never as good as direct from Blu-ray 4k content. While this is very true, however, currently the 4k content on Netflix is a damn sight better than a blu-ray 1080 HD content. Further to that, I can't "on-demand" blu-rays, and they cost more to buy/rent than monthly Netflix subscription. A Ultra HD capable netflix subscription will cost you about 4 dollars a week.

Was it worth getting? Short answer....I am not bored anymore. Let's skip the long answer, short answer is all you need.

Wednesday 13 April 2016

Intel, Android Emulator, Hyper-V and HAXM. What's going on?

In my pursuit to get going with android development, I have been looking at tools I can use.

It appears that I needed to install AVD (Android Virtual Device) in order to run the Android emulator.

But I hit a snag on my INTeL I7-2600 CPU based computer. HAXM that is required on INTeL based computers said my CPU did not support VT-X. This is not true at all, because an I7-2600 DOES support it.

Long story short, it looks like Hyper-V was the culprit. I uninstalled Hyper-V and this allowed HAXM to be installed as it correctly detected that indeed my CPU does have VT-X.

So all those wanting to be Androiders Coders and find this is happening, then remove Hyper-V. You can do this from Control panel/programs and  features, go to "turn windows features on or off". Untick Hyper-V.


Good luck!

Sunday 10 April 2016

Major change to my deveopment platform

I posted this on my facebook recently but now I am going to talk about it on here.

I have been developing a 3D engine for a while now for the Windows Phone marketplace.
Recently I have decided to abandon that entirely and switch over to doing exactly the same thing but on the Android platform. There are long term compelling reasons for the change.

I had been lacking enthusiasm for the 3D engine development and did not really realise it until I had a chat with friends who are also developers and some entrepreneurs. Windows phone market has been closing for a long time now and that is more true now than it was previously. In the back of my mind, somewhere in the subconscious, I knew this but continued to develop in it. This, as it turns out, was a very bad idea. It caused lack of motivation because subconsciously my mind would think what result would I get in one of the smallest phone marketplace?

Conversations with above mentioned friends also showed that I had to create focus. What was really important to me? Is it the journey of developing a 3D engine to a point where I can make a video game, or is it just a need to make a video game? Had the focus been the latter then coding in API such as direct3D is a really bad idea. Development would be very slow, a lot of work will need to be done before I could even think about generating content. Instead I would have opted for something like Unity3D, have a great scene going in about 14 minutes, concentrate on game ideas to implement, get to creating content sooner, and have a game out of the door, quite possibly before a year has elapsed.

What I found in thinking about focus is that building a game is not as important for me as the journey to get there. I want to build upon my knowledge of 3D, build up on the mathematics, understand how a game engine is built. So that is going to be my focus and a game will come out of it at the end which brings me back to platform of choice. There is no guarantee how long the Android market will stand, but it will certainly be a lot longer than it takes me to build up my 3D engine. Sticking with the windows phone market, I feel, would be akin to developmental suicide.

It is a huge set back, throwing away so much work and rebooting on a new platform. I have to learn the new platform, the new market place, potentially new tools and new ways of doing things. Instead of a setback, I see it as a beautiful thing, a challenge, a chance to learn more things, keep me interested and the brain working hard. It also gives me a chance to do things differently by learning from my previous mistakes. It also gives me another opportunity to tap into my ability to learn anything really fast, add experience to that, and develop that skill even further.

To overcome the challenges I have started extensive research into the new market I will be entering. I have spoken to a few people who have been involved with the android market, taking their advice, reading materials they have recommended. These people have been there, done that and for me, the fastest way to make sure I get there too in the most efficient way possible. Time is precious and it has to be managed with the greatest of priorities. There are books to be bought, and hardware to be purchased. At this point I want to go for the newly released Samsung Galaxy S7 so that the hardware is less old than if I went for something like a galaxy S4, towards the end of this development.

There is one other thing I will be doing which I have not been with my windows platform. I will blog more about what I have been learning in my journey into the Android (and potentially later into iOS) platform. I will be posting about code examples, about the openGL ES api, about the progress of my engine. Where possible I will post videos and pictures. Why? So that others can start their own journeys by using mine as a tutorial.

So it is a new beginning and a step in the right direction. A journey into something exciting, that will have the potential for bigger rewards and most of all, I get to continue to do what I really enjoy doing.

Let's get started.....