A look back at 2015

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.151218181153-2015-year-in-review-biggest-stories-wrap-up-orig-00025316-large-169

January

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 programmer now, which I didn’t at the start of 2015.

February

74cc28416b646ae6f87d5a502fbd03b7A first for 2015 was appearing on a podcast. The Trekmate podcast Ten Forward were the lucky ones that got to experience my first attempt at talking to the world. This continued throughout the year with appearances on Upper Pylon 2, The Battle Bridge and even the Sci-Fi Waffle podcast.

It was a sad time for Trekkies at the end of February when Leonard Nimoy passed away.

March

In March I talked about my recent efforts with Azure Traffic Manager to help prevent downtime. I also spent a lot of time improving databases which led me to consider ways to deploy it better.

Also in March I attended an IT networking event called ITBoss. Free food and drinks and a discussion with fellow IT Managers.

April

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.

I played about with a Raspberry Pi, mostly with the camera. I really must make some time to play with it more.

May

CGHJLlbWEAAbl14In 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 most popular blog posts.

Usually developers don’t enjoy finding bugs in their software but I had great fun when I realised I had a Stack Overflow in one of my databases, it was easy to fix once I worked out what was going on.

In May the UK went to the polls as we had another General Election.

June

In June I celebrated my 50th Blog Post. Amazing to think I had already written 50 Blog posts, even more now!

Leeds Sharp had a coding challenge, to solve Sodoku puzzle programatically. Didn’t get it finished but made a good stab at it.

July

In July it was SysAdmin Day and I celebrated with my staff the amazing work we do keeping everything working.

Microsoft launched Windows 10 in July, the latest operating system is being offered for free for a year.

Augustjames4

In August everything changed as my son James was born. I took time out from blogging and work during this time to spend with James.

Before James was born I stepped down from my involvement with the technical team at St Michael le Belfrey.

September

In september it was back to work, where I started planning how to add internet connections to reduce the chance of outages.

October

In October I took James to a dads group. This was the first time Dad spent time with James without Mummy and it was awesome.

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.20151206_105450

November

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.

Exciting Star Trek news was announced this month, a new TV series is to be aired in January 2017. No other details yet but very exciting.

December

December is all about Christmas and we had a great Christmas time as a family.

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.

Before Christmas I spent my time counting down the days with the Advent of Code

What will 2016 bring?

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.

Christmas 2015 with the Fosters

20151206_105450Four months ago James David Martin Foster was born. And he is even more awesome now than when he was born.

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.

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.

James at ChristingleWe took James to his first Christingle service at St Michael le Belfrey 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.

12309579_10153809916077792_2703731936729335666_oAnother 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.)

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)

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.

Exciting times. Happy Christmas everyone, make yours as special as ours.

The Christmas count down with code

In December we count down the days to Christmas. People often have advent calendars filled with chocolates or even Lego.

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 www.adventofcode.com is the answer.

Christmas coding challenges

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.

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 github.

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.

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.

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.

Before I try and work on the next challenge lets have a look at the first challenge:

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.

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)

Roddenberry comic

roddenberryThe Oatmeal created a comic which you really should check out. It can be found here.

The comic tells the story of a plane crash, in which the 25 year old co-pilot goes back into the burning plane to rescue passengers and lead a group of survivors through the desert to find help.

The co-pilot was named Gene Roddenberry, and after these events he stopped being a pilot and became a writer and eventually created Star Trek.

In these uncertain times when you are stranded in the desert, get out and help someone, it may change the world.

SQL Server Management Studio

I use SQL Server Management Studio all the time for writing queries, getting data and general SQL development.

SQL Server Management Studio

I have enjoyed seeing the improvements that each new version of SQL Server Management Studio (SSMS) introduced. One great improvement was intellisense.

This feature saves typing and reduces errors by automatically suggesting tables, column names or other database objects.

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.

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.

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.

The fix I have been using until recently is to use the following TSQL command in my queries.

SELECT REPLACE(REPLACE(@str, CHAR(13), ”), CHAR(10), ”)

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.

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.

Black Friday Deals

Over 50% Off this Black Friday!

Black Friday

Yes your heard it correctly even www.funkysi1701.com has amazing offers.

It is like the whole world has gone “Black Friday” mad, with every company in the world offering amazing and unmissable deals.

So in an attempt to cash in on all the Black Friday fuss I will write a quick blog post about it.

I mentioned 50% off well this month I have blogged 50% less than usual. There is one main reason for this, my new born son James is taking a lot of my time and energy and I think it will take a few months of sporadic blog posts before I get the balance right.

I am not a big fan of spending just for the sake of it. Encouraging people to spend money they don’t have, on things they don’t need shouldn’t be encouraged. However times are hard so companies need to do what they need to, to try and make money.

Star Trek is back (in 2017)

3f448330857e4ca7ba40ab5465a3c2cb62cdb98cAs you have probably heard Star Trek is coming back to TV. I recently joined with the Sci Fi Waffle podcast to discuss.

Sci Fi Waffle: Episode 12 – STAR TREK IS BACK!!

In this episode we discuss the great news that Star Trek IS BACK!!.

Shawn and I are joined again by James Roberts and TrekMates News feed Editor Simon Foster to speculate about the announcement of a new Star Trek TV series due to debut in January 2017.

James can be found on our sister podcast The Battle Bridge and Simon can be found on Twitter @funkysi1701

To listen go http://www.trekmate.org.uk/sci-fi-waffle-episode-11-star-trek-is-back/, to leave feedback go http://forum.trekmatefamily.com/

How to speak to the whole world

global blog mapHaving a website is an easy way to reach people across the globe. This website has reached people in almost every continent.

I have had visitors in each of the following countries.

United States
United Kingdom
Canada
Germany
Australia
India
France
Vietnam
Netherlands
Poland
China
Russia
Sweden
European Union
New Zealand
Hungary
Norway
Spain
Brazil
Hong Kong SAR China
Belgium
Denmark
Italy
Switzerland
Finland
Turkey
Romania
Singapore
Israel
Indonesia
Serbia
South Africa
Lithuania
Mexico
Ireland
South Korea
Taiwan
Greece
Bulgaria
Ukraine
Japan
Austria
Kenya
Portugal
Czech Republic
Colombia
Philippines
United Arab Emirates
Moldova
Slovenia
Malaysia
Ghana
Argentina
Venezuela
Bangladesh
Iceland
Croatia
Panama
Belarus
Slovakia
Albania
Kazakhstan
Algeria
Puerto Rico
Thailand
Estonia
U.S. Virgin Islands
Pakistan
Latvia
Chile
Sri Lanka
Malta
Costa Rica
Morocco
Ethiopia
Réunion
Uruguay
Honduras
Cyprus
Tunisia
Nepal
Cameroon
Paraguay
Gambia
Peru
Mauritius
Bermuda
Cambodia
Jersey
Egypt
Macedonia

How cool is that! If you know anyone from any country not mentioned above, send them a link to this page and lets see if we can get this blog seen in even more countries.

Only a few years ago it would have been incredibly difficult to communicate your ideas to the whole world, now it is available to everyone at a touch of a button.

The internet has a lot to answer for. On the one hand it is blamed for a decrease of communication between people as they stare at their devices all the time, but on the other hand it has greatly improved communication over larger distances like the use of Skype or the ability to broadcast your ideas on websites and social media.