<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" version="2.0"><channel><title>thebeebs</title><link>http://blogs.msdn.com/b/thebeebs/</link><description>I collect information and write tutorials about projects I’m working on a web technologies that interest me.</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Thebeebs" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="thebeebs" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><title>Shape Conference: Windows 8 Game Development</title><link>http://blogs.msdn.com/b/thebeebs/archive/2013/04/08/shape-conference-windows-8-game-development.aspx</link><pubDate>Mon, 08 Apr 2013 17:01:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10409391</guid><dc:creator>thebeebs</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10409391</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10409391</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2013/04/08/shape-conference-windows-8-game-development.aspx#comments</comments><description>&lt;p&gt;During the talk I referenced a few projects. The code can be found here:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Throughout the talk I used the&amp;#160; &lt;a href="http://www.createjs.com/#!/EaselJS"&gt;EaselJS&lt;/a&gt; Library.&lt;/li&gt;    &lt;li&gt;There are complete instructions on how to build the 2D Platformer are over on David Rousset’s blog which can be &lt;a href="http://blogs.msdn.com/b/davrous/archive/2012/03/21/html5-platformer-the-complete-port-of-the-xna-game-to-lt-canvas-gt-with-easeljs.aspx"&gt;found here&lt;/a&gt;.&lt;/li&gt;    &lt;li&gt;The guys over in Norway have produced the excellent HTML5 Game Starter kit I showed towards the end of the talk. Instructions on how to get it running can be &lt;a href="http://digitalerr0r.wordpress.com/2013/04/04/html5-game-starterkit-for-windows-8-with-leaderboard-in-windows-azure/"&gt;found here.&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10409391" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/Oy-vtmakb5c" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/article/">article</category></item><item><title>ASP.NET MVC 4</title><link>http://blogs.msdn.com/b/thebeebs/archive/2013/04/05/asp-net-mvc-4.aspx</link><pubDate>Fri, 05 Apr 2013 11:05:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10407918</guid><dc:creator>thebeebs</dc:creator><slash:comments>1</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10407918</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10407918</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2013/04/05/asp-net-mvc-4.aspx#comments</comments><description>&lt;p&gt;Over the past few months I’ve been locked away in a dark cellar working on a small MVC 4 project called &lt;a href="http://zipapp.co.uk"&gt;ZipApp&lt;/a&gt;. It’s a basic Windows 8 app builder, for me one of the highlights of the project was using some of the new MVC features in anger. The last full-time project I worked on was MVC 2 based… it’s amazing to see how much has changed and matured in the past 3 or so years.&lt;/p&gt;  &lt;p&gt;Last week, I was chatting to &lt;a href="http://blog.stevensanderson.com/"&gt;Steve Sanderson&lt;/a&gt; and he mentioned he had some “Pro ASP.NET MVC4” books going spare and wondered if I wanted to give them to the community.&lt;/p&gt;  &lt;p&gt;I jumped at the chance and so if you want one of the 8 copies simply tweet me&amp;#160; &lt;strike&gt;@thebeebs with the hash tag #givemeABook with a link to any website you have built using .net. &lt;/strike&gt;The Competition is now closed.&lt;/p&gt;  &lt;p&gt;I’ll send the books to the 8 best websites I see. &lt;/p&gt;  &lt;p&gt;P.S. You have to be a UK based developer (but the site can be from anywhere) I’ll name the winners at 4pm today (Friday, 5th of April)&lt;/p&gt;  &lt;p&gt;&lt;img title="Ohhh Shiny" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="Ohhh Shiny" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-38-93-metablogapi/7167.books_5F00_2C1C41CA.jpg" width="400" height="300" /&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;The Winners were:&lt;/p&gt;  &lt;blockquote class="twitter-tweet"&gt;   &lt;p&gt;The MVC Book winners are ‏@&lt;a href="https://twitter.com/andiih"&gt;andiih&lt;/a&gt; ‏@&lt;a href="https://twitter.com/steentottrup"&gt;steentottrup&lt;/a&gt; ‏@&lt;a href="https://twitter.com/brendan_rice"&gt;brendan_rice&lt;/a&gt; @&lt;a href="https://twitter.com/chris_neff_pgh"&gt;chris_neff_pgh&lt;/a&gt; ‏@&lt;a href="https://twitter.com/costall"&gt;costall&lt;/a&gt; ‏@&lt;a href="https://twitter.com/ravimotha"&gt;ravimotha&lt;/a&gt; ‏@&lt;a href="https://twitter.com/petethedev"&gt;petethedev&lt;/a&gt; ‏@&lt;a href="https://twitter.com/christosmatskas"&gt;christosmatskas&lt;/a&gt;&lt;/p&gt; — Martin Beeby (@thebeebs) &lt;a href="https://twitter.com/thebeebs/status/320190030092046338"&gt;April 5, 2013&lt;/a&gt;&lt;/blockquote&gt; &lt;script async src="http://blogs.msdn.com//platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10407918" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/LvoSfbeeHZE" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/C_2300_/">C#</category><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/Competition/">Competition</category><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/MVC/">MVC</category><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/VB/">VB</category></item><item><title>How do you stop element breaking inside a CSS3 multi column layout</title><link>http://blogs.msdn.com/b/thebeebs/archive/2013/02/28/how-do-you-stop-element-breaking-inside-a-css3-multi-column-layout.aspx</link><pubDate>Thu, 28 Feb 2013 15:57:16 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10398189</guid><dc:creator>thebeebs</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10398189</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10398189</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2013/02/28/how-do-you-stop-element-breaking-inside-a-css3-multi-column-layout.aspx#comments</comments><description>&lt;p&gt;I came across a rather annoying feature today when I was trying to create a layout with &lt;a href="http://www.w3.org/TR/css3-multicol/"&gt;CSS3 multi column&lt;/a&gt;. I wanted to stack some divs on top of each other in columns.&lt;/p&gt;  &lt;p&gt;My first attempt lead to this, which was not what I wanted:&lt;/p&gt;  &lt;p&gt;&lt;img title="First Attempt" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="Shows a CSS test" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-38-93-metablogapi/1663.image_5F00_15665A6A.png" width="420" height="253" /&gt;&lt;/p&gt;  &lt;p&gt;I wanted the tile’s to break to the next column&amp;#160; if they didn’t fit into the column in their entirety. It took me a while to find out what I need to do was add the following code to each div:&lt;/p&gt;  &lt;div id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:271f4aed-0637-4365-9592-7096c1d817b1" class="wlWriterEditableSmartContent" style="float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px"&gt;&lt;pre name="code" class="js"&gt;break-inside:avoid;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;This tell the browser to avoid breaking an element in half or as the spec puts it:&amp;#160; “Avoid a page/column break before inside the generated box.”&lt;/p&gt;

&lt;p&gt;&lt;img title="Second Attempt" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="My CSS layout experiment, this one now works." src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-38-93-metablogapi/3223.image_5F00_6D53AB4A.png" width="420" height="250" /&gt;&lt;/p&gt;

&lt;p&gt;Code can be found here: &lt;a title="http://jsfiddle.net/zR2FY/" href="http://jsfiddle.net/zR2FY/"&gt;http://jsfiddle.net/zR2FY/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Please Note: All the code is standards based (i.e. Doesn't include any vendor prefixes) At the time of writing only IE10 and Opera 12 support this unprefixed syntax, if you are using Chrome then they use a slightly different syntax and –webkit- prefixes.&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10398189" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/A8NzEbNkJas" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/html5at5/">html5at5</category><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/article/">article</category></item><item><title>App Rewards Xbox Games</title><link>http://blogs.msdn.com/b/thebeebs/archive/2013/02/20/app-rewards-xbox-games.aspx</link><pubDate>Wed, 20 Feb 2013 11:39:47 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10395524</guid><dc:creator>thebeebs</dc:creator><slash:comments>1</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10395524</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10395524</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2013/02/20/app-rewards-xbox-games.aspx#comments</comments><description>&lt;p&gt;Update: All ARE NOW GONE! Here are the winners:&lt;/p&gt;  &lt;p&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-38-93-metablogapi/7587.image_5F00_795B19EC.png" width="449" height="510" /&gt;&lt;/p&gt;  &lt;p&gt;After being taunted by Mike I have 6 Xbox games to give away… The first 6 Folks to tweet with the hashtag&amp;#160; #thebeebsIsbetterthanMtaulty #apprewards and a link to the rewards programme &lt;a href="http://www.appbuilder-rewards.co.uk/"&gt;http://www.appbuilder-rewards.co.uk/&lt;/a&gt; will get them.&lt;/p&gt;  &lt;p&gt;The games are:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;2 x Call of Duty Game&lt;/li&gt;    &lt;li&gt;2 x FIFA 13 Game &lt;/li&gt;    &lt;li&gt;2 x Need for Speed Most Wanted Game&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;#thebeebsIsbetterthanMtaulty #apprewards &lt;a href="http://www.appbuilder-rewards.co.uk/"&gt;http://www.appbuilder-rewards.co.uk/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10395524" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/F5fPtTy9fI4" height="1" width="1"/&gt;</description></item><item><title>App rewards and why I don’t want to “Pull a BlackBerry”</title><link>http://blogs.msdn.com/b/thebeebs/archive/2013/02/20/app-rewards-and-why-i-don-t-want-to-pull-a-blackberry.aspx</link><pubDate>Wed, 20 Feb 2013 10:33:25 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10395510</guid><dc:creator>thebeebs</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10395510</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10395510</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2013/02/20/app-rewards-and-why-i-don-t-want-to-pull-a-blackberry.aspx#comments</comments><description>&lt;p&gt;On Monday the UK marketing team Launched an &lt;a href="http://bit.ly/154BDCO"&gt;app rewards programme&lt;/a&gt;… After a &lt;a href="http://storify.com/thebeebs/app-rewards"&gt;discussion on twitter&lt;/a&gt; I thought I'd put my thoughts in writing:&lt;/p&gt;  &lt;p&gt;Rightly or wrongly the total number of apps is becoming shorthand for the consumer experience that a device is going to provide. &amp;quot;It's a great phone/tablet, but doesn't have enough apps&amp;quot; is the rhetoric regurgitated by tech journalists up and down the country. For me, total number of apps on a platform is a nonsense. Too much choice is no choice at all, Interesting, compelling and well executed apps are what consumers want and they are not created overnight, they are crafted by professionals and like it or not you can't build them in a weekend.&lt;/p&gt;  &lt;p&gt;As someone who works on and cares about developer platforms, the pressure of large app numbers creates a huge challenge. You could do what Blackberry did and pay a company like &lt;a href="http://www.blackberryappgenerator.com/blackberry/"&gt;Mippin&lt;/a&gt; to auto generate thousands of apps for you, you can refuse to play the game and have every tech journalist point and laugh at your app number (oblivious to the fact that app development lifecycles are far longer than the 24 hour hackathon culture that we are all quietly obsessed with), or you can incentivise developers that you know are capable of building quality by giving them a reason.&lt;/p&gt;  &lt;p&gt;To me stuffing a store full of which are rushed ports from other platform and WebView versions of mobile websites is like opening up a museum next to the Louvre with photocopies of their art and 70,000 drawings you did last night then wondering why nobody is buying tickets.&lt;/p&gt;  &lt;p&gt;I'd love it if we could take all of our marketing money and spend it on working 1-2-1 with developers to produce only the best apps (we spend lots of time doing just that), but I have to face the realities of the current market. We can't just compete on quality of applications, we have to compete on quantity as well. It's all about quality, but on a large scale.&lt;/p&gt;  &lt;p&gt;Trying to develop a rewards program which rewards developers for building great apps rather than simply porting rubbish from other platforms is really hard. I think the UK team have done a great Job of putting together a &lt;a href="http://www.appbuilder-rewards.co.uk"&gt;developer rewards program&lt;/a&gt; that tries to encourage quality by giving developers time and incentivizing them to incorporate Azure, Phone and Windows 8.&lt;/p&gt;  &lt;p&gt;Rewards programs are only a fraction of what we do here in the UK Developer evangelism team, as well as &lt;a href="http://www.twitter.com/thebeebs"&gt;Myself&lt;/a&gt;, &lt;a href="https://twitter.com/mtaulty"&gt;Mike&lt;/a&gt;, &lt;a href="https://twitter.com/andspo"&gt;Andrew&lt;/a&gt;, &lt;a href="https://twitter.com/lee_stott"&gt;Lee&lt;/a&gt;, &lt;a href="https://twitter.com/BenNunney"&gt;Ben&lt;/a&gt;, &lt;a href="https://twitter.com/andy_wigley"&gt;Andy&lt;/a&gt;, traveling the country to show developers how to build Windows apps, Our UK based team of around 60 work with app builders from &lt;a href="http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=b4mgHxlMUPk"&gt;small&lt;/a&gt; to &lt;a href="http://www.windowsphone.com/en-gb/store/app/natwest/0137e66b-ce97-4481-8d31-a03ec3017d52"&gt;large&lt;/a&gt;. We work on &lt;a href="http://www.appcampus.fi/"&gt;funding&lt;/a&gt;, making &lt;a href="https://dev.windowsphone.com/en-US/featured/next-app-star"&gt;heroes of developers&lt;/a&gt;, &lt;a href="http://apptothefuture.core77.com/"&gt;create apps of the future&lt;/a&gt;, &lt;a href="https://www.facebook.com/startupweekend/app_202991206406825"&gt;work with start ups&lt;/a&gt; and showcase &lt;a href="http://appgenerator.creativebloq.com/#competition"&gt;the best&lt;/a&gt; of local talent.&lt;/p&gt;  &lt;p&gt;What do you think about rewards programs? How can we tailor them to make them better for developers. Let me know, I'd love to know your thoughts on &lt;a href="http://www.appbuilder-rewards.co.uk"&gt;our programme&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10395510" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/wWBPnUeMoK0" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/article/">article</category><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/Windows8/">Windows8</category></item><item><title>App Rewards Mashup</title><link>http://blogs.msdn.com/b/thebeebs/archive/2013/02/20/app-rewards-mashup.aspx</link><pubDate>Wed, 20 Feb 2013 09:27:53 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10395494</guid><dc:creator>thebeebs</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10395494</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10395494</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2013/02/20/app-rewards-mashup.aspx#comments</comments><description>&lt;p&gt;To celebrate the Launch of the our new &lt;a href="http://bit.ly/154BDCO"&gt;App rewards programme&lt;/a&gt;, I’ll give 12 Months XBOX Live Gold Membership to the two best app names that use the hash tag #apprewards #appmash. Sadly only folks in the UK are eligible to win.&lt;/p&gt;  &lt;p&gt;You don’t need to go into detail about the app (if you don’t want)… Just tell me the name:&lt;/p&gt;  &lt;p&gt;Here is an example&lt;/p&gt;  &lt;blockquote class="twitter-tweet"&gt;   &lt;p&gt;Plants Vs Chuck Norris &lt;a href="https://twitter.com/search/%23apprewards"&gt;#apprewards&lt;/a&gt; &lt;a href="https://twitter.com/search/%23appmash"&gt;#appmash&lt;/a&gt; &lt;a title="http://bit.ly/YFEBby" href="http://t.co/X0TLLmtu"&gt;bit.ly/YFEBby&lt;/a&gt;&lt;/p&gt; — Martin Beeby (@thebeebs) &lt;a href="https://twitter.com/thebeebs/status/304161191947804673"&gt;February 20, 2013&lt;/a&gt;&lt;/blockquote&gt; &lt;script async src="http://blogs.msdn.com//platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;  &lt;p&gt;I’ll announce the winners at lunch time today around 12:00pm.&lt;/p&gt;  &lt;p&gt;The winners are :&lt;/p&gt;  &lt;blockquote class="twitter-tweet"&gt;&lt;p&gt;Zombie Sharks from Outer Space. You are Laser Lion, earths last hope for survival after the invasion of 2021 &lt;a href="https://twitter.com/search/%23apprewards"&gt;#apprewards&lt;/a&gt; &lt;a href="https://twitter.com/search/%23appmash"&gt;#appmash&lt;/a&gt;&lt;/p&gt;&amp;mdash; Macs Dickinson (@MacsDickinson) &lt;a href="https://twitter.com/MacsDickinson/status/304179711137959936"&gt;February 20, 2013&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="http://blogs.msdn.com//platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;  &lt;blockquote class="twitter-tweet"&gt;&lt;p&gt;Horse Vs Cow &lt;a href="https://twitter.com/search/%23apprewards"&gt;#apprewards&lt;/a&gt; &lt;a href="https://twitter.com/search/%23appmash"&gt;#appmash&lt;/a&gt; &lt;a href="http://t.co/fKPAESPf" title="http://bit.ly/YFEBby"&gt;bit.ly/YFEBby&lt;/a&gt;&lt;/p&gt;&amp;mdash; Andy Pierrepoint (@zangluk) &lt;a href="https://twitter.com/zangluk/status/304163673344200704"&gt;February 20, 2013&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="http://blogs.msdn.com//platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10395494" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/z7sOG5UdGcs" height="1" width="1"/&gt;</description></item><item><title>Managing an Agile project</title><link>http://blogs.msdn.com/b/thebeebs/archive/2013/01/10/managing-an-agile-project.aspx</link><pubDate>Thu, 10 Jan 2013 17:29:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10383919</guid><dc:creator>thebeebs</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10383919</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10383919</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2013/01/10/managing-an-agile-project.aspx#comments</comments><description>&lt;p&gt;I have worked as a Developer Evangelist for around 3 years now and whilst I still code, it’s been quite some time since I have worked on a software project. Over Christmas this changed as I found myself building a service to help people with no coding skills build Windows 8 Applications. &lt;/p&gt;  &lt;p&gt;Since I was the lead developer, Architect, Project Manger, Tester, Junior Developer and cleaner, I felt it was good opportunity to try the cloud version of &lt;a href="http://tfs.visualstudio.com/"&gt;Microsoft's Team Foundation Server&lt;/a&gt;. I figured, if I didn’t get on with it, I was only going to upset myself.&lt;/p&gt;  &lt;p&gt;Ordinarily I’d use a mix of technologies depending on if it was me or someone else running the software project, but generally speaking these would range from Subversion, Git or TFS for the source control, MSTest, NUnit and QUnit for the tests and something like cruise control or Team City for continuous Integration.&lt;/p&gt;  &lt;p&gt;I’d then manage the project on BaseCamp or MSProject (I have tried loads of tools, all have pro’s and cons – the biggest con of most is that I never remember their names). I’d also likely resort to good old fashioned post-it notes to manage the backlog.&lt;/p&gt;  &lt;p&gt;In summary, there are lots of moving parts and different systems that integrate with each other with varying degrees of success.&lt;/p&gt;  &lt;h2&gt;TFS in the Cloud is brilliant&lt;/h2&gt;  &lt;p&gt;There i said it. In my experience the software you use to manage your source control and build process is only as good as the guy that set the whole thing up. If they know what they are doing, you are living the dream, if they didn’t, you are in software building hell. That's what makes &lt;a href="http://tfs.visualstudio.com"&gt;http://tfs.visualstudio.com&lt;/a&gt; so good, all that crazy set up and configuration is completely taken away and you can have a system set up and running in about 10 minutes.&lt;/p&gt;  &lt;p&gt;So far these are the things I really liked:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;It’s free for up to 5 users, so I could get started without having to raise a PO.&lt;/li&gt;    &lt;li&gt;The beginners guide is really straight forward and explains all the basics very concisely.&lt;/li&gt;    &lt;li&gt;Adding Backlog and work items is really easy.&lt;/li&gt;    &lt;li&gt;It has a board view so I can see what is and isn’t in progress&lt;/li&gt;    &lt;li&gt;It integrates directly into Visual Studio to I can check-in my code changes directly against work items which in turn reflects in the systems so that others can see the projects progress.&lt;/li&gt;    &lt;li&gt;You don’t have to use TFS as your source control – You can use Git too which will make it easier for me as the UI developer I plan to use uses Git pretty much exclusively and I don’t fancy paying him to learn TFS when I only can afford a few weeks of his time.&lt;/li&gt;    &lt;li&gt;You can have the system run your tests on check-in so you don’t need a separate continuous integration server. &lt;/li&gt;    &lt;li&gt;Merging and code reviews are as easy to manage as they are with TFS&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;It’s still early days, but so far… I bloody well love it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10383919" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/u5r1AHxRl9Q" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/article/">article</category><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/C_2300_/">C#</category></item><item><title>How do I get the users current location in a Windows 8 app?</title><link>http://blogs.msdn.com/b/thebeebs/archive/2012/08/07/how-do-i-get-the-users-current-location-in-a-windows-8-app.aspx</link><pubDate>Tue, 07 Aug 2012 07:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10337304</guid><dc:creator>thebeebs</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10337304</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10337304</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2012/08/07/how-do-i-get-the-users-current-location-in-a-windows-8-app.aspx#comments</comments><description>&lt;p&gt;There are instances whilst developing Windows 8 applications in HTML5 when you discover there are two ways to do the same thing. Geolocation is one of those examples. You can either do it the same way you would in a browser like IE9 or Chrome or you could do it the WinJS way. &lt;/p&gt;  &lt;p&gt;By providing both methods it ensures that we retain all of the browser APIs from Internet Explorer so that code ported from a website will just work, whilst also ensuring JavaScript maintains the same WinRT features and namespaces that are available across C# and C++.&lt;/p&gt;  &lt;p&gt;So the question arises… which should you use? The standard API or the WinJS version? My answer is: Use whichever you prefer.&lt;/p&gt;  &lt;h2&gt;The standards based way:&lt;/h2&gt;  &lt;div id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:7ca218fa-c172-452e-a903-8eed8729bbcb" class="wlWriterEditableSmartContent" style="float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px"&gt;&lt;pre class="brush: javascript;"&gt;function getLocationBrowser() {
   if (navigator.geolocation != undefined) {
       navigator.geolocation.watchPosition(getPositionHandlerBrowser, errorHandler);
   }
}

function getPositionHandlerBrowser(pos) {
    document.getElementById('latitude').innerHTML = pos.coords.latitude;
    document.getElementById('longitude').innerHTML = pos.coords.longitude;
    document.getElementById('accuracy').innerHTML = pos.coords.accuracy;        
}&lt;/pre&gt;&lt;/div&gt;


&lt;h2&gt;The WinJS way&lt;/h2&gt;

&lt;p&gt;The main difference is that we use the promise pattern which enables us to more easily chain asynchronous calls. Also the &lt;strong&gt;pos&lt;/strong&gt; object that gets passed to the &lt;strong&gt;getPositionHandler&lt;/strong&gt; has different property names, specifically &lt;strong&gt;coords&lt;/strong&gt; is called &lt;strong&gt;coordinate&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;
  &lt;div id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:a3cd1818-8048-4a7b-9ccc-9f6b5a535f81" class="wlWriterEditableSmartContent" style="float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px"&gt;&lt;pre class="brush: javascript;"&gt;var loc = Windows.Devices.Geolocation.Geolocator();

function getLocation() {
    try {
        loc.getGeopositionAsync().then(getPositionHandler, errorHandler);
    } catch (e) {
        // Catch Errors
    }        
}

function getPositionHandler(pos) {
    document.getElementById('latitude').innerHTML = pos.coordinate.latitude;
    document.getElementById('longitude').innerHTML = pos.coordinate.longitude;
    document.getElementById('accuracy').innerHTML = pos.coordinate.accuracy;
}&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10337304" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/fdd3XKYuNzI" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/win8at8/">win8at8</category></item><item><title>How do you test the touch / on-screen keyboard inside the simulator?</title><link>http://blogs.msdn.com/b/thebeebs/archive/2012/08/06/how-do-you-test-the-touch-on-screen-keyboard-inside-the-simulator.aspx</link><pubDate>Mon, 06 Aug 2012 07:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10337016</guid><dc:creator>thebeebs</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10337016</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10337016</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2012/08/06/how-do-you-test-the-touch-on-screen-keyboard-inside-the-simulator.aspx#comments</comments><description>&lt;p&gt;I got asked this question on email last week. The simulator, for those that don’t know, is a way to test your Windows 8 application on simulated hardware. You can, for example, simulate a higher resolution or Pixel density than your actual machine. Amongst other things it also allows you to simulate touch events.&lt;/p&gt;  &lt;p&gt;To test touch you can simply click the hand icon, the simulator will then treat click events as if they were touch events. To test the touch keyboard simply click in any test field, because you are simulating touch the on screen keyboard will appear.&lt;/p&gt;  &lt;p&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Touch Keyboard" border="0" alt="A picture of the on screen keyboard inside the Windows8 simulator" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-38-93-metablogapi/5327.Keyboard_5F00_3.jpg" width="450" height="285" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10337016" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/9nzQbKO4mA4" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/win8at8/">win8at8</category></item><item><title>How do I ask the user to add my application to the lock screen?</title><link>http://blogs.msdn.com/b/thebeebs/archive/2012/08/03/how-do-i-ask-the-user-to-add-my-application-to-the-lock-screen.aspx</link><pubDate>Fri, 03 Aug 2012 07:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10336493</guid><dc:creator>thebeebs</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/thebeebs/rsscomments.aspx?WeblogPostID=10336493</wfw:commentRss><wfw:comment>http://blogs.msdn.com/b/thebeebs/commentapi.aspx?WeblogPostID=10336493</wfw:comment><comments>http://blogs.msdn.com/b/thebeebs/archive/2012/08/03/how-do-i-ask-the-user-to-add-my-application-to-the-lock-screen.aspx#comments</comments><description>&lt;h4&gt;For background task with timers to launch you must ensure that your app is added to the lock screen. You can request to be added as a lock screen application by adding the following code to your project:&lt;/h4&gt;  &lt;p&gt;   &lt;div id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:9bfcba99-2f9c-45b0-82d9-23c02df81211" class="wlWriterEditableSmartContent" style="float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px"&gt;&lt;pre class="brush: javascript;"&gt;var Background = Windows.ApplicationModel.Background;

var promise = Background.BackgroundExecutionManager.requestAccessAsync().then(
    function(result) {
        switch (result) {
            case Background.BackgroundAccessStatus.denied:
                // Background activity and updates for this app are disabled by the user. 
                break;
    
            case Background.BackgroundAccessStatus.allowedWithAlwaysOnRealTimeConnectivity:
                // Added to list of background apps.
                // Set up background tasks; can use the network connectivity broker.
                break;
    
            case Background.BackgroundAccessStatus.allowedMayUseActiveRealTimeConnectivity:
                // Added to list of background apps.
                // Set up background tasks; cannot use the network connectivity broker.
                break;
    
            case Background.BackgroundAccessStatus.unspecified:
                // The user didn't explicitly disable or enable access and updates. 
                break;
        }
    });&lt;/pre&gt;&lt;/div&gt;
&lt;/p&gt;

&lt;p&gt;You can also check to see if your app is a lock screen app by using the following code: &lt;/p&gt;

&lt;p&gt;
  &lt;div id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:b17038a3-e998-49b7-b04d-452bf450c62f" class="wlWriterEditableSmartContent" style="float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px"&gt;&lt;pre class="brush: javascript;"&gt;var Background = Windows.ApplicationModel.Background;

var result = Background.BackgroundApplications.getAccessStatus();
switch (result) {
    case Background.BackgroundAccessStatus.denied:
        // Disabled by the user.
        // Cannot display on the lock screen. 
        break;
    
    case Background.BackgroundAccessStatus.allowedWithAlwaysOnRealTimeConnectivity:
        // Added to list of background applications.
        // Can display on the lock screen.
        // Can set up background tasks and use the network connectivity broker.
        break;
    
    case Background.BackgroundAccessStatus.allowedMayUseActiveRealTimeConnectivity:
        // Added to list of background applications.
        // Can display on the lock screen.
        // Can set up background tasks but cannot use the network connectivity broker.
        break;
    
    
    case Background.BackgroundAccessStatus.unspecified:
        // The user didn't explicitly disable or enable.
        break;
    }&lt;/pre&gt;&lt;/div&gt;
&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10336493" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Thebeebs/~4/7VpB5VrdQNw" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/thebeebs/archive/tags/win8at8/">win8at8</category></item></channel></rss>
