Ahmed Eltawil's Blog

Archive for the ‘Uncategorized’ Category

If you look at what Microsoft is doing with Windows 8, they’re actually (for once) doing something great when it comes to providing built-in app updates. Those updates are all going through the Windows Store, which means there is no need to wait for Microsoft to push a major OS update in order to update those built-in app. So apps like Mail, Calendar, People, Music, Videos all get updated often through Windows Store.

On the other hand, when it comes to Windows Phone 8, this becomes a different story. Apparently, all built-in apps get updated with every major OS update, which happens once in a blue moon. This is another indication that when it comes to the OS architecture, Windows Phone 8 (in its current iteration) isn’t even close to what Microsoft is trying to achieve with their ‘Windows Everywhere’ concept and sharing the same Windows kernel. So in the case of Internet Explorer 11 on Windows Phone, you won’t see it getting updated with fixes or additional HTML 5 support any time soon until there is a OS update. Now, why is this the case? Why can’t those apps (which are in a way separate from the core OS) get updated more often directly through Windows Phone Store? The bigger question is why didn’t anyone at Microsoft suggest that in their meetings?

That being said, I’ve always felt Windows Phone 8’s team didn’t have much collaboration or meetings or talks (if any) with Windows 8’s team. Both OS interfaces (at least on the modern UI side) seem to handle things differently. There is no sense of consistency when you move from Windows Phone to Windows 8. Yes, there is that familiarity feeling but once you’re knee deep you realize they’re oceans apart.

I hope there is more in store that what was released and previewed in Windows 8.1, cause that might be an indication that Windows Phone 8.1 may not meet most people’s high expectation.

Believe it or not, I think there is still hope for Windows RT to gain traction only if the following three critical points happens:

  1. Rebrand it to something else other than the incredibly confusing “Windows RT” name. Call it “Windows 8 Touch”, “Windows 8 Express”, “Windows 8 Tablet Edition” or simply “Windows 8” and rename the home edition to “Windows 8 Home”. Whatever the name is, it cannot be “Windows RT”.
  2. Remove Desktop. Yes, there is absolutely no use for it if the only thing it can run is Office in Windows RT. And since the Office suite is being developed as modern apps as we speak, it’s more reason for Desktop to be useless on Windows RT. File Explorer has been baked into Windows 8.1’s modern UI so that too is another nail in the Desktop coffin in Windows RT.
  3. Apps, and lots of popular apps. Without the top 10 apps that people know and expect on a tablet platform, there will be no reason for consumers to adopt Windows RT. Make sure those apps are in Windows Store.

That’s it. Consumers don’t need to know the technical definition of Windows RT to know what Windows RT is and what it enables them to do, hence rebranding it. Consumers don’t need to be confused with the presence of Desktop on a tablet when it’s mainly used for touch. And last, but no least, apps. Bring them, and buyers shall come.

It would have been fine if they kept using the term ‘Metro’ for the modern apps (Windows Store apps?) but for some reason Microsoft forgot to do their due diligence on whether they can legally use that name or not before they started using it.

So when they realized they had to stop using that name, they started calling them ‘modern apps’ for the lack of better words. But that’s not gonna help differentiate the type of apps since any application (whether a Windows Store or Desktop app) can revamp their UI and call it modern. Modern isn’t a noun, it’s an adjective. It can be used to describe any application if it fits the definition. So by calling them modern also added more confusion to the developers and end users.

So when Microsoft realized that, they changed it a second time and told us to start calling them ‘Windows Store’ apps instead. But any Windows 8 or Windows RT ‘app’ can come from the Windows Store eventually, and calling them Windows Store apps basically tells us that the app came from the Windows Store and not what type of application it is (I’m talking about what an average consumer would think).

So calling them Windows Store apps isn’t gonna help either in the long run and will most likely (as it is already) add more to the confusion.

Personally, I have no clue what those apps should be called, but I did like the term ‘metro’ the most out of all of them. Unfortunately, ‘metro’ cannot be used anymore.

Get your shit together, Microsoft.

One of my tasks recently was to implement bundling and minification on a ASP.NET 4.5 web application. So naturally, I started to read many articles and tutorials on how to implement it until I understood the technology and got confident on implementing it. The implementation was quite simple really and I was very happy with the progress…until I reached a brick wall.

For some reason there was absolutely no mention on how to reference bundles created in the markup of a web form AND still be able to debug by disabling the bundling and minification. Most, if not all, articles and tutorials were talking about ASP.NET MVC implementations as opposed to web forms. When I was able to get the bundling and minification to work, I kept losing the ability to debug my bundled JavaScript files (in Visual Studio) when I set “debug=’true'” in my web config file.

So for anyone who is in the same boat, I feel your pain and here is what I went through:

I added the following markup for a script bundle called ‘~/scripts1’:

<script src=”~/scripts1″></script>

That didn’t make bundling and minification work. So I tried:

<script src=”scripts1″></script>

It worked this time, but setting “debug=’true'” would still bundle and minify my JavaScript files. So I tried the following:

<script src=”<% Scripts.Render(“~/scripts1″); %>”></script>

That gave me the same result as the previous one. So after hours of researching and playing with code, I wrote the following line right in the markup without any <script> tags:

<%: Scripts.Render(“~/scripts1”) %>

It worked! I got my bundling and minification to work only when “debug=’false'”.

I hope this helps some poor soul out there. If you need more information on bundling and minification with ASP.NET 4.5, read this article.


  • Вторая проще. Русская краса | 4 years ago
  • Цветет,благоухает..Жизнью строки наполняет.. | 4 years ago
  • Розы, песни и стихи | 4 years ago
  • Ведь нажива, об этике, не сожалеет. | 4 years ago
  • Ни о влюблённости, что миновала | 4 years ago
  • Надо распустить свой хвост. | 4 years ago
  • Самое страшное - это с утра после пьянки зайти в контакт и увидеть "Мои фотографии (6)" | 5 years ago