<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>2015-12 on Funky Si's Test</title><link>https://blog-test.funkysi1701.com/2015/12/</link><description>Recent content in 2015-12 on Funky Si's Test</description><generator>Hugo -- gohugo.io</generator><language>en-gb</language><managingEditor>funkysi1701@gmail.com (Simon Foster)</managingEditor><webMaster>funkysi1701@gmail.com (Simon Foster)</webMaster><lastBuildDate>Thu, 31 Dec 2015 20:00:45 +0000</lastBuildDate><atom:link href="https://blog-test.funkysi1701.com/2015/12/index.xml" rel="self" type="application/rss+xml"/><item><title>A look back at 2015</title><link>https://blog-test.funkysi1701.com/posts/2015/look-back-2015/</link><author>funkysi1701@gmail.com (funkysi1701)</author><pubDate>Thu, 31 Dec 2015 20:00:45 +0000</pubDate><guid>https://blog-test.funkysi1701.com/posts/2015/look-back-2015/</guid><category term="Blogging">Blogging</category><category term="James">James</category><category term="Goals">Goals</category><media:content medium="image" type="image/jpeg" url="https://blog-test.funkysi1701.com/images/151218181153-2015-year-in-review-biggest-stories-wrap-up-orig-00025316-large-169.jpg"/><description>&lt;p&gt;Wow! What an amazing year 2015 has been and with 2015 about to end I thought it would be good to look back at what happened in this amazing year.&lt;/p&gt;
&lt;p&gt;
&lt;img class="img-fluid" alt="2015 Year in Review" src="https://blog-test.funkysi1701.com/images/151218181153-2015-year-in-review-biggest-stories-wrap-up-orig-00025316-large-169.jpg" loading="lazy"
width="460" height="259"
/&gt;
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;January&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I started the year with a declaration that 2015 would be my year of code. Well I have had a few breaks from programming but I have learnt loads this year. I have flitted a bit concentrating on different areas of programming but I think that has broadened my knowledge. I consider myself to be a &lt;a href="https://www.funkysi1701.com/posts/2015/im-a-developer-now/" target="_blank" rel="noopener noreferrer"&gt;programmer now&lt;/a&gt;
, which I didn’t at the start of 2015.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;February&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A first for 2015 was appearing on a &lt;a href="https://www.funkysi1701.com/posts/2015/podcasts/" target="_blank" rel="noopener noreferrer"&gt;podcast&lt;/a&gt;
. The Trekmate podcast &lt;a href="https://www.funkysi1701.com/posts/2015/ten-forward-episode-135-anti-firbob-is-back-or-simons-desert-island-trek/" target="_blank" rel="noopener noreferrer"&gt;Ten Forward&lt;/a&gt;
were the lucky ones that got to experience my first attempt at talking to the world. This continued throughout the year with appearances on &lt;a href="https://www.funkysi1701.com/posts/2015/upper-pylon-2-1-x-09-the-passenger/" target="_blank" rel="noopener noreferrer"&gt;Upper Pylon 2&lt;/a&gt;
, &lt;a href="https://www.funkysi1701.com/posts/2015/the-hunted-tng-s3-e11-the-battle-bridge/" target="_blank" rel="noopener noreferrer"&gt;The Battle Bridge&lt;/a&gt;
and even the &lt;a href="https://www.funkysi1701.com/posts/2015/star-trek-is-back-in-2017/" target="_blank" rel="noopener noreferrer"&gt;Sci-Fi Waffle&lt;/a&gt;
podcast.&lt;/p&gt;
&lt;p&gt;It was a sad time for Trekkies at the end of February when &lt;a href="https://www.funkysi1701.com/posts/2015/hes-really-not-dead-as-long-as-we-remember-him/" target="_blank" rel="noopener noreferrer"&gt;Leonard Nimoy&lt;/a&gt;
passed away.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;March&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In March I talked about my recent efforts with &lt;a href="https://www.funkysi1701.com/posts/2015/azure-traffic-manager/" target="_blank" rel="noopener noreferrer"&gt;Azure Traffic Manager&lt;/a&gt;
to help prevent downtime. I also spent a lot of time improving &lt;a href="https://www.funkysi1701.com/posts/2015/database-deployment/" target="_blank" rel="noopener noreferrer"&gt;databases&lt;/a&gt;
which led me to consider ways to deploy it better.&lt;/p&gt;
&lt;p&gt;Also in March I attended an IT networking event called &lt;a href="https://www.funkysi1701.com/posts/2015/networking-event/" target="_blank" rel="noopener noreferrer"&gt;ITBoss&lt;/a&gt;
. Free food and drinks and a discussion with fellow IT Managers.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;April&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;April was a bit of a mixed bag. I celebrated my second wedding anniversary but I also said goodbye to my car due to financial reasons.&lt;/p&gt;
&lt;p&gt;I played about with a &lt;a href="https://www.funkysi1701.com/posts/2015/the-raspberry-pi-adventure-starts/" target="_blank" rel="noopener noreferrer"&gt;Raspberry Pi&lt;/a&gt;
, mostly with the &lt;a href="https://www.funkysi1701.com/posts/2015/security-camera-with-raspberry-pi-camera/" target="_blank" rel="noopener noreferrer"&gt;camera&lt;/a&gt;
. I really must make some time to play with it more.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;May&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In May I went to a C# User Group called Leeds Sharp, was great fun and I really need to make more time and go back in 2016. It did result in one of my &lt;a href="https://www.funkysi1701.com/posts/2015/user-groups-and-f/" target="_blank" rel="noopener noreferrer"&gt;most popular blog posts&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;Usually developers don’t enjoy finding bugs in their software but I had great fun when I realised I had a &lt;a href="https://www.funkysi1701.com/posts/2015/overflow/" target="_blank" rel="noopener noreferrer"&gt;Stack Overflow&lt;/a&gt;
in one of my databases, it was easy to fix once I worked out what was going on.&lt;/p&gt;
&lt;p&gt;In May the UK went to the polls as we had another General Election.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;June&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In June I celebrated my &lt;a href="https://www.funkysi1701.com/posts/2015/50th-blog-post/" target="_blank" rel="noopener noreferrer"&gt;50th Blog Post&lt;/a&gt;
. Amazing to think I had already written 50 Blog posts, even more now!&lt;/p&gt;
&lt;p&gt;Leeds Sharp had a coding challenge, to solve &lt;a href="https://www.funkysi1701.com/posts/2015/sudoku-challenge/" target="_blank" rel="noopener noreferrer"&gt;Sodoku&lt;/a&gt;
puzzle programatically. Didn’t get it finished but made a good stab at it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;July&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In July it was SysAdmin Day and I celebrated with my staff the amazing work we do keeping everything working.&lt;/p&gt;
&lt;p&gt;Microsoft launched &lt;a href="https://www.funkysi1701.com/posts/2015/how-to-upgrade-to-windows-10/" target="_blank" rel="noopener noreferrer"&gt;Windows 10&lt;/a&gt;
in July, the latest operating system is being offered for free for a year.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;August&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In August everything changed as my son &lt;a href="https://www.funkysi1701.com/posts/2015/baby-magic-and-becoming-a-father/" target="_blank" rel="noopener noreferrer"&gt;James&lt;/a&gt;
was born. I took time out from blogging and work during this time to spend with James.&lt;/p&gt;
&lt;p&gt;Before James was born I stepped down from my involvement with the &lt;a href="https://www.funkysi1701.com/posts/2015/volunteering-for-a-technical-team/" target="_blank" rel="noopener noreferrer"&gt;technical team&lt;/a&gt;
at St Michael le Belfrey.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;September&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In september it was back to work, where I started planning how to add &lt;a href="https://www.funkysi1701.com/posts/2015/adding-internet-connection-resiliency/" target="_blank" rel="noopener noreferrer"&gt;internet connections&lt;/a&gt;
to reduce the chance of outages.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;October&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In October I took James to a &lt;a href="https://www.funkysi1701.com/posts/2015/james-goes-on-an-adventure-with-daddy/" target="_blank" rel="noopener noreferrer"&gt;dads group&lt;/a&gt;
. This was the first time Dad spent time with James without Mummy and it was awesome.&lt;/p&gt;
&lt;p&gt;I also celebrated my first birthday after becoming a father, was great to have a card from James. James also got the chance to spend time with my family in Nottingham.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;November&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In November the countdown to Christmas began with James appearing in his first Nativity as Jesus and dressed up as an Elf at a Christingle service.&lt;/p&gt;
&lt;p&gt;Exciting Star Trek news was announced this month, a new &lt;a href="https://www.funkysi1701.com/posts/2015/star-trek-is-back-in-2017/" target="_blank" rel="noopener noreferrer"&gt;TV series&lt;/a&gt;
is to be aired in January 2017. No other details yet but very exciting.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;December&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;December is all about &lt;a href="https://www.funkysi1701.com/posts/2015/christmas-2015-fosters/" target="_blank" rel="noopener noreferrer"&gt;Christmas&lt;/a&gt;
and we had a great Christmas time as a family.&lt;/p&gt;
&lt;p&gt;Sadly York was hit by Floods just after Christmas, luckily my family was not affected but many others have been. Hopefully by the time you read this the cleanup will be well underway.&lt;/p&gt;
&lt;p&gt;Before Christmas I spent my time counting down the days with the &lt;a href="https://www.funkysi1701.com/posts/2015/christmas-count-code/" target="_blank" rel="noopener noreferrer"&gt;Advent of Code&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What will 2016 bring?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I don’t know. There will be lots more time with James as he continues to learn and develop. I will continue to learn and develop my coding skills. Watch this space as I keep blogging about it.&lt;/p&gt;</description></item><item><title>Christmas 2015 with the Fosters</title><link>https://blog-test.funkysi1701.com/posts/2015/christmas-2015-fosters/</link><author>funkysi1701@gmail.com (funkysi1701)</author><pubDate>Thu, 24 Dec 2015 20:00:45 +0000</pubDate><guid>https://blog-test.funkysi1701.com/posts/2015/christmas-2015-fosters/</guid><category term="James">James</category><category term="Elf">Elf</category><category term="Christmas">Christmas</category><media:content medium="image" type="image/jpeg" url="https://blog-test.funkysi1701.com/images/20151206_105450.jpg"/><description>&lt;p&gt;Four months ago James David Martin Foster was born. And he is even more awesome now than when he was born.&lt;/p&gt;
&lt;p&gt;
&lt;img class="img-fluid" alt="James in a Christmas outfit" src="https://blog-test.funkysi1701.com/images/2015/20151206_105450.jpg" loading="lazy"
width="747" height="1328"
/&gt;
&lt;/p&gt;
&lt;p&gt;As I write this James only has a few sleeps (as James sleeps multiple times in a day I can’t put an exact number) until his first Christmas. James is pretty much unaware of what is going on as he is still too young but that doesn’t stop his parents enjoying the season.&lt;/p&gt;
&lt;p&gt;He has lots of Christmas themed clothes which we have been enjoying taking pictures of him wearing. He makes a great looking elf I think.&lt;/p&gt;
&lt;p&gt;We took James to his first Christingle service at &lt;a href="https://www.belfrey.org/" target="_blank" rel="noopener noreferrer"&gt;St Michael le Belfrey&lt;/a&gt;
at the start of December. A Christingle service is where you stick a candle and cocktail sticks into an orange. James loved it, he already loves looking at lights so loved looking into the light from the candle.&lt;/p&gt;
&lt;p&gt;
&lt;img class="img-fluid" alt="James at Christingle service" src="https://blog-test.funkysi1701.com/images/2015/12333053_10153912153609155_79017677_o.jpg" loading="lazy"
width="1144" height="2048"
/&gt;
&lt;/p&gt;
&lt;p&gt;Another Christmas activity we did this year as a family was to appear in a nativity. St Michael le Belfrey every Christmas hold a cafe to tell people the good news about Christmas and they have a nativity outside which includes donkeys. Don’t we make a great holy family. (Excuse the coffee cups but it was cold.)&lt;/p&gt;
&lt;p&gt;Me and James’s mummy have gone a bit crazy with buying him presents, we have both got him lots of things to open on Christmas morning (or more likely mummy/daddy will do the opening)&lt;/p&gt;
&lt;p&gt;James also has three Christmas days to look forward to, with different sides of the family each no doubt with him as the centre of attention.&lt;/p&gt;
&lt;p&gt;Exciting times. Happy Christmas everyone, make yours as special as ours.&lt;/p&gt;
&lt;p&gt;
&lt;img class="img-fluid" alt="Family in nativity scene" src="https://blog-test.funkysi1701.com/images/2015/12309579_10153809916077792_2703731936729335666_o.jpg" loading="lazy"
width="810" height="1080"
/&gt;
&lt;/p&gt;</description></item><item><title>The Christmas count down with code</title><link>https://blog-test.funkysi1701.com/posts/2015/christmas-count-code/</link><author>funkysi1701@gmail.com (funkysi1701)</author><pubDate>Thu, 17 Dec 2015 20:00:45 +0000</pubDate><guid>https://blog-test.funkysi1701.com/posts/2015/christmas-count-code/</guid><category term="Code">Code</category><category term="Challenge">Challenge</category><category term="Santa">Santa</category><category term="HappyChristmas">HappyChristmas</category><media:content medium="image" type="image/jpeg" url="https://blog-test.funkysi1701.com/images/adventofcode.jpg"/><description>&lt;p&gt;In December we count down the days to Christmas. People often have advent calendars filled with chocolates or even Lego.&lt;/p&gt;
&lt;p&gt;But what about if you are a programmer, how can you count down the days till Christmas? What about if you had a daily Christmas themed coding challenge? Well &lt;a href="https://adventofcode.com/" target="_blank" rel="noopener noreferrer"&gt;adventofcode.com&lt;/a&gt;
is the answer.
&lt;img class="img-fluid" alt="Advent of Code Christmas coding challenge website" src="https://blog-test.funkysi1701.com/images/adventofcode.jpg" loading="lazy"
width="691" height="767"
/&gt;
&lt;/p&gt;
&lt;p&gt;Each day a new challenge is available. So far the challenges are related to Christmas and Santa delivering his presents. The challenge is split into two closely linked parts. You are given a randomly generated input and your need to give an answer using a short string or number.&lt;/p&gt;
&lt;p&gt;The challenges are getting harder, with some completely defeating me, (not surprising with my limited programming knowledge). The challenges are language independent so you could try them in javascript or c#. I have been using Visual Studio and C# and my code is viewable on &lt;a href="https://github.com/funkysi1701/AdventSolution" target="_blank" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;So far I have completed Challenges 1 to 6 and also 10. Partly because I found challenge 7 very difficult but I am hoping to have another go at it.&lt;/p&gt;
&lt;p&gt;While coding through these challenges I have done a fair amount of refactoring. I started off with a simple console app with most of my code in one method. As the number of challenges increased I started moving the code for each challenge into its own class, with methods and properties that were unique to the challenge. I also added a main menu so you can choose which challenge to run. Some of my code to answer the challenges takes some time to run so this was quite a time saver over running each challenge in order.&lt;/p&gt;
&lt;p&gt;These challenges are very good at teaching me things about coding. I have got to think about data structures, what is the best way to store this information, classes and methods and return types, how to output data to the screen, how to input/import data.&lt;/p&gt;
&lt;p&gt;Before I try and work on the next challenge lets have a look at the first challenge:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Santa is trying to deliver presents in a large apartment building,
but he can’t find the right floor –
the directions he got are a little confusing.
He starts on the ground floor (floor 0)
and then follows the instructions one character at a time.
An opening parenthesis, (, means he should go up one floor, and a closing parenthesis, ),
means he should go down one floor.
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This is a simple loop through a long string of ( and ) and keep track of the floor number you are on to calculate what floor Santa finishes on. The second part of the challenge asks at what point in your input string does santa reach the basement (floor -1)&lt;/p&gt;</description></item><item><title>SQL Server Management Studio</title><link>https://blog-test.funkysi1701.com/posts/2015/sql-server-management-studio/</link><author>funkysi1701@gmail.com (funkysi1701)</author><pubDate>Thu, 03 Dec 2015 00:00:00 +0000</pubDate><guid>https://blog-test.funkysi1701.com/posts/2015/sql-server-management-studio/</guid><category term="Database">Database</category><category term="SQL">SQL</category><description>&lt;p&gt;I use SQL Server Management Studio all the time for writing queries, getting data and general SQL development.&lt;/p&gt;
&lt;p&gt;
&lt;img class="img-fluid" alt="SQL Server Management Studio" src="https://blog-test.funkysi1701.com/images/2015/sql-server-2012-management-studio-splash-screen.png" loading="lazy"
width="529" height="360"
/&gt;
&lt;/p&gt;
&lt;p&gt;I have enjoyed seeing the improvements that each new version of SQL Server Management Studio (SSMS) introduced. One great improvement was intellisense.&lt;/p&gt;
&lt;p&gt;This feature saves typing and reduces errors by automatically suggesting tables, column names or other database objects.&lt;/p&gt;
&lt;p&gt;A common query that I get asked to write is provide a spreadsheet that gives the information that satisfies certain criteria. This is easy to do in SSMS, you can write the query, click execute and the rows that satisfy the criteria are displayed. These rows can then be easily copy/pasted into Excel or other spreadsheets.&lt;/p&gt;
&lt;p&gt;A common data item that gets stored in databases is addresses and addresses often contain line breaks to make the data display better. In the earlier versions of SSMS, when you copied and pasted these line breaks were ignored and the data displayed the same in SSMS as it did in Excel. However in the more recent version, theses line breaks got copied across breaking your spreadsheet and making it hard to see what data corresponded with what.&lt;/p&gt;
&lt;p&gt;Now I don’t know if this should be described as introducing a bug or fixing one. I can easily argue both sides. If your data contains a line break and you copy this data it should include the line break in the destination, but if it does that it displays badly in Excel.&lt;/p&gt;
&lt;p&gt;The fix I have been using until recently is to use the following TSQL command in my queries.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sql" data-lang="sql"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;SELECT&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;REPLACE&lt;/span&gt;(&lt;span style="color:#66d9ef"&gt;REPLACE&lt;/span&gt;(&lt;span style="color:#f92672"&gt;@&lt;/span&gt;str, CHAR(&lt;span style="color:#ae81ff"&gt;13&lt;/span&gt;), &lt;span style="color:#e6db74"&gt;&amp;#34;), CHAR(10), &amp;#34;&lt;/span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This command replaces any line breaks with an empty string. Both Char(10) and Char(13) are needed because you can have different types of line breaks. This is great if you are writing the script from scratch but isn’t great if your are running a stored procedure or your query has a lot of columns.&lt;/p&gt;
&lt;p&gt;The answer to this is to use Visual Studio to run your SQL query. In Visual Studio you can write and run queries via Server Explorer and the results produced don’t contain line breaks. I have only just discovered this solution, but so far it has worked and is very easy to do, plus as I do most of my development in Visual Studio anyway it saves me having to open SSMS to test my queries.&lt;/p&gt;</description></item></channel></rss>