'Tech' blog posts

Create a cloned SQL Server Azure Database

Today, I wanted to create a clone of a SQL Server Azure database. I was looking at various ways of doing this, including exporting and re-importing the database, but thankfully, there is a much easier way.

I ran the following SQL command against the master database on the SQL Azure server:

CREATE DATABASE New_database
AS COPY OF Old_Database

 For more details, check out the official documentation and this Idera blog post.


Improving the experience for touch and mobile input

How to Simplify Input with Steppers. I've always been a fan of Luke Wroblewski. He simplifies UI and input problems, and demonstrates why they shouldn't have been complicated in the first place.

Improve touch UI with steppers

Our mobile apps and touch screen systems are pretty good as they are, but they will be given the LukeW treatment in their next iteration. As we all know, there is always room for improvement.

See the entire series of videos, they're short and well worth your time, regardless of your industry.


Testimonials 2 - The Sequel

In last week's blog post I bemoaned the fact that search engines had conspired to give Dovetail a lot of useless traffic; namely people looking for sample testimonials. That post piqued my interest in what people wanted with our "sample testimonials".

"Surely they're just satisfied customers looking for inspiration to write their own genuine testimonials", I thought. I was wrong.

 I started by taking snippets from our testimonials, replacing the word "Dovetail" with the wildcard character (*) and performing a search. Here is a sample. Our testimonials were being stolen.

Some people used our testimonials as starting points for their own unique variation. They'd copy a couple of sentences from our testimonial and then they'd take it from there:

Textomation Testimonial

 

Others would be a bit lazier and just replace "Dovetail" with their own company name:

CreativeNic Testimonial

 Others were lazier still. They didn't even manage to remove "Dovetail":

BlackSwan Testimonial

 My personal favourite is a copy of our testimonial from Inland Fisheries Ireland, a very specific testimonial:

Portia Salmon Testimonials

As you can imagine, I began to doubt all testimonials as I went through this process. I have been assured, however, that all of Dovetail's testimonials are real. 


Teamwork.com launch party

Last night myself, Martin, Garrett and some friends from the Dublin software development scene had the privilege of witnessing the launch of Teamwork PMs latest iteration - the birth of Teamwork.com.

A little Googling will tell you just how much they spent on that domain name, and there is discussion about how crazy it seems. But I think the important message which can be taken away from this is that the guys have huge pride and confidence in what they are doing. They are here for the long haul and to continue to solve real problems, really well. The polish of the new product and the quality of their marketing website certainly backs up that message.

Teamwork.com Launch - Peter McCanney and Martin WallaceHaving fun with the height difference between Martin and Peter McCanney. Photo taken from Mossy's eye level.

Garrett Heaver and Martin Wallace
Left: Garrett Heaver and Martin Wallace at the Teamwork.com launch in the gravity bar. Right: The gravity bar as seen from the Guinness Enterprise Centre, Dublin 8.


Umbraco 7 is coming

In fact it's here, in RC mode. We haven't installed it yet, but we are very excited about some of the upgrades that come with newest version of Umbraco. Umbraco is our go to Content Management System and allows us to integrate with our custom software seamlessly for our clients.

Umbraco 7

We love umbraco. We've used it as our CMS since version 3. In fact, one of our clients still uses version 3 and it's still working perfectly for their needs. But over the years, the backend management site has become quite cumbersome and was definitely in need of an overhaul. The workflow for the backend starts to creak when a site/blog starts growing in size. The new version promises to solve a lot of those problems by using more of a wordpress style for handling large news archives or blogs.

Management of media and images is also drastically improved and we know that these features will be welcomed by a lot of our clients.

Our own marketing website (this one, the one you're reading right now) will likely be our testing ground to get used to the new UI and features of Umbraco 7. Once we're happy we can deliver it as part of great software solutions to our clients with it we will begin the rollout/upgrade.


The Marvellous Muenchian Method

Recently I've been doing some software consultancy work on a payments system, to do with SEPA integration, and ISO 20022.

As part of that I've come across Steve Muench's Muenchian Method of Grouping in XSLT. It's been around for 13 years, but this is the first time I've needed it. I won't describe it here - I couldn't improve on Jenni Tennison's description here - I just want to state well done Steve. Given the constraints of XSLT 1.0 it is a very neat, elegant and efficient way to solve that particular issue.

Thanks very much Steve!


The Bird's Eye View: Issue #18

We have a new addition to the team this week. John Ludgate has joined us. With almost a decade of software development experience, John will be a very welcome addition to the team. We are extremely busy at the moment, so another developer will help us continue to deliver great solutions to new and existing clients. Welcome John! He’s just finished his first office beer so I can assume he’s enjoyed his first week.

Mailgun logo

We’ve started using Mailgun. Over the past few years, mail providers like Hotmail, Outlook and Gmail have become much more strict, when receiving mails, in an effort to combat spam. Traditionally we use our own SMTP server, but we have found that some mails to some providers are not getting through. Mailgun is a SAAS product that takes care of email for developers. As simple as email is, it is a tricky to get right when sending to lots of providers from lots of bespoke applications. We have now decided to utilise Mailgun for all future projects and updates to existing applications reducing the need for any extra software development time from the team.

Movember update Mossy Breen

It is now 2 weeks into Movember, and as promised here is a photo of my “progress”. I’m pretty happy with my new moustache, although I miss my beard, and cycling to work in the morning leaves my face pretty cold. If you can spare a few euro, please donate to raise awareness for men's health, and make my ridiculous face worthwhile.

(Edit: Photo reminds me of this -- Martin)

Milton from Office Space



An anxious moment for NASA

I love this story about the Mars Science Laboratory.

NASA found a problem with the onboard computers and had to reprogram them.  It sounds like they had to update the firmware.  

I get a little nervous updating the firmware on my phone because I don't really trust it.  It makes me wonder how the NASA engineers felt as they uploading their patch to a once-off 2.5 billion dollar experiment hurtling through space!

Mars Science Laboratory


iPad auto-rotating some images

We recently came across an issue on a customer website where a photo appeared correctly on most browsers, but was rotated ninety degrees when viewed on the iPad. The photo even showed up correctly on the Windows version of Safari.

This was puzzling us; why would one browser decide to rotate a photo when all others displayed the same photo correctly?

On further investigation, we discovered that this was because of the EXIF metadata stored in the photo. The camera, when taking the photo, saved its rotate setting for the photo in the EXIF metadata, and the iPad browser was just applying this rotate.

So the simple solution is to remove the EXIF metadata from the photo. This can be done using an application such as IfranView, or an image compression website such as PunyPNG. We used PunyPNG, and the reduced image now displays perfectly on the iPad.


Multiple Screen Sizes in Android

One of the big differences we found between iOS and Android development, is handling the multitude of screen sizes that come with Android devices.

The Android solution to this has changed in Android 3.2. Prior to this, different screen layouts could be specified for small (~<4 inch), normal (~4 inch), large(~6 inch) and xlarge (~10 inch) screens. In Android 3.2, you can specify layouts based on dp (density-independent pixel) units.

What we like most is that layouts can be specified for different available screen widths, meaning that layouts can be specified for different screen orientations. The YouTube app on the GalaxyTab does this very well; in the portrait orientation, the related videos section appears at the bottom, but when switched to the landscape orientation, this section appears on the right, making maximum use of the space available.

The android documentation contains detailed information on screen support, including how to handle screens of differing pixel densities.