Thursday, 30 June 2016

It’s new & it’s Naked – our new website is here!

After a period of restructuring, we are proud to reveal our brand new website! We’ve also made our glossy black brochures even better (with even more kids strapped to rockets or pulling silly faces).

We’d love to know what you think of our efforts, so please head over to and take a look at our shiny new home!

Our blog section is crammed with tech articles, event reviews and musings from our apprentice Lewis, our brochures are all available online (naturally) and you can also find us on all the usual social media platforms – facebook, twitter and LinkedIn.

You’ve no excuse not to check us out!

Monday, 20 June 2016

Immune to the EU referendum?

I actively avoid posting about politics on social media. To me it’s a personal thing. I’ve also been avoiding posting about the European Referendum. I have a view, in fact I’ve already voted, but it’s personal.

There are a lot of businesses who are encouraging their employees to vote one way or the other, notably BMW and JCB. I’ve considered the referendum form a Naked Element point of view and, as things stand, I cannot see clearly how either outcome would affect us. Our current clients are continuing to invest in the software we’re writing for them and don’t appear to be putting off any decisions until after the referendum. New enquiries are still flowing in at the same rate.

We have a client for whom we recently finished a web application. They asked us to bill them for the hosting every month. Following the first invoice they asked if they could be billed for the next twelve months instead. We use Digital Ocean for hosting and they charge in dollars. Normally this wouldn't be a problem, we'd calculate the cost of the hosting for the most recent month, multiply it by twelve and just absorb any, likely minor, fluctuations in the exchange rate.

One of the most frequently reported likely consequences of leaving the European Union is a significant drop in the value of sterling compared to other currencies, such as the dollar. This could significantly increase the cost of Digital Ocean hosting to Naked Element. Is it enough to worry me about the possibility of exit or to ask Naked Element employees and associates to vote in? No, of course not. If we do leave and the exchange rate does drop, it’s just something our business, like many others, will have to deal with. The worst case scenario is that we have to find ourselves a UK provider or one who charges a reasonable rate in GBP.

So far this is the only potential effect of the referendum I am aware of for Naked Element. I am sure time will tell, but Naked Element appears otherwise immune. Once we explained the situation, our client was happy to wait until after the referendum for their twelve month hosting invoice.

In the meantime I'm looking forward with interest to this week’s result and to see how the country votes and the immediate and long term effects of the decision.

Friday, 17 June 2016

Hot Gossip: Microsoft Buy Linkedin for $26.2 bn

There’s been another tech buyout. Microsoft has announced the purchase of Linkedin for a cool $26.2 bn. Even for the titans of software, that’s more than pocket change.

Indeed, it’s the tech company’s largest acquisition ever, so it’s safe to say that plans for future growth are floating on a cloud of optimism. But will this partnership have the whereabouts to satisfy professionals of the business world?

Let’s face it, neither Linkedin nor Microsoft have the best track record for performance or a reputation that fills end-users with confidence.

Microsoft products are often described as “useless” and their customer service is a shambles. Linkedin is not without its user critics either and attacks by cybercriminals have dented the credentials of social media platforms.

However, let’s give innovation a chance here and float on that same silver-lined cloud the companies CEO’s are sky-surfing on. Maybe between them, Microsoft and Linkedin can cover themselves in glory.

Increase Productivity

In an email to staff, Microsoft CEO noted how similar the culture of Linkedin is with the software company. Both firms have ambitions to reinvent productivity and business processes and “seek to empower every person and organisation on the planet.”

The intention behind this common pursuit is to help “people find jobs, build skills, sell, market and get work done.” So they are covering all the bases. And the tools are there, or almost there, to make it work.

Usability is an issue for Linkedin users. It can sometimes feel like a service you are obligated to do rather than a tool you want to use. It’s not all that effective for networking either.

In the last few years, Linkedin has moved to address user issues. The capacity to share content, leave comments, add images and publish posts has bought the platform in line with other leading networks such as Facebook. It’s helps with brand visibility at least.

Last year, the professional network purchased with a view to providing effective tools that aid training and learning. That’s all very well and good for job seekers, but what about professionals hoping to win contracts or partner with other firms?

Linkedin Profinder

Launched earlier this year, Profinder is an old idea wrapped in new packaging. The service gives companies a platform to promote their projects and find freelancers with skills to pull it off.

The service essentially mimics freelance for hire sites like People per Hour and Fiverr. For the time being, Profinder is free to use for both companies and freelancers, and creates another potential revenue stream for skilled professionals.

The benefit for businesses is you can find trustworthy and reliable professionals to complete your projects. There is an argument that professionals on Linkedin have more credibility.

However, the problem for freelancers is, winning work becomes a bidding war against other service providers. Rarely will you earn what you are worth and may have to pay transaction fees on top.

It will be a tidy income screen for the merger. Microsoft will help program the interface to make it user-friendly.

But where else does Microsoft fit into the bigger picture? Other than rescuing Linkedin from financial disaster after shelling out £1.5 bn for Lynda, it’s not easy to see how the software company can improve the business model. A few tweaks to the interface does not justify the £26.2 bn spend.

It will be interesting to see how this adventure pans out. After all Microsoft hardly have the best track record when it comes to collaboration. Last month, the tech company broke ties with Nokia and wrote off a $7.2 bn investment that lasted just two years.

And the companies previous venture into social media was disastrous. Have you heard of the chat service Yammer? No, not many other people have either because nobody uses it. Probably because Microsoft tried to tie Office 365 with it! Something Linkedin professionals might have to cope with.

The partnership between Microsoft and Linkedin could prove to be pretty exciting, but given Microsoft’s track record, the network is likely to get worse before it gets better. Watch this space!

Saturday, 11 June 2016

NorDev Event: Fast-paced multiplayer & Stories of British-based Robotics Start-ups

What: Fast-paced multiplayer & Stories of British-based Robotics Start-ups

When: Wednesday, July 6, 2016 @ 6:30pm

Where: The King's Centre, King Street, Norwich, NR1 1PH

How much: Free


Fast-paced multiplayer: an introduction to client-side prediction and server reconciliation. 
Gabriel Gambetta (@gabrielgambetta)

Creating multiplayer games is hard. One of the reasons is that networks are unreliable and laggy. In this talk we'll discuss several techniques to give players a smooth experience even under suboptimal conditions.

Gabriel Gambetta 

Gabriel was a senior software engineer at Improbable for a year because turning into its Head of Marketing for some reason. Before Improbable he had spent four years as a software engineer at Google, and nine years running Mystery Studio, a small indie dev studio, where he started researching networking techniques for multiplayer games after making yet another match-three stopped being challenging.

Transforming the Status Quo: Stories of British-based Robotics Start-ups 
Dominic Keen (@dominickeen)

Autonomous robots open up amazing possibilities for highly productive one-to-many modes of human-machine operation.  Rather than needing to push your vacuum cleaner around the house, you’ll soon just get it started and tell it whether it has done a good job at the once it has cleaned up all the dust. These new types of autonomous machines will allow us to reclaim much lost time and will usher in new paradigm of hyper-performance that entirely transforms the status quo for both the users and creators of technology. Through telling the stories of the foremost British-based robotics start-ups, Dominic will demonstrate the breadth of robotic invention and the hope it gives us all for the future.

Dominic Keen 

Dominic Keen started Britbots to helping British robotics start-ups flourish by providing access to capital and opening up new commercial opportunities.  He brings a wealth of experience to rapidly growing early-stage businesses, having previously floated the software business he created on the London Stock Exchange. Dominic has been a member of the Great Britain judo team and graduated in Engineering from Cambridge University. He is a passionate advocate of the societal and economic benefits of widespread robotisation.

"I am a successful British entrepreneur. Having previously floated the software business that I founded on the London Stock Exchange, I now help exciting ventures to maximise their growth potential. My fascination with all things robotic drives an impassioned evangelism of the field."

Monday, 6 June 2016

A little piece of code

I’d like to introduce you to a little piece of code. If, as an experienced developer, you’ve had an interview with me, the chances are you’ve been asked to evaluate this piece of code in one form or another:
public static void main(String[] args)
final Connection con =
final Statement stmt = con.createStatement();
final ResultSet rs = stmt.executeQuery("...");
System.out.println(rs.getString("id") + ": " +
catch(Exception e)

Assuming nothing goes wrong, this piece of code is just fine. However, if there is an exception there is a resource leak.

In 2000 I worked on my first commercial  project, a Windows desktop application. There was a certain amount of graphical manipulation and every so often the application would grind to a halt and and then eventually crash. A few people I spoke to suggested that there might be a resource leak. I was fresh out of university and I couldn’t believe that C++ for Win32 wouldn’t clean-up after itself. How wrong was I? It was a resource leak. After I got a handle to and used a Win32 resource, I wasn’t releasing it. As soon as I wrote a guard class to manage and automatically release the resource the problem went away.

I’ve been fanatical about memory and resource leaks ever since.

In 2013 I worked on a Java project with a large number of integration tests which executed a few scripts against the test database once each for many tests. All the tests ran just fine individually in my IDE, but sometimes when running all the tests at the command line, it would just hang. I don’t remember how I worked it out, but I realised I was running out of database connections as upping the maximum number available to the tests fixed the problem. Every time I encountered the problem I upped the number of connections in the pool. This of course can only go so far and I was very uncomfortable about it as I didn’t understand why the connections weren’t being released after the tests.

I’m using the same piece of boilerplate Java test code in a current project and a couple of times the problem came back. Then I reached the limit of the number of connections I could create in the pool, so I had to find the leak. This time it didn’t take too long and the problem was here:
   ScriptUtils.executeSqlScript(dataSource.getConnection(), resource);
catch (SQLException e)
   // ...

Calling getConnection on the data source returns an unmanaged connection object.  As you would expect, executeSqlScript doesn’t and doesn’t expect to have to manage the connection, so every time it executed a sql script it got a connection from the pool and never put it back. No wonder, when this piece of code is being run a few hundred times it was running out of connections and just hanging.

As I said, I've been fanatical about resource management since my early professional career, but even I get caught out sometimes. This was one of those times and it reminds me not to give other developers such a hard time for obvious mistakes.

Wednesday, 1 June 2016

My last ever null check & Security: It's A Cloud Thing

What: My last ever null check & Security: It's A Cloud Thing

When: Wednesday, June 8, 2016 @ 7:00 PM

Where: Sunway House, Raglan Road, Lowestoft, Suffolk, NR32 2LW


6.30pm - Free Beer
7.00pm - Introduction
7.10pm - My last ever null check
7.55pm - More free beer
8.10pm -  Security: It's A Cloud Thing
8.55pm - Finish

As the June Norfolk Developers event is being held in Lowestoft we’ve arranged for a free minibus to leave the Kings Centre at 6pm on Wednesday 8th June to take you to the venue and for another to bring you back. Places for the taxi must be booked in advance. Please email to reserve your place. 

Security: It's A Cloud Thing 
Steve Love

Cloud Computing brings a multitude of benefits to businesses of all kinds, whether in the tech sector or otherwise. It is not without risk, however. Some of the risk is new, and some of it all too familiar. In this talk, Steve Love looks at why cyber security still matters in The Cloud.

Steve Love

Steve Love is an eclectic programmer who is fascinated by the applications of technology and its consequences. He is the founder of PerfectCobalt Cyber Security and can be contacted at

My last ever null check  
Anthony Ragu

Modern software development projects are littered with cross-cutting concerns (think logging or verification). Aspect oriented programming enables increased modularity through the implementation of interceptors and code weaving.

Not only does this simplify your code base but also ensures that, as a developer, you can focus on the actual task at hand.

Here, we will explore how to use AOP and Unity IOC Interceptors in a .NET Project to check for nulls between method calls.