15 June 2015, by Dan Corder
A little while ago whilst going through some of my digital photos I noticed that some of them weren’t displaying correctly. Somehow some of my files had got corrupted; oh dear.
I do have a back-up system, but it worked by copying all the files from my NAS (network attached storage device) on to a removable drive. I had two removable drives that I used in rotation so I had a fairly short history to look back through. Fortunately some of the files had got corrupted in the window I could recover from, but some had gone bad too long ago and were now permanently broken.
So I decided that I needed to do something to notice this kind of issue in the future without having to regularly look at each of my thousands of files. I had a look around the internet and found a few things that were free and would probably work OK but not do exactly what I wanted (and also did a whole lot more that I didn’t want), and the usual cloud back-up systems that would also solve my problem, but for a fee. (more…)
20 September 2012, by Dan Corder
So what does a company of software developers do in its free time? Well sometimes the answer is “write more code for fun”. To this end Softwire recently held a Battleships tournament. The competition consisted of writing a bot that implemented a particular battleships playing interface. All the bots were then played off against each other in a league format. Each match in the league was a best of 100 games series. A new bot was instantiated for each match, but the same bot played all 100 games within a match. This meant that some bots were able to learn from their opponent’s earlier games to try and do better as the match went on.
The tournament itself was made up of three two week rounds and was kicked off with an evening of beer, pizza, and coding. A league was run at the end of each round and the top ten players were awarded tournament points. After the third round the player with the most tournament points became the overall winner.
1 April 2012, by Dan Corder
Shortly before Christmas a number of intrepid Softwire employees braved the cold and went out on the inaugural Softwire Photo Walk. We started at the Tower of London and, over the course of an afternoon, crossed Tower Bridge and walked west along the south bank of the Thames before finishing back in the warm with some beer and food.
There were four categories for inspiration – Water, Urban, People, and Close-up, but everyone was of course free to take whatever photos caught their eye. Here’s a selection of the photos we came back with.
10 February 2012, by Dan Corder
A common problem with LINQ to Entities is that it can often lead to code repetition. This post explains why and when this happens, and how to get around it using LinqKit.
30 December 2011, by Dan Corder
At Softwire we’re lucky in that we celebrate Christmas twice each year. Once with a very long lunch just for employees, and once with a slightly more sophisticated evening meal to which we can invite guests.
Here’s a peek into what we get up to at these events. Merry Christmas!
1 December 2011, by Dan Corder
It used to be that if you wanted to use an unusual font on a website you had three choices:
- Somehow ensure that all your users have the font. Not many exciting fonts are on all Mac and Windows systems by default, plus you would also have to hope that Linux users will have a similar enough font that the site still looked reasonable to them. In an internal corporate site you may have more control over the client machines, but that’s only likely to be worthwhile in a very limited number of cases.
- Generate an image of the text you want in the font you want to use – this works great until you want to copy and paste the text, or read it automatically to a visually impaired user. Plus, it’s a bit of pain generating and updating all those images.
- Use Flash, which can embed fonts and give you very fine control of text display. However, this can cause new issues, especially if you don’t have any Flash experience and just want to put up a simple site.
Now finally, in CSS3 this situation is being addressed with the introduction of the @font-face attribute. Using @font-face will delegate the displaying of text in your shiny new font to the browser. This makes using different fonts simpler and more reliable in browsers that support it, and will not break anything in older browsers that don’t.