October 19, 2017

Register to Experience HoloLens Yourself (Hint: Be Quick)

 

 

holoDemo

 

Microsoft HoloLens is scheduling HoloLens demos to the public! It will be register only, and at selected cities in the US and Canada. Check the list of cities and dates. You can imagine there will be a lot of people who would be interested. So, I think you have to act fast. Please go here to register before it is too late.

If you are attending any of the those, my suggestion is do your home work first. Get a list of questions you have, but you need try to find out answers yourself, because I doubt they will answer any of your questions. For example, find a way to measure the field of view before you enter, it’s not trivia.

 

HoloLens Is just One Step away from Reality

 

 

 

cam2

hl4

 

The above two pictures are two different HoloLens: the first picture shows the HoloLens worn by a camera, which is used to see the full field of view of Holograms. The second one shows the supposed to be a semifinal HoloLens product.

Here is the problem: the second one has all the forms and styles for a HMD product, but also has a small field of view. The first has a satisfying field of view that everyone is looking for, but no one wants to wear it.

The bright side of the problem: THE TECHNOLOGY IS THERE, IT IS JUST NOT READY TO BE WORN.

Lets take this a little further: I would trade wear-bility for a huge field of view. If they release the first HoloLens, I would buy instantly. For the second one, I have to think again.

In any case, I think HoloLens is not far from reality.

 

 

HoloLens, What’s up?

 

oct6

 

On Tuesday, October 6, at 10 A.M. ET, we will reveal exciting news about Windows 10 devices.

Watch it live online or on your Xbox.
www.microsoft.com/october2015event

 

Some of you may have received Microsoft HoloLens’ email about Oct. 6 event in NYC. Yes, the email is from Microsoft HoloLen. What that means is the HoloLens will be on stage again. Another demo? Certainly, but I am pretty sure it is more than just another demo. Follow the above link and watch it live tomorrow @ 10am.

 
 
 

Develop Windows 10 Apps? Do not Use “Hamburger Button”

fromto

 

Windows 10 has been released for a full month. There is a good number of millions of people who are already using it. I believe the majority of developers are running it. Important thing to note is many stock apps have a so called “hamburger button”. That’s Microsoft effort to guide developers for next gen app style. I don’t appreciate it. Please read the article below to find out why.

The State of Hamburger Button

Historically, when Microsoft start something, developers will follow the same pattern. Not all the time, not when they do something stupid. One example of this is promote developing Windows Apps in JavaScript. The reasoning is many devs know JS but not C#. By enabling JS, many JS devs can go right on with JS, saving them from learning C#. It turned out a stupid decision, and people never followed.

The only valid point about hamburger button over pivot control is: with pivot, you can’t navigate to fifth page from first page, you have to go through pages in between. This is a silly argument, here is why: an app is a small software, in majority of apps we have seen so far, it’s never been a problem. In case you are you are writing a very complicated application (like MS Word), The command bar have buttons, which allow you to popup a context menu, which functions same like the hamburger.

Also, I don’t think anybody appreciate that you give a button at the top left corner.

In short, screw the “SplitView”, and the hell to the “hamburger button”. I predict these two will die matter you want it nor not.

Developers, do yourself a favor, use Pivot and Command Bar please, they are beautiful, smooth, and Metro.

 

What is .NET Native? What Does It Mean to Developers?

Gallo-blog-1-v2

 

A new feature is introduced in .NET 4.6 and Visual Studio 2015, called .NET Native. To find out the details, please checkout an article on Windows Apps Team blog. And another on MSDN. Here I gave a short version.

Simply put, when you build .NET Windows 10 apps in VS 2015, debug build will be built into IL, release build to be built into native code. When building to native code, required .NET runtime is statically linked to the application. It will not use target machine .NET runtime.

Because the build result is native code,

1. It loads up faster.
2. It runs fasters.
3. It doesn’t care whether or what version of .NET is installed on target machine. It’s has its .NET runtime built in.
4. This is done automatically.

That is all.

(See, the same thing can be explained in a lonnnng blog post, or just a short one like this.)

 

 

The State of Windows 10

Windows-10-Preview-Start-Menu-Look-and-Features-460698-2
It’s almost 2 month since the official release of Windows 10. It’s has been relatively quiet in the media regarding Windows 10. That is a good sign.

Even more, when CNet’s comments are not flooded with stupid complains, that’s a better sign.

And, you know what? Steven J. Vaughan-Nichols hasn’t come up with an article about Windows 10. That’s a even better sign. SJVN’s general pattern is: say nothing about the new Windows until its release, when he is ready to say anything, it can’t be good. To be honest, SJVN is not a troll, he is just a Linux enthusiast. When you like Linux, you have to hate Windows, that’s his logic, anyways.

A month before July 29, many industry watchers had deep concerns about the state of the Windows 10. It sounded like Windows 10 would either be a rushed product or skimmed down product. It turns out being none of them. Windows 10 is just fine. A little more proof of that,

 

 

 

 

Unity, HoloLens, UWP, Apps and Games, How Are They Related?

Unity-Logo

 

Many people have asked the question: What tool do I use to develop for HoloLens? The answer has been clear now: Unity, Visual Studio and C#.

For games, yes, there seems no question. I have had a big question, since a few months ago, never got an answer: We know Unity is a game engine, what about apps? Can it help writing apps too? Because the whole point of writing apps for HoloLens is doing something in 3D, life like. From this Unity document, it appears that Unity does not only games, it does “Windows Store Apps” too.

For people who haven’t wrote games before, there is a big difference in how games and apps work. A game works in a game loop, events and renderings happen in frames. Apps are event driven, generally nothing happens if there is no events. In the old XNA days, there is a hybrid mode you can do Silverlight UI and game together. Under Windows 10, you render your game on top of a XAML element.

One thing I don’t know is how Unity create a Visual Studio project. Can you specify a game or an app, or there is no difference. I will try to find out.

 

Develop Windows Universal Apps – All You Need to Know

Gallo-blog-1-v2

 

I have been writing about Windows 10 app development based Jerry Nixon and Andy Wigley’s A Developer’s Guide for Windows 10. They are a series of 7 posts, in the form of Q&A, covering main topics about Windows 10 development. Now I am putting them together so readers won’t have to search around.

Those writings are meant to give readers an overview of what’s new in UWP app development. But they may not enough to get you started right away. For some topics, you have look further on MSDN documents, especially read some sample code from here.

Develop for Windows 10 Q&A – (1) Random Points

Develop for Windows 10 Q&A – (2) Store and Monetizing

Develop for Windows 10 Q&A – (3) XAML and Controls

Develop for Windows 10 Q&A – (4) Adaptive Design

Develop for Windows 10 Q&A – (5) Adaptive Code

Develop for Windows 10 Q&A – (6) Background Tasks

Develop for Windows 10 Q&A – (7) Application Life Cycle

 

Recommended Readings: 15 Ways Visual Studio 2015 Enhances App Development

visual-studio-01

 

eWeek posted an article titled “15 Ways Visual Studio 2015 Enhances App Development“. It is in the form of a slide show.

It highlights the following features from Visual Studio 15:

1. Unified UI for Debugging, Profiling;
2. Visual Studio Online and Team Foundation Server
3. UWP
4. Light Bulbs Suggest Fixes to Code
5. Python Tools Help Develop Python Apps
6. Node.js
7. Application Insights
8. Visual Studio Code: Language support
9. Visual Studio Code: Code-Focused Editing
10. Visual Studio Code: Debugging
11. Visual Studio Code: Git Version Control
12. Visual Studio Code: Customizable UI
13. Visual Studio Code: ASP.NET 5 and Node.js Support

Please go to the link and browse through the slides and make sure read the descriptions below. For some of the topics, you may want to dig a little more from MSDN.

 

 

Lumia 950 Looks Good on New Leaked Images

lumia-950-front

 

Okey, I am joining the leaks and rumors party. Not only I am so busy to write any posts recently, but also because this is about the phone people have been waiting for too long: Lumia 950.

From WindowsCentral. They have pointed out in the leaked image that the bezels are noticeably smaller than the current Lumia phones.

One thing though, it does not look much like the last rendering of Lumia 950XL from the same site a few days ago. It is possible they don’t look anything like each other, but I would expect they would look similar. Also, the renderings of Lumia 950XL looks so much better.

 

Lumia 950XL Will Be the Best Looking Phone ever, If It Is Real

cityman_flat

 

A render of supposedly Lumia 950XL from Windows Central makes people excited. It certainly looks great. Greater news is from people who saw the device in person, the image looks like real ones.

That’s good news, since the website claim they have credible sources.

Speaking of looking, Windows Phones have been the best in class, with exception of those made by Samsung. I am sick icraps, not even bother with Samsung garbage hardware, and the ugly user interfaces.

It sounds like this is real, and even have a release date of sometime in October. It’s a long drought for Windows Phone Flagships. 3 months is a long time to wait.

 

Developers: Everything Is Ready for UWP Apps, So Go ahead…

visual-studio-01

 

So, you have Windows 10 installed; Visual Studio 2015 is ready; and Windows 10 SDK and emulators are ready. That’s all you need to develop UWP apps for Windows 10.

Before you get started, some advices:

1. Install Windows 10 first.
2. Uninstall Visual Studio 2015 RC.
3. Uninstall Windows 10 SDK and Mobile Emulators.
4. Download, Install Visual Studio 2015 Community Edition, choose custom install and select Windows 10 SDK and emulators (I forgot about the exact name of the options, I will check later).
5. Set developer mode on Windows 10 settings.
6. You are ready to write code for UWP.

If you have followed my posts all along. You are good to go. I will try to get some examples. I may write some tutorials later when I get a chance.

 

 

 

Why Submit App Early Is Critical for Developers?

 

10

 

In just one day, Windows 10 will be officially released. The universal Windows Store will be open at the same time. I want to remind everyone, if you have UWP apps ready, it is important to submit them early, well, as long as you have setting the tools, and tested them properly.

There are two factors in into play here: because Windows 10 is new, many people would want to check it out. There is better chance that yours are getting looked at. More importantly, the UWP store would be tinny at the beginning, that’s a huge opportunity for your app to get a large amount a attention. Also your apps would stay in the new apps section for a longer time because of the length of the queue.

One thing we know for sure, once the store gets crowed, your chance of success is much lower.

If you don’t have an app designed for Windows 10, your 8.1 apps can be retargeted to Windows 10 UWP with no code change. I haven’t tried myself, but you should try.

 

 

 

Leaked Flagship Windows Phones Sound Great, But Something Is Still Missing

tech-lumia-950-render

 

WindowsCentral had posted a monster leak a few days ago regarding the new Windows Phone flagship devices. Follow the link for details.

To sum it up: very thin (7-8mm), competitive specs, great looking, Windows Hello, Continuum. What else? Do you feel something is missing? I do.

This could very well be the flagships of last holiday. They skipped a year then showed something like this. That’s not what I am hoping for. How do you justified a year without a flagship device?

I had high hope for the new Lumia devices since the unveiling of HoloLens. I thought some really amazing technology must be there with the new Lumia devices.

It’s going to be competitive device on the market, but not even close to what it should be. Who is going to answer this question: why skipped a year no flagship devices?

 

Devs Can Submit UWP Apps on July 29 too

 

netnativewin10

 

Many people are thinking about developing for Windows 10. If you have your apps ready, when is the store ready to publish your apps? The answer is July 29. For many developers, this date is important. Why? timing is everything. I don’t have to emphasis this more.

Please read Mary Jo Foley’s report for more details.

Important to note here, for .NET based apps (C#, VB.Net), applications are compiled with .NET native, it is special compiler that optimizes .NET applications to startup 60% faster, use 10-20% less memory. I believe better performance at run time too. Actually, starting with Windows 10 and .Net 4.6, .Net apps are architecturally different than before.

For current 8.1 apps to run on Windows 10. You need to retarget (recompile) to Windows 10. There won’t be code change needed (?).

 

 

Develop for Windows 10 Q&A – (7) Application Life Cycle

ja

 

This Q&A is related to video #13 (Application Life Cycle) in Jerry Nixon and Andy Wigley’s A Developer’s Guide for Windows 10.

Q. What is application life cycle?

A. An application can only be in one of the following three states:

Running <=> Suspended -> Terminated (Not Running)

cyc

Apps get suspend when user click Windows Button, answer a phone call, or other events get app suspended. A suspended app can get terminated by the OS in low memory condition. A running app is usually terminated by user action.

Q. What is a suspended state?

A. A suspended app is not using CPUs and other resources. But it’s still in the memory space. If there are too many apps in suspended status that use too much memory, the system can decide to take some suspended app out of memory, so it is terminated.

There is no hard limit of how many apps can be in the suspended state, but there is a limited of 8 concurrent background tasks running at the same time.

 

Q. Rules in state transitions

A. The following chart give a full picture of all state changes, memory usage, and time limits in suspending an app.

mem

To note: there is 5 sec max for programmer to save status before get suspended.

Desktop family apps are suspended when they are minimized. That’s interesting. Note here it doesn’t refer to the desktop program or Win32 program.

Q. How to handle app suspension in the code?

A. Handle suspending event: usually save program state, and data. Handle Resuming event to load state and data back to the program.


public App()
{
this.InitalizeComponent();
this.Suspending += (s,e) =>
{
//save data
};
this.Resuming += (s, e) =>
{
//load data
};
}

>> Visual Studio has a lifecycle events in debug state. It can help to create suspension,resuming and termination events in debug.

Q. What is extended execution?

A. Normally, when the OS suspend an app for any reason, the suspension will be done in 5 seconds, but you can ask to extend that, it is called extended execution.

There are two cases you want to do that: 1) you have critical data that takes more than 5 sec. 2) Some apps want to keep running while switching to another task, like turn by turn navigation app.

Remember: this is not 100% reliable, because you are not guaranteed your request to be granted.

private async void OnSuspending(object sender, SuspendingEentArgs args)
{
var deferral = e.SuspendingOperation.GetDeferral();
using(var session = new ExtendedExecutionSession{Reason =  ExtendedExecutionReason.SavingData })
{
session.Description = "Upload Data";
session.Revoked += (s, e) => { Log("Save incomplete"); };
try
{
if(await session.RequestExtensionSync() == ExtendedExecutionResult.Denied)
UploadBasicData();
else
await UploadDataAsync(session);
Log("Save complete");
}
catch {Log("Save failed");}
finall { deferral.Complete();}
}

 

 

 

Visual Studio 2015 Release Event Recordings

vsl

 

Okey, I missed this one entirely. We know Visual Studio was released yesterday, and there was also a live event for the release. I wrote about it couple of weeks ago. Luckily, the video recordings are already available on channel 9. Check them out here.

There are keynote and sessions. I will dig into some of them see if I can find something interesting. For now enjoy the keynote.

– They put an icrap on stage, that really disgusted me. If you are like me, please just skip that part. ScottH, lighten up!

 

Visual Studio 2015 Is Released! Should You Install Now?

visual-studio-01

 

Through S.Somasegar’s blog, Microsoft has announced that Visual Studio 2015 and .NET 4.6 are officially available for download.

The biggest thing is of course UWP and Windows 10 support. In addition to that there is Visual Studio Online (not new) and Visual Studio Code (new). The problem is: Windows 10 is not final yet, which brings the question: Should you install Visual Studio 2015 now?

Short answer is no. Just wait for Windows 10 release, it is just one week away. Real reason for the wait is the Windows 10 SDK and mobile emulator are not final, you will end up doing something tricky to make it right when Windows 10 is available.

If you really can’t wait, please read instruction here to make up your mind.

 

 

 

Surface Pro 4 to Release in October?

SurfacePro3Primary_Print

 

I don’t normally post rumors. But for some reason, I feel comfortable to post this one. I have my reasons.

Okey, the report is from Digitime, a Tainwan based website. Their reports are usually considered rumors. You can’t be serious about what they say, but sometimes they know things that we don’t know. For two reasons, first, they are close to the upstream in supply chains, second is they are loose about rules and standards. They can be wrong at times, but they know things earlier than anyone else.

Any way, the report says,

the related upstream supply chain reportedly has recently been notified to start mass shipments of components in September with the tablet estimated to become available in the market in October, according to sources from the upstream supply chain.

The new Surface tablet will feature the same ultra-thin form factor, bezel size and large-size display as the predecessor model and will come with Intel’s new Skylake processor and Windows 10.

Well, they didn’t say  the new tablet has to be Surface Pro 4, but it is safe to assume so.

There has been speculation that Surface Pro 4 won’t release this year. Paul Thurrott has said so, because he hasn’t get any information about Surface Pro 4. That can be true, but I just can’t find a reason for that, I can’t.

 

HP Get Ready for Windows 10 Launch Day Too

hp1
This news is a bit late, but it’s too important to skip.

We already know Dell PCs with Windows 10 Will Be Available on July 29. A day after that report, HP announced that they are doing the same. HP will start shipping new PCs with Windows 10 installed on 28th to make sure second delivery, buyers can have it on launch. Please check out some reports here and here.

Beginning in August, HP will begin to offer Windows 10 pre-installed on commercial offerings. Not all devices will have an image ready on day one, and HP expects all existing commercial devices to have a Windows 10 image available by October.

Looks like other PC vendors won’t be far away in the queue.