11 August 2017
11 August 2017

Should You Consider Agile for Very Large IT Projects?

Many large organisations are compelled to embark on wide-ranging business-transformation IT projects. They are difficult to manage because, in the intervening months before the end of the project, the changing business environment will have forced further changes on the business. Agile holds out the promise of managing these changes more easily. Mohammad Rizvi explains, from experience, some of the the issues you are likely to face, and how you can solve them.… Read more
01 August 2017
01 August 2017

Pseudonymization and the Inference Attack

It is surprising that so much can be identified by deduction from data. You may assume that you can safely distribute partially masked data for reporting, development or testing when the original data contains personal information. Without this sort of information, much medical or scientific research would be vastly more difficult. However, the more useful the data is, the easier it is to mount an inference attack on it to identify personal information. Phil Factor explains.… Read more
17 July 2017
17 July 2017

SQL Data Aggregation Aggravation

When we have to deal with and store a lot of data, it makes sense to aggregate it so that we store only the information we actually need. If we get this right, this works well, but the design of the system takes care and thought because the problems can be subtle and various. Joe Celko describes some of the ways that things can go wrong and end up providing incorrect, inaccurate or misleading results.… Read more
28 June 2017
28 June 2017

Fighting Evil in Your Code: Comments on Comments

One of the most glib generalisations you can make about development work is to say that code should be liberally commented, or conversely that it should never be commented. As always, the truth is more complicated. There are many different types of comment and some types are best treated firmly with the delete key, where others are to be cherished and maintained assiduously. Even though it is hard to find two developers who agree on the topic of commenting, Michael Sorens warily sketches out the issues and the battleground.… Read more
10 May 2017
10 May 2017

Personal Data, Privacy, and the GDPR

Now that there have been well-publicised examples of the awful consequences of data breaches and data misuse, there is increasing public pressure for legislation on privacy and personal data that has enough clout to prosecute serious offenders. In the vanguard has been the EU data protection regulation, soon to be succeeded by the GDPR. It defines IT practices for data that are likely to extend worldwide. William Brewer gives a rundown of what he sees as the implication for IT practice.… Read more
15 November 2016
15 November 2016

Development Delusions: That it is Enough to Build a Better Mousetrap

You've written a superb, clever, application that you are trying to encourage your colleagues to use. They're not interested. Why? You've neglected the documentation. Surely, the saying goes 'Build a better mousetrap and the world will beat a path to your door'? Nope, not without comprehensive and complete documentation and marketing, it won't. Documentation is the secret of ensuring that good software will succeed. … Read more
13 October 2016
13 October 2016

Your Professional Development and the PASS Organization

There are so many ways of keeping your technical skills and knowledge up-to-date. There are books, articles, conferences, video courses and so on, but nothing beats discussion and debate with professional people in other organisations facing a similar range of technical challenges, some of which you share, and others you maybe haven't yet. PASS is unique in providing just this vital ingredient for database professionals using the Microsoft Data Stack.… Read more
04 October 2016
04 October 2016

Which Edition of SQL Server is Best for Development Work?

You might think, as a developer, that nothing but the best is good enough as a development database. You might be mistaken. There is a lot to be said for LocalDB, but Ed Elliott argues that every edition has its pros and cons, and you need to consider Cloud-based resources, VMs and Containerised databases too. There is a whole range of alternatives and how you choose depends on the type of database you are developing, but for Ed, LocalDB gets the five-star accolad… Read more
20 June 2016
20 June 2016

Strengthening the Foundations of Software Architecture

The term 'Architecture' seems to imply a plan that you can't easily subsequently deviate from. It's true that, if you abandon software architecture, you end up with a big ball of mud, but maybe the art of software is to make change much easier by planning how to implement each feature, tackling dependency issues, splitting functionality into small discrete components and considering how they should interact with each other.… Read more
16 June 2016
16 June 2016

The IT Manager’s perspective: People as an Asset

Information Technology is fast-changing, but the people who work in IT need to have a good chance of a long-term career. That means keeping up to date, not only in their current speciality, but in the wider sphere of the technology they work with. IT managers must make sure that keeping up to date with technology is part of the day to day activity of their people. How should they make sure it happens?… Read more
10 May 2016
10 May 2016

Continuous Delivery from the 19th Century to TODAY

It somehow feels like the end of an era. The National Weather Service of the USA's National Oceanic and Atmospheric Administration (NOAA) provides AWIPS 2 (The Advanced Weather Interactive Processing System) which has now advanced to the point that allows for the change to mixed-case letters. The switch will happen on May 11, after the required 30-day notification period to give customers adequate time to prepare for the change. Grief counsellors?… Read more
11 April 2016
11 April 2016

The Practical Problems of Determining Equality and Equivalence in SQL

In theory, it is easy to determine whether data is equal to, greater than or lesser than a value. Real-world data types can be surprisingly tricky, even for gauging data equivalence. Because SQL cannot remain aloof from any application's data types, you need to be aware of the ways and pitfalls of individual datatypes and how you can test for equality, equivalence, similarity, identity and all that jazz… Read more
15 February 2016
15 February 2016

Barbara Liskov: Geek of the Week

Barbara Liskov is one of the great pioneers of Computer Science, She was one of the first US women to achieve a PhD in computing and  is the inventor of  two computer languages, as well as contributing a number of ideas to system design, especially related to data abstraction, program methodology, object-oriented design, fault tolerance, and distributed computing… Read more
12 January 2016
12 January 2016

Continuous Delivery: Building a Culture of Trust

Effective team-based software development has more to do with the organisation than the technology. Teams that must cooperate are most productive when there are high levels of trust between teams and within teams. To grow a culture of trust, the participants must take conscious steps to set boundaries, agree on protocols and models, and let a shared purpose emerge.… Read more
14 July 2015
14 July 2015

SQL Style Habits: Attack of the Skeuomorphs

Although we like to think that our programming techniques are progressive and in tune with the bleeding edge of software development practices, too often they are directly influenced by restrictions faced in the post-war decades when computers first became mainstream. As these restrictions no longer apply, is it time to relinquish such things as cursors, 'tibbling', storing display formats, using short names for symbols and primary keys?… Read more
29 June 2015
29 June 2015

Think You Can Be a Software Tester?

We all use software, and we all find it alarmingly easy to find bugs in it. Does that mean that we have a natural talent for testing software? Devyani suggests that there are some qualities that characterise software testers who are very good at their job. No matter whether you were born like that, or if you've worked upon, practised, developed and acquired them over time, they make all the difference.… Read more