Privacy Policy

Privacy Statement

In this document, “we” refers to Technocrux respects your privacy and is committed to protecting your personal information. This privacy policy details how we manage your personal information and safeguard your privacy.

This privacy policy sets out how we uses and protects any information that you give us when you use this website.

We may change this policy from time to time by updating this page. You should check this page from time to time to ensure that you are happy with any changes. This policy is effective from 01 Jan 2014.

What we collect

Personal Information is that information or opinion (including information or an opinion forming part of a database), whether true or not, and whether recorded in a material form or not, about an individual whose identity is apparent, or can reasonably ascertained. As such personal information can include your name, address and contact details.

We may collect the following information:

  • real name
  • contact information including email address
  • geographic information including country of residence
  • publically accessible Twitter information such as published tweets and profile
  • technical computer and network information such as IP address, device specification and usage metrics

What we do with the information we gather:

We use this information to understand our customers’ needs and provide them with a better product and service. In particular for the following reasons:

  • identify usage trends to improve the product experience
  • analyze error and crash reports to improve application reliability
  • gather feedback on the product’s user experience for future enhancements
  • provide cross-device services without user configuration

We also collect some information from you when you use our website Your use of services available through our website will determine the amount and type of information which we collect about you.

The only personal information we collect about you when you use our website is what you tell us about yourself, eg. by completing an online form or information you provide us when you send us an e-mail.

We use cookies

When you visit our website, our server attaches a small data file called a “cookie” to your computer’s memory.

Cookies are pieces of information that may be transferred to your computer’s memory when you visit a website for record keeping purposes. Most web browsers are set to accept cookies. However, if you do not wish to receive any cookies you may set your web browser to refuse cookies. We use cookies to provide is with anonymous information on the use of our website and to know what you find interesting on our website. We do not link this information back to your identity or other information that you have provided to us. We do not store any information that identifies you inside cookies.


We are committed to ensuring that your information is secure. In order to prevent unauthorized access or disclosure, we employ industry-standard physical, electronic and managerial procedures to safeguard and secure the information we collect online.

Supplying your information to third parties

We may disclose your personal information when we contract out some of our functions to an external service provider. This information is disclosed for the express purpose of the service that we have contracted out to them. It may not be used for any other purpose by the external service provider.

If you have any concerns about our privacy policy, the information we have recorded or believe that any information we are holding on you is incorrect, please feel free to contact us.

Worms Invasion

This winter save the world from invasion of worms in this very addictive and fun shooter. Compete with the world by showing off how best you can shoot and score more than them, so lets pick the gun and start shooting in this superb game.

Play with keyboard mouse, or gamepads, choice is yours. Play as solo or in co-operative mode, again your choice. Playing with friends always adds a fun factor.   Features

•Up to 4 Players coop

•Support to Gamepads(4 players) or same-keyboard play(2 players).

•Melee, Ranged and Exploding Enemies, with several variables for easy behavior adjustment.

•Score Collectables.

•Healing collectables.

•Weapon Inventory system. Pickup, Swap and Drop weapons.

•Mobile controls will come in next update with windows phone 8 app launch.

•Procedural Level Generation giving you infinite levels.

•More updates coming soon.

Worms Invasion – Privacy policy

This Application does not collect any personal information.

This Application does not contain any other features that could allow users to unintentionally share their personal information.

This application does requires internet connection to work properly, for submission of leaderboard score.

IIS and Skype (Fighting for the port)

During development if you stop the iis and forgot to start it. And later on restart Skype it will take over port 80 / 443, which will later on cause us an Error 0x80070020 when we try to start the website from IIS manager console.

The error code 0x80070020 translates to ERROR_SHARING_VIOLATION (The process cannot access the file because it is being used by another process.)

This issue may occur if TCP port 80 and/or 443 is grabbed by a different service.

Solution is to close Skype, and start website and start Skype again.

This might happen with other software which want to take over these ports but being a windows developer Skype is most commonly the cause of this issue.

Confirmed: Windows Phone 8.1 Developer Preview coming next week

Microsoft has officially announced Windows Phone 8.1, but is yet to release it to the general public. That said, the developer preview of Windows Phone 8.1 will be made available to registered developers soon and developers will be the first to get their hands on the final RTM version of the mobile OS once it is released by Microsoft.

If you want to try your hands onto the developer preview of Windows Phone 8.1 and want to be the first one to get the finished version of Windows Phone 8.1 when it does get released, here are the steps you need to follow.

Register as a developer

You need to first register as a developer with the Microsoft developer program. This process is free and you will not be required to pay a single cent / penny for it. Also you need not be a developer to actually register as a developer with Microsoft.

The trick is to register using the free App Studio that Microsoft released recently. Use the same email address as you have used on your Windows Phone handset and register as a developer.

Download Preview for Developers app

Preview for Developers app is basically an app that configures your phone to receive developer previews of software updates that are yet to be released by Microsoft.

Download the app from this location and install it on your Windows Phone handset.

Once installed, run the app and agree to the Terms and Conditions, sign-in using the Microsoft account using which you registered as a developer. Then agree to enable Preview for Developers and click done to complete the process.

Check for phone updates

Navigate to Settings -> Phone Update and tap on check for updates. This will connect through to Microsoft servers and check for Windows Phone 8.1 developer preview.

Your Windows Phone handset should find the developer preview update once available and begin downloading it.

General Application Policy

This Application does not collect any personal information.

This Application does not contain any other features that could allow users to unintentionally share their personal information.

This application does not requires internet connection to work properly, like authentication, loading of content.

Webinar : Windows Azure Basics

I presented this webinar online on 10th Feb, 2014. I hope it would have been a fun experience for people.

This webinar followed the following topics relating to Windows Azure:

– Windows Azure Basics
– Windows Azure Storage
– Tools and Technology
– Windows Azure Mobile Services
– How to build apps using Windows Azure Mobile Services
– Introduction to Azure portal
– Different Services offered by windows Azure

Some key links and notes:

To get PublishSetting profile visit the link below:

A publishsettings file will be downloaded and the file name will be in given format:


Dictionary App Policy

This Application does not collect any personal information.

This Application does not contain any other features that could allow users to unintentionally share their personal information.

This application does not requires internet connection to work properly, like authentication, loading of content.

Some examples of how to do good programming in C#

foreach( i=0; i < getdata (); i++) { // }

should be

var data=GetData();
foreach( i=0; i < data ; i++) { // }

The call to GetData() is reduced to one, and thus increased performance overheads.

Another example:


if (IsolatedStorageWrapper.LoadString(“ShowTipsAndTricks”) == “”)
IsolatedStorageWrapper.SaveString(“ShowTipsAndTricks”, “true”);
IsolatedStorageWrapper.SaveString(“ShowTipsAndTricks”, “”);

could be written as

IsolatedStorageWrapper.SaveString(“ShowTipsAndTricks”, IsolatedStorageWrapper.LoadString(“ShowTipsAndTricks”) == “” ? “true” : “”);

could be written as

var loadedStringValue=IsolatedStorageWrapper.LoadString(“ShowTipsAndTricks”) == “” ? “true” : “”;

IsolatedStorageWrapper.SaveString(“ShowTipsAndTricks”, loadedStringValue);

could again be written as

var loadedStringValue = IsolatedStorageWrapper.LoadString( “ShowTipsAndTricks” ) == “” ? “true” : “”;
IsolatedStorageWrapper.SaveString( “ShowTipsAndTricks” , loadedStringValue );

MagPro Privacy Policy

This Application does not collect any personal information.

This Application does not contain any other features that could allow users to unintentionally share their personal information.

We do not take or share any sort of user information to anyone at any stage. If user wants to purchase the application, only then he will be prompted to enter his credentials, but that is also not part of this application and not stored at any stage.

This application requires internet connection to work properly, like authentication, loading of content. Without internet connection user will not be able to view / download / read the content of any book or magazine, neither could they watch the digital video content.

Downloading a book is one time bandwidth consumption, later on it is loaded from in app storage, Video channels are streamed so they require a constant internet connection to work properly.

If you find anything that is not right about this app, please feel free to contact the developer.

Online Video Conference Event On Microsoft Visual C# 2012

Education is vital to a sustainable social and economic progress. Microsoft believes that when high-quality education is accessible, relevant and meaningful, citizens of all ages will have real opportunities to develop the skills they need to succeed. Keeping this in mind, Microsoft and Higher Education Commission, Pakistan (HEC) partnered in the form of an Educational Alliance. The objective is to drive the Local Software Economy and enhance capacity building.

Microsoft and HEC has organized a Training Session on Microsoft Visual C# 2012, the training comprises of 1 hours long session organized for Students. The objective of this training session is to empower and train on latest technologies and provide with the relevant mentorship and technical support.

Microsoft Visual Studio 2012 is loaded with new capabilities for Windows 8, the web, SharePoint, mobile, and cloud development—as well as the application management lifecycle tools you need to break down team barriers and reduce cycle times to deliver value continuously. You’ll even find a redesigned UI to streamline everyday tasks and kick your productivity into gear.
Event Details:
Event: Microsoft Visual C# 2012
Date: Friday, 20th September, 2013
Time: 10:30 AM – 11:30 AM
Location: Online at Video Con. Facility of HEC
Presenter: Ali Sufyan Butt

Universities Online:

10+ universities were connected live

130+ Microsoft student partners

100+ MSDN partners were also online for the session

  • University of Karachi
  • NUML
  • University of Azad Jammu Kashmir
  • UET Taxila
  • International IslamicUniversity
  • AIR University
  • Kohat University of Science and Technology
  • GCU Faislabad, GCU Lahore
  • Lahore College for Women
  • AIOU

The session covered advance C# concepts in .net framework 4, 4.5 and upcoming async features. The session was both theoretical and practical at the same time.

C# – Session delivered at Higher Education Commission of Pakistan-HEC

An Online Session Broadcasted live in HigherEducationCommissionPakistan for All the Public Universities in Pakistan.

The session was delivered by Ali Sufyan Butt, and was attended by major public universities online over Live Video Conferencing. Approximately, 150+ students joined the event.

Pictures can be seen here Click to load pictures

Universities Joined Us:
– Numl
– University of Azad Jammu and Kashmir (UAJK)
– University of Engineering & Technology (U.E.T) Taxila
– International Islamic University, Islamabad (IIUI)
– Air University
– Kohat University of Science & Technology (KUST)
– GC University, Faisalabad.
– GC University, Lahore.
– Lahore College For Women University – Official

Topics Covered Were:

C# Fundamentals

Introduction to C#
DEMO containing Below:
– Classes and objects
– Types
– Events
– Properties
– Methods
– Exceptions
– Lamdas. Action and Func

C# 4.0

– Parameters
– Co and Contravariance
– Dynamic
– New Compiler options

Some features

– Better C# Coding Practices

C# 5
– Asynchronous Programming in C#
– Practical demo

Design patterns vs coding standards

There is a great debate on the topic we are discussing here. Many a times we work in software companies, our bosses want us to implement certain design patterns to be followed through out the organization. Like giving an example, one of a senior in our company tends to fall toward caliburn Micro if we are to do windows phone development. No doubt it helped here and there but focusing on that cause a lot of time to understand that first and than implement it, and as many a design patterns are work of community so they are not 100% fulfilling 100% of the requirements.

The point is that not everybody understands every design pattern but everybody can adhere to coding standards within the organization.

a- Not every design pattern fits for every project, but coding standards can be made to fit for most of the projects.

b- Injecting design patterns might cause difficulty for on-comers in the project while implementing coding standards cause fluent code understanding for people to come later on in the project.

c- Analysts, Designers [Software Designers], Team Leads, or all in all if I call Bosses should understand this fact. I am not against design patterns but recommending a design pattern should only be made on the basis of previous experiences and recommendations not by doing a small tiny project which does not fully utilize it.

d- If we follow the basic principal of software engineering that is “Keep it Simple”, then we will definitely go for coding standards.

Windows phone 8 Kids corner issue which makes it useless

There is a great feature in windows phone 8 that is kids corner, it is a privacy and protection mechanism that keeps kids from the main course of phone and give them there own space to play and learn.

The point is “You cannot password protect your phone main area while using kids corner, in fact both gets password protected.” Good way could be that if system is password protected, kids corner should be opened easily so kids can do there stuff without getting on your nerves each and every minute.

May be they can easy out this flow in later builds.

Good news is finally here

The wait is finally over. By the Grace of Almighty Allah, I have just became MVP (Microsoft Most Valuable Professional) for Visual C#. Its an achievement I have been thriving for and I finally reached the mark. I am excited and happy now!!

I would like to thanks the whole Microsoft Pakistan DPE TEAM, specially the DPE Lead Mr. Tahir Masood for the guidance and efforts put into this award. I would also like to thank my MVP Lead Hande for all the efforts put into this. And my whole family who were always there for me.

I will look forward to put my best in near future.

Good way to write code – A

Lots of time, we can increase readability and performance of our app by using good programming practices. Like I was doing once like below:

if (IsolatedStorageWrapper.LoadString(“ShowTipsAndTricks”) == “”)
IsolatedStorageWrapper.SaveString(“ShowTipsAndTricks”, “true”);
IsolatedStorageWrapper.SaveString(“ShowTipsAndTricks”, “”);

now this is something we do most of the times, but all this can be done in one line of code as well, see below:

IsolatedStorageWrapper.SaveString(“ShowTipsAndTricks”, IsolatedStorageWrapper.LoadString(“ShowTipsAndTricks”) == “” ? “true” : “”);

The compiler will have to traverse through less lines, and we might some less CPU cycles :)

An Introduction to New Features in C# 5.0

Introduction of New Features in C# 5.0

 1. C# Evolution Matrix

Microsoft just published a new version of C# : 5.0 beta with CLR version 4.5 (Visual Studio 11 beta). In order to get a big picture of the whole evolution of C# language, I summarized all the key features into a C# Evolution Matrix for your reference as below diagram shows:

In C# version 5.0, there are two key features: Async Programming and Caller Information.

2. Async Feature

b. Caller Information

‘Is’ Operator in C#

It is possible for a program with some local variable x:

bool b = x is FooBar;

to assign true to b at runtime, even though there is no conversion, implicit or explicit, from x to FooBar allowed by the compiler! That is,

FooBar foobar = (FooBar)x;

would not be allowed by the compiler in that same program.

The intention of the operator is to determine if the runtime value of x is actually a useful value of the type T, (*) and therefore we add a few additional caveats:
•T may not be a pointer type
•x may not be a lambda or anonymous method
•if x is classified as a method group or is the null literal (**) then the result is false
•if the runtime type of x is a reference type and its value is a null reference then the result is false
•if the runtime type of x is a nullable value type and the HasValue property of its value is false then the result is false
•if the runtime type of x is a nullable value type and the HasValue property of its value is true then the result is computed as though you were checking x.Value is T