banners-news

Ultra cheap refurbished Sandybridge MacBook Pro i7 2011

UPDATE: If you look on Amazon for Macbook Pros you can often find brand new ones for prices very close to what Apple are selling Refurbs at…

Apple have just started to sell “Sandy Bridge” Refurbished MacBook Pros on the Refurb Store. I’ve been waiting for this ever since the new 2011 MacBook Pros were announced, as they offer a massive speed boost compared to my current Core2MacBook Pro, so I’ve bitten the bullet and bought one. You can currently save around 15% off the standard retail price of a new 2011 MacBook Pro, plus still have the full Apple warranty.

  1. Refurbished MacBook Pro 2.3GHz dual-core Intel i5 – £849 inc VAT and Delivery
  2. Refurbished MacBook Pro 2.7GHz dual-core Intel i7 – £1099 inc VAT and Delivery
  3. Refurbished MacBook Pro 2.0GHz quad-core Intel i7 – £1319 inc VAT and Delivery
  4. Refurbished MacBook Pro 2.2GHz quad-core Intel i7 – £1569 inc VAT and Delivery
Posted in Refurbished | Tagged , , | Leave a comment

Detecting screen orientation changes in iPhones and iPads

I’ve been working on a freelance web development job for a customer in Bath, and one of the requirements was for the site to be specifically tested on iOS devices such as iPhones and iPads. The site used a lot of JavaScript effects, absolutely positioned elements and jQuery plugins, and during testing we noticed that when changing the screen orientation on an iPhone, some glitches were appearing. So what to do?

Fortunately Apple have included a number of iOS specific events that web developers can tap into. The onorientationchange event is thrown when the iPhone is rotated from portrait to landscape, so you can listen for this event and add code to fix the problem…

window.onorientationchange = function(){
   // Do clever stuff to fix problems caused by rotating
};
Posted in Web Design | Tagged , , | Leave a comment

Overloading functions in WordPress child themes

I was doing a quick freelance WordPress development job for a publishing company based in Cheltenham today, having to modify an existing theme to better fit their design goals. Because the theme was quite complex and included a large amount of custom functionality, I didn’t want to start hacking the core theme files. So I need to create a sub-theme.

Creating sub-themes is a trivial task. The problem comes when you need to override some of the functions used in the parent theme. The difficulty is that you cannot redeclare a function in PHP without it throwing a fatal error. Plus you can’t overload functions or methods by creating a new method signature, as you could in C#. So how do you solve the problem?

If the theme is exceptionally well designed, all of the parent theme function will be wrapped in a function_exists() call. Due to the order that WordPress loads theme files, it will first load the child theme function, then attempt to load the parent theme function. If a parent theme function is declared as shown below, you can happily redeclare the function in your child theme safe in the knowledge you won’t get fatal errors.

if ( ! function_exists( 'theme_function' ) ) {
    function theme_function() {
   // Do clever stuff here
    }

If they haven’t wrapped their functions, you need to hope that the function you wish to override has been added to one of WordPress many hooks, or that the theme has it’s own method of locating and loading functions in the child theme ( as Thematic does). If not, you’re going to have to do some ugly hacks, or risk your changes getting over-written when the client updates the theme.

Looking for a web developer to turn your web designs into reality? Sweet-Apple develops websites for small businesses, design agencies and freelance designers, quickly, efficiently and cost-effectively. Why not give us a call on 01225 3019162 and find out how we can help…

Posted in Web Development, Wordpress | Tagged , , , | Leave a comment

Troubleshooting Time Machine backups…

Time Machine is a excellent technology and Apple has greatly simplified taking a backup of your Mac. But what do you do if it stops working?

I recently had a call from a client in Bristol needing Mac Technical Support, who found that their Time Machine backups had suddenly stopped completing successfully. Their MacBook Pro contained a great deal of business critical information and they were very nervous now the data was not getting protected. So what to do?

TIme Machine doesn’t provide much in the way of feedback, so to find out why it’s failing try the following:

  1. Open /Applications/Utilities/Console.app
  2. Click “All Messages” in the left hand column
  3. Type “backupd” in the Filter window top right.

You should now be seeing a small subset of the the log files showing just those errors associated with the backupd process that powers Time Machine. Amongst those messages are some that you’ll be able to use to pinpoint which file or folder is causing the backup to fail. For example:

Apr 27 16:00:46 powerbook com.apple.backupd[50125]: Stopping backup.
Apr 27 16:00:46 powerbook com.apple.backupd[50125]: Error: (-41) SrcErr:NO Copying /Volumes/Macintosh HD/Users/xxxxx/webwork/freelancewebsitejob.co.uk/site/library/.svn/entries to /Volumes/SweetApple TimeMachine Mackup/Backups.backupdb/Sweet-Apple-MacBook/2011-02-27-140323.inProgress/xxxxxxxxx/Macintosh HD/Users/xxxxx/webwork/

It might look like gibberish, but actually that’s quite useful. It tells me that Time Machine is failing when it tries to backup a specific folder and gives me the path to that folder.

So now what should you do? The first thing is to run a check on your hard drive to make sure there are no problems with it. Disk Utility is free and does a reasonable job, so use that. If you find problems, repair them and try to backup once more. Check the logs in Console.app if it fails once again.

The other approach that sometimes works is forcing a rebuild of your Spotlight Indexes. There are a plethora of apps that can do this, but they often cost money. So I use the Terminal.app to run “sudo mdutil -E /” to rebuild the boot drive’s indexes (if your hard disk is partitioned, replace the / with the path to the drive – for example “sudo mdutil -E /Volumes/My Other Volume”). In some instances I’ve found that Time Machine will miraculously begin working correctly after Spotlight has been given a chance to rebuild.

If that fails, you’re rapidly running out of options! You can try erasing the existing Time Machine backup and starting from scratch. However be aware that this will destroy all of your Time Machine history, so have a careful think before doing this.

If that fails, life’s going to get very complicated. I would suggest using Carbon Copy Cloner to take backups until such time as you can pinpoint the cause of failure.

Looking for friendly, fast, efficient and cost-effective Mac support? In Bath, Bristol, Swindon, Devizes, or Wiltshire, Somerset or Gloucestershire? Sweet-Apple provides on-site, telephone and remote support for Macs. Give us a call on 01225 309162, We’d love to help.

Posted in Apple, Troubleshooting | Tagged , , , | Leave a comment

Getting the “right” CMS from your web designer

One of the questions we get asked time and time again by our web design clients is “what is the best Content Management System?” There’s a short answer to that – there isn’t one. All Content Management Systems have their strengths and weaknesses, there is no perfect “one size fits all” solution and you’ll probably need to pay a web developer at some point to customise it to get what you want. So what are some of the more common options that you can choose from, and what are the pros and cons?

WordPress

At Sweet-Apple we find that WordPress typically enables us to provide a web  design service that allows almost limitless creative freedom, excellent search engine optimisation capabilities, and a huge array of free plugins to enhance the website. We can develop custom WordPress themes extremely quickly and cost-effectively, which either translates into more profit for the web design agency hiring us to do the web development on a freelance basis, or an inexpensive site for clients who ask us to do the web design ourselves.

What are the downsides of using WordPress? Well, the admin backend can be confusing for people who have never used a CMS before (although to be fair it’s a damn sight better than most). In addition, WordPress is frequently targeted by hackers, so it’s important that you install updates to WordPress and any installed plugins when they become available. Lastly, WordPress doesn’t have ultimate flexibility of some CMSes to quickly and easily create complex content “types”. For more structured, complex projects, there are better solutions available.

Micro-CMSes (Perch, CushyCMS, PageLime)

Over the last couple of years micro-CMSes have started to gain traction at the budget, beginner and bespoke end of the market. Micro-CMSes follow a very different development paradigm to the more established systems – essentially the developer creates static html pages, then attaches code directly onto specific parts of the HTML to mark them as editable. This has a number of advantages. Firstly, it means that the developer and designer have complete creative freedom to code anything they want. Secondly, editing for the client becomes greatly simplified as they have clearly defined parts of the page that they can edit in isolation. This minimises the chances that they will accidentally break the page layout – an important consideration for less web savvy users. More recent iterations of these systems have introduced “editable repeating regions”, which allow you to create News feeds, Image galleries and the like. Lastly the developers don’t need to learn any complex programming at all.

The downsides are few, but notable. Most critically you are relying on a 3rd party service to edit the site – if the company running the service goes down or bust, you suddenly have lost the ability to edit your site (this is also true for any hosted service such as WordPress.com, Drupal Gardens, Blogger). Secondly, adding new pages or entire navigation hierarchies is more difficult. Thirdly if you outgrow the CMS solution and need more functionality, there’s no easy way to import data into a new CMS via XML files or the like. Lastly, you don’t have easy access to bolt on functionality via plugins/extensions. You rely on the service developer to add new functionality – you can’t just ask your developer to code and add it, as they don’t in reality control the service.

Umbraco

Umbraco is probably an unfamiliar name to most people reading this, even those who are web professionals themselves. It’s an Open-Source .NET CMS that runs on Windows and has a strong following in Windows based web design and development studios. It main attraction for me is it has a excellent Admin User Interface, which is much cleaner than WordPress and Drupal. With a competent developer working on it, you can easily allow the client to insert complex functionality via Macros using the rich text editor.

The downsides? Like most CMSes, a large part of the developer’s job revolves around creating Content types and Macros that query the CMS to find data and then format that information according to the designs. Atypically, Umbraco uses XSLT or Python to convert data into presentation HTML. It’s also programmed in C# .NET. You’re probably going to find it harder to find developers with the required skillset to work on Umbraco, and those you do find are likely to be more expensive.

In my previous job I developed a few sites using it, and had a love/hate relationship. Since then, Umbraco development has continued at a pace and it seems to be maturing very nicely into a sensible alternative to other develoment-centric CMS platforms such as Drupal.

Drupal

Drupal has been one of the most popular CMS systems for a number of years, and has a number of very high-profile sites (Whitehouse.gov being the poster boy) running on it. Drupal’s main advantage over more lightweight sytems like WordPress is it’s ability to create complex Entities/Data types. This makes it easier and more logical for end-users actually entering data.

Imagine you need to create a CMS for an estate agent; their main job will be creating listings of properties. Each property will need a description, but you’ll also what to have pictures, address, postcodes, a Google maps location, directions, floor plans, etc. In Drupal you can create a definition for this “Content Type” which creates separate fields for each distinct piece of data. This makes entering the data a relatively simple and structured task.

Drupal’s power and flexibility becomes evident when you start to install Modules – the base Drupal install is extremely bare and lacks a significant amount of functionality that users of other CMSes take for granted. But with common Modules such as Webforms and Views, the possibilities are almost limitless.

My biggest issue with Drupal is the Admin interface and complexity. Drupal 7 has a much nicer Admin “backend” than previous versions, but they still haven’t got decent WYSIWYG and Media modules sorted out in the base install, something which I find baffling when you compare to Umbraco or even WordPress. As for complexity – Drupal can intimidate people because of the sheer number of options available. Of course most end users aren’t going to ever need to modify those settings, but it does seem to present an issue for a lot of people. Simplicity is sometimes a good thing…

Bespoke CMS

Back in the mists of time ( 5 years ago) you would find that most CMSes were custom solutions built by a developer from scratch. Often this was because there were no off-the-shelf alternatives that could easily be adapted to fit the exact requirements, and building a bespoke solution seemed to be the fastest way to complete the job. Times have moved on, but there are still some circumstances where a bespoke solution may be appropriate. The advantage is that you should get exactly what you want, with a very clear, uncluttered and focused Administration area. Creative control can be absolutely precise, functionality perfectly tuned to your goals.

However there are some significant disadvantages. Firstly, it’s going to cost more. Even with the plethora of Frameworks such as Zend, Symfony, .NET, CodeIgnitor and Cake, the developer is going to have to build a lot of code from scratch. That takes time, which means money. Secondly, you are absolutely beholden to the developer. If they get hit by a bus, the company collapses, or they just lose interest, you’re going to have to find someone else to take it on, and they’ll have to learn how it’s been bolted together. If you do get a bespoke solution, make absolutely sure that you retain the right to modify the source code at will, and make sure they use a Open Source Framework such as Zend, Symfony, Cake or .NET MVC (amongst others)  to build it. At least then you should be able to choose from a pool of developers who will have some familiarity with the way the site has been put together.

So what is the right CMS solution for me?

The right CMS is the one that enables you to quickly and easily modify your site’s content at the least possible cost. If you only need a simple blog, there’s no point in using Drupal. If you need a site that has multiple contributors, complex editorial rules and permissions, you shouldn’t be trying to use WordPress. If you have a small simple site that the client just needs to make occasional text-changes to, then Perch or PageLime would be a sensible choice.

The correct CMS for any given project should be chosen on the basis of the specific functionality needed, the budget available, the experience of the end users, and the future growth plans for the site. Of those 4 factors, budget will play a big part. If your developer is being candid with you, they’ll admit that WordPress is typically the fastest and cheapest route to getting things done.  I’ll freely admit that Drupal and Umbraco are much more mature, flexible and powerful solutions than WordPress and I’d love to be using them more for sites I develop. But the cold, hard reality is that with the <£1000 development budget that many clients have available, WordPress, Perch or PageLime are the correct choice. If your development budget is greater than £1000, then using one of the more “industrial strength” CMSes becomes a viable option and should be investigated carefully.

Looking for someone to build you a cost-effective Content Managed website. Confused by all the options, unsure about how much it should cost you to get it built? Sweet-Apple designs and develops web sites for clients in and around Bath, Bristol, Frome, Trowbridge, Devizes and Swindon. Please give us a call on 01225 309162 for a no obligation chat.

Posted in Web Development | Tagged , , , , | 2 Comments

Get Email Alerts

Signup to receive occasional emails with news that may be of interest. Your details will never be disclosed to 3rd parties.




* = required field
I'm interested in...