How do I get my site to show up in Google?

Google Search Results PageThis is another question we get asked quite frequently by startups or small businesses adopting technology. Whether you’re selling goods online, advertising your services, or promoting a mobile app, revenue can be quite substantially impacted by your (in)visibility in Google search results, and how far down the list you appear.

While there are specialist companies around that focus exclusively on improving search results, as a technology generalist Lateral has worked in this area and learnt a great deal about the parts that are important. This article is intended as a gentle introduction to some of the techniques behind improving search results, and will hopefully help dispel some of the misinformation out there.

Option 1: Paying for it

Google’s Adwords service gives you the ability to run paid ads that appear above, to the side of, or below the main list of search results. For a brand new site, this is probably going to be the most effective way to gain a lot of visitors quickly.
You’re able to configure the search keywords, the text of the ad, and target specific geographic locations or browsers (e.g. ‘iPad users in Australia’). You only pay when a customer clicks the ad and visits your site, and the cost per click can range from 20c to $10+, depending on the popularity of the keywords selected (pricing is based partly on how much competition there is for the search terms). You can set a daily budget as well as a maximum price per click to keep your advertising costs in check.

While this is a simpler and faster technique for getting your site onto that coveted first search page, a poorly designed or targeted Adwords campaign can be an expensive waste. The critical aspect to understand is that Google will prioritise ads it deems to be the most relevant and most likely to generate a click for that search term – the net result being that better ads cost less for the same placement. Improving ad relevance can be done by ensuring:

  • The search terms are relevant to the product or service you’re advertising. Don’t go scattergun, make sure you understand what problem your customers are trying to solve, and select keywords to reflect their probable search patterns.
  • The search terms appear within the ad copy, preferably in the heading (the more the better). These will be highlighted bold in the browser.
  • The ad copy is enticing to the customer. This is challenging – there’s not a lot of text you can fit in the ad, and you need to make people want to click it. Google has some tips here, and there are other resources around the web that can help.
  • Your landing page (the page on your site the ad directs to) is also relevant to the search term. You’ll generally want a different landing page (with unique content) for each ad campaign – don’t just direct your ads to your site’s home page.

Whenever a business is spending money on online advertising, we strongly recommend configuring analytics for the site in order to measure the effectiveness of advertising expenditure, i.e. are the clicks you’re buying atcually making you money? Google Analytics is a free service that integrates well with AdWords, but there are many others available such as Gauges, KISSMetrics, Clicky, and Woopra. Depending on your what your site does, these services can be configured to measure conversions (e.g. percentage of paid search visitors that request a quote), and possibly even revenue (online sales attributed to an ad campaign).

Option 2: Organic search

Organic Search

Traffic from search engines is generally divided into ‘paid’ (e.g. AdWords) and ‘organic’ (standard results). The practice of boosting your organic search results is generally known as ‘Search Engine Optimisation’ (SEO). This is somewhat of a dirty word in some circles, but it can be broadly broken down into two distinct categories:

  1. Modifying your site design and structure to better cater for search engines, and adding useful content to attract visitors (Good SEO).
  2. Copying or creating large amounts of useless keyword-laden content, spamdexing, and other techniques designed to trick Google’s search algorithms (Dodgy SEO).

‘Dodgy’ or black hat SEO involves somewhat of an arms race between the SEO companies and Google – the SEO companies find new loopholes and try to exploit them before Google can modify their search algorithm. While these techniques can deliver short-term results, we recommend staying within the rules for stable long-term search performance.

Google PageRank

It’s worthwhile understanding the basics of how Google ranks sites for search terms, in order to more effectively plan your SEO activity. While the details of Google’s ranking algorithms are secret and have changed significantly over time, the original PageRank algorithm is fairly well understood. In brief, Google will assign a higher score to a site that is linked to from more (trustworthy) sites on the web, and the text of those links will contribute towards keyword relevance calculations.

Google will also apply additional weightings based on the content of the site (this incorporates many countermeasures to black-hat SEO techniques) – it’s worthwhile reading some of the principles they try and adhere to in this blog entry.

Improving your site’s search results

Following is a introductory list of pointers you should consider:

  • Submit your site to Google – if you have a new site, you’ll need to let Google know about it. You can also submit to the other major search engines while you’re at it.
  • Ensure your site has useful content that your customers will want to read. A web site that contains a business name, photo, and phone number won’t typically rank very well. One with blog entries, news articles, white papers and any sort of educational content will be more successful.
  • Update your site regularly – Adding fresh content will improve your ranking, and the more content, the more visitors you’re likely to have.
  • Make sure your meta description tag describes the page accurately in around 155 characters – this will be displayed under your search result.

    Lateral Search Result

    Make sure your meta description tag doesn’t get truncated

  • Use the latest version of a good CMS platform (e.g. WordPress, Squarespace, Drupal etc) – these will have a lot of search engine friendly facilities built in, like descriptive permalinks, correctly tagged pagination, RSS feeds and the like.
  • Don’t be shy about getting your URL out there – make sure it’s in your profile on sites/organisations you’re a member of, contribute articles to relevant news or industry sites, ensure it appears in product/service reviews, and ask customers, partners or suppliers to put you on their site (if appropriate).
  • If your business uses twitter, Facebook, LinkedIn or another social media service, ensure you’re actively publishing news, links and other content. Also, make sure your site has ‘sharing’ widgets to enable visitors to spread the word.
  • Use Google Webmaster Tools to check for problems with your site’s content or structure.

Other resources

seomoz.org Beginner’s Guide
Google Webmaster Tools

IKEA Standing Desk

IKEA Standing Desk

Lateral’s IKEA Standing Desk

Standing desks have gained a lot of mindshare in recent years, with advocates citing posture, energy and health benefits, however they can be difficult to find for a reasonable price. A few of the Lateral developers put together an IKEA standing desk over Christmas based on the design detailed on lifehacker.

  • LACK Side Table: $8.95
  • EKBY Robert brackets: $24.00
  • EKBY Mossby shelf: $39.95
  • Screws from home: $0

Total: $72.90

We went for a classy black/stainless steel finish which pushed the price up a little, but it still falls a fair way short of $1500+ for commercial alternatives. The goal is to have the desk available for team members to spend an hour or two standing each day if desired – so far the interest has been quite encouraging. One issue we’ve found so far is that the shelf height doesn’t suit all developers, and we end up using combinations of boxes for adjustment – an adjustable keyboard shelf may be a worthwhile addition. An anti-fatigue mat is also on the wish-list.

Lateral is now an Apple Reseller!

iPads

Lateral Solutions is now an Apple Authorised Reseller! This means we’re now able to order hardware directly from Apple’s Australian distributors on behalf of our clients, and gives us access to business-level expertise within Apple (above & beyond the technical assistance we’re currently entitled to through the Developer Program).

As a result of our involvement with enterprises implementing Apple mobility projects, we recognised a need for an organisation that provides the full service — hardware, infrastructure/management, and software — so we saw becoming an Apple Reseller as an important progression towards delivering that service. Additionally, it’s also the first step towards joining the Apple Consulting Network as a specialist development consultant.

We’re pretty excited about what we’ll be able to achieve via our new partnership with Apple, given the rapidly growing demand for Enterprise Mobility solutions. Get in touch with us today if you’d like to talk to the experts about Apple mobile options.

 

Intro to iPhone Development

Sam Ritchie presenting at Spacecubed

Sam Ritchie presenting at Spacecubed

Today our .NET/Mobile Team Leader, Sam Ritchie, presented a session in Spacecubed’s Lunchtime Learning series, entitled ‘Introduction to iPhone App Development’. About 15 people attended and heard Sam impart some of his iPhone development experience, focusing on areas of the platform most likely to trip up or confuse newcomers.

Some of the common pitfalls/roadblocks that Sam covered that we find are most likely to confront developers switching to the iOS platform are:

Interface Builder (GUI Design)

This is done quite differently to other visual UI design tools in that it’s not a code generator. That makes it a little more involved to configure the communication back to your code, but unfortunately the mechanism for making these connections is a little non-intuitive. We do hear about people who give up on IB and end up writing their entire app user interface in code — this is the hard way to do it!

Manual Memory Management

Developers used to a modern, managed platform like .NET or Java can experience a bit of culture shock when plunged back into the world of allocating and freeing their own memory. Thankfully iOS 6 introduced a technology called ARC which makes this much easier to swallow, but you can (and almost certainly will) run into the problem of needing to combine ARC & non-ARC code in your project.

Code-Signing & App Distribution

There are a lot of moving parts in the process of code-signing an app and getting it to run on test devices, and there aren’t a lot of resources around that communicate these very well. Sam went through the options and explained that a typical app will require at least two certificates and three provisioning profiles.

The Objective-C Syntax

Objective-C is often cited as one of the reasons iOS is seen as having a high learning curve, however, it’s not a complex language and most experienced developers don’t have trouble picking it up in a week or two. The syntax can be a bit confronting for people used to Java or C#, though – method naming, object pointers, and copious square brackets being some of the most obvious differences.

Feedback from the attendees was positive, and we’ll look at scheduling more of these technical sessions in the future. Download the slides form the presentation here.

How much does it cost to build an iPhone/iPad app?

Bag of moneyAs an iOS development specialist, one of the most common questions we get is “How much does an app cost?” Unfortunately this is a classic “How long is a piece of string?” question, but giving people that answer generally doesn’t result in any sales, so we’ve spelled out some of the cost considerations in this post.

While it involves a few different skill sets, there’s nothing particularly special about mobile software projects that make them cost significantly more or less than any other custom software. However, the costs of custom software development aren’t well understood outside of the industry, and particularly now that people see high-quality mobile apps retailing for a couple of dollars on the App Store, everyone’s inherent value compass tends to vastly underestimate how much it takes to actually build them.

What follows is the general guidance we give to prospective clients.

‘Basic’ app – $5-$15k

An entry-level app will start from around $5,000. This might include:

  • Calculator or small utility apps
  • Store locator/brand extension apps
  • Simple reference apps

These will generally be self-contained (no cloud service), and use mostly standard UI components with some custom graphics. Professional, high-quality graphic design will cost more, but is generally worth it for apps in this category.

You may be able to build them more cheaply by going through offshore developers, although you should expect to devote more of your time to managing their output. There are also companies that stamp out templated store locator apps for a few hundred dollars, but in our experience the resulting apps are very poor quality and, if anything, end up damaging your brand.

An informative behind-the-scenes look at building an app in this category is Repeat Timer Pro — the offshore development costs ended up around US$4.5k (not including design or subsequent marketing costs).

‘Complex’ app – $20-$80k

A complex app is one that incorporates any of the following:

  • Dynamic updating of in-app content via a back-end service
  • A cloud database to synchronise or share information between devices or users, and/or support for an ‘offline mode’
  • Extensive integration with third party services (eg Google Docs, Facebook, weather services, financial data etc)
  • Custom user controls or complex dynamic graphics & animation
  • In-app purchases, subscriptions or push notifications
  • Support for both iPad & iPhone (universal app)

Most business apps would fall into this category. There’s a lot of variation in the cost, but the biggest factor in most app quotes we see is its size: if you have 30 screen mockups in your brief, it’s not going to be cheap to build. Typically we recommend stripping the functionality down to its absolute bare minimum; the app will be less expensive, delivered sooner, and be much easier to use.

Top-Shelf app – $100-$200k+

An app entering an existing market (eg a Twitter client, RSS reader, or a vintage filter photo sharing app) will have to be very high quality in order to compete. This generally requires extensive UI design, graphics work, and lengthy rounds of usability testing. Expect to go through several iterations of development, testing & rework before you begin to approach the required level of polish.

Other apps in this price range would be ones with complex custom cloud services behind them (eg Evernote, Instapaper, Flipboard). In this case you need to build both a full featured cloud application including database/file storage, web service interface, and back office administration tools, as well as the iPhone/iPad app.

The most commonly cited example of app development costs in this category would be this StackOverflow answer by one of the developers of Twitteriffic: he estimated approximately US$250k to build the iPad version of their twitter client.

Other Considerations

To sell your own app through the App Store, you’ll need to enrol in the developer program at US$99/year. When you’re running the numbers, don’t forget that Apple will take 30% of the sale price of apps & in-app purchases (for Australian sales, Apple also deduct the GST).

You’ll also need to take into account:

  • Hosting costs, if you’re running a cloud service. These can range from free up to thousands of dollars a month, depending on how many users you have & how the service is being used.
  • Marketing costs — customers need to find your app, and you can’t rely on the App Store to do this for you. The most common approach is to design & publish an app website and use cost-per-click advertising, but blogging, RSS sponsorship, offline promotion and social media activity all help spread the word.
  • User support — you may need to provide email or forum support for your app (depending on what it does) — if so, you’ll need to implement a support/helpdesk system, and you’ll probably want to hire or outsource support functions as your userbase grows.

As is typical with custom development, you really need to speak to a development company to get a more accurate estimate of how much your app will cost, but hopefully the information presented here is helpful.

Azure Preview Features Presentation

Sam Ritchie presentingLast week our .NET Team Leader, Sam Ritchie, presented an overview of the new preview features in Windows Azure to the Perth MS Cloud Computing meetup group. Most of the presentation was focused on the new Azure Web Site hosting & deployment; we’ve reproduced a couple of the key points here.

The developer experience developing & hosting applications on Azure Web Sites has been significantly improved. Scott Guthrie, who moved from DevDiv to Azure about a year ago, has clearly been working hard on making this better, and it’s starting to pay off. We fervently hope this focus continues and the rest of Azure becomes as simple and developer-friendly as the web site hosting.

A few examples of the ways in which Web Sites are easier:

  • No custom project types (.ccproj) or RoleEntryPoint subclasses – a standard web application solution with no Azure-specific runtime library references will work perfectly.
  • Web.config can be used for configuration (with runtime AppSettings parameter injection, if necessary) – no more .cscfg and Azure-specific configuration settings code.
  • Basic monitoring is available out of the box, without configuring Trace Listeners or Diagnostics transfers to Azure storage, or buying a third-party utility to query Table Storage.
  • FAST deployment. Web Sites are deployed to a running server, so no more waiting for a new VM to be provisioned.
  • Standard deployment mechanisms – FTP, MSDeploy and git deployment are available and existing deployment scripts should able to be reconfigured to work with Azure.

The Web Site offering, in particular the dependency-free runtime code and git deployment, is very reminiscent of AppHarbor/Heroku, and the pricing model has also been clearly influenced by these services (developers can host up to 10 web sites on shared infrastucture for free). Where they differ is the hosting model – below are some diagrams from Sam’s slideshow:

Heroku Model

The ‘Heroku model’

 

Azure Model

The Azure Web Site model

Once you upgrade to ‘reserved’ instances, all web sites within your subscription (in a given region) share your virtual infrastructure. This does mean that one application could bring down all the others, but if you have a reasonable number of low-to-moderate traffic sites, it’s likely to be considerably cheaper to host in a multi-instance (ie production quality) configuration than on AppHarbor. Our view is that this is better suited to web & application development shops that want to offer hosting, or in-house teams that want to move some of their suite of applications to the public cloud. The ‘Heroku model’ will likely remain a more attractive option for startups/entrepreneurs & product companies, who are more likely to focus on one or two potentially high-traffic applications.

Another point Sam stressed was that the multi-language support (in particular, PHP and mySQL available out of the box), is likely to appeal to organisations looking to move/consolidate their web hosting from ‘traditional’ web hosts or ISPs. This support, combined with the standard web deployment approaches, means that Azure is competing as much (if not more) with low-cost shared Linux hosting providers as it is with AppHarbor and other PAAS specialists.

Overall, we’re pretty excited to be working on Microsoft’s cloud platform and we’re keen to see the platform improvements continue. The main components we’re hoping for are simplified, git-deployable workers, and better support for third-perty hosted services like document DBs (perhaps the Azure Marketplace will grow to fill this need)?

eMed for WA Health Biomedical Engineering

eMed ScreenshotA few years ago, we assisted Sir Charles Gairdner Hospital’s department of Medical Technology and Physics (MTP) to implement a LANSA-based system to manage maintenance & QA on the fleet of medical equipment used by a number of hospitals in Perth (see the LANSA case study for more details). Lateral’s main role in that project was to provide training & setup, and the MTP engineers did the bulk of the development on the system (known as eMed).

Another department within WA Health, the department of Biomedical Engineering (BME) for the WA Country Health Service, have similar responsibilities for medical equipment and wanted to implement their own version of the eMed system. However, the MTP engineers working on the system did not have capacity to support an additional installation, so Lateral once again became involved to modify, deploy and support the eMed system for BME.

As is often the case with custom systems, eMed was heavily tailored towards the needs of MTP and fairly substantial changes were needed to integrate it with BME’s workflow. For instance, MTP engineers are generally in the same hospital as the equipment, but BME-maintained equipment is deployed across numerous country hospitals, nursing posts & Flying Doctor bases, so sending out an engineer requires scheduling flights & accommodation.

The modified system was successfully deployed in February 2012 and has been managing BME’s core services since then. Lateral has continued to refine eMed to suit business practices and streamline the workflow.

One of the key aspects of this project which we feel is under-appreciated within the software community, is how much business process and workflow impact software design.  Both versions of eMed support what is fundamentally the same task, however the implementation is quite different given the process differences required to support a more diverse and dispersed customer base. This is a pattern we’ve seen repeated across multiple projects — it’s worth being reasonably cautious about slotting custom software in somewhere other than where it was built.

Lateral’s iOS testing fleet

Lateral's iOS Fleet

This article has been doing the rounds, which made us want to post up our iOS testing fleet. The photo above includes:

  • iPad 1
  • iPad 2
  • The New iPad ™
  • Original iPhone (sadly not used much for testing these days due to being stuck on iOS 3.1.3)
  • iPhone 3GS
  • iPod Touch 4G
  • iPhone 4S

There are also numerous additional configurations of the above, plus a couple of iPhone 4s floating around the office (and some miscellaneous Android devices including a Nexus One).

There seem to always be people claiming you can get away with testing on one or two devices and do the rest in the simulator — unfortunately we’ve found there’s no good substitute for real hardware compatibility testing.

If you’re interested, the stands in the photo are the P2 & M2 stands from Elago, though unfortunately they don’t ship to Australia & we had to smuggle them in.