1. Moving your application to the cloud

    There are plenty of options available for running your web application in the cloud, but in order to make the most of the cloud infrastructure and to avoid spending money needlessly there are some steps that should be followed.

    Thinking about working in the cloud requires a somewhat different mindset, the charging model is not the same, especially if you are used to hosting your own servers and as such you need to think about your application in a new way. You should aim to ensure your code is as efficient as possible, as inefficiencies will cost real money in the cloud.

    Below are five considerations for any application that will be running in the cloud, regardless of the technology or provider:

    1. Use aggressive caching.  Cache static resources and data wherever possible.  You’ll likely be paying for bandwidth, so the less data you have to transfer, the better.
    2. Consider using a content delivery network (CDN) for resources wherever possible.  A CDN will allow you to save bandwidth and will typically result in a better user experience for your visitors, as your web application will load quicker for them.  A CDN is a great way to add a little resilience to your web application.

    3. Do as little as possible.  There is no need to load resources until they are actually required by the user and in a cloud environment you simply will be spending money needlessly. Approach each piece of functionality with lazy loading in mind.

    4. Ensure the application has minimal code dependencies.  Loosely coupled code will make the transition to the cloud infrastructure a much smoother journey.  The application will be more resilient and ready to handle multiple instances, which is essential in a cloud environment.  Server affinity has the potential to negate some of the most powerful benefits offered by cloud infrastructure.

    5. Application scaling is one of the biggest benefits of cloud infrastructure, but it requires your application to be built in such a way as to be able to take advantage of it.  In order to ensure your application can take full advantage of the benefits offered by moving to the cloud you will need to minimise the data stored on the file system.  Store persistent information in the database wherever possible.

    Author: Mark Pynen

  2. Security considerations you simply cannot afford to neglect

    I am still routinely shocked by the lack of concern for security best practices exhibited by some developers and we’re not just talking about small, bespoke applications.  I was recently working with an off the shelf web application and discovered it was storing passwords in plain text in the database and configuration files on the file system, along with storing unencrypted user data and generally showing absolutely no regard for security or the vulnerability of users’ data.

    Due to the sensitive nature of the data processed by some applications, additional security measures may need to be considered to ensure Personally Identifiable Information (PII) and Payment Card Industry Data Security Standard (PCI DSS) information is handled correctly, but all applications, regardless of their purpose or size should follow security best practice in order to ensure they are not needlessly vulnerable to attack.  Web site owners owe it to their users and their business to look after user data and protect their interests as well as minimising the risk of attack.

    Here are five well known security considerations that should always be implemented in any web application, yet these are issues I regularly see being overlooked:

    1. Passwords should never be stored in plain text.  Passwords should always be one way hashed, ensuring that they cannot be converted back to plain text.  This can be taken care of with the use of salting and hashing techniques.  This ensures that the passwords are only ever known to the users themselves.

    2. All input data must be validated and sanitised in order to prevent injection attacks.  If input data is not sanitised correctly malicious code could potentially be used to compromise the system.  This is an extremely common attack vector and is very easily guarded against with suitable sanitisation of input data.

    3. As well as validation, any user input to be displayed within the web application must be HTML encoded in order to prevent cross-site scripting (XSS) attacks.  If data is not HTML encoded then malicious code has the potential to be executed by an attacker supplying it as input data.

    4. Web applications should take measures to ensure that the user did actually request the action to be processed.  This is required to prevent cross-site request forgery (XSRF), which if left unhandled could allow an attacker to perform an action using another user’s details.  This vector is often exploited by tricking a user into following a URL that will perform an action they did not intend, on a web application they may be logged in to.  There are a number of ways of guarding against this, which generally consists of using a unique token that is expected by the server on every request.  

    5. All sensitive data that is stored should be encrypted.  Sensitive data should never be stored in plain text, this ensures that someone with access to the server or database will still be unable to read it.

    In addition to the steps outlined above, it is also important to ensure that servers are kept up to date with the latest security patches and that servers are correctly configured, with user accounts having the minimum permissions necessary in order to complete the required tasks.

    These are just a few well known but incredibly important steps that when followed correctly will increase the security of your web application enormously and should simply never be neglected.  There’s no excuse.

    Author: Mark Pynen

  3. Ten reasons to outsource support and maintenance

    image

    There are a multitude of reasons why considering outsourcing your support and maintenance requirements to a trusted partner makes sense.  I have many discussions with clients on the reasons why an outsourced offering would be appealing to them and perhaps unsurprisingly many of the same reasons come up time and time again.

    Here are ten top reasons to outsource your support and maintenance:

    1. Outsourcing provides access to engineers as and when you need them and not just when your team are in the office and available.
    2. Existing staff enjoy new projects and campaigns, but do not necessarily enjoy the prospect of supporting an older project indefinitely once it has been approved.  Therefore, outsourcing support and maintenance can help keep the core team happier.
    3. Let’s be honest, support and maintenance is not as sexy as working on an exciting new campaign, but the fact still remains that it is a vital part of your business and cannot be overlooked.
    4. Support and maintenance does not fit in with your current business model and requires an investment in infrastructure, but your clients require it, so you need to have a partner you can trust.
    5. You can get access to skills and knowledge that you may not have in your existing team.
    6. Outsourced teams already have the infrastructure in place and can generally be flexible when meeting your needs.
    7. Outsourcing support and maintenance frees up your existing resources, allowing them to work on the next big thing.
    8. The competitive costs of outsourcing support and maintenance allows your budgets to stretch even further.
    9. Outsourced teams are able to meet Service Level Agreement requirements, which may be challenging within your current infrastructure.
    10. Outsourced support and maintenance can be offered as a white label service, so the outsourcing can be transparent to your client, which for some clients is absolutely essential.

    So there you have it, outsourcing your support and maintenance is certainly something worth considering, you just need to find a technical partner you can trust.

    Author: Mark Pynen

  4. If Picasso were a software developer…

    image

    Software-developers nowadays are becoming latter-day Picassos: painting abstraction upon abstraction, layers upon layer, into their applications in a holistic crusade to make their work more elegant than the code next door.

    If this process were to be thought of as an artistic movement – like Picasso and Braque’s cubism – its manifesto would include such rallying cries as: “I demand the freedom to change my datasource when I need to!” and “I want to unify my interfaces of data and functionality into one common format!”

    These sentiments, however catchy they may be, are strong; they sound like robust and positive goals. But if we actually examine their validity, they’re really not warranted; and when implemented and put to the test in the real world, they either provide subpar performance, or fail outright.

    To me it seems a false economy; how often are you really going to swap tens of thousands of pounds invested in Oracle, for example, to Microsoft SQL or MongoDB?

    When such instances arise a small interface won’t help you much, since more-often-than-not it’ll have been modelled or designed to a very specific “common” look. Perhaps someone thought it would work for their problem space, but they’re unlikely to have taken into consideration a particular unknown datasource or framework that you might one day decide (or find yourself being forced) to use. Sometimes these things help, and they have their place; but the majority of the time they’re left to the wrong person to design or implement.

    People seem to forget that the closer to the metal the better; the big betting companies and hedge funds understand this, and you’ll often see them looking for experienced developers with a priority on very specific knowledge of particular languages and problem spaces. And you don’t see them asking for Hibernate or Entity Framework these days…

    In my practice I meet clients that are already in difficult positions where they are looking to me for help. It may be that their applications aren’t performing as well as they should, or that they have some catastrophe that needs looking at urgently. A lot of the time what I see is self-harm, where in blind fits of stupor-creativity they have built or inherited millions of millions of lines of code that isn’t even supported – or the only company or developer who knows anything about is no longer around.

    It wouldn’t be so bad if it was just a LINQ-to-SQL or Hibernate framework: those things I can deal with. They are well-documented and proven frameworks that are as performant as the real thing, and if there are any problems with them it tends to be to do with how they’ve been used or configured. However, it’s the self-built frameworks with dependency-injections* galore – and as many undocumented layers as a ten-foot-high Victoria sponge – that make life difficult. There has been, unfortunately, an epidemic in recent years. Indeed, it’s still going strong and it’s in danger of turning into a pandemic. 

    The main problem with developers is that the promises and ideals that they’ve been brought up with in recent years force them to think what they are doing is inherently good. They are like blindfolded artists, merrily painting away in a received style to conform with an established movement – never once looking at the impact that another interface or repository layer might have on their application, to return from the metaphor. Even now, writing this article, I’m having to push aside the years of conditioning that we all have put into our heads by mentors and industry leaders. This stuff is fed to us laced with drugs to induce us into obedience and make us fight blindly, joining the crusade to convert others. 

    There are some specific groups that are worse than others, and mostly it comes down from above; their mentors and industry leaders pass down knowledge for their own benefit, to make money out of said group. But this practice will always fail; some abstraction is good, but not all the time.

    We have a few shining beacons out there crusading for the simplistic approach, or even just asking for people to really consider their approach. The one and only thing I say to my clients in moments like that is what Uncle Ben from Spider-Man said to Peter Parker: “With great power comes great responsibility”. It couldn’t be put better than that.

    With that in mind, you need a great pool of people involved during the design and architecture of a system. Sometimes it’s enough to do this only when creating the first few projects in the solution, and deciding what to use; but it’s critical you don’t spend countless hours working away on a painting which in the end could only really pass for art in the Tate Modern.

    Below is a list of things I ask myself whenever I introduce something into a project, or when I design or architect a new application:

    1. What performance hit will I take following this root, and can I run tests to see this?

    2. What will be the barrier of entry or learning curve for newcomers to my application, and can I quantify that in minutes, hours, days or weeks?

    3. What will be the time from request to delivery for the simplest piece of work (displaying, modifying and saving it)?

    4. How hard will it be to debug the code?

    5. How many data transformations are happening between the data store and the end user?

    And if the answer to number five is more than two, I’d strongly suggest you think twice about it. 

    *Dependency injection can be really good, actually – but there are times when you should use it and times when you should just take the bus.

    Author: Daniel Portella

  5. Big Fat Data: Big Fat Lies

    Another day, and another hyperbolic email plastered with the words DATA and BIG, not necessarily in that order.

    Another web service set up with “Big Data” making up a prominent part of the name; and another set of outrageous claims about the hundreds of previously-undreamed-of benefits to even the smallest companies in harvesting competitive advantage from the bottomless pit of the big data mine.

    I’m not denying the existence, or the advantages, of big data, but besides the big boys (and I mean big, like Google and Facebook big) with massive Hadoop clusters, a lot of data really isn’t as big as you might hope.

    Few outside the realms of these giants even get the concept of big data; either that or they don’t understand it well enough to acknowledge their own shortcomings when it comes to measuring up against the real definition of big data.

    More and more companies are calling their existing (pre-coinage of the term) systems “big data”. A two-node cluster of SQL or NoSQL data does not equal big data. The sad truth that none of these folks want to hear is that it just ain’t big enough.

    Big data holds big promise, no doubt, but the way those words are being bandied about already it’s shaping up to be another one of those concepts that a handful of companies understand and get right, with the rest just rechristening their existing systems, or poor implementations, Big Data. It’s just like Agile all over again!

    At the risk of sounding pessimistic, this is why I think big data is going to be a nightmare for 99% of those who work in tech. We’ll soon find ourselves living and working with (or rescuing) terrible systems that no one in their right mind would touch.

    There are intelligent and genuine people among the ranks of the big-data evangelists, but it will be difficult for those not in-the-know to spot the sheep in wolves’ clothing. Every few years brings a new buzzword; sadly “big data” looks destined to become the latest handy term that any imbecilic marketer can bandy about – accompanied by unsubstantiated promises of how it can save your business from impending extinction. For a tidy sum, of course.

    Big companies like SAP and, especially, Oracle can charge millions just to talk with your business, and millions more to license the duct-tape sculpture of theirs, and even more millions to implement it. And I shudder even to think about the support costs…

    As a word of advice to those panicking about missing the big data bandwagon; don’t worry, and don’t hurry. If it’s as big as it claims to be, it’s not going to whizz right past and there’ll be plenty of time to get on board – that’s if it’s even of any use to you and your company in the first place.


    Author: Daniel Portella

    Image: Helpameout

  6. 2012 wash-up: highlights, lessons learnt, and predictions for 2013

    image

    The end (of the year, at least) is nigh. So in-between tying up our remaining projects and gearing up for the Christmas bash, we’ve squeezed in a few minutes to get some of Cohaesus’s biggest brains together to reflect on the year that was - and to look forward and see if we can provide any illumination to help chart an onward course into the unknown realm of 2013.

    Answering our questions and holding forth on all things tech we have UX Director, Quentin Ellis; Technical Directors, Richard Bundock, Mark Pynen and Matt Meckes; Associate Partner, Daniel Portella; and Associate Software Engineers James Hunt and Graeme Maciver.

    We asked three pretty simple questions:

    1. What great shortcuts helped you do a better job this year?
    2. What highlights stand out from your 2012?
    3. What on earth will happen in the industry in 2013?

    Here are their answers…

     

    • SHORTCUTS

    Quentin:

    “One revelation for me was the combination of Evernote with Fireworks to act as a living Style Guide. I saw a great article about this in Smashing Magazine and tried it out: it’s amazing!

    “Another time saver has been using CUE (an iPhone app); it makes sure I am where I’m meant to be, when I’m meant to be there.

    Richard:

    “Some tools we fell in love with this year: I really love ArmorHub as it constantly scans sites for security vulnerabilities; we’ve now made this a standard service we use on all our builds.

    PagerDuty allows us to react fast to issues that require immediate attention. But the biggest saving will come next year when we implement our firm platform (connect) which will create an API that anyone in the company can plug in to. Every business should be building a platform (rather than an intranet), and that includes our agency clients.”

    Mark:

    “One of the problems I have over and over again is fitting everything I need to do into the working day. Sometimes the amount of work to do can be overwhelming, and figuring out which tasks should be approached first and how best to spend the time I have available isn’t always easy.  There are a lot of potential distractions fighting for our attention on a daily basis and procrastination is never very far away. 

    “In order to combat this I have been using the Pomodoro Technique. The technique is simple, you have a timer (it can be a physical kitchen-style timer, or a software timer on your computer; there are lots of free ones, e.g. www.pomodorotechnique.com) and you divide the day into 25-minute blocks of time. 

    “You pick a task and then work on it, without any interruptions or distractions, for a full 25 minutes.  At the end of the 25 minutes you take a five-minute break.  After the break, either pick a new task or continue with the previous task for another 25-minute block.  After every four “pomodoros” you take a longer 15–30-minute break to attend to other things.  I find that using this technique is easy and can really help me to focus on what is important and minimise the distractions.  I thoroughly recommend giving it a go!”

    Matt:

    “I’ve been really enjoying Heroku. It enables one to create complex hosting environments and replicate them for testing or demos via a few commands. Also the PaaS model means we don’t have to worry about any of the sysadmin tasks to maintain the platform; this is particularly useful for short running apps that may have to scale very quickly (e.g. Facebook apps, etc).”

    Daniel:

    “My greatest shortcut this year has been Node.js, which is a framework to run JavaScript server-side with a really small learning curve. We were able to build fantastic back-end infrastructures that could support a huge number of users (upwards of 10k, concurrently) with a tiny hosting cost – I’m talking less than $200 a month. It’s saved me a ton of time, and money; I’ve also found Node.js is great to prototype applications and APIs. So, a huge amount of playability. There’s great growth in this platform too, so it’s something to watch next year as it matures.”

    James:

    “The biggest shortcut for me this year is dropping GUIs for day-to-day tasks that I had previously relied on. For example, I had never thought that using Git through the command line instead of using one of the many GUIs available would be easier. But it really is, once you overcome the initial lack of buttons and pictures, it makes life much simpler. This was quite a big thing for me as I love pretty things and well-designed interfaces.”

    Graeme:

    “I’ve found Fonts.com has made embedding fonts very easy. Plus imageoptim.com is a great resource for optimising images very quickly and easily; it reduces file size, giving greater efficiency when loading, by removing unnecessary file information that’s used by Photoshop and other image-editors but isn’t required when used for web-based files.”


    • HIGHLIGHTS

    Quentin:

    “One of my highlights of 2012 was hearing Ling Valentine explain how she ensures her website www.lingscars.com remains one of the best on the web. She was funny, inspirational and a refreshing change from the usual conference talking heads.”

    Richard:

    “We did some amazing work over the year and we rescued a number of our clients from some pretty large problems. It seems that despite knowing better, our clients are consistently choosing the wrong technical partners by basing their decision on cost rather than the level of quality (in terms of deliverables and engagement during the project) the partner can provide.”

    Mark:

    “The highlight of the year for me was the opportunity to join Cohaesus, and working with a bunch of professionals who are really at the very top of their game, making a difference to their clients each and every day.  Everyone at Cohaesus has their own unique skills and having an opportunity to work with people this passionate about technology is thrilling for me on a personal level.”

    Matt:

    “My highlight of the year has been expanding Cohaesus to be able to take on more of the project lifecycle. In 2011, we only really did application development; my practice now has deeper support for creative coding projects, doubling the size of my team. We also now get involved earlier on in the project with Quentin’s UX practice, which is exciting as it gets us closer to the core idea. Finally Mark’s support and maintenance practice means we help keep projects running, as well as making sure they’re current and engaging.”

    Daniel:

    “My highlight this year has been setting up my practice at Cohaesus specialising in project rescue and professional services. I love to solve problems, and the best ones are the hardest ones – where all the wheels are falling off. You can build fantastic long-term relationships in these situations. My focus next year is to expand my practice and take on the hard jobs out there; helping people by doing what I do best: getting them out of trouble!”

    James:

    “My highlight of 2012 was becoming much more familiar with SVG through using Raphael. The ability to create cross-browser interactive elements is quite exciting, making something as boring as creating graphs really quite enjoyable.”

    Graeme:

    “Some of my highlights of the year include: using Raphael to create animated floor maps of warehouses (although I can’t go into too much detail about that at the moment); using Backbone.js to create an AJAX-driven front end to Drupal; the Facebook hack event we attended at the new Facebook UK office; my Scrummaster course.”

     

    • PREDICTIONS

    Quentin:

    “2013 will be the year of the technical partner. (I would say that, wouldn’t I?)  In 2012 we saw the bigger agencies realising that they can make more money concentrating on digital strategy than they can ever hope to make on digital delivery. Agencies will be looking for partners that make their creative ideas work, and 2013 is the year that they go out and find the best technical partners to meet these needs – be it help with the larger enterprise platforms, or the more bleeding-edge apps.  It will be a steep learning curve, but, fortunately for them, we will be there to help!”

    Richard:

    “I see digital agencies rationalizing their internal technical teams, reducing their quota of in-house developers and replacing them with higher-level technical architects and creative technical architects. And of course, support and maintenance will continue to be a challenging issue for many agencies – the clever ones will be passing on the headache to a trusted partner and continuing to pocket a fee for maintaining the relationship with the end-client.”

    Mark:

    “I have read this prediction elsewhere, so it’s not exactly unique but I’m inclined to agree with it:  Tablet-style devices will become the dominant devices in the market for new sales. More people will consume applications and services using tablet-style devices than ever before, as more people routinely carry these devices around and take them into work. The gap is already closing and 2013 is the year it will happen; this means it will be absolutely essential to consider techniques such as responsive design in order to ensure that the users of websites, applications and services get the very best possible experience – regardless of the screen-size they are using.”

    Matt:

    “In digital advertising, I think there will be a continued move away from short-lived campaigns and competitions towards creating longer-lived branded experiences. This may be tools that the user finds useful – and ideally become a part of their daily life (Nike+, Banking apps) – or building a platform that keeps users engaged over time with constant updates and traditional activity. Zippo pulled this off with their app, which has been regularly updated to add new virtual lighters. (It sounds silly but it really works!)

    “A great blended example of utility and platform would be Kraft’s iFood assistant; it’s a useful recipe tool which has been kept current with lots of regular discounts, competitions and deals. Apps for apps’ sake, which only have a few pages of reformatted brand content from the website and a store finder, will finally die off.”

    Daniel:

    “Next year platforms will definitely be the focus. People are starting to see that building the roads everyone uses is a far better place to be then riding the trails. Facebook has it nailed on the social profile; they built a great platform for social engagement at a personal level. Although they have struggled to monetise it, they built the social-profile roads. No one can deny that. So many companies will be looking at building platforms in the hope that they become the Facebook of medical legal documents or social fridge magnets – God knows it’ll be a fun year.”

    James:

    “I see 2013 as being the year for designer–developer collaboration. Even today there is a lack of respect and understanding between many developers and designers. The web will be a better place once both start to utilise one and another’s skillsets to produce truly awesome experiences.”

    Graeme:

    “Firstly, small businesses, brochure websites, etc. will move to using services like Squarespace instead of hiring developers or designers to create bespoke websites.

    “Secondly, more big companies will adopt social platforms (Twitter and Facebook in particular) for their customer-services interactions, and companies like www.conversocial.com will benefit as they will increasingly be used for this.”

  7. Ten top tips to ready your website for the Christmas rush

    The Christmas season is upon us and with it comes the slightly nervy realisation that should anything unexpected happen to your website, your revenue could be seriously affected. At this critical point in the calendar your website is much more sensitive to outages, so it pays to be prepared. The below are ten key points to help you avoid costly website downtime this Christmas. Think of them as a Christmas (to-do) list.

    1. Keep your hosting payments up-to-date. Yes, it may sound obvious, but I’ve seen plenty of sites go offline because the client forgot to pay their hosting bill.
    2. Watch out for domain-expiry. Another rookie error! But, again, I’ve seen sites go down at really critical points due to the expiry of a domain. Remember to check all the domains your site relies on; and remember the administration area may be under a separate domain.
    3. …and SSL cert–expiry. Don’t just check your domain names’ expiry dates; check your SSL certs too.
    4. Check your available disk space. There’s nothing like a lack of disk space to swiftly take out a site without warning. Hopefully your managed hosting provider will be checking this; but don’t leave it to chance – get New Relic installed, it’s free for server monitoring and can generate alerts.
    5. Have a DR Plan in place. Of course, should anything go wrong you need a well-thought-out DR plan so you can quickly respond to the situation if it rears its ugly head. You should identify who would deal with the issue – based on when it occurs and what type of incident it is.
    6. Get an external monitoring service. This is absolutely essential. An externally monitoring service can quickly raise an alert if your site isn’t behaving as expected. The quicker you can get the site back into normal operation the more money you will save, and the less disgruntled your customers will become.
    7. Get a health-check page. This is something we recommend to all Cohaesus clients now, and we always factor them into our builds. A well written health-check page can quickly identify where the problem is; it can check connections to the data stores, and the site’s ability to connect to third-party APIs. It obviously needs to be secure and not publicly accessible.
    8. Conduct external security checks. While you’re probably doing this via ASV or have had a pen test, there are some great new services such as ArmorHub which can scan the site at a much higher frequency – and at a far lower cost. A site-defacement will take the site offline for an extended period, so you need to limit the chances of that happening.
    9. Do some load testing. If you don’t have any idea of how much load your site can take, you are about to enter the busiest season of the year wearing a blindfold. Load testing can be performed out of hours and will help you plan now for anything which could improve your site’s performance. Remember, a faster site makes for a smoother user experience – and increased conversion.
    10. Make sure your backups work. Sure, your hosting provider is taking regular backups (securely stored of course), but do they work if they are needed? Ask them to test the backups and guarantee that the site can be fully restored from their backups. It is a great idea to actually run a test to see if you can restore the site from a backup. Also, check and confirm how long it will take to bring the site back from a backup if all the servers were lost, and add that into your DR plan (see point # 5).

    That’s it. Hopefully most of the above is already in place. If not, you’d best get moving; Father Christmas won’t deliver this lot for you.

    Author: Richard Bundock

    Image: jollyuk

  8. Taking the pulse of media with Accenture

    Some time ago I met a kindred spirit (i.e. a techie) at a street party in my neighbourhood. It turned out my neighbour, Kit, works on the media team at Accenture – a multinational management consulting and tech services company. Being a tech director at Cohaesus myself, we found we had plenty in common and hit it off right away.

    This was how I was introduced to Accenture’s Media Hub, and was invited to give a talk to them (a while ago now) about the part crowdsourcing has to play in today’s media evolution. Off the back of this, Accenture asked me to join their “Pulse of Media” project as one of the practitioners.

    The initiative was set up to explore the state of media at this exciting (and, for some, frightening) time of seemingly perpetual flux, with a view to helping companies “find – and keep – their place in the evolving ecology”. Also, to find out what new forms of creativity are needed to power multi-platform digital experiences.

    Accenture insiders and outsiders have been asked to give their views about the shape of things to come; some of the external interviewees include Chloe Sladden, director of media partnerships for Twitter; Richard Halton, CEO of YouView, and Georg Petschnigg, Co-Founder & CEO FiftyThree, Inc.

    I was summoned forth to give my tuppence worth, and the questions they asked me addressed the subject of changing media consumption – specifically relating to connected devices, multi-screen consumption and the part crowdsourcing has to play in the development of media.

    The interviews are currently being edited and haven’t all gone live yet. I talked a bit about the disruption to existing media, and the future of the media industry “prosumer” – and about the increasing scope and quality of some user-generated content. One of the surprises in recent years has been how mainstream some of these new business models and technologies are becoming, like the funding platform Kickstarter, for example.

    The Accenture-backed research report from the project is already available to download, offering a decisive summary: that “consumers … are in charge and at the center of everything”. Content was declared king in the wake of Google’s rise to power, and Accenture’s report states that the consumer is now recognized as the king of content. The report goes on to discuss the changing digital experience, and the emergence of new business models.

    Accenture’s accompanying consumer survey also visualises some of the data around consumers’ digital habits, and handily summarises the term “prosumer” with the following definition:

    “An amateur creator of content who produces content of a standard suitable for professional use.”

    There’s a real buzz around the project right now, and you can follow the discussion surrounding it by searching the #pulseofmedia hashtag on Twitter. To sate your anticipation for the forthcoming interviews, there’s a brief clip already online where I discuss the restrictive tendency of companies’ use of branded apps, and the need to engage consumers (and, indeed, prosumers!) on channels that already exist:

    Author: Matt Meckes

  9. Finding a new way: six great (and free) alternatives to Google Maps

    Back in October 2011 Google announced it would start charging the heaviest users of Google Maps and would eventually start inserting ads for other users. Initially Google’s price was set at $4 per 1,000 map views but has since been reduced to 50 cents per 1,000 views.

    In light of these developments, agencies are increasingly being asked by clients – some of whom are looking at potential bills of tens of thousands of pounds a year – to look for cheaper alternatives.

    Luckily for developers, there are many alternatives – with more being developed all the time.  What’s really exciting about these new kids on the block is that, rather than being second-rate Google Maps knock-offs, they are producing some really beautiful, characterful maps. 

    While Google Maps being free was great for site owners, it wasn’t necessarily so for app-builders, or the end user, as it suppressed the development of alternatives. Now the number of both proprietary and open-mapping APIs has exploded, this is great news for all of us, as different APIs have unique features and capabilities which will hopefully lead to some great new online maps. And many of their features are available for free use.

    In digital mapping, as in any other area of technological innovation, competition is key to creative progress.

    Here are six of the best:


    1. Map Box

    An open mapping platform, MapBox is a perfect example of the new breed.  As they explain:

    “MapBox helps you design beautiful maps and publish them across the web and mobile devices at scale. Our open-source tools and cloud infrastructure are the base of a new kind of platform, making maps more social.”

    The maps are beautifully designed and powered by OpenStreetMap data, and, best of all, it’s very easy to customise the colours and features to fit any style or brand.


    2. Polymaps

    Polymaps is a free JavaScript library for making dynamic, interactive maps in modern web browsers. The library provides speedy displays of multi-zoom datasets over maps and supports a variety of visual presentations for tiled vector data – in addition to the usual cartography from OpenStreetMap, CloudMade, Bing, and other providers of image-based web maps.

    Because Polymaps can load data at a full range of scales, it’s ideal for showing information from country level right down to states, cities, neighbourhoods, and individual streets. The site uses SVG (Scalable Vector Graphics) to display information, so you can use familiar, comfortable CSS rules to define the design of your data. And the well-known spherical Mercator tile format is used for the imagery and data, making publishing a snap.

    Below is a map showing our Archer Street office using their Midnight Commander design, described by Polymaps as follows: “You know, for when you’re Jason Bourne and you’re on the run from the man and you break into the command center and you pull up the secret map interface? That one.”

     

    3. Leaflet

    Developed by Vladimir Agafonkin of CloudMade, with a team of dedicated contributors, Leaflet is a modern open-source JavaScript library for mobile-friendly interactive maps. It weighs in at just about 27 KB of gzipped JavaScript code. And yet it still has all the features most developers will ever need for online maps, while providing a really smooth, pleasant user experience.

    It’s built from the ground up to work efficiently on both desktop and mobile platforms like iOS and Android, taking advantage of HTML5 and CSS3 on modern browsers. The focus is on usability, performance, small size, A-grade browser support, and a simple API with convention over configuration. The OOP-based code of the library is designed to be modular, extensible and very easy to understand.

     

    4. Staman

    Staman allows you to change the way OpenStreetMap data is displayed to one of their impressive designs. (I’m desperate to come up with an excuse to use their “watercolour wash”.) Their tiles are made available as part of the CityTracking project, funded by the Knight Foundation, in which Stamen is building web services and open-source tools to display public data in easy-to-understand, highly visual ways.

     

    5. Kartograph

    A simple, lightweight framework for building interactive map applications without Google Maps (or any other mapping service), Kartograph was created with the needs of designers and data journalists in mind. Actually, Kartograph is two libraries. One generates beautiful and compact SVG maps; the other helps you create interactive maps that run across all major browsers.

     

    6. Modest Maps

    Modest Maps is a small, extensible, and free library for designers and developers who want to use interactive maps in their own projects. It provides a core set of features in a tight, clean package with plenty of hooks for additional functionality.

    Author: Quentin Ellis
    Images from the websites

  10. Product mutations – Soulver and Grid: the spreadsheets of tomorrow

    Interface design is a passion of mine.  I enjoy tracing the genealogy of a product design to discover where patterns have originated, and to see how they morphed over time, in a rather Darwinian way, to become what they are today. Every so often someone comes up with a fresh take on an old established design: Sony with the cassette player, Dyson with the vacuum cleaner, Apple with the mobile phone, and Sinclair with personal mobility. (Kidding with the last one.)

    Certain designers have had an amazing effect on what we see and use today; one of my favourites being Dieter Rams.  His product design at Braun in the 1960s can be seen in Apple products in the 2000s and in homages in 2012.

    1958 Dieter Rams radio next to an ipod (older generation)

    Where it gets very exciting is when I see a designer – or, more frequently nowadays, a software developer – changing the fundamental paradigm of how common objects or programs works. In other words, to branch away from the family tree and strike out in a very different direction – a “mutation”, to follow the Darwinian analogy. Here are two such mutations I’ve come across over the last few weeks. 

    Firstly there is Soulver. This wonderful program takes a fresh look at how most of us use spreadsheets.  It’s not aimed at the power user, but rather at how regular users play around with numbers, do quick back-of-the-envelope calculations, and solve day-to-day problems. Soulver is a combination of a calculator, a spreadsheet and a text-editor; however, it’s quicker to use than a spreadsheet, and smarter and clearer than a traditional calculator. Rather than entering labels and formulas in separate cells, as with a spreadsheet, Soulver understands long-hand. Where traditional calculators replace your problem with the answer, Soulver lets you see the problem and the answer side by side.

    But for me the really clever bit is that it works out the maths as you write the story. You can do calculations over multiple lines, like you might do on paper; this makes it easy to see each part of the calculation clearly. At Cohaesus, we use Soulver to work out project ball-park costs. The result is a document that is easy to read and to understand, and quick to prepare. And thanks to line references, when one line changes, every line below it will automatically update. Looking back later, your notes actually make sense. As the guys at Soulver say, “we rarely add up pure numbers, but we’re always adding up things.” And as someone has written on their website: “A calculator with words, what a concept!”

    The second example of design mutation is Grid. Grid describes itself as “a simply remarkable spreadsheet”. As with Soulver, the guys at Binary Thumb have looked at how a lot of us use spreadsheets to help organise trips, projects, etc., and have added features to their product that enable the user to do just that. And some without the steep learning curve required by most desktop spreadsheets. The best way to see Grid in action is to watch the video.

    If you know of any other examples of calculators and spreadsheets being used in new and inventive ways please do let us know.

    Author: Quentin Ellis

    Main image: Infrogmation