Quantcast
Channel: MSDN Blogs
Viewing all 35736 articles
Browse latest View live

TFS on Azure (IAAS) Planning and Ops Guide v1.4.2 update published

$
0
0

We are pleased to announce that the v1.4.2 update of the TFS Planning and DR Avoidance Guide which includes revisions based on real-world feedback.

The only artefacts affected by this update is the TFS on Azure IaaS Guide pdf, and the everything zip package, which includes all the guides, planning workbook and quick reference posters.

image image6 image5

UNCHANGED

UPDATED

 

summary of changes

  • New section
    • Azure Network - Planning Authentication
  • Revised sections
    • Azure Network - Planning your Domain
    • Domain Controller walkthrough
    • Data Tier (DT) Server walkthrough
    • Application Tier server walkthrough
    • Build server walkthrough

special thanks

A special THANK YOU to Chris Margraff who made this update happen!

please send candid feedback!

We can’t wait to hear from you, and learn more about your experience using the guidance. Here are some ways to connect with us:

  • Add a comment below.
  • Ask a question on the respective CodePlex discussion forum.
  • Contact me on my blog.

Getting the most out of MAT’s Microsoft Translator provider

$
0
0

Recently I was contacted via http://aka.ms/matvoice by a developer using MAT with a question.  “Why are the results from the Microsoft Translator Provider in MAT different than those from http://www.bing.com/translator?  Well, that is a great question.  Let me answer the question by showing some of the configuration options available for that provider.

The quick answer: 

The release of MAT v3.0 added support for Microsoft Translator’s Hub (See: http://blogs.msdn.com/b/matdev/archive/2014/04/14/announcing-multilingual-app-toolkit-v3-0.aspx for specifics).  MAT uses the ‘Tech’ category by default as this is geared more towards software terms.  The Translator website uses the ‘General’ category when processing the requests.  The good news is that this is configurable if the Tech category does not fit your needs. 

Here is how to configure MAT to match that of the Translator website.
  1. Open Notepad as Administrator
  2. Open MAT’s Microsoft Translator configuration file . It is located at "C:\ProgramData\Multilingual App Toolkit\MicrosoftTranslatorProvider\TranslatorSettings.xml"
  3. Change "<Category>Tech</Category>" to "<Category>General</Category>"
  4. Save the file

Note:
Please adjust the above path If your %ProgramData% environment is different. 
Be sure to restart the Editor (or VS) to use the updated configuration.

Since we are here, let’s discuss some of the other options as well…

Here is a snippet of the file:
<Provider>
  <ID>B7F979A8-D491-451C-84E8-F0C49BE620E3</ID>
  <Category>Tech</Category>
  <Protocol>HTTP</Protocol>
  <Languages>
    <Language>ar</Language>
    <Language>ar-ae</Language>
    <Language>ar-bh</Language>
    <Language>ar-dz</Language>
    …
  </Languages>
</Provider >

<Category> element

As indicated above, the <Category> element is used to add Microsoft Translator’s Hub functionality into MAT’s translation services.  However, this is not limited to the General and Tech categories.  If you have a custom Hub (or your friend does), you can set the <Category> value to their Hub and take advantage of their customized translations directly within MAT.

<Protocol> element

Looking at the configuration file, you probably noticed the <Protocol> element.  The Microsoft Translator APIs allow for translation requests using HTTPS.  By default, this is set to HTTP – as indicated by the <Protocol> value.  Changing this to HTTPS will access the Microsoft Translator Service over the SSL protocol.

<Language> elements

When you look at the <language> elements, you might be asking yourself “Why we define all the region languages separately”?  The answer is that the Microsoft Translator service uses a language neutral approach to generating translations.  An example is French France which is slightly different than French Canadian, but most of the words or phrases are common between both.  As such, to enable the supported languages and indicators, we map the Microsoft Translator neutral languages (FR) to the language specific codes (fr-FR, fr-CA, etc.)  This allows us (and you) to fine tune the support to ensure the alignment is as you desire.

image

As you can tell, the configuration file is pretty straightforward.  I hope this helps you understand some of the options that you have when using MAT and the Microsoft Translator Provider. 

Thank you,
The Multilingual App Toolkit team
multilingual@microsoft.com
User voice site: http://aka.ms/matvoice

5 Minute FIM Hacks: Changing FIM Portal Time Zone

$
0
0

This is the first in a series of posts we’ll be calling “5 Minute FIM Hacks”. The purpose of these posts will be to provide quick and simple tips and tricks for customizing FIM to make it perform better or be easier to use.

 

Today’s 5 Minute FIM Hack is about changing the internal time zone the FIM portal uses. You may have noticed (while searching your Search Requests) that the time stamp is incorrect (even though the system time of your server is set correctly). This is because FIM actually has its own internal time configuration. Most likely, your FIM implementation is set to the default (GMT) time zone. To change this, start by navigating to your FIM portal. In the bottom left-hand corner, click on “Administration”:

From the “Administration” menu, select “Portal Configuration”:

From the “Portal Configuration” dialogue window, click on “Extended Attributes”:

Scroll down until you see the “Time Zone” attribute. Notice (in this case) it is set incorrectly. You may clear this by simply clicking in the box and deleting the value. To find your correct time zone, click on the “Browse” button on the far right (the button that looks like several sheets of paper):

In the top right-hand corner, click on “Search within:” and select “All Resources”:

In the “Search for:” box, enter “(GMT” and click on the magnifying glass. This will display all available time zone resources. Find your desired time zone in the list and check the box to select it. Click “OK”.

Here we see the pending change (remove incorrect time zone and add correct time zone). When finished, click “Submit”.

Now, from this point forward, all internal date/time stamps will be set to the correct time zone.

 

 

 

 

 

 

Go faster on Azure with new D-Series virtual machines

A Simple BackgroundDownloader driven User Control Implementation for Windows Store Apps

$
0
0

This post demonstrates a very simple user control implementation that displays a ringtone name and has a download button upon clicking which the relative MP3 file begins downloading. As downloading begins, the button is disabled and relative progress bar visibility is shown using a custom dependency property. The control makes use of BackgroundDownloader class for downloading file in the background. The downloaded file is by default saved in Music library and as the download progresses, the progress bar updates progress using a custom exposed Dependency Property. Here's how the user control bound in GridView looks like in sample app implemtnation,



To begin with, here's our POCO representing a ring tone,

public class Ringtone
{
public string Title
{
get;
set;
}

public string Path
{
get;
set;
}

}

In the user control (Downloader.xaml.cs) you can find two dependency properties; IsDownloadInProgress that is used to control the visibility of progress bar and DownloadProgress, a double value to represent download percentage as bytes are received,

 public Visibility IsDownloadInProgress
{
get { return (Visibility)GetValue(IsDownloadInProgressProperty); }
set { SetValue(IsDownloadInProgressProperty, value); }
}

// Using a DependencyProperty as the backing store for IsDownloadInProgress. This enables animation, styling, binding, etc...
public static readonly DependencyProperty IsDownloadInProgressProperty =
DependencyProperty.Register("IsDownloadInProgress", typeof(bool), typeof(Downloader), new PropertyMetadata(Visibility.Collapsed));

public double DownloadProgress
{
get { return (double)GetValue(DownloadProgressProperty); }
set { SetValue(DownloadProgressProperty, value); }
}

// Using a DependencyProperty as the backing store for DownloadProgress. This enables animation, styling, binding, etc...
public static readonly DependencyProperty DownloadProgressProperty =
DependencyProperty.Register("DownloadProgress", typeof(double), typeof(Downloader), new PropertyMetadata(0));

Above two dependency properties are bound with progress bar control as follows,

<StackPanel>
<TextBlock Margin="20" Style="{StaticResource SubheaderTextBlockStyle}" Text="{Binding Title}"></TextBlock>
<Button Margin="20" Tag="{Binding Path}" Name="Button1" Click="Button_Click">Download</Button>
<ProgressBar Name="Progressbar1" Margin="20" Visibility="{Binding IsDownloadInProgress}" Minimum="0" Maximum="100" Value="{Binding DownloadProgress}"></ProgressBar>
</StackPanel>

Note that in the constructor of the user control (Downloader.xaml.cs), we've explicitly set the data context of progress bar to this, referring that its bound properties are exposed within the very user control.

public Downloader()
{
this.InitializeComponent();

//This will ensure that only progress bare makes use of depdnency property
//otherwise Ringtone Title won't be displayed in the Text Block.
Progressbar1.DataContext = this;
}

Here’s how downloading is performed once button is clicked (file in stored in MusicLibrary folder by default and thus the corresponding capability is explicitly checked in manifest file). Also note that existing file is overridden,

 private async void Button_Click(object sender, RoutedEventArgs e)
{
Button button = (Button)sender;
string path = button.Tag.ToString();
string name = path.Substring(path.LastIndexOf('/') + 1);

IsDownloadInProgress = Visibility.Visible;
button.IsEnabled = false;

BackgroundDownloader downloader = new BackgroundDownloader();
StorageFile file = await KnownFolders.MusicLibrary.CreateFileAsync(name,CreationCollisionOption.ReplaceExisting);
DownloadOperation operation = downloader.CreateDownload(new Uri(path, UriKind.Absolute), file);
Progress<DownloadOperation> progressCallback = new Progress<DownloadOperation>();
progressCallback.ProgressChanged += progressCallback_ProgressChanged;

await operation.StartAsync().AsTask(progressCallback);
}

And here’s the progress response callback handler that sets progress bar value and hides progress bar as downloading is complete. Note that if we would have not used dependency property (DownloadProgress& IsDownloadInProgress), we were supposed to make use of INotifyPropertyChanged. That’s one of the many advantages of DependencyProeprty that it avoids need of INotifyPropertyChanged.

void progressCallback_ProgressChanged(object sender, DownloadOperation e)
{
try
{
double bytesRecieved = Convert.ToDouble(e.Progress.BytesReceived);
double totalBytesToReceive = Convert.ToDouble(e.Progress.TotalBytesToReceive);
DownloadProgress = (bytesRecieved / totalBytesToReceive) * 100;

if (DownloadProgress == 100)
{
IsDownloadInProgress = Windows.UI.Xaml.Visibility.Collapsed;
Button1.IsEnabled = true;
}
}
catch (Exception)
{
throw;
}
}

The sample implementation is attached. For simplicity of purpose, the Urls of ringtones are hardcoded in the app. Note that if the progress bar doesn’t yield progress for you, try changing path of MP3 to a larger file.

Happy Coding :)

Issue with Application Insights Data Stream Services – 9/25 – Mitigated

$
0
0

Final update: 9/25/2014 19:25 UTC

We have mitigated an issue in data stream services that has caused data loss for up to 24 hours. This issue was caused by time pointers in data processing services which was set to current time. Customers would not be able to see data from 9/24/2014 13:00 UTC till 9/25/2014 13:00 UTC. At present Data is current and processing is normal as expected. We continue to monitor our services closely for any re-occurrence or other impact. No further updates in this blog unless we see a repentance.

We apologizes for any inconvenience this might have caused.

-Application Insights Service Delivery Team

Continuous Delivery in Minutes with Node.js, Grunt, Mocha and Git

$
0
0

Modern application development now'a'days demands a rigorous continuous deliver mechanism. This is especially true when it comes to the cloud.

You want to be able to get through the Build -> Measure -> Learn cycle as fast as possible. With cloud services, you can quickly create mechanisms to build, test and deploy your development team's code. You can even maintain development and production branches.

Continue reading for the full walk-through.

Part 3: Get started with Python: Functions and File Handling

$
0
0

This is a tutorial series which will teach you how to code in Python. We will start with the absolute basics of installation of Python in Windows and Python Tools in Visual Studio. We will then go through basic constructs in Python and write a couple of programs to summarize what we have learned. We will end with an Object Oriented Approach using Python and a specific feature of Python Tools in Visual Studio: Mixed mode C/C++/Python Debugging

Part 1: Get Started with Python summarized the steps involved to setup Python and Visual Studio for Python Development. We essentially learned how to install Python in Windows, Visual Studio and Python Tools for Visual Studio.

Part 2: Get Started with Python took you through the basics in programming constructs such as output, input, variables and control flow statements including conditional statements and loops including while and for. Using these tools was enough to get started with coding basic applications in Python.

Part 3: Functions and File Handling

Welcome to this weeks edition of Get Started with Python! In this section, let us take a deeper dive. We will be looking into Functions and File Handling. After having gone through this, we will develop an application using Functions and Files to demonstrate the ease of use and utility of these constructs.

Function Handling

Functions are blocks of code which are logically grouped to perform some action. In Python, a function is defined using the ‘def’ keyword, followed by the name of the function, followed by the list of parameters in parenthesis, followed by ‘:’. The distinctive feature in Python being that the block of code is not delimited by brackets or parenthesis, but by an indentation of a tab space. The first line is an optional line in quotes which is called as a ‘docstring’ and can be used by third party tools for documentation purposes. The code snippet below gives a brief description of the syntax and the usage.

   1: def <function_name> (<parameter list>):
   2:"<docstring>"
   3:     ...
   4:     ...

File Handling

As most other procedural languages, the most important object in File handling is the File Object handler, the difference being that there is no need to import or include any additional libraries. We get the file object handler using the ‘open’ construct. The file can be opened in either read, write or append mode. We use the ‘write’ construct to write contents in the file while we use the ‘read’ construct to read contents from the file. After we finish our operations with the file, we close the file using the ‘close’ construct. The following code snippet shows the syntax and the usage.

   1: FileHandle=open("<file_name>",'<mode>')        #file_name is the name of the file
   2:                                                #<mode> is either r, w, a
   3: FileHandle.write("<text>\n")                   #<text> will be the content of the file
   4: FileHandle.read()                              #reads the content of the file
   5: FileHandle.readline()                          #reads the content line by line
   6: FileHandle.close()                             #closes the file

ReadTextMessage Application

Now that we have gone through function and file handling, let us look into how both of these can be used to build an application. We will first define the objective of the application, explain the design which will be followed by the code.

Objective:

Expand regularly used short-forms in text message jargon. For eg: lol, rofl and lmao will be expanded to “laughing out loud”, “rolling on the floor laughing” and “laughing my a** out” respectively.

Design:

  • def mainfunction() : This will make the call to all the other functions
  • def filewrite(): This will write contents to the file
  • def filecheck(): Will open and check the validity of the existence of the file
  • def separatewordlist(): separate the contents of the file into words
  • def dictionarylist(): creates 2 lists, one containing the words and the other contains the expansion
  • def compare(): compare the final list of words
  • def printMessage(): prints the final message

Find the details of the code of the app:

   1: #This is the main function
   2: def mainFunction():
   3:     print("Please enter the message (no punctuations please):")
   4:     message = input(">") #will asign message with the user's message
   5:     fileWrite(message) #will write the to a file
   6:     fileCheck("TextFile2.txt") #will check if the file exists or not
   7:     messageWords = seperateWordsList("TextFile1.txt") #will create a list of all words in the message
   8:     AllWords, AllDefs = dictionaryList("TextFile2.txt") #will create two lists - one containing the words, the other containing the definitions
   9:     finalWords = compare(messageWords, AllWords, AllDefs) # the final list of words for the message
  10:     printMessage(finalWords) #will print the message
  11:  
  12: #This will write the message to a file
  13: def fileWrite(message):
  14:     fileObj = open("TextFile1.txt","w") #creates the file object with the name "TextFile1.txt"
  15:     fileObj.write(message) #writes a message to the file
  16:     fileObj.close() #closes the file objects
  17:  
  18: #will check if the file exists or not
  19: def fileCheck(fileName):
  20:     try:
  21:         fileObj = open(fileName) #will try to open the file
  22:     except IOError: #will handle the exception
  23:         print("The file could not be opened.")
  24:         print("Either the file does not exist, or you have entered the wrong name.")
  25:         os.system("pause")
  26:         os.system("cls")
  27:         mainFunction()
  28:  
  29: #will seperate words and return a list of words
  30: def seperateWordsList(fileName):
  31:     fileObj = open(fileName)
  32:     fileContents = fileObj.read()
  33:     AllWords = fileContents.split() #will split the entire file contents into words 
  34:     return AllWords
  35:  
  36: #This function is to return two lists - one containing all the short forms, the other containing the definitions
  37: def dictionaryList(fileName):
  38:     fileObj = open(fileName)
  39:     AllWords = []
  40:     AllDefs = []
  41:     for line in iter(fileObj): #This for loop will read the file line by line
  42:         words = line.split() #This will split the sentence into a list of words
  43:         AllWords.append(words[0]) #appends the short form to this list
  44:         s = ""
  45:         for x in range(2,len(words)):
  46:             s = s + words[x] + " " 
  47:         AllDefs.append(s[0:len(s) - 1]) #appends the definition to this list
  48:     return (AllWords, AllDefs)
  49:  
  50: #this function will compare message words and those in dictionary
  51: def compare(messageWords, AllWords, AllDefs):
  52:     for x in range(0, len(messageWords)):
  53:         word = messageWords[x]
  54:         for y in range(0, len(AllWords)):
  55:             if(word.upper() == AllWords[y]): 
  56:                 messageWords[x] = AllDefs[y] #This will replace the word with the dictonary definition if it's true
  57:return (messageWords)
  58:  
  59: #will print the message based on the list finalWords
  60: def printMessage(finalWords):
  61:     message = ""
  62:for word in finalWords: 
  63:         message = message + " " + word
  64:     print(message[1:]) #will remove the inital space
  65:  
  66: mainFunction()

The output of this application on execution looks as follows:

image

 

Summary

Understanding and using files and functions is key to the development for any  application. Now you are definitely equipped with enough arrows in your quiver to start developing your applications on Python. In the next part, I will cover an object oriented approach to programming in Python which will include classes and objects. So stay tuned and hope to see you there !


WCF User and Password Authentication

Configure Lab Management for TFS 2013

$
0
0
This blog post will cover installation of SCVMM console on the TFS application tier and the TFS server level and team project collection level configurations required to enable lab management. You should have a setup of SCVMM 2012 R2 ready, before proceeding to these steps. To install and configure SCVMM to be used with lab management, please refer this article. Once we are done with the configurations from the TFS server, please refer this article , to configure test controllers and create lab environments...(read more)

Issues with VS Online Services - 9/25 - Investigating

$
0
0

Update: Thu, Sep 25 2014 10:00 PM UTC

Our DevOps have applied a temporary mitigation to the issue due to which all VSO Services have now returned to normal levels.  All customers should now be able to access their accounts.  This issue occurred while we are executing our regular sprint deployment which was paused in favor of deploying a temporary mitigation.  Our DevOps remain engaged in attempting root cause and deploying a permanent fix before deployment is resumed.

We apologize for the inconvenience this may have caused you.

Sincerely

VS Online Service Delivery Team

-----

Initial Update: Thu, Sep 25 2014 9:21 PM UTC - We are currently investigating issues with VS Online where a large subset of our customers will be unable to access their accounts.  Our DevOps are actively engaged and analyzing the issue.  We apologize for the inconvenience this may have caused. 

We will provide an update in the next 60 minutes.

Thank you 

Issue with Application Insights Data Stream Services – 9/25 – Investigating

$
0
0

Initial Update 9/25/14 21:20 UTC

We are investigating an issue with Geo Reports in data stream services. Our team is analyzing logs and traces to root cause the issue. During impact window customers will not see any data when try to access Geo Reports in VSO portal. We provide an update in next 2 hours or earlier when we understand the issue completely.

We apologizes the inconvenience it may have caused.

-Application Insights Service Delivery Team

Configure Test Controllers and create lab environments in MTM

$
0
0
Once host groups and library shares are configured for the team project collection, we have to install and configure Test Controllers for the collection. This blog will walk you through the installation and configuration of Test Controller, and creating a lab environment form MM. For details on configuring host groups and library shares with the TFS team project collection, please refer this article. Visual Studio 2013 test controller and agent can be downloaded from here . Installing and configuring...(read more)

Install and configure SCVMM for TFS Lab Management

$
0
0
  The following are the required components for setting up lab management with TFS. · Hyper-V hosts · SCVMM · Team Foundation Server · Test Controller This blog will explain about the installation and configuration of SCVMM, and adding Hyper-V host machines, to be used with lab management. The configurations required from TFS side is explained in this blog Note: All the machines that are used for Lab Management must be joined either to the same domain or domains that have two-way trust between...(read more)

COM client failing with error 8000401a

$
0
0

The error 8000401a (CO_E_RUNAS_LOGON_FAILURE) means "The server process could not be started because the configured identity is incorrect. Check the username and password".

Many a times we have seen that the error occurs from a DCOM server that is configured to launch as “The Interactive User” user account especially on Windows Vista and above OS's. This worked fine on Windows 2003 but on Windows Vista and above OS's you notice certain scenarios where the application fails to launch. For example,

a. If you log off the machine and don’t have a remote desktop session connected to the server OR

b. You disconnected a RDP session (that was used to connect to the DCOM server machine) without logging off.

This is by design due to new session management features of Windows Vista and above OS's.

Both (a) & (b) are similar with respect to interactive user logon. Reason: Disconnecting a RDP session means "no currently interactive user logged on". This makes sense because an "interactive logon" would mean that someone actually has the ability to respond to some GUI based features should the DCOM server use any GUI items. If you’ve closed down a RDP session and/or don’t have anyone logged onto the machine then if the DCOM server does require GUI response, it will hang because there is no interactive session to respond to it.

The best possible ways to resolve this is by:

(I) Change the identity of the DCOM server from “The Interactive User” to “This User” and then specify that the DCOM server runs as admin or some other domain or local user account.

(II) Make sure that someone is physically logged onto the machine or that you continuously have a remote desktop session open.

Applies to:

 


Kew House School: Advanced Teaching with Amazing Students

$
0
0

Guest post from Rick Wang – Microsoft Education Business, Greater China Republic.

clip_image001This is Rick Wang from Microsoft MACH MBA program, where I am spending 4 months as part of my rotation schedule in the UK to learn about and experience the UK education industry.

I really appreciated the opportunity to join Mark Stewart (UK Education Partnerships Lead) on a volunteering day visit to Kew House School on Sep 18th 2014. As a result, I wrote this blog to share what I saw, in the hope that this may help other schools who are looking at technology to enable and advance their teaching and learning.

Kew House School is a co-educational independent senior school for pupils aged 11-18 years. The school opened its doors for the first time last September with 80 students enrolled. Now, there are 190 students in the school and the number will be doubled next year.

image

We were warmly welcomed by Mr. Mark Hudson (Head Teacher) and Mr Umar Qureshi (ICT & Computing Teacher) who showed us around. As a newly designed school, it has modern classrooms and teaching facilities, with bright coloured classrooms, open spaces, round tables suitable for collaborative, interactive teaching, as well as facilitated labs. Mr. Hudson, who has ample professional engineering experience, was very much involved in shaping the classroom experience and design.

clip_image003clip_image005

clip_image007clip_image009

The school also has a modern view on technology in classroom. Besides advanced IT infrastructure such as high speed broadband, latest interactive Smart white boards, and 3D printers, what impressed me most is how the teachers are effectively using technology in their teaching methodology. The school has adopted the Frog Learning platform and teaching framework to manage teaching resources online. Teachers will use Frog content for their curriculum and home work. All students have Frog accounts and Microsoft Office 365 for collaboration with peers and teachers, which is highly relevant and aligned to 21st century teaching guidelines.

The best part of the day was when Mark Stewart presented during Assembly about Microsoft; what is our vision in Education, the technologies we are developing and some computing education related projects, such as Spark, KODU and Touch Development.

I shared my story and experience of what it is like to work at Microsoft and how I came to Microsoft as part of the MACH program.

clip_image011clip_image013 

clip_image015clip_image017

I have to say that these young students really impressed me a lot with their knowledge and understanding of technology.

During the presentation, Mark asked the audience a number of questions, such as, which year was Microsoft founded; A young man about 12 years old answered 1975 confidently! There were several questions regarding the Mojang MineCraft acquisition, which was only announced a day or so earlier. The questions were not limited to availability on the Xbox One! The Students asked lots of questions with business insights; such as whether 2 billion dollars plus was justified, what are the plans for MineCraft after the acquisition, and how is Microsoft going to leverage this product for other projects. The students were so informed and asking really interesting and insightful questions, quite amazing!

The surprises just keep coming throughout day and most notably, the Q&A session in the afternoon. Mark introduced Microsoft Touch Develop to the group and I witnessed a 12 year old student build an interesting app using Touch Develop for the first time in 10 minutes. This was amazing to see. Some students asked wide ranging questions such as, what’s the difference between Apple iCloud and Microsoft Azure, what will be the breakthrough in next the generation of Microsoft Windows, at times it was like meeting an enterprise customer, given the nature of the inquiries. Finally we provided a set of Microsoft devices for the teachers and students to play with. There was a strong interest in the new 8 inch windows devices that Mark brought with him, where students delighted their teachers by discovering nice little features, such as hand writing recognition and inking, as well as a collection of apps too. It almost looked like we weren’t going to get them back!

We received many interesting and intriguing questions from both a business and personal perspective. Such as, how is Microsoft working with Apple, and how is technology changing people’s life style. One student made a comment that smart devices make life easier, but we should not be obsessed by them, he made an analogy to the bicycle, where this is more convenient than walking, but you wouldn’t spend your life, 24x7 on a bicycle! That was definitely something I didn’t expect from a 13 year old boy.

This experience certainly made me realise that understanding and empowering the students is critical to evaluating and deciding the role of technology in your school. The students figure things out, they approach things in amazing ways and are eager to share that learning with the teachers. This was great to see and I think the teachers got a lot from the day too. The students are clearly the future.

It was a great opportunity for me during this visit to experience an advanced 21st century teaching and learning school. Kew House School is a very progressive school, with innovative ideas both in terms of building, facilities design and how it sees the role of technology in education. This was so evident in the way the students engaged, the type of questions being asked and the energy and enthusiasm shown.

I would like to thank Mr. Hudson and Mr. Qureshi for a great day and their kind hospitality in showing me around and allowing me to learn a great deal from my visit to a UK school.

Maintenance Monday, 22 September - Thursday, 25 September - Started

$
0
0

Update: 26 September 19:17 UTC

The update it taking a bit longer than expected.  We are extending the window until Monday, 29 September, 23:00 UTC. 

-----------------------------------------------------------------

Update: 23 September 23:10 UTC

We started a bit later than we expected, but we have now started the deployment.

-----------------------------------------------------------------

We will be shipping an update to Visual Studio Online.  We are planning on having maintenance windows from Monday, 22 September, 9:00 UTC through Thursday, 25 September, 23:00 UTC.  There should be no impact to the service during this update.

Thanks,
Erin Dormier

COMING UP ON MVA: How to Create a Cross-Platform HTML5 RPG

$
0
0

Every wonder how to create a classic role-playing game? In my upcoming MVA (Microsoft Virtual Academy) course I will show you how!

Mhtml5gamey co-host Bryan Griffiths and I will walk you through the steps of creating a cross-platform classic style RPG game using Visual Studio and free open source technology. This two day course will include step-by-step demos, pro tips, best practices, and general game design strategies. You will see not only how to make a classic 2D RPG, but you will also get a chance to see how easy it is to create any universal HTML5 2D game and port it to multiple platforms.

Course Outline

  • Game Design Strategies
  • PhoneGap (Cordova) Project
  • Input, Character Control, and Direction Pad
  • Collision Detection
  • Game Mechanics
  • Inventory System
  • In-Game Store
  • Battle System

Prerequisites

Minimal HTML5 experience and familiarity with programming concepts

Day 1(October 2 9:00am–1:00pm PDT):

By the end of day 1, you will have a controllable player that interacts properly with displayed objects, and you will see how a new PhoneGap project is created.

Day2 (October 9 9:00am–1:00pm PDT):

By the end of day 2, you will have a fully playable role-playing game, including non-player character interaction, in-game store, and a turn-based battle system.

Sign up now to take your game skills to the next level and be sure to bring your questions!

Sample chapter: Automating Windows 8.1 Configuration

$
0
0

This chapter from Windows 8.1 Administration Pocket Consultant: Essentials & Configuration introduces essential tasks for understanding and managing Group Policy preferences:

  • Understanding Group Policy preferences
  • Configuring Group Policy preferences
  • Managing preference items

SharePoint 2013 On-Prem reset index stuck resolution

$
0
0

Recently I have had a few customers with index out of sync errors, the customers have tried everything possible to get the indexers to sync and they are at the last resort, nuclear option, to reset the search index. The reason can vary for how this has got to this state, such as: network related, AntiVirus, or the 808 firewall issue. I will cover more of these issues in some upcoming blog posts.

*Reset index is the last resort as you must complete a full crawl of your data again and users will not be able to retrieve search results until you create a new search index.

 

In my cases the index is out of sync and never catches up, the index components are yellow in the topology view.

In the SP management console run:

get-spenterprisesearchstatus -SearchApplication $ssa -Detailed -Text

Name      : IndexComponent6

State     : Degraded

State     : List of degraded cells: Cell:IndexComponent6-SP34fdebde8866I.1.3(Index out of sync - catching up);

catch_up  : True

Partition : 3

Host      : SOMESERVER1

 

Name        : Cell:IndexComponent6-SP34fdebde8866I.1.3

State       : Degraded

State       : Components OK. Index out of sync - catching up

Primary     : False

Partition   : 3

catch_up    : True

in_sync     : False

left_behind : True

 

What I have found is that sometimes the reset index process hangs and there is no documentation as to what to do about it.

On the SSA you will see something like this:

Administrative status     Paused for:Index reset

Or:

Administrative status     Paused for:External request, Index reset

Or:

Administrative status     Paused for:External request

 

 

 

You can run this command in the SSA management console to verify if the SSA is paused. If this command returns False, the SSA is running. If this command returns True, the SSA is paused.

$ssa.IsPaused() -ne 0

 This is the most common I have been seeing with indexers out of sync and reset index stuck:

 ($ssa.IsPaused() -band 0x100) -ne 0

If True returns the search index is being deleted and you must “Wait until the search index is deleted.”

Well if your indexers are out of sync this can take many many hours or never return!

(If False you may want to look at the link at the bottom for more commands on this to see why the SSA is still paused, could be a backup or topo change, etc)

 

Here is the process I have been able to use to fix this issue:

#1 First try to force a resume, if this doesn’t work that’s fine and go to #2 anyways, just more of a try a last ditch force.

$ssa.ForceResume($ssa.IsPaused())

 

#2 On all of the nodes that contain an indexer component, stop the timer services and delete the indexes:

Stop “SharePoint Timer Service”

Stop “SharePoint Search Host Controller”

Delete data directory, by default install it will look like this:

C:\Program Files\Microsoft Office Servers\15.0\Data\Office Server\Applications\Search\Nodes\[Hex ID\IndexComponentN\storage\data\*

Start “SharePoint Timer Service”

Start “SharePoint Search Host Controller”

 

#3 Once they directories are deleted, run reset index again (which should complete very quickly)

 

 

For more information on reset index:

http://technet.microsoft.com/en-us/library/jj219652(v=office.15).aspx

The PowerShell to complete this is here as the UI sometimes times out:

$ssa = Get-SPEnterpriseSearchServiceApplication

$disableAlerts = $true

$ignoreUnreachableServer = $true

$ssa.reset($disableAlerts, $ignoreUnreachableServer)

if (-not $?) {

 Write-Error "Reset failed"

}

 

To find why the SSA is paused for other reasons check here:

Manage a paused Search service application in SharePoint Server 2013

http://technet.microsoft.com/en-us/library/dn745901(v=office.15).aspx

Viewing all 35736 articles
Browse latest View live


Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>